SlideShare a Scribd company logo
Analisis dan Perancangan SI
- Unified Modelling Language (UML) -
Heni Sulistiani
Fakultas Teknik dan Ilmu Komputer
Universitas Teknokrat Indonesia
Pendahuluan
 Pemodelan (Modelling) adalah proses merancang
piranti lunak sebelum melakukan pengkodean (coding).
Model piranti lunak dapat dianalogikan seperti
pembuatan blueprint pada pembangunan gedung.
 Membuat model dari sebuah sistem yang kompleks
sangatlah penting karena kita tidak dapat memahami
sistem semacam itu secara menyeluruh
 Semakin kompleks sebuah sistem, semakin penting pula
penggunaan teknik pemodelan yang baik.
The Triangle for Success
 Kesukesan suatu pemodelan piranti lunak ditentukan
oleh tiga unsur, yang dikenal dengan istilah segitia
sukses.
 Ketiga unsur tersebut adalah metode pemodelan
(notation), proses (process) dan tool yang digunakan
 Memahami notasi pemodelan tanpa mengetahui cara
pemakaian yang sebenarnya (proses) akan membuat
proyek gagal. Dan pemahaman terhadap metode
pemodelan dan proses disempurnakan dengan tool yang
tepat.
Pengantar UML
 UML (Unified Modelling Language) adalah metode
pemodelan secara visual sebagai sarana untuk
merancang dan atau membuat software berorientasi
objek.
 Karena UML ini merupakan bahasa visual untuk
pemodelan bahasa berorientasi objek, maka semua
elemen dan diagram berbasiskan pada paradigma object
oriented
 UML memberikan standar penulisan sebuah sistem
blueprint, yang meliputi konsep bisnis proses, penulisan
kelas-kelas dalam bahasa program yang spesifik, skema
database dan komponen-komponen yang diperlukan
dalam software.
 Sebuah bahasa model adalah sebuah bahasa yang
mempunyai vocabulary dan konsep tatanan aturan
penulisan serta secara fisik mempresentasikan dari
sebuah sistem
 UML adalah sebuah bahasa standar untuk
pengembangan software yang dapat menyampaikan
bagaimana membuat dan membentuk model-model,
tetapi tidak menyampaikan apa dan kapan model yang
seharusnya dibuat.
Pengantar UML
 UML tidak hanya merupakan sebuah bahasa
pemograman visual saja, namun juga dapat secara
langsung dihubungkan ke berbagai bahasa
pemograman, seperti JAVA, C++, Visual Basic, atau
bahkan dihubungkan secara langsung ke dalam sebuah
object-oriented database. UML juga dapat digunakan
untuk modeling aplikasi prosedural dalam VB atau C
 Begitu juga mengenai pendokumentasian dapat
dilakukan seperti; requirements, arsitektur, design,
source code, project plan, tests dan prototypes.
Pengantar UML
 Seperti bahasa-bahasa lainnya, UML mendefinisikan
notasi dan syntax/semantik. Notasi UML merupakan
sekumpulan bentuk khusus untuk menggambarkan
berbagai diagram piranti lunak.
 Setiap bentuk memiliki makna tertentu, dan UML
syntax mendefinisikan bagaimana bentuk-bentuk
tersebut dapat dikombinasikan. Notasi UML terutama
diturunkan dari 3 notasi yang telah ada sebelumnya:
Grady Booch OOD (Object-Oriented Design), Jim
Rumbaugh OMT (Object Modelling Technique), dan
Ivar Jacobson OOSE (Object-Oriented Software
Engineering).
Konsep Dasar UML
 Untuk dapat memahami UML membutuhkan bentuk
konsep dari sebuah bahasa model, dan mempelajari 3
elemen utama dari UML, seperti building block, aturan-
aturan yang menyatakan bagaimana building
block diletakkan secara bersamaan, dan beberapa
mekanisme umum (common).
 Tiga macam yang terdapat dalam building block adalah
 Benda/ Things; adalah abstraksi yang pertama dalam
sebuah model
 Hubungan/ Relationships; sebagai alat komunikasi
dari benda-benda
 Bagan/ Diagrams; sebagai kumpulan/group dari
benda-benda/ things
Building Blocks
Adalah hal yang sangat mendasar dalam model UML, juga
merupakan bagian paling statik dari sebuah model, serta
menjelaskan elemen-elemen lainnya dari sebuah konsep
dan atau fisik. Bentuk dari things ada 5 :
1. Classes, yang diuraikan sebagai sekelompok dari
object yang mempunyai Atribute, operasi, hubungan
yang semantik. Sebuah kelas mengimplementasikan 1
atau lebih interfaces. Sebuah kelas dapat digambarkan
sebagai sebuah persegi panjang, yang mempunyai
sebuah nama, attribute, dan metoda pengoperasiannya
Things
2. Interfaces, merupakan sebuah antar-muka yang
menghubungkan dan melayani antar kelas dan atau
elemen. Interface/ antar-muka mendefinisikan sebuah
set/ kelompok dari spesifikasi pengoperasian,
umumnya digambarkan dengan sebuah lingkaran yang
disertai dengan namanya. Sebuah antar-muka berdiri
sendiri dan umumnya merupakan pelengkap dari kelas
atau komponen.
Things
3. Collaboration, yang didefinisikan dengan interaksi dan
sebuah kumpulan/ kelompok dari kelas-kelas/ elemen-
elemen yang bekerja secara bersama-sama.
Collaborations mempunyai struktur dan dimensi.
Pemberian sebuah kelas memungkinkan berpartisipasi
didalam beberapa collaborations dan digambarkan
dengan sebuah ‘elips’ dengan garis terpotong-potong.
Things
4. Use cases, adalah rangkaian/ uraian sekelompok yang
saling terkait dan membentuk sistem secara teratur
yang dilakukan atau diawasi oleh sebuah aktor. ‘use
case’ digunakan untuk membentuk tingkah-laku benda
/ things dalam sebuah model serta direalisasikan oleh
sebuah collaboration. Umumnya ‘use case’
digambarkan dengan sebuah ‘elips’ dengan garis yang
solid, biasanya mengandung nama.
Things
5. Nodes, merupakan fisik dari elemen-elemen yang ada
pada saat dijalankannya sebuah sistem, contohnya
adalah sebuah komputer, umumnya mempunyai
sedikitnya memory dan processor. Sekelompok
komponen mungkin terletak pada sebuah node dan juga
mungkin akan berpindah dari node satu ke node lainnya.
Umumnya node ini digambarkan seperti kubus serta
hanya mengandung namanya.
Things
Ada 4 macam hubungan dalam penggunaan UML :
1. Dependency, adalah hubungan semantik antara dua
benda/ things dimana sebuah benda berubah
mengakibatkan benda satunya akan berubah pula.
Umumnya sebuah dependency digambarkan dengan
sebuah panah dengan garis terputus-putus.
2. Association, hubungan antar benda struktural yang
terhubung diantara obyek. Kesatuan obyek yang
terhubung merupakan hubungan khusus, yang
menggambarkan sebuah hubungan struktural diantara
seluruh atau sebagian. Umumnya assosiation
digambarkan dengan sebuah garis yang dilengkapi
dengan sebuah label, nama, dan status hubungannya.
Hubungan/ Relationships
3. Generalizations, menggambarkan hubungan khusus
dalam obyek anak/ child yang menggantikan obyek
parent/ induk. Dalam hal ini, obyek anak memberikan
pengaruhnya dalam hal struktur dan tingkah lakunya
kepada obyek induk. Digambarkan dengan garis panah.
4. Realizations, merupakan hubungan semantik antara
pengelompokan yang menjamin adanya ikatan
diantaranya. Hubungan ini dapat diwujudkan diantara
interface dan kelas atau elements, serta antara use cases
dan collaborations. Model dari sebuah hubungan
realization.
Hubungan/ Relationships
 UML terdiri atas pengelompokan diagram-diagram
sistem menurut aspek atau sudut pandang tertentu.
 Diagram menggambarkan permasalahan maupun solusi
dari permasalahan suatu model.
 UML mempunyai 9 diagram, yaitu:
 Diagram Use Case
 Diagram Class
 Diagram Package
 Diagram Sequence
 Diagram Collaboration
 Diagram Component
 Diagram StateChart
 Diagram Activity
 Diagram Deployment
Diagram UML
 Semakin kompleks bentukan sistem yang akan dibuat,
maka semakin sulit komunikasi antara orang-orang
yang saling terkait dalam pembuatan dan
pengembangan software yang akan dibuat.
 Pada masa lalu, UML mempunyai peranan sebagai
software blueprint (gambaran) language untuk analisis
sistem, designer, dan programmer. Sedangkan pada saat
ini, merupakan bagian dari software trade (bisnis
software).
 UML memberikan jalur komunikasi dari sistem analis
kemudian designer, lalu programmer mengenai
rancangan software yang akan dikerjakan.
Diagram UML
 Salah satu pemecahan masalah Object Oriented adalah dengan
menggunakan UML. Oleh karena itu orang-orang yang berminat
dalam mempelajari UML harus mengetahui dasar-dasar
mengenai Object Oriented Solving; antara lain dengan
pembentukan model.
 Model adalah gambaran abstrak dari suatu dasar masalah. Dan
dunia nyata atau tempat dimana masalah itu timbul bisa disebut
dengan domain.
 Model mengandung obyek-obyek yang beraktifitas dengan saling
mengirimkan messages (pesan-pesan). Obyek mempunyai
sesuatu yang diketahui (atribut/ attributes) dan sesuatu yang
dilakukan (behaviors atau operations). Attributes hanya berlaku
dalam ruang lingkup obyek itu sendiri (state). Lalu “blue print”
dari suatu obyek adalah Classes (kelas). Obyek merupakan
bagian-bagian dari kelas.
Diagram UML
 Object-Oriented Development Life Cycle (OODLC) merupakan
update dari SDLC (System Development Life Cycle)
 SDLC merupakan suatu proses yang yang digunakan oleh analis
sistem untuk mengembangkan suatu sistem informasi, mulai dari
analysis, Design, construction, testing dan implementation
sistem.
Pengembangan Sistem dengan UML
 Untuk menguasai UML, sebenarnya cukup dua hal yang harus
kita perhatikan:
1. Menguasai pembuatan diagram UML
2. Menguasai langkah-langkah dalam analisa dan
pengembangan dengan UML
Diagram UML
1. Buatlah daftar business process dari level tertinggi untuk
mendefinisikan aktivitas dan proses yang mungkin muncul.
2. Petakan use case untuk tiap business process untuk
mendefinisikan dengan tepat fungsionalitas yang harus
disediakan oleh sistem. Kemudian perhalus use case diagram dan
lengkapi dengan requirement, constraints dan catatan-catatan
lain.
3. Buatlah deployment diagram secara kasar untuk mendefinisikan
arsitektur fisik sistem.
4. Definisikan requirement lain (non-fungsional, security dan
sebagainya) yang juga harus disediakan oleh sistem.
5. Berdasarkan use case diagram, mulailah membuat activity
diagram.
Tips Menggunakan UML
6. Definisikan objek-objek level atas (package atau domain) dan
buatlah sequence dan/ atau collaboration diagram untuk tiap alir
pekerjaan. Jika sebuah use case memiliki kemungkinan alir normal
dan error, buatlah satu diagram untuk masing-masing alir.
7. Buatlah rancangan user interface model yang menyediakan
antarmuka bagi pengguna untuk menjalankan skenario use case.
8. Berdasarkan model-model yang sudah ada, buatlah class diagram.
Setiap package atau domain dipecah menjadi hirarki class lengkap
dengan atribut dan metodanya. Akan lebih baik jika untuk setiap
class dibuat unit test untuk menguji fungsionalitas class dan
interaksi dengan class lain.
9. Setelah class diagram dibuat, kita dapat melihat kemungkinan
pengelompokan class menjadi komponen-komponen. Karena itu
buatlah component diagram pada tahap ini. Juga definisikan tes
integrasi untuk setiap komponen meyakinkan ia berinteraksi dengan
baik.
Tips Menggunakan UML
10. Perhalus deployment diagram yang sudah dibuat. Detilkan
kemampuan dan requirement piranti lunak, sistem operasi, jaringan,
dan sebagainya. Petakan komponen ke dalam node.
11. Mulailah membangun sistem. Ada dua pendekatan yang dapat
digunakan :
 Pendekatan use case, dengan meng-assign setiap use case kepada
tim pengembang tertentu untuk mengembangkan unit code yang
lengkap dengan tes.
 Pendekatan komponen, yaitu meng-assign setiap komponen
kepada tim pengembang tertentu.
12. Lakukan uji modul dan uji integrasi serta perbaiki model berserta
codenya. Model harus selalu sesuai dengan code yang aktual.
13. Piranti lunak siap dirilis.
Tips Menggunakan UML
Saat ini banyak sekali tool perancangan sistem yang
mendukung UML, baik itu tool komersial maupun open
source. Beberapa diantaranya adalah:
• Rational Rose (www.rational.com)
• Together (www.togethersoft.com)
• Object Domain (www.objectdomain.com)
• Jvision (www.object-insight.com)
• Objecteering (www.objecteering.com)
• MagicDraw (www.nomagic.com/magicdrawuml)
• Visual Object Modeller (www.visualobject.com)
• StarUML (www.staruml.org)
Tools yang mendukung UML
Unified Modelling Language (UML)

More Related Content

PDF
Dokumen Test Plan
PDF
Bab 4 operasi-operasi dasar pengolahan citra dijital
PPTX
Testing&implementasi 4
PPT
Modul 4 representasi pengetahuan
PDF
Artikel Sistem Operasi
PPTX
Sistem komputer kelas 10 semester 1
DOCX
Artikel sistem operasi
DOCX
Evolusi perkembangan rekayasa perangkat lunak
Dokumen Test Plan
Bab 4 operasi-operasi dasar pengolahan citra dijital
Testing&implementasi 4
Modul 4 representasi pengetahuan
Artikel Sistem Operasi
Sistem komputer kelas 10 semester 1
Artikel sistem operasi
Evolusi perkembangan rekayasa perangkat lunak

What's hot (20)

PPTX
Sistem Operasi Windows
PPT
Sistem operasi jaringan
DOCX
Konsep dasar thread programming
PPT
DOCX
Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...
DOCX
Resume software measurement
DOCX
Laporan Praktikum Modul 2 (Instalasi Windows)
DOCX
KISI-KISI PILIHAN GANDA.docx
DOCX
Tugas 3 Rangkuman Protocol DNS, FTP, HTTP, dan SMTP
DOCX
SOAL ESSAY HOTS KOMPUTER JARINGAN DASAR KELAS X MULTIMEDIA
PPTX
Sistem berkas dan keamana data
DOCX
Bab 1 laporan kerja praktek informatika
PDF
Ch 04 (Siklus Instruksi dan Interrupt)
PDF
Tugas MPPL 4 - Project Charter Sistem Informasi Manajemen Kesehatan Peserta D...
PPT
Analisis sistem-informasi
PDF
61. KI-KD Informatika SMA.pdf
PPTX
Presentasi tentang internet
DOC
KUMPULAN SOAL LATIHAN DARI MODUL PROGRAM PROFESI GURU (PPG) TEKNIK KOMPUTER &...
PDF
Algoritma dan Struktur Data - Pohon Biner
PPTX
Intermediate code kode antara
Sistem Operasi Windows
Sistem operasi jaringan
Konsep dasar thread programming
Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...
Resume software measurement
Laporan Praktikum Modul 2 (Instalasi Windows)
KISI-KISI PILIHAN GANDA.docx
Tugas 3 Rangkuman Protocol DNS, FTP, HTTP, dan SMTP
SOAL ESSAY HOTS KOMPUTER JARINGAN DASAR KELAS X MULTIMEDIA
Sistem berkas dan keamana data
Bab 1 laporan kerja praktek informatika
Ch 04 (Siklus Instruksi dan Interrupt)
Tugas MPPL 4 - Project Charter Sistem Informasi Manajemen Kesehatan Peserta D...
Analisis sistem-informasi
61. KI-KD Informatika SMA.pdf
Presentasi tentang internet
KUMPULAN SOAL LATIHAN DARI MODUL PROGRAM PROFESI GURU (PPG) TEKNIK KOMPUTER &...
Algoritma dan Struktur Data - Pohon Biner
Intermediate code kode antara
Ad

Similar to Unified Modelling Language (UML) (20)

PDF
Uml
PPTX
UML (Unified Modeling Language) - Rekayasa Perangkat Lunak
PDF
Modul Unified modeling language (UML)
PDF
TD-635-02-PSBO
PDF
Tukang gypsum 081381278719
PPT
MATERI UML(Unified Modelling Language)
PPT
bahanajaruml-150609085409-lva1-app6891.ppt
DOCX
Tugas umll
PDF
Uml yusep wendy budiman
PPTX
Tgs 3 rekweb
DOCX
Tugas kelompok2
PPTX
Tugas 3 rek web (1411510744)
PDF
Pengenalan UML (Unified Modelling Language)
PPTX
pemodelan-system-berorientasi-obyek-uml.pptx
PPTX
Unified Modeling Language (UML) untuk s1.pptx
PDF
Modul uml
PPTX
Tugas3 rekayasa web
PPTX
Tugas 3
Uml
UML (Unified Modeling Language) - Rekayasa Perangkat Lunak
Modul Unified modeling language (UML)
TD-635-02-PSBO
Tukang gypsum 081381278719
MATERI UML(Unified Modelling Language)
bahanajaruml-150609085409-lva1-app6891.ppt
Tugas umll
Uml yusep wendy budiman
Tgs 3 rekweb
Tugas kelompok2
Tugas 3 rek web (1411510744)
Pengenalan UML (Unified Modelling Language)
pemodelan-system-berorientasi-obyek-uml.pptx
Unified Modeling Language (UML) untuk s1.pptx
Modul uml
Tugas3 rekayasa web
Tugas 3
Ad

More from Universitas Teknokrat Indonesia (20)

PPTX
Meeting 2 - Konsep dan Metode Penelitian Ilmu Komputer.pptx
PPTX
Teknik Pengumpulan Data.pptx
PPTX
PPTX
PPTX
Kerangka Penelitian
PPTX
PPTX
Rancangan Penelitian
PPTX
Rumusan Masalah dan Latar Belakang
PPTX
Extreme Programming
PPTX
PPTX
Meeting 3 metode pengembangan sistem
PPTX
Meeting 2 konsep dan metode penelitian ilmu komputer
PPTX
Meeting 2 pengembangan sistem
PPTX
Meeting 1 - Fundamental Sistem Informasi
PPTX
Soal UTS Aplikom Akuntansi 2
PPT
Revolusi Industri 4.0
Meeting 2 - Konsep dan Metode Penelitian Ilmu Komputer.pptx
Teknik Pengumpulan Data.pptx
Kerangka Penelitian
Rancangan Penelitian
Rumusan Masalah dan Latar Belakang
Extreme Programming
Meeting 3 metode pengembangan sistem
Meeting 2 konsep dan metode penelitian ilmu komputer
Meeting 2 pengembangan sistem
Meeting 1 - Fundamental Sistem Informasi
Soal UTS Aplikom Akuntansi 2
Revolusi Industri 4.0

Recently uploaded (20)

PPTX
PENGIMBASAN PEMBELAJARAN MENDALAM (DEEP LEARNING)
PPTX
Presentasi_Pembelajaran_Mendalam_Lengkap.pptx
PDF
INSTRUMEN IMPLEMENTASI DAN REFLEKSI PERENCANAAN PEMBELAJARAN-ARNI.pdf
PPTX
PPT Kurikulum Berbasis Cinta tahun 2025.
PDF
lembar kerja LMS tugas pembelajaran mendalam
PPTX
MATERI MPLS TENTANG KURIKULUM DAN KEGIATAN PEMBELAJARAN
PDF
Gangguan Penglihatan Mata - presentasi biologi
DOCX
Modul Ajar Deep Learning Bahasa Inggris Kelas 12 SMA Terbaru 2025
PPTX
Bahan Presentasi Persamaan Elips .pptx
PDF
KELOMPOK 4 LK Modul 4 KP4 Asesmen PM (3).pdf
PPTX
Pancasila: fondasi peradaban dan kebudayaan berkelanjutan
DOCX
Modul Ajar Deep Learning PAI & BP Kelas 10 SMA Terbaru 2025
DOCX
CONTOH RANCANGAN MODUL PROYEK KOKURIKULER SMA 1.docx
DOCX
Modul Ajar Deep Learning PJOK Kelas 10 SMA Terbaru 2025
PDF
Deck Rumah Pendidikan untuk Mendukung Program Prioritas Kemendikdasmen.pdf
PPSX
Teknik Trading Selang Seling Yang Dapat Digunakan Untuk Trading Manual Maupun...
DOCX
Lembar Kerja Mahasiswa Information System
PDF
Digital Statecraft Menuju Indonesia Emas 2045: Diplomasi Digital, Ketahanan N...
PDF
KASUS_INKUIRI_KOLABORATIF_KELAS_BAWAH-ISI-ARNI.pdf
PDF
Lembar Kerja Mahasiswa Konsep Sistem Operasi
PENGIMBASAN PEMBELAJARAN MENDALAM (DEEP LEARNING)
Presentasi_Pembelajaran_Mendalam_Lengkap.pptx
INSTRUMEN IMPLEMENTASI DAN REFLEKSI PERENCANAAN PEMBELAJARAN-ARNI.pdf
PPT Kurikulum Berbasis Cinta tahun 2025.
lembar kerja LMS tugas pembelajaran mendalam
MATERI MPLS TENTANG KURIKULUM DAN KEGIATAN PEMBELAJARAN
Gangguan Penglihatan Mata - presentasi biologi
Modul Ajar Deep Learning Bahasa Inggris Kelas 12 SMA Terbaru 2025
Bahan Presentasi Persamaan Elips .pptx
KELOMPOK 4 LK Modul 4 KP4 Asesmen PM (3).pdf
Pancasila: fondasi peradaban dan kebudayaan berkelanjutan
Modul Ajar Deep Learning PAI & BP Kelas 10 SMA Terbaru 2025
CONTOH RANCANGAN MODUL PROYEK KOKURIKULER SMA 1.docx
Modul Ajar Deep Learning PJOK Kelas 10 SMA Terbaru 2025
Deck Rumah Pendidikan untuk Mendukung Program Prioritas Kemendikdasmen.pdf
Teknik Trading Selang Seling Yang Dapat Digunakan Untuk Trading Manual Maupun...
Lembar Kerja Mahasiswa Information System
Digital Statecraft Menuju Indonesia Emas 2045: Diplomasi Digital, Ketahanan N...
KASUS_INKUIRI_KOLABORATIF_KELAS_BAWAH-ISI-ARNI.pdf
Lembar Kerja Mahasiswa Konsep Sistem Operasi

Unified Modelling Language (UML)

  • 1. Analisis dan Perancangan SI - Unified Modelling Language (UML) - Heni Sulistiani Fakultas Teknik dan Ilmu Komputer Universitas Teknokrat Indonesia
  • 2. Pendahuluan  Pemodelan (Modelling) adalah proses merancang piranti lunak sebelum melakukan pengkodean (coding). Model piranti lunak dapat dianalogikan seperti pembuatan blueprint pada pembangunan gedung.  Membuat model dari sebuah sistem yang kompleks sangatlah penting karena kita tidak dapat memahami sistem semacam itu secara menyeluruh  Semakin kompleks sebuah sistem, semakin penting pula penggunaan teknik pemodelan yang baik.
  • 3. The Triangle for Success  Kesukesan suatu pemodelan piranti lunak ditentukan oleh tiga unsur, yang dikenal dengan istilah segitia sukses.  Ketiga unsur tersebut adalah metode pemodelan (notation), proses (process) dan tool yang digunakan  Memahami notasi pemodelan tanpa mengetahui cara pemakaian yang sebenarnya (proses) akan membuat proyek gagal. Dan pemahaman terhadap metode pemodelan dan proses disempurnakan dengan tool yang tepat.
  • 4. Pengantar UML  UML (Unified Modelling Language) adalah metode pemodelan secara visual sebagai sarana untuk merancang dan atau membuat software berorientasi objek.  Karena UML ini merupakan bahasa visual untuk pemodelan bahasa berorientasi objek, maka semua elemen dan diagram berbasiskan pada paradigma object oriented  UML memberikan standar penulisan sebuah sistem blueprint, yang meliputi konsep bisnis proses, penulisan kelas-kelas dalam bahasa program yang spesifik, skema database dan komponen-komponen yang diperlukan dalam software.
  • 5.  Sebuah bahasa model adalah sebuah bahasa yang mempunyai vocabulary dan konsep tatanan aturan penulisan serta secara fisik mempresentasikan dari sebuah sistem  UML adalah sebuah bahasa standar untuk pengembangan software yang dapat menyampaikan bagaimana membuat dan membentuk model-model, tetapi tidak menyampaikan apa dan kapan model yang seharusnya dibuat. Pengantar UML
  • 6.  UML tidak hanya merupakan sebuah bahasa pemograman visual saja, namun juga dapat secara langsung dihubungkan ke berbagai bahasa pemograman, seperti JAVA, C++, Visual Basic, atau bahkan dihubungkan secara langsung ke dalam sebuah object-oriented database. UML juga dapat digunakan untuk modeling aplikasi prosedural dalam VB atau C  Begitu juga mengenai pendokumentasian dapat dilakukan seperti; requirements, arsitektur, design, source code, project plan, tests dan prototypes. Pengantar UML
  • 7.  Seperti bahasa-bahasa lainnya, UML mendefinisikan notasi dan syntax/semantik. Notasi UML merupakan sekumpulan bentuk khusus untuk menggambarkan berbagai diagram piranti lunak.  Setiap bentuk memiliki makna tertentu, dan UML syntax mendefinisikan bagaimana bentuk-bentuk tersebut dapat dikombinasikan. Notasi UML terutama diturunkan dari 3 notasi yang telah ada sebelumnya: Grady Booch OOD (Object-Oriented Design), Jim Rumbaugh OMT (Object Modelling Technique), dan Ivar Jacobson OOSE (Object-Oriented Software Engineering). Konsep Dasar UML
  • 8.  Untuk dapat memahami UML membutuhkan bentuk konsep dari sebuah bahasa model, dan mempelajari 3 elemen utama dari UML, seperti building block, aturan- aturan yang menyatakan bagaimana building block diletakkan secara bersamaan, dan beberapa mekanisme umum (common).  Tiga macam yang terdapat dalam building block adalah  Benda/ Things; adalah abstraksi yang pertama dalam sebuah model  Hubungan/ Relationships; sebagai alat komunikasi dari benda-benda  Bagan/ Diagrams; sebagai kumpulan/group dari benda-benda/ things Building Blocks
  • 9. Adalah hal yang sangat mendasar dalam model UML, juga merupakan bagian paling statik dari sebuah model, serta menjelaskan elemen-elemen lainnya dari sebuah konsep dan atau fisik. Bentuk dari things ada 5 : 1. Classes, yang diuraikan sebagai sekelompok dari object yang mempunyai Atribute, operasi, hubungan yang semantik. Sebuah kelas mengimplementasikan 1 atau lebih interfaces. Sebuah kelas dapat digambarkan sebagai sebuah persegi panjang, yang mempunyai sebuah nama, attribute, dan metoda pengoperasiannya Things
  • 10. 2. Interfaces, merupakan sebuah antar-muka yang menghubungkan dan melayani antar kelas dan atau elemen. Interface/ antar-muka mendefinisikan sebuah set/ kelompok dari spesifikasi pengoperasian, umumnya digambarkan dengan sebuah lingkaran yang disertai dengan namanya. Sebuah antar-muka berdiri sendiri dan umumnya merupakan pelengkap dari kelas atau komponen. Things
  • 11. 3. Collaboration, yang didefinisikan dengan interaksi dan sebuah kumpulan/ kelompok dari kelas-kelas/ elemen- elemen yang bekerja secara bersama-sama. Collaborations mempunyai struktur dan dimensi. Pemberian sebuah kelas memungkinkan berpartisipasi didalam beberapa collaborations dan digambarkan dengan sebuah ‘elips’ dengan garis terpotong-potong. Things
  • 12. 4. Use cases, adalah rangkaian/ uraian sekelompok yang saling terkait dan membentuk sistem secara teratur yang dilakukan atau diawasi oleh sebuah aktor. ‘use case’ digunakan untuk membentuk tingkah-laku benda / things dalam sebuah model serta direalisasikan oleh sebuah collaboration. Umumnya ‘use case’ digambarkan dengan sebuah ‘elips’ dengan garis yang solid, biasanya mengandung nama. Things
  • 13. 5. Nodes, merupakan fisik dari elemen-elemen yang ada pada saat dijalankannya sebuah sistem, contohnya adalah sebuah komputer, umumnya mempunyai sedikitnya memory dan processor. Sekelompok komponen mungkin terletak pada sebuah node dan juga mungkin akan berpindah dari node satu ke node lainnya. Umumnya node ini digambarkan seperti kubus serta hanya mengandung namanya. Things
  • 14. Ada 4 macam hubungan dalam penggunaan UML : 1. Dependency, adalah hubungan semantik antara dua benda/ things dimana sebuah benda berubah mengakibatkan benda satunya akan berubah pula. Umumnya sebuah dependency digambarkan dengan sebuah panah dengan garis terputus-putus. 2. Association, hubungan antar benda struktural yang terhubung diantara obyek. Kesatuan obyek yang terhubung merupakan hubungan khusus, yang menggambarkan sebuah hubungan struktural diantara seluruh atau sebagian. Umumnya assosiation digambarkan dengan sebuah garis yang dilengkapi dengan sebuah label, nama, dan status hubungannya. Hubungan/ Relationships
  • 15. 3. Generalizations, menggambarkan hubungan khusus dalam obyek anak/ child yang menggantikan obyek parent/ induk. Dalam hal ini, obyek anak memberikan pengaruhnya dalam hal struktur dan tingkah lakunya kepada obyek induk. Digambarkan dengan garis panah. 4. Realizations, merupakan hubungan semantik antara pengelompokan yang menjamin adanya ikatan diantaranya. Hubungan ini dapat diwujudkan diantara interface dan kelas atau elements, serta antara use cases dan collaborations. Model dari sebuah hubungan realization. Hubungan/ Relationships
  • 16.  UML terdiri atas pengelompokan diagram-diagram sistem menurut aspek atau sudut pandang tertentu.  Diagram menggambarkan permasalahan maupun solusi dari permasalahan suatu model.  UML mempunyai 9 diagram, yaitu:  Diagram Use Case  Diagram Class  Diagram Package  Diagram Sequence  Diagram Collaboration  Diagram Component  Diagram StateChart  Diagram Activity  Diagram Deployment Diagram UML
  • 17.  Semakin kompleks bentukan sistem yang akan dibuat, maka semakin sulit komunikasi antara orang-orang yang saling terkait dalam pembuatan dan pengembangan software yang akan dibuat.  Pada masa lalu, UML mempunyai peranan sebagai software blueprint (gambaran) language untuk analisis sistem, designer, dan programmer. Sedangkan pada saat ini, merupakan bagian dari software trade (bisnis software).  UML memberikan jalur komunikasi dari sistem analis kemudian designer, lalu programmer mengenai rancangan software yang akan dikerjakan. Diagram UML
  • 18.  Salah satu pemecahan masalah Object Oriented adalah dengan menggunakan UML. Oleh karena itu orang-orang yang berminat dalam mempelajari UML harus mengetahui dasar-dasar mengenai Object Oriented Solving; antara lain dengan pembentukan model.  Model adalah gambaran abstrak dari suatu dasar masalah. Dan dunia nyata atau tempat dimana masalah itu timbul bisa disebut dengan domain.  Model mengandung obyek-obyek yang beraktifitas dengan saling mengirimkan messages (pesan-pesan). Obyek mempunyai sesuatu yang diketahui (atribut/ attributes) dan sesuatu yang dilakukan (behaviors atau operations). Attributes hanya berlaku dalam ruang lingkup obyek itu sendiri (state). Lalu “blue print” dari suatu obyek adalah Classes (kelas). Obyek merupakan bagian-bagian dari kelas. Diagram UML
  • 19.  Object-Oriented Development Life Cycle (OODLC) merupakan update dari SDLC (System Development Life Cycle)  SDLC merupakan suatu proses yang yang digunakan oleh analis sistem untuk mengembangkan suatu sistem informasi, mulai dari analysis, Design, construction, testing dan implementation sistem. Pengembangan Sistem dengan UML
  • 20.  Untuk menguasai UML, sebenarnya cukup dua hal yang harus kita perhatikan: 1. Menguasai pembuatan diagram UML 2. Menguasai langkah-langkah dalam analisa dan pengembangan dengan UML Diagram UML
  • 21. 1. Buatlah daftar business process dari level tertinggi untuk mendefinisikan aktivitas dan proses yang mungkin muncul. 2. Petakan use case untuk tiap business process untuk mendefinisikan dengan tepat fungsionalitas yang harus disediakan oleh sistem. Kemudian perhalus use case diagram dan lengkapi dengan requirement, constraints dan catatan-catatan lain. 3. Buatlah deployment diagram secara kasar untuk mendefinisikan arsitektur fisik sistem. 4. Definisikan requirement lain (non-fungsional, security dan sebagainya) yang juga harus disediakan oleh sistem. 5. Berdasarkan use case diagram, mulailah membuat activity diagram. Tips Menggunakan UML
  • 22. 6. Definisikan objek-objek level atas (package atau domain) dan buatlah sequence dan/ atau collaboration diagram untuk tiap alir pekerjaan. Jika sebuah use case memiliki kemungkinan alir normal dan error, buatlah satu diagram untuk masing-masing alir. 7. Buatlah rancangan user interface model yang menyediakan antarmuka bagi pengguna untuk menjalankan skenario use case. 8. Berdasarkan model-model yang sudah ada, buatlah class diagram. Setiap package atau domain dipecah menjadi hirarki class lengkap dengan atribut dan metodanya. Akan lebih baik jika untuk setiap class dibuat unit test untuk menguji fungsionalitas class dan interaksi dengan class lain. 9. Setelah class diagram dibuat, kita dapat melihat kemungkinan pengelompokan class menjadi komponen-komponen. Karena itu buatlah component diagram pada tahap ini. Juga definisikan tes integrasi untuk setiap komponen meyakinkan ia berinteraksi dengan baik. Tips Menggunakan UML
  • 23. 10. Perhalus deployment diagram yang sudah dibuat. Detilkan kemampuan dan requirement piranti lunak, sistem operasi, jaringan, dan sebagainya. Petakan komponen ke dalam node. 11. Mulailah membangun sistem. Ada dua pendekatan yang dapat digunakan :  Pendekatan use case, dengan meng-assign setiap use case kepada tim pengembang tertentu untuk mengembangkan unit code yang lengkap dengan tes.  Pendekatan komponen, yaitu meng-assign setiap komponen kepada tim pengembang tertentu. 12. Lakukan uji modul dan uji integrasi serta perbaiki model berserta codenya. Model harus selalu sesuai dengan code yang aktual. 13. Piranti lunak siap dirilis. Tips Menggunakan UML
  • 24. Saat ini banyak sekali tool perancangan sistem yang mendukung UML, baik itu tool komersial maupun open source. Beberapa diantaranya adalah: • Rational Rose (www.rational.com) • Together (www.togethersoft.com) • Object Domain (www.objectdomain.com) • Jvision (www.object-insight.com) • Objecteering (www.objecteering.com) • MagicDraw (www.nomagic.com/magicdrawuml) • Visual Object Modeller (www.visualobject.com) • StarUML (www.staruml.org) Tools yang mendukung UML