Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Unified Modeling Language

Presentasi serupa


Presentasi berjudul: "Unified Modeling Language"— Transcript presentasi:

1 Unified Modeling Language

2 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)

3 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,

4 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.

5 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

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

7 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

8 Block Pembentuk UML Things Relationships Diagrams

9 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.

10 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.

11 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()

12 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

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

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

15 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

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

17 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

18 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

19 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

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

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

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

23 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

24 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

25 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.

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

27 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..*

28 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

29 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

30 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()

31 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

32 Object Diagram Captures instances dan links

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

34 Sequence Diagram Captures dynamic behavior (time-oriented)

35 Collaboration Diagram
Captures dynamic behavior (message-oriented)

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

37 Activity Diagram Captures dynamic behavior (activity-oriented)

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

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

40 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

41 Actors Actor pada sistem: Registrar Professor Student Billing System

42 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

43 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

44 Sequence Diagram

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

46 Classes ScheduleAlgorithm RegistrationForm RegistrationManager Course
Student Professor CourseOffering

47 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)

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

49 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

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

51 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

52 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

53 Deployment Diagram Registration Database Main Library Building Dorm


Download ppt "Unified Modeling Language"

Presentasi serupa


Iklan oleh Google