Analisa Terstruktur mulai dipopulerkan pada tahun 1979 oleh DeMarco
Analisa Terstruktur adalah tahapan penyelesaian masalah menggunakan pemodelan yang terstruktur. Dalam Software Engineering analisa terstruktur merupakan analisa terhadap suatu masalah atau kebutuhan kebutuhan sebuah proyek perangkat lunak, terkait dengan spesifikasi, program, dan konfigurasi hardware.
Analisa Terstruktur adalah tahapan penyelesaian masalah menggunakan pemodelan yang terstruktur. Dalam Software Engineering analisa terstruktur merupakan analisa terhadap suatu masalah atau kebutuhan kebutuhan sebuah proyek perangkat lunak, terkait dengan spesifikasi, program, dan konfigurasi hardware.
Termasuk didalamnya adalah penerjemahan konsep sistem menjadi aliran data yang dikontrol dalam sebuah sistem.
Didalamnya digunakan notasi grafis yang disebut Diagram Arus Data (DAD) atau Data Flow Diagram (DFD).
Berdasarkan tingkatannya dapat dibagi menjadi beberapa, yaitu:
1. Context Diagram
2. Hierarchical Diagram
3. Overview Diagram
4. Level Diagram
DAD/DFD tersebut membutuhkan penjelasan proses serta kamus data yang memberikan penjelasan lengkap untuk membaca diagram yang ada.
Terdiri dari:
1. External Entity
2. Data Store
3. Data Flow
Berdasarkan tingkatannya dapat dibagi menjadi beberapa, yaitu:
1. Context Diagram
2. Hierarchical Diagram
3. Overview Diagram
4. Level Diagram
DAD/DFD tersebut membutuhkan penjelasan proses serta kamus data yang memberikan penjelasan lengkap untuk membaca diagram yang ada.
Terdiri dari:
1. External Entity
2. Data Store
3. Data Flow
Perancangan terstruktur bertujuan untuk membuat model SOLUSI terhadap PROBLEM yang sudah dimodelkan secara lengkap pada tahap analisis terstruktur. Ada empat kegiatan perancangan yang harus dilakukan, yaitu:
- Perancangan arsitektural; kita merancang struktur modul P/L dengam mengacu pada model analisis yang sesuai (DFD). Langkahnya adalah: mengidentifikasi jenis aliran (transform flow atau transaction flow), menemukan batas-batas aliran (incoming flow dan outgoing flow), kemudian memetakannya menjadi striktur hirarki modul. Selanjutnya, kita alokasikan fungsi-fungsi yang harus ada pada modul-modul yang tepat.
- Perancangan data; kita merancang struktur data yang dibutuhkan, serta merancang skema basisdata dengan mengacu pada model analisis yang sesuai (ERD).
- Perancangan antarmuka; kita merancang antarmuka P/L dengan pengguna, antarmuka dengan sistem lain, dan antarmuka antar-modul.
- Perancangan prosedural; kita merancang detil dari setiap fungsi pada modul. Notasi yang digunakan bisa berupa flow chart, algoritma, dan lain-lain
Pastikan bahwa model perancangan yang kita buat sudah mengakomodasi kebutuhan non fungsional.


