MATERI UML KELAS XI PENILAIAN TENGAH SEMESTER GASAL (PTS 1)REKAYASA PERANGKAT LUNAK




A.    ANALISIS KEBUTUHAN SISTEM

Tujuan dari analisis adalah memahami dengan sesungguhnya kebutuhan dari sistem yang baru dan mengembangankan subuah sistem yang memadahi kebutuhan tersebut atau memutuskan bahwa pengembangan sistem yang baru tidak dibutuhkan.
Ada 2 jenis kebutuhan dalam Kebutuhan sistem yaitu Kebutuhan fungsional dan kebutuhan nonfungsional. kebutuhan Fungsional adalah kebutuhan yang berisi proses-proses apa saja yang nanti bisa dilakukan oleh sistem. Sedangkan Kebutuhan Nonfungsional adalah kebutuhan yang menitikberatkan pada properti perilaku yang dimiliki sistem.
Sebagai contoh kebutuhan Fungsional adalah pada Sistem Informasi Perpustakaan, sistem yang harus mampu memasukkan data buku dan beberapa transaksi keperpustakaan. Contoh dari kebutuhan Nonfungsional adalah penggunaan Sistem Operasi sperti windows dan lain-lain.
Analisis kebutuhan itu sendiri adalah sebuah proses untuk mendapatkan informasi, model, spesifikasi tentang perangkat lunak yang diinginkan konsumen/client/pengguna. Kedua belah pihak antara klien dan programmer terlibat aktif dalam hal ini.
Ada 3 faktor yang harus dipenuhi ketika melakukan analisis kebutuhan yaitu, lengkap, detail dan benar. Lengkap yang memiliki arti apa yang diharapkan klien bisa dipenuhi dalam sistem. Detail maksdnya adalah informasi yang didapat sangat rinci. Benar maskudnya adalah semua data yang digunakan merupakan data valid dan fakta sesuai yang dimaksudkan klien dan bukan dari yang menganalisis.
Analisis kebutuhan ini terdiri dari lima langkah pokok yaitu:
1.     Identifikasi Masalah
2.     Evaluasi dan sintensis
3.     Pemodelan
4.     Spesifikasi
5.     Review
Tujuan dari Analisis Kebutuhan Sistem adalah
1.     Mengelola hasil elistasi kebutuhan untuk menghasilkan dokumen spesifikasi kebutuhan yang isi keseluruhannya sesuai dengan apa yang diinginkan pengguna                                (Liu and Yen, 1996).
2.     Mengembangkan persyaratan kualitas yang memadai dan rinci, dimana para manajer dapat membuat pekerjaan proyek yang realistis dan staf teknis dapat melanjutkan dengan perancangan, implementasi dan pengujian (Wiegers, 2003).
3.     Membangun pemahaman tentang karakteristik ranah permasalahan dan sekumpulan kebutuhan untuk menemukan solusi.
Ketiga tujuan tersebut dapat dicapai oleh perekayasa kebutuhan dengan melalui serangkaian tahapan-tahapan aktivitas. Tahapan aktivitas tersebut dijelaskan sebagai berikut.

B.    UML (Unified Modelling Language)
Object-Oriented Modeling Language muncul pertengahan1970 an dan akhir dari 1980 an yang digunakan sebagai sebuah metodologi seiring dengan munculnya Object-Oriented Programming Language baru dan semakin pesatnya permintaan aplikasi sistem komputer yang kompleks sehingga dimulailah delevopmen alternatif lain untuk melakukan analisa dan desain. Dari tahun 1989 sampai dengan 1994, object-oriented method demikian banyaknya. Tapi tetap saja metoda-metoda tesebut belum mampu menghandle kebutuhan penggunananya. Akhirnya ada 3 generasi baru yang paling berpengaruh yaitu Booch, Jacobson's OOSE (Object-Oriented Software Engineering) dan RUmbaugh's OMT (Object Modelling Technique). Method yang lain juga adalah Fusion, Shlaer-Mellor, and Coad-Yourdon. Setiap method ini mempunyai kelebihan dan kelemahannya. Kalau dilihat secara cepat, Booch sangat membantu saat desain dan fase pembuatan proyek. OOSE memberikan support terbaik pada use case sebagai pemetaaan keperluan dan analisa.OMT sangat berguna ada analisis dan sistem informasi data-intensive. Kejadian paling penting terjadi pada saat Grady Booch (Rational Software Corporation), Ivar Jacobson (Objectory), dan James Rumbaugh (General Electric) mulai mengadopsi method masing-masing dan berkolaborasi membuat bahasa yang terpadu/unified. Ada 3 target yang ingin mereka capai dengan unifikasi ini :
  1. membuat sistem model, dari concept ke executable, menggunakan teknik Object Oriented
  2. mengatasi masalah scale yang biasanya terjadi pada sesuatu yang kompleks
  3. membuat modeling language yang berguna baik bagi manusia ataupun mesin.
UML resmi didevelop pada bulan Oktober 1994 ketika Rumbaugh bergabung dengan Booch. Draft dari Unified Method versi 0.8 di release Oktober 1995. Pada tahun yang sama skope UML ekspansi ke OOSE untuk release UML 0.9 pada bulan Juni 1996
UML adalah bahasa untuk menspesifikasi,memvisualisasi, membangun dan mendokumentasikan artifacts (bagian dari informasi yang digunakan untuk dihasilkan oleh proses pembuatan perangkat lunak, artifact tersebut dapat berupa model, deskripsi atau perangkat lunak)dari sistem perangkat lunak,seperti pada pemodelan bisnis dan sistem non perangkat lunak lainnya. Selain itu UML adalah bahasa pemodelan yang menggunakan konsep orientasi object.UML dibuat oleh Grady Booch, James Rumbaugh, dan Ivar Jacobson di bawah bendera Rational Software Corps. UML menyediakan notasi-notasi yang membantu memodelkan sistem dari berbagai prespetktif. UML tidak hanya digunakan dalam pemodelan perangkat lunak, namun hampir dalam semua bidang yang membutuhkan pemodelan.

Bagian-bagian utama dari UML adalah view, diagram, model element, dan general mechanism.






View digunakan untuk melihat sistem yang dimodelkan dari beberapa aspek yang berbeda. Beberapa Jenis view dalam UML antara lain : use case view,logical view,component view,concurrency view, dan deployment view.
Use case View Mendeskripsikan fungsionalitas sistem yang seharusnya dilakukan sesuai yang diinginkan external actors. Actor yang berinteraksi dengan sistem dapat berupa user atau sistem lainnya. View ini digambarkan dalam use case diagrams dan kadang-kadang dengan activity diagrams. View ini digunakan terutama untuk pelanggan,perancang (designer), pengembang(developer), dan penguji sistem(tester).
Logical View Mendeskripsikan bagaimana fungsionalitas dari sistem, struktur statis (class, object, dan relationship ) dan kolaborasi dinamis yang terjadi ketika object mengirim pesan ke object lain dalam suatu fungsi tertentu. View ini digambarkan dalam class diagrams untuk struktur statis dan dalam state, sequence, collaboration, dan activity diagram untuk model dinamisnya.  View ini digunakan untuk perancang (designer) dan pengembang (developer).
Component View Mendeskripsikan implementasi dan ketergantungan modul. Komponen yang merupakan tipe lainnya dari code module diperlihatkan dengan struktur dan ketergantungannya juga alokasi sumber daya komponen dan informasi administrative lainnya. View ini digambarkan dalam component view dan digunakan untuk pengembang (developer).
Concurrency View Membagi sistem ke dalam proses dan prosesor. View ini digambarkan dalam diagram dinamis (state, sequence, collaboration, dan activity diagrams) dan diagram implementasi (component dan deployment diagrams) serta digunakan untuk pengembang (developer), pengintegrasi (integrator), dan penguji (tester).
Deployment View Mendeskripsikan fisik dari sistem seperti komputer dan perangkat (nodes) dan bagaimana hubungannya dengan lainnya. View ini digambarkan dalam deployment diagrams dan digunakan untuk pengembang (developer), pengintegrasi (integrator), dan penguji (tester).
Diagram berbentuk grafik yang menunjukkan simbol elemen model yang disusun untuk mengilustrasikan bagian atau aspek tertentu dari sistem. Sebuah diagram merupakan bagian dari suatu view tertentu dan ketika digambarkan biasanya dialokasikan untuk view tertentu. Adapun jenis diagram antara lain :

  1. Use Case Diagram Menggambarkan sejumlah external actors dan hubungannya ke use case yang diberikan oleh sistem. Use case adalah deskripsi fungsi yang disediakan oleh sistem dalam bentuk teks sebagai dokumentasi dari use case symbol namun dapat juga dilakukan dalam activity diagrams. Use case digambarkan hanya yang dilihat dari luar oleh actor (keadaan lingkungan sistem yang dilihat user) dan bukan bagaimana fungsi yang ada di dalam sistem. KLIK DISINI UNTUK DETAILNYA
  2. Class Diagram Menggambarkan struktur statis class di dalam sistem. Class merepresentasikan sesuatu yang ditangani oleh sistem. Class dapat berhubungan dengan yang lain melalui berbagai cara: associated (terhubung satu sama lain), dependent (satu class tergantung/menggunakan class yang lain), specialed (satu class merupakan spesialisasi dari class lainnya), atau package (grup bersama sebagai satu unit). Sebuah sistem biasanya mempunyai beberapa class diagram. KLIK DISINI UNTUK DETAILNYA
  3. State Diagram Menggambarkan semua state (kondisi) yang dimiliki oleh suatu object dari suatu class dan keadaan yang menyebabkan state berubah. Kejadian dapat berupa object lain yang mengirim pesan. State class tidak digambarkan untuk semua class, hanya yang mempunyai sejumlah state yang terdefinisi dengan baik dan kondisi class berubah oleh state yang berbeda.
  4. Sequence Diagram Menggambarkan kolaborasi dinamis antara sejumlah object. Kegunaanya untuk menunjukkan rangkaian pesan yang dikirim antara object juga interaksi antara object, sesuatu yang terjadi pada titik tertentu dalam eksekusi sistem. KLIK DISINI UNTUK DETAILNYA
  5. Collaboration Diagram Menggambarkan kolaborasi dinamis seperti sequence diagrams. Dalam menunjukkan pertukaran pesan, collaboration diagrams menggambarkan object dan hubungannya (mengacu ke konteks). Jika penekannya pada waktu atau urutan gunakan sequence diagrams, tapi jika penekanannya pada konteks gunakan collaboration diagram. KLIK DISINI UNTUK DETAILNYA 
  6. Activity Diagram Menggambarkan rangkaian aliran dari aktivitas, digunakan untuk mendeskripsikan aktifitas yang dibentuk dalam suatu operasi sehingga dapat juga digunakan untuk aktifitas lainnya seperti use case atau interaksi. KLIK DISINI UNTUK DETAILNYA 
  7. Component Diagram Menggambarkan struktur fisik kode dari komponent. Komponent dapat berupa source code, komponent biner, atau executable component. Sebuah komponent berisi informasi tentang logic class atau class yang diimplementasikan sehingga membuat pemetaan dari logical view ke component view. KLIK DISINI UNTUK DETAILNYA
  8. Deployment Diagram Menggambarkan arsitektur fisik dari perangkat keras dan perangkat lunak sistem, menunjukkan hubungan komputer dengan perangkat (nodes) satu sama lain dan jenis hubungannya. Di dalam nodes, executeable component dan object yang dialokasikan untuk memperlihatkan unit perangkat lunak yang dieksekusi oleh node tertentu dan ketergantungan komponen. KLIK DISINI UNTUK DETAILNYA

-----------------------------------------------------------




Ade Setiyawan

kami adalah penggemar teknologi, pendidikan dan musik yang suka dengan membagi pengetahuan dan sharing sehingga akan menambah wawasan.

Posting Komentar

Silahkan isi komentar jika ada pertanyaan, saran atau kritik. Bantu kami untuk lebih berkembang.

Lebih baru Lebih lama