The Linear Sequential Model

Model Linear Sequential terkadang disebut siklus hidup klasik atau model air terjun, model sekuensial linier menunjukkan sistematis, pendekatan sekuensial untuk pengembangan perangkat lunak yang dimulai pada tingkat sistem dan kemajuan melalui analisis, desain, coding, pengujian, dan dukungan. Gambar 1. menggambarkan model sekuensial linier untuk rekayasa perangkat lunak. Model setelah siklus rekayasa konvensional, model sekuensial linier meliputi kegiatan sebagai berikut:

System/information engineering and modeling.
Karena perangkat lunak selalu merupakan bagian dari sistem yang besar (atau bisnis), pekerjaan berawal dengan menetapkan persyaratan untuk semua elemen sistem dan kemudian mengalokasikan beberapa subset dari kebutuhan tersebut untuk perangkat lunak. melihat sistem ini terpenting ketika perangkat lunak harus berinteraksi dengan elemen lain seperti hardware, orang, dan database. Rekayasa dan analisis sistem meliputi pengumpulan persyaratan/kebutuhan pada tingkat sistem dengan sejumlah kecil desain dan analisis tingkat atas. Rekayasa Informasi yang mencakup pengumpulan persyaratan di tingkat bisnis strategis dan tingkat area bisnis.

Software requirements analysis.
Proses pengumpulan persyaratan adalah diintensifkan dan difokuskan secara khusus pada perangkat lunak. Untuk memahami sifat program yang akan dibangun, software engineer (“analis”) harus memahami domain informasi untuk perangkat lunak, serta diperlukan fungsi, perilaku, kinerja, dan interface. Persyaratan untuk kedua sistem dan perangkat lunak didokumentasikan dan ditinjau dengan pelanggan.

Design.
Desain perangkat lunak sebenarnya adalah proses dengan banyak langkah yang berfokus pada empat atribut yang berbeda dari program: struktur data, arsitektur perangkat lunak, representasi interface, dan prosedural (algoritmik) secara rinci. Proses desain menerjemahkan kebutuhan ke dalam sebuah representasi perangkat lunak yang dapat dinilai kualitasnya sebelum coding dimulai. Seperti Kebutuhan, desain didokumentasikan dan menjadi bagian dari konfigurasi perangkat lunak.

Code generation.
Langkah pembuatan kode program melakukan tugas ini.  Desain harus diterjemahkan ke dalam bentuk yang dapat dibaca oleh mesin. Jika desain dilakukan dengan cara yang rinci, pembuatan kode dapat diselesaikan secara mekanis.

Testing.
Setelah kode telah dihasilkan, pengujian program dimulai. Proses pengujian berfokus pada internal logis dari perangkat lunak, memastikan bahwa semua pernyataan sudah diuji, dan pada eksternal fungsional; yaitu, melakukan pengujian untuk mengungkap kesalahan dan memastikan bahwa pendefinisian masukan akan menghasilkan hasil aktual yang sesuai dengan hasil yang dibutuhkan.

Support.

Perangkat lunak pasti akan mengalami perubahan setelah disampaikan kepada pelangga. Perubahan akan terjadi karena memiliki kesalahan dan 2harus menyesesuaikan mengakomodasi perubahan dalam lingkungan eksternal (misalnya, perubahan yang diperlukan karena sistem operasi baru atau perangkat periferal lainnya), atau karena pelanggan memerlukan fungsional atau peningkatan kinerja lainnya. Perangkat lunak pendukung/pemeliharaan menerapkan kembali setiap tahap sebelumnya untuk program yang ada saat ini daripada installasi yang baru.
Sumber: Pressman, Roger S.(2001). Software engineering: a practitioner’s approach—5th ed. New York: McGraw-Hill Publishing Company, Inc.