Unified Modeling Language

Slides:



Advertisements
Presentasi serupa
ANALISIS DAN PEMODELAN BERORIENTASI OBJEK DENGAN UML
Advertisements

U M L Unified Modeling Language
UNIFIED MODELLING LANGUAGE
Perancangan Perangkat Lunak
Sequence Diagram Sequence Diagram menggambarkan instance proses bisnis.
CLASS DIAGRAM.
Unified Modelling Language (UML)
BAB 2 METODE REKAYASA PERANGKAT LUNAK
Pertemuan 6 Structural modelling
UML (Unified Modelling Language)
Pemodelan object dengan UML (Unified Modelling Language)
Yang akan dipelajari Pengenalan UML Sejarah Singkat UML
SE3414 RPL: Teknik Berorientasi Objek
TEKNIK – TEKNIK ANALISA DESAIN PADA PERANCANGAN PROGRAM
Rekayasa Perangkat Lunak Proses Rekayasa Perangkat Lunak
State Transition Diagram
Keuntungan metodologi berorientasi objek.
Perancangan Berorientasi Objek (Object Oriented Analysis & Design)
Pengantar uml Pertemuan 4. Pengenalan UML UML adalah sebuah bahasa yang memberikan vocabulary dan tatanan penulisan kata-kata dalam ‘MS Word’ untuk kegunaan.
Mata Praktikum Sistem Informasi Pertemuan-2 PJ : Nuraini Purwandari Copyright©2010. This presentasion is dedicated to Laboratory of Information of Universitas.
ANALISIS DAN PEMODELAN BERORIENTASI OBJEK DENGAN UML
-STATECHART DIAGRAM -ACTIVITY DIAGRAM
Pertemuan 7 Unified Modelling Language (UML)
BEHAVIOUR DIAGRAM -STATECHART DIAGRAM.
Orientasi Object Pertemuan 2.
Unified Modeling Language.  UML  Things  Relationship  Diagram  Architecture View  Use Case View  Design View  Process View  Implementation View.
RELATIOPNSHIPS IN THE UML
KONSEP DASAR PENDEKATAN OBJEK
Unified Modeling Language [UML]
CLASS DIAGRAM.
Rekayasa Perangkat Lunak UML (Unified Modelling Language)
Analisa dan Perancangan Berbasis Objek
Visual Modelling Teguh Sutanto, S.Kom.,M.Kom.
Soal Kuis I PSBO.
Analisis dan Perancangan Berorientasi Objek (OOAD)
Object Oriented Design
Notasi Object Oriented System
Object oriented analyst and design
Pengantar Object Oriented Analysis and Design
PEMODELAN SISTEM INFORMASI BERORIENTASI OBYEK
Object-Oriented Analysis (OOA)
Pemodelan objek.
QUIZ PSBO Total : 35 PG.
PERANCANGAN SISTEM BERORIENTASI OBJEK DENGAN UML
Object oriented analyst and design
KEBUTUHAN & SPESIFIKASI SOFTWARE
PEMODELAN SYSTEM BERORIENTASI OBYEK (UML)
Citra N., S.Si, MT ProDi Sistem Informasi - UNIKOM
PEMODELAN PROYEK (UML)
Analisa dan Desain Berbasis Objek UML (Unified Modelling Language]
OOAD – TI S1 Defri Kurniawan UDINUS
PENGANTAR UML Citra N., S.Si, MT UNIKOM.
PEMODELAN OBJECT ORIENTED
Object Oriented Modelling Information System
KEBUTUHAN & SPESIFIKASI SOFTWARE
Perancangan Perangkat Lunak – Part 1
UNIFIED MODELLING LANGUAGE
ANALISIS & DESAIN SISTEM
UML- UNIFIED MODELING LANGUAGE
Unified Modeling Language (UML)
KONSEP DASAR PENDEKATAN OBJEK
PEMODELAN ANALISIS RPL – PERTEMUAN 5&6.
Pertemuan 6 Unified Modeling Language (UML)
KEBUTUHAN & SPESIFIKASI SOFTWARE
OBJECT ORIENTED ANALISYS AND DESIGN
RPL untuk Pemrograman Berorientasi Obyek
OBJECT ORIENTED ANALISYS AND DESIGN
TIM RPL Program Studi Teknik Informatika
Object oriented analyst and design
PERANCANGAN SISTEM BERORIENTASI OBJEK DENGAN UML
Transcript presentasi:

Unified Modeling Language

Unified Modeling Language Merupakan bahasa standard untuk membuat blueprint suatu software. UML bisa digunakan sebagai visualisasi, spesifikasi, konstruksi dan dokumentasi suat software. Grady Booch James Rumbaugh (OMT) Ivar Jacobson (OOSE)

Unified Modeling Lanugage Merupakan standard bahasa pemodelan untuk pembuatan object-oriented software. Merupakan kombinasi dari: Konsep Pemodelan Data (Entity Relationship Diagrams) Pemodelan Bisinis (Work Flow), Pemodelan Object, Pemodelan Komponen,

Unified Modeling Language Spesifikasi UML mendefinisikan sekumpulan diagram grafis sebagai tampilan dari beberapa level abstraksi. Dapat digunakan bersama oleh semua proses pada keseluruhan tahap siklus-hidup (life-cycle) pengembangan software serta pada implementasi ke beberapa teknologi yang berbeda.

Apa itu Visual Modeling? Business Process Order Item Ship via “Modeling captures essential parts of the system.” Dr. James Rumbaugh Computer System Visual Modeling adalah modeling yang menggunakan Notasi standard grafis

Visual Modeling Captures Business Process Use Case Analysis adalah suatu teknik untuk menangkap perspektif user terhadap proses bisnis

Kegunaan UML Merepresentaasikan Element suatu sistem atau suatu domain dan Relationship-nya pada suatu Static Structure menggunakan class dan diagram object. Memodelkan Behavior object dengan state transition diagrams Menampilkan Arsitektur Implementasi Fisik (Physical Implementation Architecture) dengan Diagram Komponen dan Diagram Penyebaran (Deployment) Menampilkan Batas suatu sistem dan Fungsi utamanya menggunakan use cases dan actors Mengilustrasikan Realisasi Use Case dengan interaction diagrams

Block Pembentuk UML Things Relationships Diagrams

Things Structural things Behavioral things Grouping things classes, interfaces, collaborations, use cases, active classes, components, nodes. Behavioral things interactions, state machines. Grouping things packages. Annotational things notes.

Structural Things Structural things adalah “kata benda” dari UML models. Kebanyakan terdiri dari bagian-bagian model yang statik Merepresentasikan elemen-elemen secara fisik ataupun konseptual.

Structure Things: Classes dan Instances Spesifikasi untuk satu atau lebih object yang berbeda dengan bentuk yang sama (Structure dan Behavior) instance phone1:Telephone busy = true offHook() onHook () ring() class Telephone busy : boolean offHook() onHook () ring() phone2:Telephone busy = false offHook() onHook () ring()

Attributes Merepresentasikan Aspek data/struktur statik dari suatu class Attribut bisa diperoleh melalui pemeriksaan definisi class, problem requirements, dan juga melalui domain knowledge CourseOffering Setiap course offering memiliki number, location dan time number location time

Operations Merepresentasikan Behavior suatu class Operations bisa diperoleh dari pemeriksaan diagram interaksi registration registration form manager RegistrationManager addCourse(joe, math 01) addCourse(Student,Course)

Different Levels of Specifying Classes Hak akses: ‘+’= public, ‘ - ’= private, ‘#’ = protected

Structural Things (lanjutan) Use case menspesifikasikan behavior suatu sistem atau bagian sistem merupakan deskripsi dari himpunan barisan aksi, termasuk variannya untuk memperoleh hasil yang bisa diobservasi oleh actor contoh: Place Order

Structural Things Actor Actor merepresentasikan peranan pemakai use case ketika berinteraksi dengan use case tersebut. Contoh: Student Maintain Schedule

Structural Things Interface <<interface>> Interface adalah koleksi operation yang menspesifikasikan service suatu class atau component. Tidak menspesifikasikan struktur (artinya tidak memiliki attribute) Contoh: <<interface>> URL_StreamHandler openConnection() Parse URL() setURL() toExternalForm() operation ISpelling

Structural Things Collaboration Chain of Responsibility Collaboration adalah sekumpulan class, interface, dan elemen lain yang saling bekerja sama untuk menghasilkan behavior yang lebih besar dari keseluruhan part-nya. Contoh: Chain of Responsibility

Structural Things Active class BlackboardController attributes Active class adalah class dari object-object yang memiliki satu atau lebih proses atau thread yang bisa memulai aktivitas control. Contoh: BlackboardController currentKnowledgeSource Signals BlackboardIsSolved hasAHint attributes name operation signals

Structural Things Component component adalah bagian fisik sistem yang bisa diganti dan menyedikan sekumpulan realization sebagai interface.

Structural Things Node Node adalah elemen fisik yang ada pada saat run-time yang mereperesentasikan suatu sumber komputasi.

Behavioral Things Behavioral things adalah bagian UML model yang dinamis dan merupakan bagian ‘kata kerja’ pada model yang merepresentasikan behavior waktu dan ruang.

Behavioral Things (cont’d) Interaction Interaction adalah behavior yang terdiri dari pertukaran pesan (message) antar object pada konteks tertentu untuk memperoleh suatu tujuan. State machine State machine adalah behavior yang menspesifikasikan barisan aliran state suatu object atau interaksi selama proses berlangsung

Grouping dan Annotational Things Grouping things adalah bagian organisasi model UML. Package A package adalah mekanisme yang bertujuan umum untuk mengorganisasikan elemen ke dalam group. Package Business rules name Extra compartment may be used to show contents

Annotational things (Note) note adalah penjelasan dari bagian UML model untuk memberikan keterangan, ilustrasi dan catatan tentang elemen suatu model. Note note Consider the use of the broker design pattern here.

Relationships Association Association adalah hubungan dua arah antar class. Hubungan tersebut digambarkan sebagai garis yang menghubungakan class-class tersebut.

Relationships Aggregation Adalah bentuk hubungan yang lebih kuat antara whole dan part. Dinyatakan dengan garis yang menghubungkan class-class tersebut dimana pada ujung (whole) terdapat gambar diamond. Part Aggregate has School Department 1 1..*

Relationship Dependency Dependency adalah relationship yang menyatakan ketergantungan yaitu perubahan yang terjadi pada suatu ‘thing’ akan mempengaruhi yang lainnya (yang memakai thing tsb.), tetapi tidak perlu untuk sebaliknya Supplier Client name

Relationships Generalization Subclass Superclass Generalization adalah suatu hubungan antara general thing (superclass atau parent) dan thing lainnya yang lebih spesifik. Kadang disebut sebagai hubungan ''is­a­kind­of''. Subclass Superclass

Relationship Realization AccountBusinessRule Realization Realization adalah hubangan semantic antar classifiers, dimana satu classifier menspesifikasikan suatu kontrak dengan classifier lainnya agar classifier tersebut menjamin untuk melaksanakan tugas interface. Terdapat antar Interface dan Class; serta antara use cases dan collaboation yang merealisasikannya. Realization << Interface>> IRuleAgent AccountBusinessRule AddRule() changeRule() explainAction()

Financial Institution Class Diagram Menampilkan entitas suatu sistem dan general relationship-nya Financial Institution Person client creditor 0..* 0..* owner 0..* generalization association Bank Trust Company residence 0..* House

Object Diagram Captures instances dan links

Use Case Diagram Use case diagram menunjukkan suatu kelompok use case dan actors serta relationships-nya.

Sequence Diagram Captures dynamic behavior (time-oriented)

Collaboration Diagram Captures dynamic behavior (message-oriented)

Statechart Diagram Statechart diagram menampilkan suatu state machine, yang terdiri dari states, transitions, events, dan activities.

Activity Diagram Captures dynamic behavior (activity-oriented)

Component Diagram Component diagram menunjukkan organisasi dan dependencies pada sekumpulan component.

Deployment Diagram Deployment diagram menunjukkan konfigurasi node pemroses run-time dan komponen yang ada.

Contoh The ESU University wants to computerize their registration system The Registrar sets up the curriculum for a semester One course may have multiple course offerings Students select 4 primary courses and 2 alternate courses Once a student registers for a semester, the billing system is notified so the student may be billed for the semester Students may use the system to add/drop courses for a period of time after registration Professors use the system to receive their course offering rosters Users of the registration system are assigned passwords which are used at logon validation

Actors Actor pada sistem: Registrar Professor Student Billing System

Use Cases Actors are examined to determine their needs Registrar -- maintain the curriculum Professor -- request roster Student -- maintain schedule Billing System -- receive billing information from registration Maintain Schedule Maintain Curriculum Request Course Roster

Copyright © 1997 by Rational Software Corporation Use Case Diagram Use case diagrams are created to visualize the relationships between actors and use cases Request Course Roster Professor Student Maintain Schedule Billing System Maintain Curriculum Registrar Copyright © 1997 by Rational Software Corporation

Sequence Diagram

Collaboration Diagram : Registrar course form : CourseForm theManager : CurriculumManager aCourse : Course 1: set course info 2: process 3: add course 4: new course

Classes ScheduleAlgorithm RegistrationForm RegistrationManager Course Student Professor CourseOffering

Classes ScheduleAlgorithm RegistrationForm RegistrationManager Course addStudent(Course, StudentInfo) Course name numberCredits Student open() name addStudent(StudentInfo) major Professor name CourseOffering tenureStatus location open() addStudent(StudentInfo)

Relationships ScheduleAlgorithm RegistrationForm RegistrationManager Course Student CourseOffering Professor addStudent(Course, StudentInfo) name numberCredits open() addStudent(StudentInfo) major location tenureStatus ScheduleAlgorithm

Multiplicity and Navigation ScheduleAlgorithm RegistrationForm 0..* RegistrationManager 1 addStudent(Course, StudentInfo) name numberCredits open() addStudent(StudentInfo) major location tenureStatus 1 Course 0..* Student 1 3..10 Professor 1..* 4 CourseOffering 1 0..4

Inheritance ScheduleAlgorithm RegistrationForm RegistrationManager addStudent(Course, StudentInfo) Course name RegistrationUser numberCredits name Student open() addStudent(StudentInfo) major Professor CourseOffering tenureStatus location open() addStudent(StudentInfo)

State Transition Diagram Add student[ count < 10 ] Add Student / Initialization Set count = 0 Open do: Initialize course entry: Register student exit: Increment count Cancel Cancel [ count = 10 ] Canceled do: Notify registered students Closed Cancel do: Finalize course

Component Diagram People.dll Course.dll Professor Student Course Register.exe Billing.exe Billing System Course.dll People.dll User Course Professor Student Course Course Offering

Deployment Diagram Registration Database Main Library Building Dorm