software engineering
DESCRIPTION
Software Engineering. Software Process. Outline. Lifecycle Model Firewall Model Alternatives to Firewall Model Software Process Evaluation Software Process Observation and Improvement Process Programming. Target Software Engineering. Produk - PowerPoint PPT PresentationTRANSCRIPT
SOFTWARE ENGINEERING 1
Software EngineeringSOFTWARE PROCESS
SOFTWARE ENGINEERING 2
Outline Lifecycle Model
Firewall Model
Alternatives to Firewall Model
Software Process Evaluation
Software Process Observation and Improvement
Process Programming
SOFTWARE ENGINEERING 3
Target Software Engineering
Produk◦ Seluruh produk – termasuk hasil sementara selama proses pengembangan
dan dokumen – yang dihasilkan
Process◦ Tahapan/proses untuk menghasilkan produk di atas
→Dalam software engineering, pertimbangan metodologi dalam proses pengembangan/pembangunan software, merupakan hal yang penting
SOFTWARE ENGINEERING 4
Lifecycle Model Konsep lifecycle muncul pada awal lahirnya software engineering
Pemodelan proses mulai dari perencanaan, perancangan dan pembuatan, pengoperasian, sampai ke penghapusan
Istilah lifecycle muncul dari ilmu biologi, namun secara umum menunjuk pada proses suatu "benda" mulai dari lahir sampai mati, seperti pada manusia atau produk barang
Software lifecycle menunjukkan bagaimana proses pengembangan software secara normative, dengan tujuan:
◦ Menentukan tahapan pengembangan yang standar◦ Menggunakannya sebagai model manajemen proyek◦ Sebagai dasar untuk menentukan standar metodologi, alat, sistem instrumen
dokumen, dsb.
SOFTWARE ENGINEERING 5
Firewall Model Model lifecycle software yang paling awal, yang sampai sekarang masih digunakan di beberapa tempat
analysis
design
programming
test
operation/maintenance
SOFTWARE ENGINEERING 6
V-Model
analysis
design
programming unit test
system test
user acceptance
test
operation/maintenance
SOFTWARE ENGINEERING 7
Firewall Model Explained
Artikel yang memuat konsep firewall model pertama kali◦ W. W. Royce. Managing the development of large software systems. In
Proceedings WESCON, Aug. 1970. reprinted in the Proceedings 9th International Conference on Software Engineering, 1987.
◦ Belum ada istilah "firewall" maupun "lifecycle"
Penekanan dalam firewall model:1. Batasan antar tahapan harus jelas, dan antar tahapan harus dijembatani
dengan dokumentasi yang resmi2. Proses kembali ke tahapan sebelumnya harus diminimalisir
SOFTWARE ENGINEERING 8
Alternatif Firewall Model "Proses kembali ke tahapan sebelumnya harus diminamilisir", dalam prakteknya tidak mungkin/tidak realistis
Alternatif lain:◦ Prototyping Model
→ Sebelum membuat softare sistem yang diinginkan, dibuat dulu sistem ujicoba→ Untuk memastikan kebutuhan pengguna
◦ Sequential Evolving Type Model→ Berbeda dengan prototyping, model ini semuanya sudah jelas, hanya dalam implementasinya dilalukan secara bertahap→ eXtreme Programming, agile process
SOFTWARE ENGINEERING 9
Software Process Evaluation
Upaya untuk mengkaji, apakah proses yang digunakan sudah benar
Upaya untuk menilai/memberikan ranking pada perusahaan dilihat dari proses yang digunakan
Contoh:◦ CMM → CMMI, SE-CMM◦ ISO → ISO9000/ISO9001, ISO9000-3◦ SPICE → mirip CMM yang lahir di US, tapi SPICE lahir di Eropa
SOFTWARE ENGINEERING 10
Process Programming M.Lehman (Chairman), 8th ICSE (International Conference on SE), 1985: "Proses adalah hal yang penting dalam pengembangan software"
"Software processes are software too", L. Osterweil, 9th International Conference on Software Engineering, pp. 2–13, Apr. 1987
→ Proses pengembangan software dideskripsikan dalam secara procedural seperti halnya program, setelah itu di-"execute"
Tujuan process programming:◦ Mengkaji dan mencari solusi perbaikan pada proses yang dilakukan,
terutama pada tahapan di mana faktor manusianya besar◦ Melakukan penelitian terhadap bahasa dan ujicoba deskripsi pada sistem
yang dapat menjelaskan proses secara sistematis◦ Mengembangkan suatu development environment di mana konsep proses
menjadi intinya
SOFTWARE ENGINEERING 11
Contoh Penelitian dalam PP
Deskripsi secara sistematis/pemodelan proses◦ Menggunakan Hierarchycal and Functional Type Language◦ Rule-based process description dan object-based production management
Software development environment based on process
Process design and execution◦ Process design concept: prescriptive & proscriptive
Scheduling description methods
Object (product/artifact) management◦ PCTE (Portable Common Tool Environment), IRDS (Information Resource
Dictionary System)