Selasa, 31 Agustus 2010

Tahapan Rekayasa Perangkat Lunak

iklus Pengembangan Perangkat Lunak
Salah satu strategi yang sering dipakai sebagai model proses atau paradigma rekayasa perangkat lunak yaitu dengan menggunakan model waterfall. Model waterfall merupakan pendekatan perangkat lunak yang sistematik dan sekuensial yang dimulai dari tahap analisis, desain, kode, pengujian, dan pemeliharaaan.
Model Waterfall.JPG
Tahap-tahap model waterfall melingkupi aktivitas-aktivitas sebagai berikut :
1. Rekayasa dan pemodelan sistem/informasi.
Rekayasa dan analisis sistem menyangkut pengumpulan kebutuhan (requirements) pada tingkat sistem dengan sejumlah kecil analsis. Rekayasa informasi mencakup juga pengumpulan kebutuhan pada tingkat bisnis strategis dan tingkat area bisnis.
2. Analisis kebutuhan perangkat lunak.
Tahap ini merupakan proses pengumpulan kebutuhan secara intensif dan terfokus, khususnya pada perangkat lunak.
3. Desain.
Tahap ini adalah proses multi langkah yang berfokus pada empat atribut sebuah program yang berbeda; struktur data, arsitektur perangkat lunak, representasi interface, dan detail (algoritma) prosedural.
4. Generasi Kode.
Merupakan tahap penerjemahan dari proses desain ke dalam bentuk mesin yang bisa dibaca.
5. Pengujian.
Tahap ini berfokus pada logika internal perangkat lunak, memastikan bahwa semua pernyataan sudah diuji, dan pada eksternal fungsional yaitu mengarahkan pengujian untuk menemukan kesalahan-kesalahan dan memastikan bahwa input yang dibatasi akan memberikan hasil aktual yang sesuai dengan hasil yang dibutuhakan.
6. Pemeliharaan.
Proses pemeliharaan perangkat lunak dan keseluruhan sistem bila terjadi kesalahan pada program, atau terjadi perubahan lingkungan perangkat lunak dan juga bila terjadi perubahan requirements dan maintenance yang bersifat preventif untuk mengantisipasi keadaan yang tidak diinginkan.

Alat Bantu Pemodelan Sistem

1. Data Flow Diagram (DFD)
DFD merupakan sebuah teknik grafis yang menggambarkan aliran informasi dan transformasi yang diaplikasikan pada saat data bergerak dari input menjadi output. DFD dapat digunakan untuk merepresentasikan sistem atau software pada beragam tingkat abstraksi.
Notasi yang digunakan untuk menciptakan suatu DFD diilustrasikan dengan tabel sebagai berikut:
Notasi DFD Dasar.JPG
2. Spesifikasi Proses
Spesifikasi proses (PSPEC) digunakan untuk menggambarkan dan menjelaskan semua proses model aliran yang nampak pada tingkat akhir penyaringan [PRE97]. Atribut pada spesifikasi proses antara lain : Nomor Proses, Nama Proses, Deskripsi, Input, Output, dan Logika Proses.

3. Kamus Data
Digunakan untuk mendeskripsikan data sesungguhnya maupun penyimpanan data yang ada pada Data Flow Diagram (DFD). Atribut dari kamus data meliputi : Nama, Deskripsi, Sumber dan Tujuan, Struktur Data.

Perancangan Basis Data

Diagram Entity-Relationship (Diagram ER)
Diagram ER adalah diagram yang berisi komponen-komponen Himpunan Entitas dan Himpunan Relasi yang masing-masing dilengkapi dengan atribut-atribut yang merepresentasikan seluruh fakta dari ‘dunia nyata’ yang kita tinjau.
Notasi-notasi simbolik di dalam diagram ER diilustrasikan dengan tabel sebagai berikut:
Notasi Simbolik 
Diagram E-R.JPG
Normalisasi
Normalisasi merupakan proses pengelompokan data elemen menjadi tabel-tabel yang menunjukkan entitas dan relasinya.
Normalisasi mempunyai berbagai kriteria antara lain :
1. Bentuk Normal Pertama (1NF / First Normal Form).
Bentuk normal tahap pertama terpenuhi jika sebuah tabel tidak memiliki Atribut Bernilai Banyak (Multivalued Attribute) atau lebih dari satu atribut dengan domain nilai yang sama.
2. Bentuk Normal Kedua (2NF / Second Normal Form).
Bentuk normal tahap kedua terpenuhi jika telah memenuhi criteria bentuk normal kesatu. Kriteria lain jika semua atribut yang tidak termasuk dalam key primer memiliki ketergantungan fungsional (KF) pada key primer secara utuh.
3. Bentuk Normal Ketiga (3NF / Third Normal Form).
Bentuk normal tahap ketiga terpenuhi jika telah memenuhi criteria bentuk normal kedua. Kriteria lain Kriteria lain untuk normal ketiga, jika untuk setiap KF dengan notasi X => A, dimana A mewakili semua atribut tunggal di dalam tabel yang tidak ada di dalam X, maka :
- X haruslah superkey pada tabel tersebut,
- Atau A merupakan bagian dari key primer pada tabel tersebut.