Data Oriented Program (DOP)
Sudut pandang analisis pada pendekatan ini difokuskan pada
aspek fungsional dan behavioral (perilaku system).Pengembang harus mengetahui
fungsi- fungsi atau proses-proses apa saja yang ada dalam system, data apayang
menjadi masukanya, di mana data tersebut di simpan, transformasi apa yang akan
dilakukan terhadap data tersebut dan apa yang menjadi hasil transformasinya.
Selain itu, pengembang harus mengetahui keadaan (state),perubahan (transition),
kodisi(condition) dan aksi (action) dari system.
Salah satu metode yang paling popular untuk pendekatan ini
adalah Analisis Terstruktur (Structured Analysis ) yang di kembang oleh TOM
DeMarco, Chris Gane dan Trish Sarson dan Edward Yourdon. Pada metode ini, hasil
analisis dan perancangan di modelkan seperti :
·
Data Flow Diagram (DFD) dan Kamus Data (data
dictionary) untuk menggambarkan fungsi-fungsi dari system (system functions).
·
Entity Relationship Diagram(ERD) untuk
menggambarkan data yang di simpan (data stored)
·
State Transition Diagram (STD) untuk
menggambarkan perilaku system.
·
Structure Chart untuk menggambarkan struktur
program
Object Oriented Programming (OOP)
Pengertian
Metode Object Oriented menggabungkan/mencampurkan data dan proses ke dalam objek, dan fokus pada bagaimana objek-objek tersebut saling berinteraksi dengan menggunakan metode (melalui pesan-pesan) =Objek dapat berupa angka,rangkaian, karakter, benda,orang,tempat kamus,dll.
Tujuan utama dari pengembangan perangkat lunak atau OOP, dapat dijelaskan sebagai berikut:
=Mempersingkat waktu dan menurunkan biaya
pengembangan rekayasa perangkat lunak.
=Menurunkan biaya perawatan perangkat lunak.
=OOP memberikan landasan yang sangat berguna untuk pembuatan prototype sistem secara cepat.
=Meningkatkan extensibilitas & penggunaan kembali perangkat lunak (reusable)
Kelebihan OOP :
=Memiliki sarana yang bersifat virtual
=Berorientasi kepada Objek
=Bekerja didalam sistem operasi windowa
=Menghasilkan program aplikasi berbasis windows
=Dapat memanfaatkan Windows untuk aspek Grafis, Multimedia dsb
Metode Object Oriented menggabungkan/mencampurkan data dan proses ke dalam objek, dan fokus pada bagaimana objek-objek tersebut saling berinteraksi dengan menggunakan metode (melalui pesan-pesan) =Objek dapat berupa angka,rangkaian, karakter, benda,orang,tempat kamus,dll.
Tujuan utama dari pengembangan perangkat lunak atau OOP, dapat dijelaskan sebagai berikut:
=Mempersingkat waktu dan menurunkan biaya
pengembangan rekayasa perangkat lunak.
=Menurunkan biaya perawatan perangkat lunak.
=OOP memberikan landasan yang sangat berguna untuk pembuatan prototype sistem secara cepat.
=Meningkatkan extensibilitas & penggunaan kembali perangkat lunak (reusable)
Kelebihan OOP :
=Memiliki sarana yang bersifat virtual
=Berorientasi kepada Objek
=Bekerja didalam sistem operasi windowa
=Menghasilkan program aplikasi berbasis windows
=Dapat memanfaatkan Windows untuk aspek Grafis, Multimedia dsb
Beberapa metode
pengembang system yang berorientasi objek ini di antaranya adalah :
-Object Oriented
Analysis (OOA) dan Object Oriented Design(OOD) dari Peter Coad dan Edward
Yourdon (1990)
-Object Modeling
Technicque (OMT) dari James Rumbaugh (1987)
-Object Oriented
Software Engineering (OOSE)
OOP
menggunakan metode UML
Definisi UML (Unified
Modeling Language)
UML (Unified Modelling Language)
adalah sebuah "bahasa" yang telah menjadi standar dalam industri
untuk visualisasi, merancang dan mendokumentasikan sistem piranti lunak. UML
menawarkan sebuah standar untuk merancang model sebuah sistem.
UML adalah bahasa grafis untuk
mendokumentasikan, menspesifikasikan dan membangun sistem perangkat lunak. UML
berorientasi objek, menerapkan banyak level abstraksi, tidak bergantung proses
pengembangan, tidak bergantung bahasa dan teknologi, pemaduan beberapa notasi
di beragam metodologi, usaha bersama dari banyak pihak, didukung oleh kakas-kakas
yang diintegrasikan oleh XML. Standar UML dikelola oleh OMG (Object Management Group).
UML (Unified Modelling Language)
adalah bahasa pemodelan untuk menspesifikasikan, memvisualisasikan, membangun
dan mendokumentasikan artifak-artifak dari sistem.
1. Di dalam
system intensive process, metode
diterapkan sebagai proses untuk menurunkan atau mengevolusikan sistem.
2. Sebagai
bahasa, UML digunakan untuk komunikasi yaitu alat untuk menangkap pengetahuan
mengenai satu subyek dan mengekspresikan pengetahuan (sintaks) yang
memperdulikan subyek untuk maksud komunikasi. Subyek adalah sistem yang
dibahas.
3. Sebagai
bahasa pemodelan, UML fokus pada pemahaman subyek melalui formulasi model dari
subyek. Model memuat pengetahuan pada subyek, dan aplikasi dari pengetahuan ini
berkaitan dengan intelejensia.
4. Berkaitan
dengan unifikasi.UML memadukan praktek rekayasa terbaik sistem informasi dan
industri, meliputi beragam tipe sistem (perangkat lunak dan non perangkat
lunak), domain (bisnis, perangkat lunak) dan proses siklus hidup.
5. begitu
diterapkan untuk menspesifikasikan sistem, UML dapat digunakan untuk
mengkomunikasikan “apa” yang diperlukan dari sistem dan “bagaimana” sistem
dapat direalisasikan.
6. Begitu
diterapkan untuk menvisualisasikan sistem, UML dapat digunakan untuk menjelaskan
sistem secara visual sebelum direalisasikan.
7. Begitu
diterapkan untuk membangun sistem, UML dapat digunakan untuk memandu realisasi
sistem serupa dengan “blueprint”.
8. Begitu
diterapkan untuk mendokumentasikan sistem, UML dapat digunakan untuk menangkap
pengetahuan mengenai sistem pada seluruh siklus hidup.
UML bukanlah :
1.
Bahasa
pemrograman visual, tapi bahasa pemodelan visual.
2.
Spesifikasi
kakas, tapi spesifikasi bahasa pemodelan.
3.
Proses,
tapi yang memungkinkan proses-proses.
Tujuan utama perancangan UML adalah :
1.
Menyediakan
bahasa pemodelan visual yang ekspresif dan siap pakai untuk mengembangkan dan
pertukaran model-model yang berarti.
2.
Menyediakan
mekanisme perluasan dan spesifikasi untuk memperluas konsep-konsep inti.
3.
Mendukung
spesifikasi independen bahasa pemrograman dan proses pengembangan tertentu.
4.
Menyediakan
basis formal untuk pemahaman bahasa pemodelan.
5.
Mendorong
pertumbuhan pasar kakas berorientasi objek.
6.
Mendukung
konsep-konsep pengembangan level lebih tinggi seperti komponen, kolaborasi, framework dan pattern.
Diagram Teknik Pemodelan UML
Diagram mengemukakan banyak
hal, penggunaan notasi yang terdefinisi baik dan ekspresif adalah penting pada
proses pengembangan perangkat lunak, yaitu :
1.
Notasi
standar memungkinkan pengembang mendeskripsikan skenario atau rumusan arsitektur dan kemudian
mengkomunikasikan secara tidak ambigu.
2.
Notasi
yang bagus membebaskan otak untuk berkonsentrasi pada masalah-masalah yang
lebih lanjut.
3.
Notasi
yang baik memungkinkan mengeleminasi keperluan pemeriksaan konsistensi dan
kebenaran keputusan keputusan dengan menggunakan tool terotomatisasi.
Diagram Struktur
Diagram ini untuk
memvisualisasi, menspesifikasikan, membangun dan mendokumentasikan aspek statik
dari sistem. Diagram struktur di UML terdiri dari :
1.
Diagram
kelas (Class diagram)
Diagram ini menunjukkan
sekumpulan kelas, interface dan
kolaborasi dan keterhubungannya.
2.
Diagram
objek (Object diagram)
Diagram ini menunjukkan
sekumpulan objek dan keterhubungannya. Diagram komponen (Component diagram) Diagram ini menunjukkan organisasi dan
kebergantungan di antara sekumpulan komponen. Diagram ini merupakan pandangan
statik terhadap implementasi sistem.
3.
Diagram
deployment (Deployment diagram)
Diagram ini menunjukkan konfigurasi
pemrosesan saat jalan dan komponen komponen yang terdapat didalamnya.
Diagram Perilaku
Diagram ini untuk
memvisualisasi, menspesifikasi, membangun dan mendokumentasikan aspek dinamis
dari sistem. Diagram perilaku di UML terdiri dari :
1.
Diagram
use-case (Use case diagram)
Diagram ini menunjukkan
sekumpulan kasus fungsional dan actor
(jenis kelas khusus) dan keterhubungannya.
2.
Diagram
sekuen (Sequence diagram)
Diagram ini menunjukkan
interaksi yang terjadi antar objek. Diagram ini merupakan pandangan dinamis
terhadap sistem.
3.
Diagram
kolaborasi (Collaboration diagram)
Diagram ini juga merupakan
diagram interaksi. Diagram ini menekankan pada organisasi struktur dari
objek-objek yang mengirim dan menerima pesan.Diagram statechart (Statechart
diagram)
Diagram ini adalah state-machine diagram, berisi state,
transisi, kejadian dan aktivitas. Statechart merupakan pandangan dinamis dari
sistem.
4.
Diagram
aktivitas (Activity Diagram)
Diagram ini untuk menunjukkan
aliran aktivitas di sistem. Diagram ini adalah pandangan dinamis terhadap
sistem.
Joint
Application Development (JAD)
Adalah suatu teknik pengembangan Aplikasi yang melibatkan
antara pemakai dan profesional dalam pengembangan sistemnya, Teknik JAD dapat
diterapkan disetiap tahap pengembangan sistem. JAD merupakan sebuah teknik yang
berfokus pada keterlibatan dan komitmen pengguna dalam menentukan kebutuhan dan
merancang (desain) aplikasi. JAD biasanya dilakukan dalam bentuk tim yang
merupakan gabungan dari seluruh stakeholder proyek, yang bekerja dalam bentuk
workshop-workshop atau forum diskusi. Kenapa workshop ? karena teknik JAD ini
bukanlah sekedar rapat-rapat, yang biasa dilakukan dalam sebuah proyek dan melibatkan
seluruh stakeholder proyek. JAD adalah tim yang nantinya akan membuat rancangan
dan mengawasi, memonitor bersama jalannya proyek.
JAD adalah suatu metodologi pengembangan sistem yang
mula-mula digunakan untuk merancang suatu sistim yang berbasis-komputer, tetapi
dapat diberlakukan bagi setiap proses pengembangan yang melibatkan
interaksi berkelanjutan dengan para pemakai dan para perancang yang berbeda
sistim di dalam pengembangan. JAD memjadikan suatu pengembangan
yang lebih cepat memproses dan memperkecil error pada waktu yang sama. JAD juga
memperbaiki mutu produk akhir dengan mengutamakan bagian user/pemakai dalam
bagian pengembangan lifecycle, selain itu dengan JAD akan mengurangi
kemungkinan dari error yang fatal, dapat membuat suatu sistem menjadi mahal
jika terjadi perubahan dikemudian hari.
Proses
JAD didasarkan pada empat gagasan yang sederhana:
1. Menempatkan orang-orang yang benar-benar
ahli dalam pekerjaanya.
2. Orang-orang yang terlatih di dalam teknologi
informasi mempunyai pemahaman terbaik dalam pengembangan ini.
3. Proses-proses Sistem Informasi dan bisnis,
Orang-orang yang bekerja di dalam bidang-bidang yang terkait mempunyai
pengertian yang mendalam dan perang yang berharga dari suatu sistim dan di
dalam suatu masyarakat yang lebih besar.
4. Sistem informasi terbaik dirancang ketika
semua kelompok bekerja bersama-sama di suatu proyek sebagai mitra
yang sama.
Keuntungan
dan kerugian JAD
Keuntungan
·
Mengijinkan pengguna kunci untuk berpartisipasi secara aktif
· Ketika digunakan secara benar, JAD dapat
menghasilkan statement yang lebih akurat dari kebutuhan system, lebih mudah
dalam mengerti tujuan umum, dan lebih berkomitmen untuk sukses pada system
baru.
Kerugian
· Lebih
mahal dan dapat merugikan jika grup terlalu besar daripada ukuran project
Rapid
Application Development (RAPID)
Rapid Application Development (RAD)
atau rapid prototyping adalah model proses pembangunan
perangkat lunak yang tergolong dalam teknik incremental (bertingkat). RAD menekankan
pada siklus pembangunan pendek, singkat, dan cepat. Waktu yang singkat adalah
batasan yang penting untuk model ini. Rapid application development menggunakan
metode iteratif (berulang) dalam mengembangkan sistem dimana working model
(model bekerja) sistem dikonstruksikan di awal tahap pengembangan dengan tujuan
menetapkan kebutuhan (requirement) user dan selanjutnya disingkirkan. Working
model digunakan kadang-kadang saja sebagai basis desain dan implementasi sistem
final.
PENERAPAN
Model RAD mengadopsi model waterfall dan pembangunan
dalam waktu singkat yang dicapai dengan menerapkan :
1. Component
based construction ( pemrograman berbasis komponen bukan prosedural).
2. Penekanan
pada penggunaan ulang (reuse) komponen perangkat lunak yang telah ada.
3. Pembangkitan
kode program otomatis/semi otomatis.
4. Multiple team
(banyak tim), tiap tim menyelesaikan satu tugas yang selevel tapi tidak sama.
Banyaknya tim
tergantung dari area dan kompleksitasnya sistem yang dibangun. Jika keutuhan yang diinginkan pada tahap analisa
kebutuhan telah lengkap dan jelas, maka waktu yang dibutuhkan untuk
menyelesaikan secara lengkap perangkat lunak yang dibuat adalah berkisar 60
sampai 90 hari. Model RAD hampir sama dengan model waterfall, bedanya siklus
pengembangan yang ditempuh model ini sangat pendek dengan penerapan teknik yang
cepat.
Sistem dibagi-bagi menjadi beberapa
modul dan dikerjakan beberapa tim dalam waktu yang hampir bersamaan dalam waktu
yang sudah ditentukan. Model ini melibatkan banyak tim, dan setiap tim
mengerjakan tugas yang selevel, namun berbeda. Sesuai dengan pembagian modul
sistem.
Keuntungan
dan kerugian
Keuntungan
· Systems can be developed
more quickly with significant cost savings
· Sistem dapat dikembangkan lebih cepat dengan
secara signifikan mengurangi pengeluaran keuangan
Kerugian
· RAD stresses the mechanics of
the system itself and does not emphasize the company’s strategic business needs
· Might allow less time to
develop quality, consistency, and design standards
No comments:
Post a Comment