Sabtu, 14 Juni 2014

Referensi buku UML


1. Pendahuluan

1.1 Latar Belakang

            Sistem / perangkat lunak (software) kemungkinan besar merupakan salah satu hasil dari pekerjaan manusia yang paling rumit dan paling kompleks di dunia ini. Rekayasa sistem / perangkat lunak (software engineering) menuntut bukan hanya keterampilan teknis yang sangat tinggi dalam hal penulisan kode – kode program komputer dalam bahasa pemrograman tertentu, tetapi juga membutuhkan keterampilan melakukan analisis dan perancangan sedemikian rupa sehingga perangkat lunak yang dihasilkan kelak sesuai dengan “kebutuhan dan harapan pengguna (user’s needs and expectationsi)”. Roger S. Pressma, phD [2000] dalam bukunya yang berjudul software engineering : Practioner’s Approach mengemukakan bahwa kenyataannya lebih dari 50 persen program / aplikasi komputer yang pernah dibuat di Amerika Serikat akhirnya tidak pernah digunakan / dimanfaatkan oleh pengguna karena tidak sesuai dengan kebutuhan dan harapan pengguna. Menghabiskan waktu, tenaga, serta biaya untuk hal – hal yang tidak bermanfaat.
            Konsep – konsep penting yang mendasari paradigma “pemrograman berorientasi objek”, seperti konsep – konsep yang berkaitan dengan kelas (class), objek (object), pembungkusan / penyembunyianan formasi (encapsulation/information hiding), polimorfisme (overloading dan overidding), pemuatan (containment) dalam bentuk agregasi (aggregation) dan komposisi (compotition), generalisasi – spesialisasi (generalization – specialization), pewarisan (inheritance), dan sebagainya.

1.2 Tujuan

Tujuan penelitian ini antara lain untuk memberikan pemahaman mengenai UML (Unified Modeling Language), SDLC (System Development Life Cycle), View UML, View Statis, Use Case View, Interaction View, dan Activity View.

1.3 Manfaat

            Manfaat penelitian ini adalah dapat mengetahui konsep – konsep penting dalam perancangan menggunakan metode UML (Unified Modeling Language), mengetahui SDLC (System Development Life Cycle), dan komponen – komponen yang terdapat pada UML (Unified Modeling Language).

1.4 Metode Penelitian

            Untuk mendapatkan informasi mengenai UML (Unified Modeling Language), SDLC (System Development Life Cycle), View UML, View Statis, Use Case View, Interaction View, dan Activity View. Metode penelitian yang digunakan adalah studi pustaka, yang berjudul “Rekayasa Perangkat Lunak Berorientasi Objek dengan Metode USDP (Unified Software Development Process)" oleh Adi Nugroho.

2. Kajian Pustaka

            Tahun 1970 aplikasi dikembangkan menggunakan bahasa pemrograman terstruktur, mulai dikembangkan berdasarkan metodologi – metodologi dan kakas – kakas yang memang sesuai, contohnya adalah DFD (Data Flow Diagram) atau dengan ERD (Entity Relationship Diagram).
            Tahun 1980 – 1990 mulai bekerja dengan bahasa pemrograman berorientasi objek seperti C ++, C#, Visual Basic .NET, dan Java. UML yang sesungguhnya merupakan metodologi kolaborasi antara metode – metode Booch yang dikembangkan oleh Graddy Brooch, OMT (Object Modeling Technique) yang dikembangkan oleh DR. James Rumbaugh, serta OOSE (Object Oriented Software Engineering) yang dikembangkan oleh Ivar Jacobson, dan beberapa metode lainnya.
Saat menggunakan UML (Unified Modeling Language) untuk melakukan analisis dan perancangan sistem / perangkat lunak yang berparadigma ‘pemrograman berorientasi objek’, memerlukan metodologi yang apling sesuai, sebab UML sesungguhnya hanya sebuah tool.Salah sekali jika menggunakan UML sebagai tool untuk melakukan analisis dan perancangan sistem, tanoa menggunakan metodologi pengembangan sistem / perangkat lunak yang sesuai. Saat ini sebenarnya mulai sekitar 2000-an – metodologi yang sesuai itu sudah tersedia

3. Gambaran Umum

            UML (Unified Modeling Language) merupakan bahasa pemodelan untuk sistem atau perangkat lunak yang berparadigma berorientasi objek, UML memiliki beberapa komponen diantaranya seperti View UML, View Statis yang dibagi menjadi empat bagian yaitu pengklasifikasian, asosiasi, realisasi, dan kebergantungan, Use Case View, Interaction View yang dibagi menjadi empat yaitu interaksi, sequence diagram, aktivasi, dan collaboration diagram, State Machine View yang dibagi menjadi empat yaitu State Machine, Event, State, dan Transisi, serta Activity View.

4. Isi

4.1 SDLC (System Development Life Cycle)

            SDLC merupakan pengembangan / rekayasa sistem informasi yang menyusun sistem / perangkat lunak yang benar – benar baru atau yang lebih sering terjadi menyempurnakan yang telah ada sebelumnya, guna agar komputer melaksanakan instruksi – instruksi pengguna untuk mendapatkan hasil tertentu. Suatu siste / perangkat lunak perlu dikembangkan karena adanya permasalahan yang dijumpai pada sistem / perangkat lunak, pertumbuhan organisasi, untuk meraih kesempatan – kesempatan, dan menyesuaikan diri dengan visi, misi, strategi organisasi yang baru.

4.2 UML (Identified Modeling Language)

            UML merupakan bahasa pemodelan untuk sistem atau perangkat lunak yang berparadigma berorientasi objek. Pemodelan (modeling) sesungguhnya digunakan untuk penyederhanaan permasalahan – permasalahan yang kompleks sedemikian rupa sehingga lebih mudah dipelajari dan dipahami.

4.3 View UML

            View pada dasarnya merupakan sejumlah konstruksi pemodelan UML yang merepresentasikan suatu aspek tertentu dari paling atas, view – view di bagi menjadi 3 area utama yaitu klasifikasi structural (structural classification), perilaku dinamis (dynamic behavior), serta pengelolaan / manajemen model (model management).

4.4 View Statis

            View statis merupakan dasar yang sangat penting dalam UML, elemen – elemen view statis memodelkan konsep – konsep yang penting dalam sebuah aplikasi. Konsep – konsenya antara lain konsep – konsep abstrak, konsep – konsep implementasi, konsep – konsep komputer, serta seluruh konsep yang ada dalam sistem / perangkat lunak yang sedang dikembangkan.

4.4.1 Pengklasifikasi (Classifier)

            Pengklasifikasi merupakan konsep diskret dalam model yang memiliki identitas (identity), state, perilaku, serta relasi dengan pngklasifikasi yang lainnya. Jenis pengklasifikasi mencakup di dalamnya kelas, interface, serta tipe data.

4.4.2 Asosiasi (Association)

            Asosiasi merupakan pendeskripsian koneksi diskret antarobjek atau antar-instance lain dalam sistem / perangkat lunak yang sedang dikembangkan. Asosisasi yang biasa digunakan adalah asosiasi biner (binary association) dan asosiasi unary (unary association).

4.4.3 Realisasi (Realization)

            Relasi realisasi merupakan penghubung elemen – elemen model, contohnya kelas, ke elemen – elemen model lainnya, seperti suatu antarmuka, yang menyediakan spesifikasi perilaku.

4.4.4 Kebergantungan (Depedency)

            Kebergantungan mengindikasikan relasi semantic antardua atau lebih elemen model. Kebergantungan menghubungkan elemen – elemen model dan tidak membutuhkan sejumlah  instance untuk pemaknaannya.

4.5 Use Case View

            View use case digunakan untuk memodelkan fungsionalitas – fungsionalitas sistem / perangkat lunak dilihat dari pengguna yang ada di luar sistem. View use case berguna untuk mendaftarkan actor – actor dan use case – use case dan memperlihatkan actor – actor mana yang berpartisipasi dalam masing – masing use case.

4.6 Interaction View  
           
            Interaction View menyediakan view  yang lebih menyeluruh berkaitan dengan perilaku suatu bagian tertentu dari sistem / perangkat lunak yang sedang dikembangkan. Kolaborasi merupakan deskripsi sejumlah objek yang saling berinteraksi untuk mengimplementasikan perilaku sistem / perangkat lunak tertentu dalam suatu konteks tertentu.

4.6.1 Interaksi (Interaction)

            Interaksi adalah sejumlah pesan dalam kolaborasi yang saling dipertukarkan oleh peran pengklasifikasi melintan asosiasi. Pesan (message) adalah komunikasi satu arah antardua objek, suatu aliran kendali dnegan informasi – informasi di dalamnya yang bergerak di antara pengirin pesan (sender) dan penerima pesan (receiver).

4.6.2 Sequence Diagram

            Sequence diagram memperlihatkan interaksi sebagai diagram dua matra (dimensi). Matra Vertikal adalah sumbu waktu, matra horizontal memperlihatkan peran pengklasifikasi yang mempresentasikan objek – objek mandiri yang terlibat dalam kolaborasi.

4.6.3 Aktivasi (Activation)

            Aktivasi (Activation) merupakan sksekusi prosedur, termasuk waktu tunda untuk prosedur bersarang (nested procedure) yang dieksekusi. Aktivasi dapat digambarkan menggunakan garis ganda menggantikan bagian garis waktu dalam sequence diagram.

4.6.4 Collaboration Diagram

            Collaboration Diagram merupakan diagram kelas yang memuat peran – peran pengklasifikasi dan peran – peran asosiasi , alih – alih hanya menampilkan pengklasifikasi – pengklasifikasi serta asosiasi – asosiasi.

4.7 State Machine View

            State Machine View mendeskripsikan perilaku dinamis objek – objek selama berjalannya waktu dengan memodelkan siklus hidup objek – objek yang berasal dari masing – masing kelas. State  merupakan sejumlah nilai objek untuk suatu kelas tertentu yang memiliki tanggapan pada event kualitatif yang sama yang terjadi.

4.7.1 State Machine

            State Machine merupakan model yang di dalamnya memuat statement dan transisi – transisi. State machine berfungsi untuk mendeksripsikan tanggapan instance suatu kelas terhadap event – event yang diterima.

4.7.2 Event

            Event merupakan sesuatu yang terjadi yang memiliki lokasi tertentu dalam kaitannya dengan ruang dan waktu. Event sering kali dianggap memiliki durasi. Descriptor event yaitu deskripsi kehadiran semua event mandiri yang memiliki bentuk umum yang sama.

4.7.3 State

            State mendeskripsikan suatu perjalanan pengklasifikasi dalam perjalanan waktu. Ia bisa dicirikan dalam 3 cara yang saling melengkapi diantaranya sebagai sejumlah nilai objek yang secara kualitatif mirip dalam beberapa hal, sebagai periode waktu selama objek menunggu event – event yang akan terjadi dan sebagai periode waktu di mana objek melaksanakan aktivitas – aktivitas tertentu.

4.7.4 Transisi (Transition)

            Transisi yang meninggalkan suatu state mendefinisikan tanggapan suatu objek dalan state tertentu pada kehadiran suatu event. Secara umum, transisi selalu memiliki pemicu event, kondisi yang harus dipenuhi, suatu aksi, dan state target. Terdapat bebrapa jenis aksi dinatarnaya adalah assignment, cell, create, destroy, return, send, terminate, dan uninterpreted.

4.8 Activity View

            Diagram aktivitas merupakan bentuk khusus dari state machine yang bertujuan memodelkan komputasi – komputasi dan aliran – aliran yang terjadi dalam sistem / perangkat lunak yang sedang dikembangkan.
            Suatu diagram aktivitas mungkin di dalamnya juga memuat suatu action state, yang mirip dengan activity state, kecuali mereka bersifat atomic dan tidak mengizinkan transisi – transisi terjadi selama mereka aktif. Action state digunakan untuk operasi – operasi pencatatan yang waktunya pendek. Suatu diagram aktivitas di dalamnya mungkin memuat pencabangan dalam bentuk fork yang mengarahkan kendali ke thread – thread yang berjalan secara bersamaan.

5. Kesimpulan dan Saran

5.1 Kesimpulan

            Dalam membuat sebuah konsep dalam sistem atau perangkat lunak dapat menggunakan UML (Unified Modeling Language), karena dengan menggunakan UML akan lebih menyederhanakan suatu permasalahan, selain itu dalam pengembangannya dapat menggunakan SDLC (System Development Life Cycle).Pada UML terdapat dua buah major area yaitu dinamis dan structural, pada major area structural terdapat beberapa view yang digunakan diantaranya adalah static view, use case view, implementation view, dan deployment view. Sedangkan pada dinamis diantaranya adalah state machine view, activity view, dan interaction view. View UML merupakan suatu konstruksi pemodelan pada UML, static view merupakan dasar yang paling penting pada UML yang  memiliki classifier, association, realization, dan dependency.Use Case View merupakan pemodelan fungsional. Interaction View merupakan penyedia view yang menyeluruh yang memiliki interaction, sequence diagram, activation, dan collaboration diagram. State Machine View merupakan pendeskripsi perilaku dinamis objek – objek yang memiliki state machine, event, state, dan transition. Activity View merupakan suatu bentuk khusus dari dari state machine yang bertujuan memodelkan komputasi – komputasi dan aliran – aliran yang terjadi dalam sistem / perangkat lunak yang sedang dikembangkan.

5.2 Saran

            Dalam membangun sebuah konsep sistem / perangkat lunak tidak lagi hanya menggunakan DFD (Data Flow Diagram), ERD (Entity Relationship Diagram) atau lain sebagainya, konsep sistem / perangkat lunak dapat dibuat menggunakan UML (Unified Modeling Language). Keuntungan dalam membuat sebuah konsep menggunakan UML, UML memberikan berbagai macam diagram – diagram yang dapat digunakan, contohnya seperti collaboration diagram atau sequence diagram. Dengan menggunakan UML sebuah permasalahan – permasalahan akan disederhanakan sedemikian rupa sehingga lebih mudah untuk dipelajari dan dipahami.

sumber : Buku Rekayasa Perangkat Lunak Berorientasi Objek dengan Metode USDP (Unified Software Development Process)" oleh Adi Nugroho.

Tidak ada komentar:

Posting Komentar