Senin, 17 Oktober 2011

Pengenalan UML

Analisis dan desain berorientasi objek adalah cara dalam memikirkan suatu masalah dengan menggunakan model yang dibuat menurut konsep sekitar dunia nyata. Dasar pembuatan adalah objek, yang merupakan kombinasi antara struktur data dan perilaku dalam satu entitas.

Alat bantu, bahasa pemodelan yang dapat digunakan untuk rancang bangun berorientasi-objek adalah Unified Modeling Language (UML). UML adalah bahasa yang dapat digunakan untuk spesifikasi, visualisasi, dan dokumentasi sistem object-oriented software pada fase pengembangan (development process). UML merupakan unifikasi dari metode Booch, OMT, dan notasi Objectory, serta ide-ide terbaik metodologi lainnya seperti terlihat pada Gambar 1. Dengan menyatukan notasi metode-metode objek oriented tersebut, UML merupakan standar dasar dalam bidang analisis dan desain berorientasi-objek”

 
Gambar 1. Unifikasi berbagai metode pengembangan objek kedalam UML

UML menyediakan 9 jenis diagram yang dapat dikelompokkan berdasarkan sifatnya (statis atau dinamis). Ke-9 jenis diagram dalam UML itu adalah:

1.       Diagram Kelas / Class Diagram (statis)
2.       Diagram Objek / Object Diagram (statis)
3.       Use-Case Diagram (statis)
4.       Sequence Diagram (dinamis)
5.       Collaboration Diagram (dinamis)
6.       Statechart Diagram (dinamis)
7.       Activity Diagram (dinamis)
8.       Component Diagram (statis)
9.       Deployment Diagram (statis)


Development Process adalah suatu struktur yang diterapkan pada pengembangan suatu produk perangkat lunak. Proses ini memiliki beberapa model yang masing-masing menjelaskan pendekatan terhadap berbagai tugas atau aktivitas yang terjadi selama proses. Contoh model proses pengembangan perangkat lunak antara lain adalah proses iteratif, Extreme Programming, serta proses air terjun (waterfall).

Secara umum akivitas pengembangan perangkat lunak terdiri dari :

1.       Requiment analysis and definition
2.       System Design
3.       Program Design
4.        Write The Program
5.       Unit Testing
6.       Integration Testing
7.       System Testing
8.       System Delivery

Ke delapan aktivitas tersebut disebut Software Development Process. Untuk menjalankan aktivitas secara ideal dibutuhkan suatu tim yang terdiri dari :

1.       Analyst
2.       Designer
3.       Programmer
4.       Tester
5.       Trainer


Tahap Development Process didalam UML meliputi: Analisis Kebutuhan (Requirement Analysis), Analisis Sistem (Analysis), Desain (Design), Implementasi ( Implementation) dan Testing.
1.       Analisis Kebutuhan: UML menggunakan Use cases untuk menangkap kebutuhan customer/user. Melalui Use cases aktor luar yang berinteraksi dengan sistem dimodelkan bersama dengan fungsi-fungsi yang mereka perlukan dari system (use cases). Aktor dan use cases dihubungkan dengan suatu relasi (relationship). Actor dan use cases ditampilkan dalam bentuk diagram beserta dokumentasinya pada view diagram Use case. Dokumentasi use cases dalam bentuk text diberikan secara terpisah (file) untuk memperjelas use cases.
2.       Analisis sistem: Fase analisis konsen dengan abstraksi primer (kelas dan objek) dan mekanisme yang muncul dalam problem domain. Kelas-kelas diidentifikasi bersama dengan relasinya satu sama lain, dan ditampilkan pada diagram kelas. Kolaborasi antar kelas untuk mengerjakan use case juga dijelaskan melalui model dinamik UML. Pada fase analisis ini hanya kelas-kelas dalam problem domain yang dimodelkan, bukan kelaskelas implementasi teknik.
3.       Desain: Pada tahap desain hasil analisis didetailkan untuk solusi teknik. Kelas-kelas baru ditambahkan untuk menyediakan infrastruktur teknik: user interface, penanganan database untuk menyimpan objek kedalam database, komunikasi dengan sistem lain, interfacing dengan peralatan dalam sistem ditambahkan.
4.       Implementasi/programming: Pada tahap programming kelas-kelas yang dibentuk pada tahap desain dikonversi menjadi code sesungguhnya dalam bahasa pemrograman objek-oriented melalui proses generate. Hasil generate berupa skeleton dari program. Selanjutnya menjadi tugas programmer untuk menyelesaikan program hasil generate. Editing yang dilakukan oleh programmer tidak akan di dihapus (ditimpa) saat model di generate ulang.
5.       Testing: Testing terhadap sistem software biasanya berupa tes unit, tes integrasi, tes sistem,  dan tes acceptance. Tes unit adalah tes terhadap kelas individual atau terhadap sekelompok kelas, biasanya dilakukan oleh programmer. Tes integrasi mengintegrasikan komponen dan kelaskelas dalam rangka verifikasi. Tes system memandang sistem sebagai kotak hitam (black box) dalam rangka validasi bahwa system berfungsi sesuai dengan harapan end user. Tes acceptance dilakukan oleh customer untuk verifikasi bahwa sistem sesuai dengan kebutuhan, sama seperti tes sistem. Test unit menggunakan diagram kelas dan spesifikasi kelas, test integrasi menggunakan diagram komponen dan diagram kolaborasi, dan tes sistem menggunakan diagram use-case untuk melakukan validasi.

0 komentar:

Posting Komentar

Twitter Delicious Facebook Digg Stumbleupon Favorites More

 
Design by Free WordPress Themes | Blogger Theme by Lasantha - Premium Blogger Templates | Affiliate Network Reviews