- Customer, Perusahaan, organisasi, atau orang yang terlibat dalam sistem perangkat lunak yang dikembangkan.
- Developer, Company, organisasi, orang yang membangun sistem perangkat lunak untuk customer.
- User, orang yang akan menggunakan sistem perangkat lunak secara aktual.
Rekayasa perangkat lunak terdiri dari 3 elemen kunci, yaitu :
1. Metode, Metode software engineering memberikan teknik-teknik bagaimana membentuk software/perangkat lunak. metode ini terdiri dari serangkaian tugas :
- Perencanaan dan estimasi proyek
- Analisa kebutuhan sistem dan software
- Desain struktur data
- Arsitektur program dan prosedur algoritma
- Coding
- Testing dan pemeliharaan
2. Peralatan (Tools), Peralatan software engineering memberikan dukungan atau semiautomasi untuk Metode, Contoh :
- Case ( Case Aided Software Engineering ), yaitu suatu software yang menggabungkan software, hardware, dan database software engineering untuk menghasilkan suatu lingkungan software engineering.
- Database Software Engineering, adalah suatu sebuah struktur data yang berisi informasi penting tentang analisi, desain kode, dan testing.
- Analogi dengan CASE pada hardware adalah : CAD, CAM, CAE
3. Prosedur, Terdiri dari :
- Urut-urutan dimana metode tersebut diterapkan
- Dokumen
- Lopran-laporan
- Formulir-formulir yang diperlukan
- mengontrol kualitas software
- mengkoordinasi perubahan yang terjadi pada software
Aktivitas pengembangan, secara umun aktivitas pengembangan perangkat lunak terdiri dari :
- Analisa
- Desainer
- Programmer
- Testing
- Trainer
