PERANCANGAN TERSTRUKTUR
Definisi
Perancangan terstruktur merupakan
aktivitas mentransformasikan suatu hasil analisis ke dalam suatu perencanaan
untuk dapat diimplementasikan (diotomasikan). Pendekatan perancangan
terstruktur dimulai dari awal 1970. Pendekatan terstruktur dilengkapi
dengan alat-alat (tools) dan teknikteknik (techniques) yang dibutuhkan dalam
pengembangan sistem, sehingga hasil akhir dari sistem yang dikembangkan akan
diperoleh sistem yang strukturnya didefinisikan dengan baik dan jelas.
Melalui pendekatan terstruktur,
permasalahan yang komplek di organisasi dapat dipecahkan dan hasil dari sistem
akam mudah untuk dipelihara, fleksibel, lebih memuaskan pemakainya, mempunyai
dokumentasi yang baik, tepat waktu, sesuai dengan anggaran biaya pengembangan,
dapat meningkatkan produktivitas dan kualitasnya akan lebih baik (bebas
kesalahan).
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
Elemen Perancangan
Terstruktur
1. Modul
Modul merupakan sebuah instruksi
atau sekumpulan instruksi program yang terdiri dari : input(masukan),
output(keluaran), fungsi, mekanisme dan data internal. Contoh
: Foxpro / Pascal (Procedure, function),
COBOL (Program,
section,paragraph), FORTRAN (subroutine).
2. Bagan terstruktur
(Structured Chart)
Menggambarkan partisi sistem ke dalam
: modul-modul, organisasi, dan komunikasi. Keuntungannya
; Menggunakan gambar, Dapat dipartisi, Fleksibel, Input sangat
berguna pada implementasi, Membantu pemeliharaan (maintenance) dan
modifikasi.
3. Strategi Perancangan
Mentransformasikan hasil analisis
(DFD) menjadi Bagan Terstruktur, untuk diimplementasi. DFD memperlihatkan
aliran data dan informasi dari sistem. Jika dalam suatu DFD aliran datanya
ditentukan oleh suatu data item, misalnya ‘T’ yang mempunyai nilai/
karakteristik tertentu, kemudian nilai ini akan mempengaruhi / menentukan arah
aliran data (men-trigger arah), maka titik proses dimana terjadi percabangan
arah aliran data tsb disebut titik pusat transaksi
4. Optimasi dari
perancangan (Design Heuristic)
Tools Perancangan
Terstruktur
- DFD (Data Flow Diagram )
- Kamus Data
- Entity Relationship Diagram
(ERD)
- State Transition Diagram
(STD)
Metodologi Perancangan
Terstruktur
Metodologi pemecahan
fungsional
Metodologi ini menekankan pada
pemecahan sistem ke dalam subsistem-subsistem yang lebih kecil, sehingga akan
lebih mudah untuk dipahami, dirancang, dan diterapkan.
Metodologi berorientasi
data
Metodologi ini menekankan pada
karakteristik data yang akan diproses.
Prescriptive
methodologies
Metodologi ini merupakan metodologi
yang dikembangkan oleh sistem house dan pabrik-pabrik perangkat lunak dan
tersedia secara komersial dalam paket-paket program.
Kelebihan dan Kekurangan
Perancangan Terstruktur
Kelebihan
*Milestone diperlihatkan
dengan jelas yang memudahkan dalam manajemen proyek.
*SSAD merupakan pendekatan
visual, ini membuat metode ini mudah dimengerti oleh pengguna atau
programmer.
*Penggunaan analisis grafis
dan tool seperti DFD menjadikan SSAD menjadikan bagus untuk digunakan.
*SSAD merupakan metode yang
diketahui secara umum pada berbagai industry.
*SSAD sudah diterapkan
begitu lama sehingga metode ini sudah matang dan layak untuk digunakan.
*SSAD memungkinkan untuk
melakukan validasi antara berbagai kebutuhan
*SSAD relatif simpel dan
mudah dimengerti.
Kekurangan
*SSAD berorientasi utama
pada proses, sehingga mengabaikan kebutuhan non-fungsional.
Sedikit sekali manajemen
langsung terkait dengan SSAD.
*Prinsip dasar SSAD
merupakan pengembangan non-iterative (waterfall), akan tetapi kebutuhan
akan berubah pada setiap proses.
*Interaksi antara analisis
atau pengguna tidak komprehensif, karena sistem telah didefinisikan dari
awal, sehingga tidak adaptif terhadap perubahan (kebutuhan-kebutuhan
baru).
*Selain dengan menggunakan
desain logic dan DFD, tidak cukup tool yang digunakan untuk
mengkomunikasikan dengan pengguna, sehingga sangat sulit bagi pengguna
untuk melakukan evaluasi.
*Pada SAAD sulitt sekali
untuk memutuskan ketika ingin menghentikan dekomposisi dan mliai membuat
sistem.
*SSAD tidak selalu memenuhi
kebutuhan pengguna.
*SSAD tidak dapat memenuhi
kebutuhan terkait bahasa pemrograman berorientasi obyek, karena metode ini
memang didesain untuk mendukung bahasa pemrograman terstruktur, tidak
berorientasi pada obyek (Jadalowen, 2002).
PERANCANGAN
BERORIENTASI OBJEK
Definisi
Perancangan
berorientasi objek adalah suatu teknik atau cara pendekatan baru dalam melihat
permasalahan dan sistem (sistem perangkat lunak. Sistem informasi, atau sistem
lainnva). Pendekatan berorientasi objek akan memandang sistem yang akan
dikembangkan sebagai suatu kumpulan objek yang berkorespondensi dengan
objek-objek dunia nyata. Pengertian "berorientasi objek" berarti
bahwa kita mengorganisasi perangkat lunak sebagai kumpulan dari objek tertentu
yang memiliki struktur data dan perilakunya.
Pendekatan Objek memiliki beberapa
karakteristik atau sifat yaitu:
1. Abstraksi, yaitu prinsip untuk
merepresentasikan dunia nyata yang kompleks menjadi satu bentuk model yang
sederhana dengan mengabaikan aspek-aspek lain yang tidak sesuai dengan
permasalahan.
2. Enkapsulasi, yaitu pembungkusan
atribut data dan layanan (operasi-operasi) yang dipunyai objek.
3. Pewarisan (Inheritance), yaitu
mekanisme yang memungkinkan satu objek mewarisi sebagian atau seluruh definisi
dan objek lain sebagai bagian dan dirinya.
4. Reusability, yaitu pemanfaatan
kembali objek yang sudah didefinisikan untuk suatu permasalahan pada
permasalahan lainnya yang melibatkan objek tersebut.
5. Generalisasi dan Spesialisasi,
yaitu menunjukkan hubungan antara kelas dan objek yang umum dengan kelas dan
objek yang khusus.
6. Komunikasi Antar Objek, yaitu
dilakukan lewat pesan yang dikirim dari satu objek ke objek lainnya.
7. Polymorphism, yaitu kemampuan suatu
objek untuk digunakan di banyak tujuan yang berbeda dengan nama yang sama,
sehingga menghemat baris program.
Tools Perancangan
Berorientasi Objek
Object Oriented Analysis (OOA)
dan Object Oriented Design (OOD) dari Peter Coad dan Edward Yourdon
[1990].
Object Modeling Technique (OMT)
dan James Rumbaugh, Michael Blaha, William Premerlan, Frederick Eddy dan
William Lorensen [1991].
Object Oriented Software Engineering
(OOSE) dan Ivar Jacobson [1992].
Booch Method dan Grady Booch
[1994].
Sritrop dan Steve Cook dan John
Daniels [1994].
UML (Unified Modeling Language)
dari James Rumbaugh. Grady Booch dan Ivar Jacobson [1997].
Kelebihan dan Kekurangan
Perancangan Berorientasi Objek
Kelebihan
*Dibandingkan dengan metode SSAD,
OOAD lebih mudah digunakan dalam pembangunan sistem.
*Dibandingkan dengan SSAD, waktu
pengembangan, level organisasi, ketangguhan,dan penggunaan kembali (reuse)
kode program lebih tinggi dibandingkan dengan metode OOAD (Sommerville,
2000).
*Tidak ada pemisahan antara fase
desain dan analisis, sehingga meningkatkan komunikasi antara user dan
developer dari awal hingga akhir pembangunan sistem.
*Analis dan programmer tidak
dibatasi dengan batasan implementasi sistem, jadi desain dapat
diformliasikan yang dapat dikonfirmasi dengan berbagai lingkungan
eksekusi.
*Relasi obyek dengan entitas
(thing) umumnya dapat di mapping dengan baik seperti kondisi pada dunia
nyata dan keterkaitan dalam sistem. Hal ini memudahkan dalam mehami desain
(Sommerville, 2000).
*Memungkinkan adanya perubahan dan
kepercayaan diri yang tinggi terhadap kebernaran software yang membantu
untuk mengurangi resiko pada pembangunan sistem yang kompleks (Booch,
2007).
*Encapsliation data dan method,
memungkinkan penggunaan kembali pada proyek lain, hal ini akan memperingan
proses desain, pemrograman dan reduksi harga.
*OAD memungkinkan adanya
standarisasi obyek yang akan memudahkan memahami desain dan mengurangi
resiko pelaksanaan proyek.
*Dekomposisi obyek, memungkinkan
seorang analis untuk memcah masalah menjadi pecahan-pecahan masalah dan
bagian-bagian yang dimanage secara terpisah. Kode program dapat dikerjakan
bersama-sama. Metode ini memungkinkan pembangunan software dengan cepat,
sehingga dapat segera masuk ke pasaran dan kompetitif. Sistem yang
dihasilkan sangat fleksibel dan mudah dalam memelihara.
Kekurangan
*Pada awal desain OOAD, sistem
mungkin akan sangat simple.
*Pada OOAD lebih fockus pada
coding dibandingkan dengan SSAD.
*Pada OOAD tidak menekankan pada
kinerja team seperti pada SSAD.
*Pada OOAD tidak mudah untuk
mendefinisikan class dan obyek yang dibutuhkan sistem.
Sering kali pemrogramam
berorientasi obyek digunakan untuk melakukan anlisisis terhadap fungsional
siste, sementara metode OOAD tidak berbasis pada fungsional sistem.
*OOAD merupakan jenis manajemen
proyek yang tergolong baru, yang berbeda dengan metode analisis dengan
metode terstruktur. Konsekuensinya adalah, team developer butuh waktu yang
lebih lama untuk berpindah ke OOAD, karena mereka sudah menggunakan SSAD
dalam waktu yang lama ( Hantos, 2005).
*Metodologi pengembangan sistem
dengan OOAD menggunakan konsep reuse. Reuse merupakan salah satu
keuntungan utama yang menjadi alasan digunakannya OOAD. Namun demikian,
tanpa prosedur yang emplisit terhadap reuse, akan sangat sliit untuk
menerapkan konsep ini pada skala besar (Hantos, 2005).
referensi :
-
http://supriliwa.wordpress.com/2010/05/07/perbandingan-metode-terstruktrur-dan-obyek-oriented-pada-pengambangan-sistem-informasi/
- http://yosuaalvin.students-blog.undip.ac.id/apbo/http://mrdaniels.wordpress.com/2009/01/31/pendekatan-berorientasi-objek/