Upload
elia-syaeffulloh
View
267
Download
1
Embed Size (px)
Citation preview
MANAJEMEN PROYEK PERANGKAT LUNAK
Elia Setiana
Jenis Software• Sistem Software
• Operating system : program yang• mengelola hardware dan • menyediakan user interface
• Programming Languages• System Utility : mendukung
sistem
Application Softwarecustom-made,packaged software
wordprocessor, desktop publishing, spreadsheet, dbms, graphics, etc
Jenis SoftwareApplication Software
hardware
Operating System
Sistemutility
Produk SE
• Generik – dibuat untuk dijual ke suatu kumpulan pengguna yang berbeda
• Bespoke (custom) – dibuat untuk suatu pengguna tunggal sesuai dengan spesifikasinya
Pembuatan PL
• Program baru• konfigurasi sistem PL • gunakan lagi (reuse) program yang sudah ada.
Rekayasa Perangkat Lunak (Software Engineering)
Definisi Perangkat Lunak
IEEE-Standar Glossary of Software Engineering Terminology, 1990:(Institute of Electrical and Electronic Engineering )
• Computer programs, procedures, and possibly associated documentation and data pertaining to the operation of a computer system.
(Perangkat lunak merupakan kumpulan dari berbagai item (program, prosedur, dan dokumen data yang saling terkait) yang merepresentasikan masalah di dunia nyata yang dikonfigurasikan dalam satu bentuk aplikasi yang harus dikerjakan komputer)
Produk Perangkat Lunak (1)
• Perangkat lunak tidak sama dengan produk perangkat keras
• Produk perangkat lunak dikembangkan (developed) atau direkayasa (engineered) Tidak dipabrikkan seperti pabrik perangkat keras, misal komputer, mobil.
• Perangkat lunak secara pemakaian tidak pernah aus/usang layaknya suku cadang perangkat keras
Produk Perangkat Lunak (2)
• Perangkat lunak sebagian besar dikembangkan/dibangun berdasarkan pemesanan hanya sebagian kecil yang dibuat secara paket
Bentuk produk perangkat lunak • Umum/generik
Dibuat untuk keperluan yang luas dan tidak berdasarkan pada permintaan pihak tertentu.
• Pesanan/custome/by tailor Dibuat spesifik sesuai sistem yang dibutuhkan oleh pemesan
Produk Perangkat Lunak (3)
• Karakteristik perangkat lunak yang baik:
- Mempunyai daya guna yang tinggi (usability)- Mempunyai kinerja sesuai fungsi yang dibutuhkan pemakai- Mampu diandalkan (be reliable)- Mudah dirawat/diperbaiki (maintenability)- Lebih efisien- Mempunyai antarmuka yang menarik (eye cathcing user interface)- Mempunyai siklus hidup yang cukup lama (long life time)
Jenis-jenis Aplikasi PL (1)
• Perangkat lunak sistemSekumpulan program yang ditulis untuk melayani program-program lainMisal: sistem operasi, driver, kompilator, interpreter, utility, dll
• Perangkat lunak waktu nyata (realtime)Perangkat lunak yang berfungsi untuk memonitor, menganalisis, mengontrol dan memberikan laporan tentang kejadian dunia nyata dan meresponnya dalam waktu kurang dari 1 menit.
Misal: pengontrol arus udara, pengontrol keasaman tabung reaksi (pressman punya), pengontrol reaksi nuklir,dll
Jenis-jenis Aplikasi PL (2)
• Perangkat lunak teknik dan ilmu pengetahuan(scientific & engineering software) Perangkat lunak yang menangani bidang teknik dan ilmu pengetahuan secara rinciMisal: simulasi, astronomi, vulkanologi, analisis otomatif, dinamika orbit pesawat ruang angkasa, biologi molekuler, otomasi pabrik, dll
• Embeded systemPerangkat lunak yg ditempelkan/dilekatkan pada perangkat lainnya (lunak/keras).Misal: pada kamera digital, GPS, automobil, microwave, kulkas cerdas, dll
Jenis-jenis Aplikasi PL (3)
• Perangkat lunak pengolah data (data processing)Perangkat lunak yang khusus digunakan untuk mengolah data dan menghasilkan suatu keputusan tertentu.Misal: billing telepon, pengolah statistik
• Perangkat lunak sistem informasi (information system)Perangkat lunak yang mampu memberi informasi dari suatu sistem secara lebih detail.
Misal: web site, perpustakaan digital, dll
Jenis-jenis Aplikasi PL (4)
• Perangkat lunak sensorPerangkat lunak yang mampu mengukur dan mengatur suatu keadaan khusus, kadang digolongkan dalam embedded system juga.Misal: pengatur cuaca, pengatur suhu ruangan, dll
• Perangkat lunak komunikasi (communication software)Perangkat lunak yang berfungsi untuk menghubungkan atau mengkomunikasikan suatu objek satu dengan lainnya.Misal: router, handphone, dll
Jenis-jenis Aplikasi PL (5)
• Perangkat lunak kantor (offices)Perangkat lunak yang dirancang untuk membantu tugas-tugas perkantoran.Misal: word processing, spreedsheet processing, video conferences, dll
• Perangkat lunak pengolah grafisPerangkat lunak yang digunakan untuk melakukan perancangan grafisMisal: pembuatan film, pembuatan poster
Jenis-jenis Aplikasi PL (6)
• Perangkat lunak kecerdasanPerangkat lunak yang menggunakan algoritma no-numeris untuk memecahkan masalah kompleks yang tidak sesuai untuk perhitungan atau analisis secara langsungMisal: sistem pakar, pembuktian teorema, game strategi, jaringan saraf tiruan, dll
Evolusi Perangkat Lunak (1)
• Perangkat lunak telah semakin berkembang sejak pertama kali diciptakan tahun 1945
• Fokus utama pembuatannya Untuk mengembangkan praktik dan teknologi dalam meningkatkan produktivitas para praktisi pengembang PL dan kualitas aplikasi yg dapat digunakan oleh pemakai
• Evolusi dipicu adanya tuntutan bisnis dan lingkungan kerja yang berkembang sangat dinamis
Evolusi Perangkat Lunak (2)
• Era I (1945 – 1960):- Munculnya teknologi perangkat keras di tahap awal- Penggunaan perangkat lunak yg berorientasi batch- Distribusi perangkat lunak masih terbatas- Didominasi perangkat lunak model custome- Munculnya istilah software engineering (akhir 1950- an/awal 1960-an)- Belum didefinisikan secara jelas tentang aspek software engineering
Evolusi Perangkat Lunak (3)
• Era II (1960 – 1970)- Disebut era krisis perangkat lunak (software crisis).- Penggunaan perangkat lunak sudah meluas- Telah hadir perusahaan yang membangun software (software house)- Perangkat lunak sdh mengenal multiprogram, multiuser, real-time, dan penggunaan database.- Banyak project PL yg gagal:- Over budget/anggaran- Meledaknya Roket Ariane àkesalahan perintah dlm PL
Dua konferensi tentang software engineering:- Disponsori Komite Sains NATO- Tahun 1968 dan 1969- Profesi resmi bidang software engineering
Evolusi Perangkat Lunak (4)
• Era III (1975 – 1985)- Pengembangan sistem mengarah ke konsep sistem terdistribusi.- Penerapan sistem embeded intelligence- Harga perangkat keras sudah jauh lebih murah sehingga pemakaian meluas- Pemanfaatan jaringan global dan lokal serta sudah diperkenalkan komunikasi digital
Evolusi Perangkat Lunak (5)
• Era IV (1985 – 2000)- Kemampuan PC sudah setara dengan komputer mainframe- Penerapan teknologi yang berorientasi pada objek- Implementasi sistem pakar,- Jaringan saraf tiruan- Komputasi paralel- Jaringan komputer sudah semakin canggih
Evolusi Perangkat Lunak (6)
• Era V (2000 – sekarang)- Penggunaan media digital- Media web berkembang pesat- Wireless sudah meluas- Teknologi meluas hingga di mobile computing, mobile programming- Perangkat keras sudah semakin kecil namun powerfull- Dilakukan berbagai penelitian yang menghasilkan model proses/paradigma pengembangan PL utk mengatasi krisis PL
Era V (2000 – sekarang)- Muncul teknik-teknik baru:
- Pemrograman terstruktur- Pemrograman berientasi objek- Perangkat bantu pengembangan (CASE tools)- Standarisasi PL- Metode UML
RPL Vs Ilmu Komputer
• Ilmu komputer berkaitan dengan teori dan konsep-konsep dasar;
• RPL berkaitan dengan praktek pembangunan PL.
Teori ilmu komputer masih kurang sebagai penyangga RPL.k
RPL Vs Rekayasa Sistem
• Rekayasa sistem berkaitan dengan semua aspek dalam pembangunan sistem berbasis komputer termasuk hardware, rekayasa PL dan proses.
• RPL adalah bagian dari rekayasa sistem yang meliputi pembangunan PL, infrasktruktur, kontrol, aplikasi dan database pada sistem.
Para ahli sistem (system engineers) terlibat dalam spesifikasi sistem, desain arsitektural, integrasi dan peluncurannya
Aktifitas dalam SW Process
• Spesifikasi – apa yang dilakukan sistem dan batasan pembangunan
Aktifitas dalam SW Process
• Pembangunan – Produksi dari Sistem perangkat lunak
Aktifitas dalam SW Process
• Validasi – Pemeriksaan apakah PL sesuai dengan pemesanan
Aktifitas dalam SW Process
• Evolusi – Pengubahan PL sesuai dengan perubahan permintaan dan kebutuhab zaman.
Contoh
Lingkup Proyek Perangkat Lunak
¤ Pengembangan perangkat lunak¤ Pengembangan perangkat lunak, dan pengadaan perangkat keras
¤ Pembenahan sistem prosedur, dan pengembangan perangkat lunak
¤ Pembenahan sistem prosedur, pengembangan perangkat lunak dan pengadaan perangkat keras
Ada 3 fokus manajemen proyek perangkat lunak (PL) : • 1. People (manusia) • 2. Problem (masalah) • 3. Process (proses)
• Manusia : mempertinggi kesiapan organisasi PL untuk mengerjakan aplikasi yang semakin kompleks
• Masalah : Objektifitas dan ruang lingkupnya harus ditetapkan, pemecahan alternatifnya harus dipertimbangkan, teknik dan batasanpun harus didefinisikan
• Proses : memberikan suatu kerangka kerja
dimana rencana komprehensif bagi pengembangan perangkat lunak.
MANAJEMEN PROYEK PERANGKAT LUNAK Adalah aktifitas dalam memanajemen rekayasa perangkat lunak, dimulai sebelum aktifitas teknis di inisialisasi dan berlanjut pada keseluruhan batasan, perkembangan dan pemeliharaan perangkat lunak komputer.
Masalah terbagi menjadi 2 bagian : 1. Ruang Lingkup : - Konteks - Tujuan / informasi - Fungsi / unjuk kerja 2. Dekomposisi Masalah : - Fungsionalitas
Para pemain
Manajer Senior : Menentukan isu-isu bisnis Manajer (Teknik) Proyek : Memimpin pembuatan proyek PL Pelaksana : Menyampaikan ketrampilan teknik yang diperlukan untuk mengembangkan Perangkat Lunak. Pelanggan : Menentukan jenis kebutuhan bagi perangkat lunak. Pemakai Akhir : Yang menggunakan / berinteraksi dengan PL.
Struktur tim “terbaik” tergantung pada gaya manejemen sebuah organisasi. Ada 3 organisasi tim yang umum :
1. Demokratis Desentralisasi Pemimpin tidak permanen, tugasnya pendek, koordinator berganti, keputusan dibuat oleh konsensus kelompok, komunikasi bersifat horisontal.
2. Terkontrol Desentralisasi Pemimpin primer mengkoordinasi tugas khusus dan pemimoin sekunder bertanggung jawab atas sub-sub masalah. Komunikasi horisontal tapi kontrol dilakukan vertikal.
3. Terkontrol Sentralisasi Koordinasi pemecahan masalah dilakukan di pimpinan puncak dan dibentuk tim internal, komunikasi secara vertikal.
Pemimpin harus memiliki kemampuan : Motivasi, Organisasi, Inovatif
Pilihan-pilihan yang dapat diambil untuk menerapkan sumber daya manusia kepada sebuah proyek, dimana n manusia. 1. n manusia mengerjakan tugas-tugas fungsional yang berbeda sebanyak m dengan sedikit kombinasi kerja.
2. m < n , dimana m tugas dan n manusia sehingga tim informal terbentuk.
3. n orang diatur dalam t tim dimana setiap tim bertugas mengerjakan satu tugas fungsional atau lebih
Model Proses RPL
4. SPIRAL Model proses PL yang evalusioner, yang merangkai sifat interatif dari prototipe dengan cara kontrol dan aspek sistematis dari model sekuensial linear.
Pengukuran Perangkat Lunak1. Pengukuran langsung à biaya & usaha yang diaplikasikan • Listing program • Kecepatan eksekusi • Ukuran memori • Error pada sejumlah periode waktu.
2. Pengukuran tidak langsung :Fungsionalitas dan kualitas, kompleksitas, efisiensi, maintenance (kemampuan pemeliharaan), reliabilitas (keandalan).
Thank You – See You