Systems architecture digunakan
sebagai bagian dari proses menjaga arsitektur perusahaan selaras dengan tujuan
bisnis dan proses organisasi. Oleh karena itu, untuk mewujudkan pengembangan perangkat
lunak yang dapat digunakan untuk membantu pencapaian tujuan organisasi
diperlukan tim yang memiliki keahlian. Keahlian yang perlu dimiliki oleh tim
antara lain :
1. Analyzing the Problem
Sebuah
masalah harus diketahui akar permasalahannya dan tidak terbatas hanya pada
gejala masalah. Setelah masalah diketahui dengan jelas maka diperlukan
persetujuan definisi masalah antara tim dan stakeholder. Selanjutnya untuk
melakukan analisa lebih lanjut terhadap masalah, diperlukan identifikasi
pengguna dan stakeholder. Dengan adanya identifikasi dan kesepakatan yang jelas
mengenai penyelesaian akar permasalahan maka dapat disampaikan solusi untuk
permasalahan tersebut dan hambatan-hambatan yang mungkin terjadi dalam
pengimplementasian solusi tersebut. Tahapan analisis masalah menghasilkan
dokumen Stakeholder Request, dokumen yang memuat seluruh permintaan dan
data-data dari stakeholder yang harus dipenuhi dalam rangka penyelesaian
masalah.
2. Understanding User and Stakeholder Needs
Memahami
kebutuhan pengguna dan stakeholder
merupakan tindak lanjut dari analisis stakeholder
request. Tim harus dapat memahami kebutuhan sistem yang akan dibuat dan
melihat kesesuaian kebutuhan tersebut dengan permintaan yang disampaikan
pengguna dan stakeholder. Terdapat
beberapa cara untuk memahami kebutuhan pengguna dan stakeholder antara lain dengan melakukan studi literatur,
wawancara, workshop, brainstorming, dan storyboarding. Setelah tim dapat
menentukan kebutuhan yang harus direalisasikan dalam sistem maka feature sistem dapat ditentukan dan diusulkan
kepada stakeholder.
3. Defining the System
Mendefinisikan
sistem dilakukan dengan melakukan pemodelan perilaku sistem menggunakan use
case dan dengan mengorganisasikan informasi kebutuhan. Pendefinisian sistem
dilakukan berdasarkan problem domain dan berdasarkan solution domain berupa features dan software requirements yang tecantum dalam usecase dan
supplementary specification. Pendefinisian sistem menghasilkan Vision Document.
4. Managing Scope
Pengelolaan scope diperlukan untuk menghindari
perluasan proyek pengembangan perangkat lunak diluar kesepakatan yang telah
ditentukan mengenai kebutuhan sistem. Pengelolaan scope meliputi penentuan iterasi, skala prioritas, effort, dan
resiko dari pengembangan sistem. Pengelolaan scope menghasilkan Requirement Management Plan (RMP).
5. Refining the System Definition
Perbaikan
definisi sistem dapat dilakukan untuk mendefinisikan secara lebih tepat
kebutuhan pengguna dan stakeholder terhadap
sistem. Perbaikan ini dilakukan untuk memperbaiki proses sebelumnya agar definisi
kebutuhan sistem yang didapatkan oleh tim merupakan kebutuhan yang benar-benar
dibutuhkan oleh sistem. Perbaikan definisi sistem ini dilakukan dengan melihat
dengan teliti kebutuhan perangkat lunak, membuat use case dengan tepat, dan pembuatan
supplementary specification.
6. Building the Right System
Pembuatan
sistem yang tepat sesuai dengan kebutuhan pengguna dan stakeholder dapat dilakukan dengan penelusuran kebutuhan yang
dipetakan ke dalam perancangan dan pemgrograman sistem, pengetesan sistem,
pengelolaan terhadap perubahan yang terjadi terhadap pengembangan sistem serta
dengan penilaian kualitas kebutuhan dalam pembangunan iteratif.