object oriented analysis and design - dinus.ac.id · teknik informatika s1 disusun oleh: egia rosi...
TRANSCRIPT
![Page 1: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/1.jpg)
Teknik Informatika S1
Disusun Oleh:Egia Rosi Subhiyakto, M.Kom, M.CSTeknik Informatika [email protected]+6281329571612
Pengenalan UML
Object Oriented Analysis and Design
![Page 2: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/2.jpg)
Evolution of OO Development Methods
![Page 3: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/3.jpg)
History of OOAD leading to UML
![Page 4: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/4.jpg)
History of UML
![Page 5: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/5.jpg)
More on UML...
Specifying - UML provides the means tomodel precisely, unambiguously and completely,the system in question.
Constructing - models built with UML have a “design” dimension to it; these are Language independent and can be implemented in any programming language.
![Page 6: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/6.jpg)
More on UML...
Documenting - every software projectinvolves a lot of documentation - from the
inception phase to the deliverables.
Documentation is(among others) for:•Requirements•Design•Tests
![Page 7: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/7.jpg)
Model Konseptual UML❖ Building Blocks
• Things
• Relationships
• Diagrams
❖ Rules
❖ Common Mechanisms
• Specifications
• Adornments
• Common Divisions
• Extensibility Mechanisms
![Page 8: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/8.jpg)
Structural Things(contd.)
Active Class - a class whose instance is an active object;
objek aktif adalah obyek yang memiliki proses atau thread (unit
eksekusi)
Notation:
Component - bagian fisik (biasanya memanifestasikan dirinyasebagai bagian dari perangkat lunak) dari sistem.
Notation:
![Page 9: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/9.jpg)
Structural Things(contd.)
Node - elemen fisik yang ada pada saat run-time dan merupakan
sumber daya komputasi (biasanya, sumber daya perangkat keras).
Notation:
![Page 10: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/10.jpg)
Behavioral Things
Verba model UML; Biasanya bagian yang dinamis dari
sistem yang bersangkutan.
Interaction - beberapa perilaku dibentuk oleh pertukaran pesan
antara objek-objek; pertukaran pesan adalah dengan tujuan
untuk mencapai beberapa tujuan.
Notation:
![Page 11: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/11.jpg)
Behavioral Things (contd.)
State machine - a behavior that specifies the sequence of
“states” an object goes through, during its lifetime. A “state” is a
condition or situation during the lifetime of an object during
which it exhibits certain characteristics and/ or performs some
function.
Notation:
![Page 12: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/12.jpg)
Grouping ThingsBagian organisasi dari model UML; memberikan tingkat yang lebih
tinggi dari abstraksi (granularity).
Package - tujuan umum yang terdiri dari elemen UML - struktural,
perilaku atau bahkan pengelompokan.
Package adalah pengelompokan konseptual dari sistem dan tidak perlu harus
dilaksanakan sebagai modul software kohesif.
Notation:
![Page 13: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/13.jpg)
An notational ThingsBagian yang jelas dari model UML; menambahkan informasi/ makna
pada elemen model.
Note - notasi grafis untuk memasang kendala dan/ atau komentar untuk
elemen model.
Notation:
![Page 14: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/14.jpg)
RelationshipsMengartikulasikan makna hubungan antara hal-hal.
Dependency - hubungan semantik di mana perubahan dalam satu hal (hal
independen) menyebabkan perubahan dalam semantik hal lainnya (hal
dependen).
Notation:
Association - hubungan struktural yang menggambarkan hubungan antara dua hal.
Notation:
Arrow-head points to the independent thing
![Page 15: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/15.jpg)
Relationships (contd.)
Generalisation - hubungan antara hal umum (disebut "orang tua" atau
"superclass") dan jenis yang lebih spesifik hal itu (disebut "anak" atau
"subclass"), sehingga subclass dapat menggantikan superclass.
Notation:Arrow-head points to the superclass
![Page 16: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/16.jpg)
Relationships (contd.)
Realization - hubungan semantik antara dua hal di mana dalam
satu menentukan perilaku yang akan dilakukan, dan yang
lainnya melakukan perilaku.
“a collaboration realizes a Use Case”
Notation:
Use Case menentukan perilaku (fungsi) yang akandilaksanakan (disediakan), dan kolaborasi benar-benarmenerapkan perilaku itu.
Arrow-head points to the thing being realized
![Page 17: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/17.jpg)
DiagramsPresentasi grafis dari model. Direpresentasikan sebagai sebuah
graf terhubung - simpul (hal) yang terhubung oleh busur (hubungan).
UML mencakup sembilan diagram - masing menangkap dimensi yang
berbeda dari arsitektur perangkat lunak sistem.
• Class Diagram
• Object Diagram
• Use Case Diagram
• Sequence Diagram
• Collaboration Diagram
• State chart Diagram
• Activity Diagram
• Component Diagram
• Deployment Diagram
![Page 18: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/18.jpg)
More on Diagrams...➢ Class Diagram - diagram yang paling umum ditemukan di
OOAD, menunjukkan satu set kelas, interface, kolaborasi dan
hubungan mereka. Model pandangan statis dari sistem.
➢ Object Diagram - snapshot dari diagram kelas; model contoh
dari hal-hal yang terkandung dalam diagram kelas.
➢ Use Case Diagram - menunjukkan satu set “Use Case" (set
fungsi yang dilakukan oleh sistem), "aktor" (biasanya, orang/
sistem yang berinteraksi dengan sistem ini [masalah-domain])
dan hubungan mereka. Models WHAT the system is expected to
do.
![Page 19: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/19.jpg)
More on Diagrams...➢ Sequence Diagram - model aliran kontrol dengan waktu
pemesanan; menggambarkan interaksi antara berbagai objek
dengan pesan berlalu, dengan dimensi temporal untuk itu.
➢ Collaboration Diagram - model interaksi antara objek,
tanpa dimensi temporal; hanya menggambarkan pesan lewat
antara objek.
➢ State chart Diagram - shows the different state machines
and the events that leads to each of these state machines.
State chart diagrams show the flow of control from state to
state.
![Page 20: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/20.jpg)
More on Diagrams...Activity Diagram - menunjukkan aliran dari kegiatan kegiatan;
suatu "kegiatan" adalah eksekusi non-atom yang sedang berlangsung
dalam state machine.
Component Diagram - menunjukkan kemasan fisik perangkat
lunak dalam hal komponen dan dependensi di antara mereka.
Deployment Diagram - menunjukkan konfigurasi node
pengolahan di run-time dan komponen yang hidup pada mereka.
![Page 21: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/21.jpg)
Dimensions...
. . .of Software Architecture
![Page 22: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/22.jpg)
Diagrams and Process
![Page 23: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/23.jpg)
Diagrams and Process
Use Case Diagrams
![Page 24: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/24.jpg)
Diagrams and Process
Class & Package Diagrams
![Page 25: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/25.jpg)
Diagrams and Process
Interaction Diagrams (Scenarios)
![Page 26: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/26.jpg)
Diagrams and Process
Activity Diagrams (Workflow, Interclass Behavior)
![Page 27: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/27.jpg)
Diagrams and Process
State Transition Diagrams (Intraclass Behavior)
![Page 28: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/28.jpg)
Texts and Process
Source Code
![Page 29: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/29.jpg)
Diagrams and Process
Deployment Diagrams
![Page 30: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/30.jpg)
Why Modeling?
Business Process
Modeling menangkap bagian penting dari sistem(James Rumbaugh)
Computer System
Modeling
![Page 31: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/31.jpg)
UML 2.0 Diagram
![Page 32: Object Oriented Analysis and Design - dinus.ac.id · Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6281329571612](https://reader031.vdocument.in/reader031/viewer/2022031515/5cfa0cf988c993e40e8bc3ce/html5/thumbnails/32.jpg)
TERIMA KASIH