manajemen proyek perangkat lunak

Upload: brutalhappy

Post on 21-Jul-2015

352 views

Category:

Documents


3 download

TRANSCRIPT

MANAJEMEN PROYEK PERANGKAT LUNAKInfo: Friday, September 28, 2007 Posted by: Dyah Chantique 1 commentsPosted under Course Materials >> Software Project Management

Perangkat lunak (software) adalah sekumpulan kode / instruksi / aturan untuk menyelesaikan suatu masalah tertentu. Tujuannya untuk transparansi, performansi, integrasi, optimasi (efisiensi). Proyek adalah kegiatan / aktivitas yang mempunyai batasan waktu, biaya, resource (sumber daya) dan mempunyai tujuan. Lawannya adalah rutinitas. Manajemen adalah kegiatan mengatur dari planning,organizing, action, controlling. / mengelola (batasan2). Aktivitasnya terdiri

Jadi Manajemen Proyek Perangkat Lunak (MPPL) adalah aktivitas untuk planning, controlling dengan menggunakan resource yang ada untuk membuat perangkat lunak dalam jangka waktu tertentu untuk memenuhi kebutuhan. Tujuan mempelajari MPPL adalah : Menentukan / mengukur lama suatu proyek Estimasi biaya proyek Feasibilitas teknis dan ekonomis Mengelola / mengatur resource (SDM) Input MPPL adalah pengetahuan yang diperlukan, seperti manajemen, Rekayasa Perangkat Lunak (RPL),software measurement. Perbedaan antara software project dan software process adalah :

o o o o o o o o

Tujuan Software project : efisiensi, ketepatan waktu, keuntungan kualitatif (finansial) Software process : memenuhi kebutuhan, correctness, portability, performance, mendapatkangood product dengan bermacammacam fitur Resource (sumber daya) Software project : SDM (akunting, manajer), tool (excel, office), modal Software process : SDM (programmer, analis, desainer, tester), tool (bahasa pemrograman, rational rose) Hasil Software project : jadwal / planning, anggaran, proposal, laporan perkembangan Software process : source code, manual, data, desain, Software Requirement Specifications(SRS) Aktivitas Software project : planning, organizing, staffing, directing, monitoring, controlling, innovating(new solution), representing (customer, client, developer) Software process : requirement analysis, design, coding, testing, deployment, maintenance Latar belakang adanya software project, tidak hanya software process adalah : Over budget -> lemahnya estimasi Over time Low quality (SDM) Perangkat lunak versi seragam -> tim pecah Teknik dan rule tidak jelas Tujuan software project ditentukan sesuai dengan konsep : Specific, contoh : membuat perangkat lunak yang mampu Measurable, contoh : mendeteksi kesalahan n kali Achievable (dapat diukur) : fitur-fitur apa saja Relevant (sesuai dengan konteks) Time constraint, contoh : waktu pengerjaan n bulan Stakeholder adalah orang-orang yang terlibat dalam project dan process, yaitu : Internal team (tim yang terlibat dalam software process) : programmer, analis, desainer, tester External team Dalam 1 organisasi : manajer, keuangan, direktur Bukan 1 organisasi : customer

o o

Trade off triangle : sesuatu yang menentukan keberhasilan proyek, yaitu :

o o o o

Product Ruang lingkup : apakah kemampuan produk sudah sesuai dengan kebutuhan Performance : tingkat pemenuhan kebutuhan / kualitas produk Schedule (jadwal) : pengaturan waktu (phase, start, end, pre, post, parallel) Cost (biaya) : banyaknya alokasi resource yang diperlukan untuk memenuhi proses pengembangan perangkat lunak. Terdiri dari : Variable cost : penggajian SDM, sewa network Fix cost : pembelian tool Fase software concept terdiri dari :

o o

Concept exploration : pemahaman terhadap area bisnis yang dikerjakan. Jenis : Financial, contoh : pada bank keuntungan diukur dari berapa banyak dana yang diputar Membership, contoh : pada jobsdb keuntungan diukur dari jumlah tenaga kerja yang dihimpun System exploration :pemahaman terhadap sistem, contoh : konsep, software, hardware, brainware,network Fase requirement menghasilkan dokumen SRS. Fase analysis menghasilkan architectural design berupa block diagram. Fase design menyangkut spesifikasi : Hardware : server dan client Software : physical database, form, report Brainware : kemampuan, pengalaman, expertise Perbedaan antara manajemen program dan manajemen proyek : Manajemen program meliputi : job desk, rule, sasaran, target. Memerlukan impersonal relationship (hubungan kerja) Manajemen proyek meliputi : tool yang diperlukan supaya program dapat berjalan / mencapai tujuan. Memerlukan personal relationship (hubungan kemanusiaan) Manajemen proyek merupakan bagian dari manajemen program. Manajemen program merupakan bagian dari manajemen perusahaan (company management). Resource dalam manajemen proyek adalah waktu, biaya, dan SDM. Tingkat kesuksesan proyek diukur dari : Ketepatan waktu : semakin cepat selesai semakin baik Biaya : semakin rendah semakin baik Kemampuan perangkat lunak yang dihasilkan Ukuran kesuksesan proyek : Project size : banyaknya requirement yang harus diakomodasi oleh perangkat lunak. Project duration : waktu yang diperlukan, mulai dari definisi sampai release proyek Project team size : jumlah orang yang terlibat dalam proyek Faktor-faktor yang mensukseskan proyek : Executive support : orang yang mengambil keputusan / pengendali dalam proyek, bisa pimpinan atau manajer. Contoh pada FRS Online : rektor, dekan User involvement : orang yang menggunakan perangkat lunak. Contoh pada FRS Online : mahasiswa, dosen Experience project manager : banyaknya proyek yang dikerjakan dengan sukses, lamanya menangani proyek Clear bussiness objectives : visi dan misi terdokumentasi Minimized scope : ruang lingkup disesuaikan dengan resource Standard software infrastructure Firm basic requirements Formal methodology : menggunakan metode yang sering digunakan. Contoh : waterfall, extreme programming Reliable estimates : melibatkan kedua belah pihak (dan external team) Stakeholder triad : Function representative : orang yang bertanggung jawab dalam bidangnya Executive sponsor Project manager Pekerjaan project manager : Menentukan ruang lingkup proyek : nama, deskripsi, tujuan, ruang lingkup proyek Identifikasi stakeholder : menghubungi stakeholder, persetujuan, kontrak Membuat daftar pekerjaan secara rinci : Work Breakdown Structures (WBS) Estimasi kebutuhan waktu Membuat flow chart manajemen proyek awal

Identifikasi resource dan budget yang diperlukan Evaluasi kebutuhan proyek Identifikasi dan evaluasi resiko Menyiapkan contingency plan (rencana alternatif jika resiko terjadi) Identifikasi interdependensi Identifikasi critical milestone Berpartisipasi dalam fase review proyek Mengamankan resource-resource yang diperlukan Memanaje proses perubahan kontrol Melaporkan status proyek Menurut Project Management Institute, struktur manajer proyek ditentukan oleh :

o o o o o

Process Project manager process : mendeskripsikan dan mengorganisasikan kerja proyek Product-oriented process : menentukan dan membangun produk proyek Knowledge area (ada 9) Core functions : scope, time, cost, quality management Facilitating functions : human resource, communication, risk, procurement management Project integration management Grup proses Project Management Institute : initiating, planning, executing, controlling, closing.

Kategori tujuan proyek : Automatisasi : manual (orang + keahlian) dilakukan oleh sistem. Contoh : BMT online Process improvement : kontinyu dari proses sebelumnya. Contoh : ATM banking (e-payment, e-commerce), mobile banking Business Process Reengineering (BPR) : adanya perubahan struktur organisasi dan proses bisnis sehingga memerlukan sistem baru. Contoh : merger bank BBD dan Bank Duta Perbedaan antara master plan dan proposal proyek : Master plan : blue print, service, schedule, cara teknis / panduan. Berisi visi, misi, dan cara bagaimana mewujudkan. Proposal proyek : teknis pelaksanaan dari master plan. Information System Planning (ISP) bertugas merangkum data, menghasilkan master plan IT untuk perusahaan. Risiko terbesar proyek adalah perusahaan customer tidak dapat mengukur manfaat proyek. Tujuan proposal proyek adalah meyakinkan customer bahwa software developer adalah yang paling tepat untuk mengerjakan proyek yang akan memberikan manfaat untuk perusahaan. Perbedaan planning, estimating, dan scheduling : Planning : identifikasi kegiatan (tanpa menetapkan waktu awal dan waktu selesai) Estimating : menentukan ukuran dan durasi kegiatan Scheduling : menambahkan waktu awal dan waktu akhir kegiatan serta menentukan resource Langkah-langkah perencanaan proyek : Menentukan tujuan dan ruang lingkup proyek Memilih daur hidup perangkat lunak Menentukan organization dan team form -> kriteria yang diperlukan Memulai seleksi tim : berdasarkan knowledge dan expertise (pengalaman) Menentukan risiko : risiko kegagalan proyek, waktu, biaya, SDM Membuat Work Breakdown Structure (WBS) : task-task pada point 2 diperinci, kalau terlalu lama bisa dipecah antara 8-80 jam Identifikasi task Estimasi ukuran : lamanya proyek, banyaknya tim, banyaknya fungsional Estimasi effort : lamanya mengerjakan, biaya Identifikasi task dependecy : membuat Gantt Chart Assign resource : identifikasi staf-staf yang bertanggung jawab terhadap task Schedule work Alasan pembuatan dan estimasi WBS : waktu (jadwal), pengelolaan, alat komunikasi. Perbedaan activity dan task : Activity : kumpulan task Task : kerja terkecil yang tidak dapat dibagi lagi Elemen-elemen proyek : fungsi, activity, task.

Macam-macam WBS : Contract WBS (CWBS) : high level tracking, 2 atau 3 level pertama untuk progress report (RFP / RFQ) Project WBS (PWBS) : lowest level tracking, dibuat untuk manajer Tipe-tipe WBS : Process WBS : activity-oriented. Contoh : requirement, analysis, design, coding, testing, maintenance Product WBS : entity-oriented. Contoh : financial engine, interface, database Hybrid WBS : gabungan antara process WBS dan product WBS Work package adalah istilah umum untuk task-task diskrit dengan hasil akhir yang sudah ditentukan. Jika terjadi kemunduran waktu, jadwal proyek boleh direvisi.