REKAYASA PERANGKAT LUNAK
PEMODELAN ANALISIS
Pada
tingkat teknik, rekayasa perangkat lunak dimulai dengan serangkaian tugas
pemodelan. Model analisis sebenarnya merupakan serangkaian model yang
merupakan representasi teknis yang pertama dari system. Di dalam suatu industri
dikenal berbagai macam proses, demikian juga halnya dengan industri perangkat
lunak. Perbedaan proses yang digunakan akan menguraikan aktivitas-aktivitas
proses dalam cara-cara yang berlainan. Perusahaan yang berbeda menggunakan
proses yang berbeda untuk menghasilkan produk yang sama. Tipe produk yang
berbeda mungkin dihasilkan oleh sebuah perusahaan dengan menggunakan proses
yang berbeda. Namun beberapa proses lebih cocok dari lainnya untuk beberapa
tipe aplikasi. Jika proses yang salah digunakan akan mengurangi kualitas
kegunaan produk yang dikembangkan.
Karena
banyaknya variasi dalam model proses yang digunakan maka tidak mungkin
menghasilkan gambaran-gambaran yang reliabel untuk alokasi biaya dalam
aktivitas-aktivitas ini.
Modifikasi perangkat lunak biasanya lebih dari 60 % dari
total biaya pembuatan perangkat lunak. Presentasi ini terus bertambah karena
lebih banyak perangkat lunak dihasilkan dan dipelihara. Pembuatan perangkat lunak untuk
suata perubahan adalah penting. Proses perangkat lunak komplek dan melibatkan
banyak aktivitas.
Seperti
produk, proses juga memiliki atribut dan karakteristik seperti :
- Understandability, yaitu sejauh mana proses secara eksplisit ditentukan dan bagaimana kemudahan definisi proses itu dimengerti.
- Visibility, apakah aktivitas-aktivitas proses mencapai titik akhir dalam hasil yang jelas sehingga kemajuan dari proses tersebut dapat terlihat nyata/jelas
- Supportability, yaitu sejauh mana aktivitas proses dapat didukung oleh CASE
- Acceptability, apakah proses yang telah ditentukan oleh insinyur dapat diterima dan digunakan dan mampu bertanggung jawab selama pembuatan produk perangkat lunak
- Reliability, apakah proses didesain sedikian rupa sehingga kesalahan proses dapat dihindari sebelum terjadi kesalahan pada produk.
- Robustness, dapatkah proses terus berjalan walaupun terjadi masalah yang tak diduga
- Maintainability, dapatkah proses berkembang untuk mengikuti kebutuhan atau perbaikan
- Rapidity, bagaimana kecepatan proses pengiriman sistem dapat secara lengkap memenuhi spesifikasi.
Tetapi pada
saat ini ada dua landskap pemodelan analisis. Yaitu yang pertama analisis
terstrutur adalah metode pemodelan klasik. Dimana analisis
terstruktur ini merupakan aktifitas pembangunan model. Dan yang kedua
adalah analisis berorientasi Objek . Tetapi pada makalah
ini yang dijelaskan adalah Tinjauan singkat terhadap metode analisis yang
umum digunakan. Untuk menciptakan model yang menggambarkan muatan dan aliran
informasi (data dan kontrol).
A.
Elemen Model
Analisis
·
Menggambarkan apa yang dibutuhkan
pelanggan
·
Membangun dasar bagi pembuatan desain
perangkat lunak
·
Membatasi serangkaian persyaratan yang
dapat divalidasi begitu perangkat lunak dibangun.
Keuntungan Pemodelan
analisis:
·
Memberikan spesifikasi
kebutuhan yang lebih lengkap dan presisi menghilangkan ambiguitas dan
redudansi.
·
Dijelaskan dalam bahasa “developer”
lebih formal.
·
Spesifikasi lebih
terstruktur sehingga lebih mudah dipahami dan dipelihara.
B.
Pemodelan
Data
Pemodelan data menjawab serangkaian data spesifik
yang relevan dengan berbagai aplikasi pemrosesan data.Untuk memodelkan data,
digunakan ERD.
Elemen-elemen pemodelan data
·
Objek data.
·
Atribut dan
·
Hubungan
Karyawan Kendaraan
Nama Model
NIP Plat
nomor
Thn
masuk
No Rangka
Thn beli
1. Objek
data
·
Representasi
semua informasi gabungan yang harus dipahami perangkat lunak.
Contoh: Karyawan adalah objek data. Gabungan
informasi yang dipunyai karyawan adalah nama, nip, golongan, tahun masuk
2. Atribut
·
Informasi yang
dimiliki oleh objek data
·
Satu atribut
atau lebih harus jadi pengidentifikasi atau kunci yang unix ketika ingin
menemukan sebuah objek data.
3. Hubungan
·
Menggambarkan
hubungan suatu objek data ke objek data lainya
Contoh :
l Karyawan memiliki kendaraan
l Karyawan mempunyai komputer
l Karyawan mengambil pinjaman
l Karyawan bekerja pada divisi
C.
Pemodelan
Tingkah Laku
·
Keadaan (state) adalah model tingkah
laku yang dapat diobservasi.
·
Perubahan keadaan (State transistion)
adalah pergerakan dari satu keadaan ke keadaan lain.
·
Event adalah kejadian yang membuat
sistem menampilkan suatu bentuk tingkah laku.
·
Action adalah proses yang terjadi
sebagai konsekuensi dari adanya transisi.
Langkah untuk Pemodelan Tingkah Laku
·
Buat daftar sejumlah keadaan yang
berbeda dari sistem.
·
Analisa bagaimana sistem membuat sebuah
transisi ke transisi berikutnya.
·
Gambarkan dalam sebuah State Transition
Diagram (STD)
D.
KAMUS DATA
Pengertian Kamus data menurut PRESS [4] adalah : ” daftar elemen-elemen data yang terorganisasi yang berhubungan
dengan sistem, sehingga pengguna dan
analis sistem mempunyai pemahaman yang sama tentang data masukan, data keluaran
serta komponen-komponennya “.
Kamus data pertama berbasis dokumen - kamus
data itu tersimpan dalam bentuk hard copy dengan mencatat semua
penjelasan data dalam bentuk tercetak. Walau sejumlah kamus berbasis dokumen
masih ada, praktek yang umum sekarang
adalah menggunakan kamus data berbasis komputer. Pada kamus data berbasis
komputer penjelasan data dimasukkan ke dalam komputer dengan menggunakan data
description language (DDL) dari sistem manajemen database,sistem
kamus, atau peralatan CASE. .
Dengan menggunakan KD analis system dapat mendefinisikan data yang mengalir di system
dengan lengkap.KD di buat pada tahap analisis system dan digunakan baik pada
tahap analisis maupun pada tahap perancangan system.
Pada tahap analisis,
KD digunakan sebagai alat komunikasi antara analisis system dengan pemakai
system tentang data yang mengalir di system, yaitu tentang data yang masuk ke
system dan tentang informasi yang dibutuhkan oleh pemakai system.
Pada tahap perancangan sistem, KD
digunakan untuk merancang input, merancang laporan-laporan dan database.
KD
dibuat berdasarkan arus data yang ada di DFD.
Gambar
berikut ini menunjukkan hubungan antara DFD dengan KD
Bentuk-bentuk
Kamus Data
Sistem
yang disajikan di sini terdiri dari satu set empat bentuk kamus yang menjelaskan
isi database secara hirarkis seperti tampak dalam Gambar 1. Set
bentuk-bentuk ini disesuaikan untuk melengkapi model proses yang menggunakan
diagram arus data. Bentuk-bentuk tersebut memungkinkan kamus data memberikan
dokumentasi lengkap mulai dari tingkat ringkas dalam hal arus data sampai ke
penjelasan rinci untuk tiap elemen data. Kamus data karenanya merupakan
peralatan terstruktur top-down. .
Konten
Kamus data
·
Nama
Nama data, kontrol, penyimpan data
atau entitas eksternal
·
Alias
Nama lain yang digunakan
·
Where
used/how used
Proses yang menggunakan data dan
bagaimana ia digunakan
·
Content desc
Notasi untuk merepresentasikan isi
·
Supplementary information
Informasi lain mengenai tipe data,
harga, dll
contoh
E.
FUNGSIONAL DAN ALIRAN INFORMASI
Analisis terstruktur dimulai sebagai sebuah teknik pemodelan aliran
informasi. Sebuah sistem berbasis komputer direpresentasikan sebagai sebuah
transformasi informasi. Sebagai contoh terlihat pada gambar 4.0 keseluruhan
fungsi dari sistem tersebut diwakilkan sebagai transformasi informasi tunggal,
yang ditulis sebagai gelembung didalam gambar. Satu input atau lebih
diperlihatkan oleh anak panah yang diberi label , berasal dari entitas
eksternal. Yang direpresentasikan sebagai sebuah kotak. Input mengendalikan
transformasi tersebut untuk memproduksi informasi Output yang dilewatkan ke
entitas eksternal.
Diagram Aliran Data
Pada saat informasi mengalir melalui pernagkat lunak, dia dia dimodifikasi oleh
suatu deretan transformasi. Diagram aliran data / data flow diagram (DFD)
adalah sebuah teknik grafis yang menggambarkan aliran informasi dan
transformasi yang diaplikasikan pada saat data bergerak dari input menjadi
output. Bentuk dasar dari suatu aliran data diilustrasikan didalam gambar
4.0. DFD juga dikenali sebagai grafik aliran aliran data atau bubble chart.
DFD tingkat 0
yang disebut juga dengan model system fundamentasi atau model konteks,
merepresentasi seluruh elemen system sebagai sebuah bubble tunggal dengan data
input dan output yang ditunjukkan oleh anak panah yang masuk dan keluar secara
berurutan. Proses tambahan (bubble) dan jalur aliran informasi
direpresentasikan pada saat DFD tingkat 0 dipartisi untuk megungkap detail yang
lebih. Contohnya, sebuah DFD tingkat 1 dapat berisi lima atau enam bubble
dengan anak panah yang saling menghubungkan
Ekstensi
Sistem Real-Time
Sistem real-time harus berinteraksi
dengan dunia nyata didalam kerangka waktu yang ditentukan oleh dunia nyata.
Penerbangan pesawat, proses pabrik, produk konsumen dan instrumentasi industri
merupakan beberapa dari ratusan aplikasi perangkat lunak real-time.
Ekstensi
Ward dan Mellor
Ward dan Mellor memperluas notasi
analisis struktur dasar untuk mengakomodasi permintaan yang dikenakan oleh
system real-time berikut ini :
· Aliran informasi dikumpulkan atau
dihasilkan pada basis time-continious
· Informasi control yang dilewatkan
melalui system dan pemrosesan control yang sesuai
· Contoh bertingkat dari transformasi
yang sama, yang kadang-kadang terjadi didalam situasi multitasking
· Pernyataan system dan mekanisme yang
menyebabkan transisi diantara keadaan.
Ekstensi Hatley dan Pirbhai
Ekstensi Hatlei dan Pirbhai kenotasi analisis terstruktur
dasar kurang berfokus pada kreasi dari symbol grafis tambahan dan lebih
berfokus pada representasi dan spesifikasi aspek perangkat lunak yang
berorientasi pada control.
F.
Mekanik dari Analisis Terstruktur
Membuat sebuah diagram hubungan
Entitas
Diagram
hubungan entitas memungkinkan seorang perekayasa perangkat lunak untuk
secara penuh menspesifikasikan objek data yang merupakan input dan output dari
system. Pendekatan berikut ini perlu diketahui dalam membuat diagram Entitas :
- Selama pengumpulan persyaratan, pelanggan diminta untuk mendaftar ‘hal-hal’ yang akan dituju oleh proses bisnis dan aplikasi. ‘Hal-hal’ ini dimasukkan kedalam sebuah daftar objek data input dan output dan entitas eksternal yang menghasilkan atau mengkonsumsi informasi.
- Dengan mengambil objek satu pada satu saat , analis dan pelanggan mendefinisikan apakah ada sambungan (tidak diberi nama pada tahap ini ) ada diantara objek data dan objek lain.
- Dimanapun sambungan ada, analis dan pelanggan menciptakan satu pasangan hubungan objek atau lebih .
- Untuk masing-masing pasangan hubungan objek, dicari kardinalitas dan modalitas.
- Langkah 2 sampai 4 dilanjutkan secara iterative sampai semua pasangan hubungan objek sudah didefinisikan. Sudah menjadi kebiasaan untuk menemukan penghilangan pada saat proses ini berlanjut. Objek dan hubungan baru akan ditambahkan pada saat jumlah iterasi bertambah.
- Atribut dari masing-masing entitas didefinisikan
- Diagram entitas diformalisasikan dan dikaji
- Langkah 1 sampai 7 diulangi sampai pemodelan data terlengkapi.
Membuat Sebuah Model Aliran Data
Diagram aliran data (DFD) memungkinkan perekayasa perangkat
lunak untuk mengembangkan model domain informasi dan domain fungsional pada
saat yang sama. Beberapa tuntunan sederhana dengan terukur dapat membantu
selama derivasi sebuah diagram aliran data :
1. diagram aliran data tingkat 0 harus
menggambarkan perangkat lunak/system sebagai gelembung tunggal.
2. input dan output utama harus dicatat
secara berhati – hati
3. penyaringan harus dimulai dengan
mengisolasi proses calon, objek data, dan penyimpanan yang akan
direpresentasikan pada tingkat selanjutnya.
4. semua anak panah dan gelembung harus
diberi label dengan nama yang berarti
5. kontinyuitas aliran informasi harus dijaga dari tingkat ke
tingkat
6. satu gelembung pada satu saat
harus disaring.
Ada
kecenderungan natural untuk terlalu mengkomlikasikan diagram aliran data. Hal
ini terjadi bila analisis ingin menunjukkan terlalu banyak detail pada
saat yang terlalu dini
Membuat Sebuah Model Aliran Kontrol
Untuk
beberapa tipe aplikasi pemrosesan, model data dan diagram aliran data
meruapakan hal yang diperlukan untuk memperoleh wawasan yang berarti kedalam
persyaratan perangkat lunak. Tetapi, seperti yang telah dicatat, disana ada
suatu kelas aplikasi yang besar yang lebih dikendalikan oleh kejadian dari pada
data, yang lebih menghasilkan informasi control dari pada menghasilkan laporan
dan tampilan. Dan yang memproses informasi dengan perhatian besar kepada waktu
dan kinerja kerja. Aplikasi semacam itu mambutuhkan pemodelan aliran control
sebagai tambahan kepemodelan aliran data.
Telah
kita catat bahwa sebuah kejadian atau item control diimplementasikan sebagai
harga Boolean (misalnya; benar atau salah, on atau off, 1 atau 0) atau sebuah
daftar diskrit dari keadaan (kosong,penuh), untuk memilih calon kejadian yang
potensial, diusulkan tuntutan berikut ini :
·
Daftarlah semua sensor yang dibaca
oleh perangkat lunak
·
Daftarlah semua keadaan interupsi
·
Bacalah semua saklar yang diaktuasi
oleh operator
·
Daftarlah semua keadaan data
·
Dengan menarik uraian data kerja dan
data benda yang diaplikasikan ke narasi pemrosesan, kajilah semua item control
sebagai input /output CSPEC yang mungkin
·
Gambarkanlah tingkah laku dari
system dengan mengidentifikasi keadaannya ; identifikasikanlah bagaimana
keadaan dicapai dan definisikanlah transisi antar keadaan.
·
Fokuskanlah penghilangan yang
mungkin sebuah kesalahan yang paling umum didalam menspesifikasikan control
(misalnya, tanyakanlah ; adakah suatu cara dimana saya dapat masuk ke keadaan
itu atau keluar darinya).
Spesifikasi Kontrol
CSPEC mempresentasikan tingkah laku
system (pada tingkat dimana dia direferensikan) didalam dua cara yang berbeda.
CSPEC berisi sebuah diagram transisi keadaan (STD) yang merupakan suatu spesifikasi
sekuensial dari tingkah laku. Dia juga dapat berisi suatu table aktifitas
proses (PAT) – sebuah spesifikasi kombinaturial dari tingkah laku.
Spesifikasi Proses
Spesifikasi Proses (PSPEC) digunsksn untuk menggambarkan
semua proses model aliran yang nampak pada tingkat akhir penyaringan.Kandungan
dari spesifikasi proses dapat termasuk teks naratif, bahasa design program/Progamme
Design Language (PDL) dari Algoritma proses, persamaan Matematika, table,
diagram atau bagan, dengan memberikan sebuah PSPEC untuk mengiringi
masing-masing gelembung didalam model aliran, berarti perekayasa perangkat
lunak menciptakan sebuah “spesifikasi mini”yang dapat berfungsi sebagai sebuah
langkah pertama didalam kreasi spesifikasi persyaratan perangkat lunak dan
sebagai penuntun bagi desaign komponen program yang akan mengimplementasikan
program.
g.
Metode Analisis Klasik
Data Structured Systems Development
Data Structure System Development (DSSD), yang disebut juga
dengan metodologi Warnier-Orr terjadi dari kerja perintis mengenai analisis
domain informasi yang dilakukan oleh J.D Warnier. Warnier mengembangkan sebuah
notasi untuk mempresentasikan hirarki informasi dengan menggunakan tiga
kontruksi untuk urutan, pemilihan, dan pengulangan dan mendemonstrasikan bahwa
struktur perangkat lunak dapat ditarik dari struktur data..
Ken
Orr memperluas kerja Warnier untuk mencakup pandangan yang lebih luas mengenai
domain informasi yang telah dikembangkan kedalam DSSD
Jackson System Development
Jackson System Development (JDS) mengembangkan kerja yang
dilakukan oleh M.A. Jackson tentang analisis domain informasi dan hubungannya
dengan desain system dan program. Dalam kalimat Jackson , “Pengembang memulai
dengan menciptakan sebuah model realistis dimana system diperhatikan, realitas
yang memperlengkapi masalah subjek (system)nya..”
SADT
Structured analysis and design technique
(SADT) adalah sebuah teknik yang telah digunakan secara luas sebagai sebuah
notasi untuk definisi system, representasi proses, analisis persyaratan
perangkat lunak dan desaign system /perangkat lunak.