Pengantar MPPL
MPPL (Manajemen Proyek Perangkat Lunak)
Berikut ini merupakan beberapa pengertian software process yang saya kutip dari beberapa buku:
Pengertian Software Process
1. Menurut Reidar Conradi pada bukunya yang berjudul Software Process Technology: 7th European Workshop, Software Process adalah Proses perangkat lunak yang direpresentasikan sebagai sebuah proses program dan dapat mengeksekusi secara otomatis.
2. Menurut Ian Sommerville pada bukunya yang berjudul Software Engineering (9th Edition), Software Process adalah Pendekatan sistematis yang digunakan dalam rekayasa perangkat lunak serta merupakan sebuah aktifitas terurut yang menuju kepada produksi dari pembuatan produk rekayasa perangkat lunak.
3. Sedangkan menurut M Deploy pada tulisannya yang berjudul Software Engineering Process, Software process adalah serangkaian langkah-langkah yang terurut untuk membuat sebuah produk rekayasa perangkat lunak. Software process adalah suatu hirarki yang tiap langkah dapat memiliki sub-sub langkah dalam proses rekayasa perangkat lunak.
Terdapat 4 aktifitas umum yang mendasar pada semua proses rekayasa perangkat lunak, yaitu:
Referensi:
[1] Reidar Conradi, Software Process Technology: 7th European Workshop
[2] Ian Sommerville, Software Engineering (9th Edition)
[3] M Deploy, Software Engineering Process
https://hhabibie.wordpress.com/2015/06/15/estimasi-dalam-pengelolaan-proyek-sistem-informasi/
http://file.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/WAHYUDIN/mppl_slide.pdf
https://plus.google.com/100241143649492098452/posts/2LyJGTHNj4Y
https://pripuniii.wordpress.com/2014/09/23/pembagian-pekerjaan-dalam-pengembangan-web/
Pengertian Software Process
1. Menurut Reidar Conradi pada bukunya yang berjudul Software Process Technology: 7th European Workshop, Software Process adalah Proses perangkat lunak yang direpresentasikan sebagai sebuah proses program dan dapat mengeksekusi secara otomatis.
2. Menurut Ian Sommerville pada bukunya yang berjudul Software Engineering (9th Edition), Software Process adalah Pendekatan sistematis yang digunakan dalam rekayasa perangkat lunak serta merupakan sebuah aktifitas terurut yang menuju kepada produksi dari pembuatan produk rekayasa perangkat lunak.
Terdapat 4 aktifitas umum yang mendasar pada semua proses rekayasa perangkat lunak, yaitu:
- a. Software specification, yaitu pengguna dan perekayasa menentukan perangkat lunak yang akan dibuat dan dibatasi pada proyek tersebut.
- b. Software development, dimana perangkat lunak tersebut dirancang dan diprogram.
- c. Software validation, dimana perangkat lunak di cek apakah sudah memenuhi apa yang dibutuhkan oleh pengguna
- d. Software evolution, dimana perangkat lunak diubah,diperbaiki untuk mengatasi perubahan pengguna dan mengikuti perkembangan jaman.
Sedangkan Produk yang dihasilkan dari Perangkat Lunak (Software Product) terbagi menjadi 2:
1. Perangkat Lunak Atau Software Sistem (System Software)
perangkat lunak atau software yang berhubungan langsung dengan komponen perangkat keras komputer (Hardware), perawatan, maupun pemrogramannya. Perangkat lunak sistem ada tiga macam yaitu sebagai berikut :
- Sistem Operasi (Operating System)
- Bahasa Pemrograman
- Utility Software
2. Perangkat Lunak Atau Software Aplikasi (Application Software)
program yang dibuat atau dirancang untuk menyelesaikan suat aplikasi tertentu. Selain perangkat lunak sistem, sebuah komputer juga membutuhkan perangkat lunak aplikasi yang berfungsi untuk menyelesaikan tugas-tugas tertentu yang membantu pengguna dalam kegiatan sehari-hari. Contoh: Microsoft Office Word, Software Desain Kaos dan Jaket, Excel, Power Point, CorelDraw Graphics Suite, Adobe Photoshop, AutoCAD, MYOB Accounting, Macromedia Freehand, Microsoft Access, Internet Download Manager 6.19 Build 3 Terbaru 2014, Visual Basic, Microsoftt Visual Foxpro,dll.
Dalam Pembuatan Perangkat Lunak juga harus memperkirakan estimasi biaya yang harus dikeluarkan.
Menurut KBBI estimasi memiliki arti perkiraan atau penilaian. Perkiraan merupakan salah saatu poses yang dilakukan dalam perencanaan sebuah proyek yang dilakukan 2 kali yaitu saat fase definisi dan setelah fase analisis. Mengapa perlu memerhatikan estimasi? Karena 1) untuk Kebutuhan data historis : memerlukan informasi bagaimana proyek yang telah diimplementasikan sebelumnya, terutama bahasa pemrograman dan tool yang digunakan, standar yang dipakai dan pengalaman staf. 2) Metrik Pekerjaan: biasanya tidak mungkin menghitung langsung harga aktual atau waktu yang diperlukan untuk merealisasikan proyek. Waktu yang dipakai untuk menulis program bisa berbeda sesuai kompetensidan pengalaman software developer. Secara praktis, untuk mengukur volume pekerjaan didasarkan pada jumlah source lines of code (SLOC) atau function points. 3) Kompleksitas: Telah banyak usaha yang dilakukan untuk mengukur kompleksitas secara obyektif, namun seringkali akan tergantung penilaian subyektif estimatornya.
Bagaimana melakukan estimasi biaya perangkat lunak?
Berikut Teknik-teknik yang dapat dilakukan:
- Algorithmic models : menggunakann ‘effort driver’ yang menggambarkan karakteristik dari sistem target dan lingkungan implementasi untuk memprediksi biaya.
- Expert judgement : dimana nasehat staf yang memiliki kemampuan sangat diharapkan
- Analogy : kemiripan, kelengkapan, proyek diidentifikasi dan biaya aktualnya digunakan sebagai dasar estimasi proyek baru.
- Parkinson : mengidentifikasi kelayakan biaya staf untuk mengerjakan proyek dan menggunakannya sebagai estimasi (bukan merupakan metode prediksi biaya yang sebenarnya).
- Price to win : estimasi harus kelihatan cukup rendah untuk memenangkan kontrak.
- Top-down: keseluruhan estimasi diformulasikan untuk keseluruhan proyek yang kemudian dipecah ke dalam usaha yang diperlukan untuk komponen-komponen tugas.
- Bottom-up : komponen-komponen tugas diidentifikasi, diukur dan dilakukan estimasi sendiri-sendiri untuk kemudian dijumlahkan
Salah satu contoh dari estimasi biaya
Untuk membangun Sistem Informasi berbasis komputer, pemilik PT. IWAN SENTOSA menganggarkan biaya sebesar Rp. 19,000,000,- (hanya untuk Sistem Informasi) yang pengerjaannya dilakukan oleh “Pengembang Software” sebagai “out-sourcing” (tenaga lepas) sedangkan pembayaran personil dari Pengembang Software diserahkan sepenuhnya kepada Manajer Proyek. Sedangkan estimasi anggaran secara keseluruhan adalah Rp. 29,000,000,- dengan rincian sebagai berikut :


Dari contoh diatas tim/ aktor-aktor yang terlibat adalah:
1. Manager Software/ pemimpin tim:
merencanakan, memotivasi, mengorganisasi
dan mengontrol orang di proyek
2. Analis Software : Mengembangkan perangkat lunak/software dalam tahapan requirement, design dan construction. Membuat dokumen requirement dan desain software berdasarkan jenis bisnis customer. Membangun framework untuk digunakan dalam pengembangan software oleh programmer
3.Praktisi: orang yang mempunyai kemampuan
teknis yang dibutuhkan untuk mendapatkan
produk/PL
4.Pengguna akhir: orang yang berinteraksi
langsung dengan PL yang dibangun
5. Programmer: orang yang membuat suatu aplikasi untuk client/user baik untuk perusahaan, instansi ataupun perorangan.
6. Web Administrator : seseorang yang bertanggung jawab secara teknis terhadap operasional sebuah situs atau website khususnya server. Seseorang Web Administrator harus mengerti secara mendalam tentang sistem operasi yang di gunakan server, proses penginstalan, memahami jaringan LAN, WAN, keamanan data server, dan yang penting dia juga harus dapat mengatasi masalah Troubleshooting.
7. Quality Assurance : Testing dan memastikan source code berkualitas tinggi
Sekian. Semoga bermanfaat
Referensi:
[1] Reidar Conradi, Software Process Technology: 7th European Workshop
[2] Ian Sommerville, Software Engineering (9th Edition)
[3] M Deploy, Software Engineering Process
https://hhabibie.wordpress.com/2015/06/15/estimasi-dalam-pengelolaan-proyek-sistem-informasi/
http://file.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/WAHYUDIN/mppl_slide.pdf
https://plus.google.com/100241143649492098452/posts/2LyJGTHNj4Y
https://pripuniii.wordpress.com/2014/09/23/pembagian-pekerjaan-dalam-pengembangan-web/
Komentar
Posting Komentar