Bab 3 Manajemen Proyek

advertisement
Project Management
Oleh : Indrias Budi Utami
Project Management
 Management Spectrum
 People
 Players
 Team Leaders
 Software Team
 Coordination dan Communication Issues
 Problem
 cakupan software
 dekomposisi masalah
 Process
 Problem dan Process
 dekomposisi proses
The Management Spectrum - People
-Tiga P’s:
software project management yang efektif terfokus pada tiga P yaitu (URUT):
(1) people,
(2) problem
(3) process
- People:
MODEL KEMATANGAN KEMAMPUAN MANAJEMEN MANUSIA (PM-CMM)  Kunci bg
pengembangan PL
 include:
- recruitment
- seleksi
- manajemen job desk
- training
- desain kerja&organisasi
- kompensasi
-budaya kerja / culture
- pengembangan karir
Kontributor yang paling penting agar software project berhasil
-> memiliki orang yang SMART dengan kemampuan yang baik
Organisasi dengan high levels maturity pada management people.
-> mengimplementasikan effective software engineering
The Management Spectrum - The Problem
 langkah I dalam analisis kebutuhan PL
 perlunya indentifikasi (before project):
- Objectives dan scope
- Alternative solutions
- Technical dan management constraints
Faktor lain yang berhubungan:
delivery deadlines, budgetary restrictions, personnel availability
technical interfaces, dan lainnya
Tanpa informasi ini , tidak mungkin untuk :
- mendefinisikan estimasi biaya
- menginginkan efektif assesssment dari resiko.
- melakukan project task yang lebih realistis
- menghasilkan project schedule yang teratur
The Management Spectrum - The Process
Tiga P’s:
software project management yang efektif terfokus pada tiga
P’s:(1)
people, (2) problem, dan (3) process
- Process:
Software process menyediakan framework berupa ->
perencanaan yang komprehensif dari software development
Framework dpt diterapkan utk ALL PROJECT SW tanpa mempedulikan UKURAN dan
KOMPLEKSITAS
- tasks
(tugas-tugas)
tiap Framework
- milestones
berbeda-beda
- deliverables (kemampuan penyampaian)
disesuaikan Karakteristik PL
- quality assurance points (jaminan kualitas)
dan kebutuhan TIM Project
Aktifitas pelindung -> tdk tergantung pd Framework, melainkan melapisi model proses
Framework
- software quality assurance
- software configuration management
- measurement
People
-Pada software process, terdapat 5 tipe players:
1. Senior managers,
yang mendefinisikan dari masalah bisnis (berpengaruh kuat terhadap
project)
2. Project (technical) managers,
seseorang yang harus merencanakan, memotivasi, mengorganisasikan,
mengontrol sebuah produk / aplikasi
3. Practitioners,
yang akan mengantar pada kemampuan teknik untuk engineering
software sebuah produk / aplikasi
4. Customers,
seseorang yang akan menspesifikasikan requirements dari software
5. End users,
seseorang yang berinteraksi software yang akan direleased
People - Team Leaders
 Project management merupakan aktivitas dari orang-orang yang bersifat intensif
Bagaimana memilih team manager yang baik?
Model MOI yang disarankan oleh Jerry Weinberg [WEi86]:
- Motivation
- Organization
- Ideas or innovation
KEMAMPUAN :
- memberi dorongan orang teknik utk menghasilkan sesuatu
dgn kemampuan terbaiknya
- menyediakan proses yg berlangsung sebagai initial konsep
yang akan ditranslasikan menjadi final product
- mendorong inovasi dan kreatifitas utk produk / aplikasi
yang spesifik
Software managers harus terkonsentrasi pada
- pengertian masalah yang akan dipecahkan
- pengaturan ide
- membiarkan seseorang dalam team mengetahui jumlah kualitas
People - Team Leaders.....CONTD
Empat kunci utama sebagai project management yang efektif [EDG95] :
1. Problem solving
-membaca isu-isu bisnis
-memcahkan masalah dan alternatif solusi
-memotivasi orang teknik dlm solving problem dan create inovation dan
creativity
- mengadopsi project-project sebelumnya ke project baru
-fleksibel dlm menghadapi masalah yg tdk membuahkan hasil
2. Managerial identity
- terlibat langsung ke dalam Project
- PD
- controlling
- memberikan kebebasan berinovasi
3. Achievement
-memiliki inisiatif dan prestasi  meningkatkan produktivitas TIM
- reward
- insentif
- career development
-prestice
4. Influence dan team building
- mampu membaca “manusia” baik verbal maupun non verbal
- menguasai diri dalam tekanan yang tinggi
People - Software Team
Mantei [MAN81] menyarankan tiga team organisasi yang kuat :
- Democratic decentralized (DD):
- software engineering tidak memiliki pemimpin yang tetap.
- keputusan dibuat dari ketetapan group
- komunikasi diantara team harus bersifat horisontal
- Controlled decentralized (CD):
- memiliki pemimpin -> koordinasi antara spesific task dan pemimpin
kedua
- pemimpin kedua harus memiliki tanggung jawab untuk masingmasing subtask
- komunikasi horisontal terjadi diantara subgroups dan individual
- komunikasi vertikal terjadi pada struktur kontrol
- keputusan dibuat oleh pemimpin
- Controlled centralized (CC):
- pemimpin mengatur pemecahan masalah pada top level dan
koordinasi team internal
- komunikasi antara pemimpin dan anggota team adalah vertikal
People - The Software Team
group
DD:
Team leader
CC:
CD:
Team leader
secondary team leader
communication
group
group
People - The Software Team
Functional tasks
FT1
P1
FTm
X
X
X
X
X
Pn
X
Project manager + n engineers + m tasks
team
engineer
FT1
P1
FTm
X
T1
P1
Tm
X
X
Pn
X
X
Pn
X
X
X
Project manager + team leaders
Project manager+ informal teams with coordinator
People - The Software Team
7 faktor project yang terhubung dengan struktur team project :







Kesulitan dalam pemecahan masalah
Ukuran dari resultant program
Modularity dari program
Reliability dari software (keandalan sistem)
Team life time (umur hidup tim)
Rigidity dari delivery date (tanggal pengiriman)
Tingkat dari sociability (communication overhead)
Team Type
DD
CD
CC
Difficulty
Size
Team Life Time
Modularity
Reliability
Delivery date
Sociability
High
Small
Long
Low
High
Lax
High
Low
Large
Short
High
High
Lax
Low
Low
Large
Short
High
Low
Strict
Low
People - The Software Team
Constantine [CON’93] menyarankan empat “organization
Untuk team software engneering:

paradigms”
A closed paradigm:
-Tim dgn hirarki tradisional (sama dg CC)
-Dapat bekerja dg baik jika dgn studi kasus yg pernah ditangani sebelumnya
-Tim kurang inovatif
 Random paradigm:
-Tim agak longgar dan tergantung pd inisiatif individu anggota tim
- mengikuti perkembangn inovasi /teknologi
 Open paradigm:
- heavy communication (dss) + control structure like CC
- sesuai utk pemecahan masalah yg kompleks tetapi tidak bekerja seefisien
tim yg lain
 Synchronous paradigm:
- lebih fleksibel dalam Tim
- manajemen job desk sesuai dgn kompleksitas masalah
- komunikasi efektif antar tim
Chief programmer team (by Harlan Mills described in Baker’s [BAK72]) :
(1) a senior engineer (pemrogram utama)
- merencanakan, mengkoordinasi, mengkaji semua aktivitas
teknik tim
(2) technical staff (2-5)
- analisis dan mengembangkan aktivitas
(3) a backup engineer
- mendukung senior engineer dlm aktivitsny
- menggantikan utk masalah yg berkaitan dgn proyek
(4) support staff
- spesialis (pakar telekomunikasi, perancang Database, Jaringan)
- staff pembantu (e.g. technical writers)
(5) software librarian (1).
- controll : dokumentasi, daftar sumber data, media magnetik
- collect dan format data produktivitas PL, katalog dan indeks
modul PL yg reuseable
-support TIM utk penelitian, evaluasi dan penyiapan dokumen.
People – Coordination dan
Communication Issues
Beberapa kegagalan disebabkan dari project software. Disini terdapat beberapa yang
berhubungan dengan komunikasi dan koordinasi dari project :
 Skala yang lebih luas dari development efforts
 kompleksitas, konfusion, dan kesulitan yang signifikan pada koordinasi team
 Ketidakpastian pada perubahan requirement dan status team
 Interoperability  interoperations diantara systems
Mekanisme komunikasi formal dan informal yang baik dan efektif :
 Pendekatan formal impersonal
documents, deliverables, memos, project milestones,
schedules, project control tools, perubahan permintaan , dan
related documents, error tracking reports dan data.
 Formal, interpersonal procedures
aktivitas jaminan kualitas (code dan design inspection, review meeting)
 Informal, interpersonal procedures
informal group meeting (seperti meeting dengan customers dan users)
 Electronic communication (email, web sites, video-based conference)
 Interpersonal network
(komunikasi dgn orang-orang diluar project yg memiliki pengetahuan
pengalaman yg mendukung anggota TIM)
dan
Problem - Software Scope
Project manager dari software harus terhubung dengan masalah
project software engineering
awal pada
 Software scope:
(a) Context:
 Bagaimana software dibuat secara lengkap kedalam sistem yang luas, product
atau bisnis?
 Apa yang menjadi constraint dalam hasil konteks?
(b) Information objectives:
 Apakah customer sesuai dengan data objects yang dihasilkan sebagai output
dari software?
 Apakah data object dibutuhkan untuk input?
( c) Function and performance:
 Apakah fungsi akan menunjukkan software untuk mentransform input data
menjadi output?
 Apakah ada beberapa karakteristik special performance yang akan digunakan?
Problem Decomposition
Problem decomposition --> problem partitioning.
Problem decomposition --> dua area:
 functionality dari delivery software system
 process yang akan digunakan untuk mengantarkan system
Functional decomposition:
 mengidentifikasi dan mendefinisikan cakupan fungsi dari sistem
 mengaplikasikan metode dekomposisi pada masing-masing
feature
Sebagai contoh pada function feature untuk word processing system :
 spell checking
 sentence grammar checking
 reference checking untuk large documents
 section dan chapter reference validation untuk large documents.
Process - Melding Problem dan Process
Masing-masing fungsi akan menjadi engneered dari team software melalui
aktivitas framework :
 Komunikasi customer – tugas untuk membangun komunikasi yang efektif
diantara customer
 Planning – tugas untuk mendefinisikan resource, timelines dsb
 Analisis resiko – tugas untuk menerima resiko teknik dan management
 Engineering – tugas untuk membangun sistem aplikasi
 Construction dan release - installation, release control, dan customer support.
 Customer evaluation – tugas untuk mendapatkan feedback dari customer dan
hasil evaluasi
Process decomposition:

Partition the software process based on the tasks and activities

memilih model software process untuk project

mendefinisikan preliminary project plan berdasarkan aktivitas
proses framework
common process framework (CPF)
Process - Process Decomposition
Project yang kecil memerlukan beberapa tugas :
 mendevelop list dari masalah yang telah diklarifikasi
 bertemu dengan customer untuk mengklarifikasikan masalah
 menggabungkan cakupan dari beberapa statement
 mereview state dari scope
 memodifikasikan cakupan statement yang diperlukan
Project yang komplit memerlukan beberapa tugas :
 Mereview permintaan customer
 Merencanakan dan menjadwalkan secara formal, fasilitas pertemuan
dengan
customer
 Mengharapkan penelitian untuk mendefinisikan solusi dan pendekatan
yang ada
 Menyiapkan “dokumen pekerjaan” dan agenda untuk pertemuan formal
 Mengharapkan terjadinya pertemuan
 Mengembangkan mini-spec untuk perbaikan, konsistensi, dan
kelemahan pada ambiguitas
 Memodifikasi cakupan dokumen yang diperlukan
Download