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