Ushbu jarayonning bosqichlari:
1.
Texnik talablar (Requirements specification). Tizim uchun dastlabki talablar
taklif etiladi. Ular batafsil ishlab chiqilishi shart emas, lekin asosiy talablar va
kerakli tizim xususiyatlarining qisqacha tavsiflarini o’z ichiga olishi kerak.
2.
Dasturiy ta’minotni aniqlash va baholash(Software discovery and evaluation).
Dasturiy ta'minotga bo'lgan talablarning konturini hisobga olgan holda, talab
qilinadigan funksionallikni ta'minlaydigan komponentlar
va tizimlar uchun
qidiruv amalga oshiriladi. Nomzod komponentlar va tizimlar asosiy talablarga
javob beradimi yoki umuman tizimda foydalanish uchun mos yoki yoʻqligini
aniqlash uchun baholanadi.
3.
Talablarni takomillashtirish(Requirements refinement). Ushbu bosqichda
talablar qayta foydalanish mumkin bo'lgan komponentlar va ilovalar haqidagi
ma'lumotlardan
foydalangan
holda
aniqlanadi.
Talablar
mavjud
komponentlarni aks ettirish uchun o'zgartiriladi va tizim spetsifikatsiyasi
qayta aniqlanadi. O'zgartirishlar mumkin bo'lmagan
hollarda, muqobil
echimlarni izlashda komponentlarni tahlil qilish faoliyati qayta kiritilishi
mumkin.
4.
Ilova tizimining konfiguratsiyasi (Application system configuration). Agar
talablarga javob beradigan tayyor dastur tizimi mavjud bo'lsa, u yangi tizimni
yaratishda foydalanish uchun sozlanishi mumkin.
5.
Komponentlarning moslashuvchanligi va integratsiyasi (Component
adaptation and integration). Agar tayyor tizim bo'lmasa,
alohida qayta
foydalanish mumkin bo'lgan komponentlar o'zgartirilishi va yangi
komponentlar ishlab chiqilishi mumkin. Keyin ular tizimni yaratish uchun
birlashtiriladi.
Konfiguratsiya va integratsiyaga asoslangan qayta foydalanishga yo'naltirilgan
dasturiy injniring ishlab chiqilishi kerak bo'lgan dasturiy ta'minot
qiymatini
kamaytirish, shuningdek xarajatlar va xavflarni kamaytirish afzalligiga ega. Bu,
odatda, dasturiy ta'minotni tezroq yetkazib berishga olib keladi. Biroq, talablarning
murosaga kelishi muqarrar va bu foydalanuvchilarning haqiqiy ehtiyojlarini
qondirmaydigan tizimga olib kelishi mumkin. Bundan tashqari, tizim evolyutsiyasi
ustidan ba'zi nazorat yo'qoladi, chunki qayta foydalanish mumkin bo'lgan
komponentlarning yangi versiyalari ulardan foydalanadigan tashkilotning nazorati
ostida bo’lmaydi.