SlideShare une entreprise Scribd logo
1  sur  40
Télécharger pour lire hors ligne
Miles, Russ & Hamilton, Kim,
2006,
Oreilly Publisher ,
Learning UML 2.0
286 Page
PERTEMUAN 3. UML DAN USE CASE VIEW
1. Pengenalan UML Sebagai Alat Bantu
Pemodelan Pada Pembangunan Perangkat
Lunak Menggunakan Pendekatan Analisis dan
Desain Berorientasi Objek
2. Notasi, Semantik, dan Stereotype Pada UML
3. Komponen pada UML (Use Case View, Logical
View, Physical View, dan Process View)
4. Pengenalan Use Case Diagram sebagai Use
Case View Pada UML
5. Penjelasan Aktor, Generalisasi Aktor, dan Use
Case
6. Penjelasan Use Case Scenario
7. Use Case Refinement (Relasi Include, Extends,
dan Generalisasi Use Case)
• The Unified Modeling Language (UML) is the standard modeling language for
software and systems development.
• A model is an abstraction of the real thing.
• When you model a system, you abstract away any details that are irrelevant or
potentially confusing.
• Your model is a simplification of the real system, so it allows the design and
viability of a system to be understood, evaluated, and criticized quicker than if
you had to dig through the actual system itself.
• To effectively model a system, you need one very important thing: a language
with which the model can be described. And here's where UML comes in.
1. IT'S A FORMAL LANGUAGE
Each element of the language has a strongly defined
meaning, so you can be confident that when you
model a particular facet of your system it will not be
misunderstood.
2. IT'S CONCISE
The entire language is made up of simple and
straightforward notation.
3. IT'S COMPREHENSIVE
It describes all important aspects of a system.
4. IT'S SCALEABLE
Where needed, the language is formal enough to
handle massive system modeling projects, but it also
scales down to small projects, avoiding overkill.
5. IT'S BUILT ON LESSONS LEARNED
UML is the culmination of best practices in the
object-oriented community during the past 15
years.
6. IT'S THE STANDARD
UML is controlled by an open standards group
with active contributions from a worldwide group
of vendors and academics, which fends off
"vendor lock-in." The standard ensures UML's
transformability and interoperability, which means
you aren't tied to a particular product.
WATERFALL
The waterfall method attempts to pin down the
requirements early in the project life cycle. After
gathering requirements, software design is performed
in full. Once the design is complete, the software is
implemented. The problem with this method is that if
a change in requirements occurs, the impact can be
devastating.
AGILE METHODS
Agile methods use iterations in extremely short bursts and attempt
to minimize risk by always having a working system of expanding
capabilities. Methodologies under this category have introduced
some of the more interesting development practices, such as pair
programming and test-driven development. Agile methods
emphasize using UML as a sketch.
Philippe Kruchten's 4+1 view model
LOGICAL VIEW
Describes the abstract descriptions of a system's parts. Used to model
what a system is made up of and how the parts interact with each
other. The types of UML diagrams that typically make up this view
include class, object, state machine, and interaction diagrams.
PROCESS VIEW
Describes the processes within your system. It is particularly helpful
when visualizing what must happen within your system. This view
typically contains activity diagrams.
DEVELOPMENT VIEW
Describes how your system's parts are organized into modules and
components. It is very useful to manage layers within your system's
architecture. This view typically contains package and component
diagrams.
Philippe Kruchten's 4+1 view model
PHYSICAL VIEW
Describes how the system's design, as described in the three previous
views, is then brought to life as a set of real-world entities. The
diagrams in this view show how the abstract parts map into the final
deployed system. This view typically contains deployment diagrams.
USE CASE VIEW
Describes the functionality of the system being modeled from the
perspective of the outside world. This view is needed to describe what
the system is supposed to do. All of the other views rely on the use
case view to guide themthat's why the model is called 4+1. This view
typically contains use case diagrams, descriptions, and overview
diagrams.
The elements that make up a modeling language are called its notation
1. NOTES
Notes allow you to enter additional comments that aren't
captured in your diagrams. You can write anything you want in
a note to explain your diagram, similar to a comment in code.
2. STEREOTYPES
Stereotypes signify a special use or intent and can be applied to
almost any element of UML notation. Stereotypes modify the
meaning of an element and describe the element's role within
your model.
A stereotype sometimes has an associated icon
1. Things – Important modelling concepts
2. Relationships – tying individual things
3. Diagram – Grouping interrelated collections of things and
relationships
THINGS COMPONENT
RELATIONSHIP COMPONENT
DIAGRAM COMPONENT
1. STRUKTURAL DIAGRAM
Digunakan untuk mendeskripsikan relasi antar kelas
2. BEHAVIORAL DIAGRAM
Digunakan untuk mendeskripsikan interaksi antara
aktor dan sebuah use case (bagaimana aktor
menggunakan sistem)
• A use case is a case (or situation) where your system is used to fulfill one
or more of your user's requirements; a use case captures a piece of
functionality that the system provides.
• Use cases are at the heart of your model
• Use cases specify only what your system is supposed to do, i.e., the
system's functional requirements.
• They do not specify what the system shall not do, i.e., the system's
nonfunctional requirements. Nonfunctional requirements often include
performance targets and programming languages, etc.
•
•
•
•
•
WEBLOG CONTENT MANAGEMENT SYSTEM (CMS).
What's in a Name?
It's actually worth being very careful when naming your actors. The best
approach is to use a name that can be understood by both your
customer and your system designers. Wherever possible, use the
original term for the actor as identified within your customer's
requirements; that way, at least your use cases will be familiar to your
customers. This approach also lets system designers get comfortable
with the system's unique context.
• Use cases can be identified from your user's requirements.
• Remember, if use cases are truly requirements, then they must have
very clear pass/fail criteria. The developer, the tester, the technical
writer, and the user must explicitly know whether the system fulfils
the use case or not.
• A communication line connects an actor and a use case to show the
actor participating in the use case. In this example, the Administrator
actor is involved in the Create a new Blog Account use case;
• The purpose of a communication line is to show that an actor is simply
involved in a use case
• To show your system's boundary on a use case diagram, draw a box
around all of the use cases but keep the actors outside of the box. It's
also good practice to name your box after the system you are
developing,
• It separated between actors (external to your system) and use cases
(internal to your system) that marks your system's boundary
• A diagram showing your use cases and actors may be a nice starting
point, but it does not provide enough detail for your system designers to
actually understand exactly how the system's concerns will be met.
Use cases work in several different modes or special cases. Finally, you may also find a use case
with multiple flows throughout its execution, and it would be good to show those important
optional cases on your use case diagrams.
• The first thing to notice is that we have some
redundancy between the two use case descriptions.
Both Create a new Blog Account and Create a new
Personal Wiki need to check the applicant's
credentials. Currently, this behavior is simply
repeated between the two use case descriptions.
• This repetitive behavior shared between two use
cases is best separated and captured within a totally
new use case. This new use case can then be reused
by the Create a new Blog Account and Create a new
Personal Wiki use cases using the <<include>>
relationship. Reuse
The <<include>> Relationship
• This is where use case generalization
comes in. A more common way of
referring to generalization is using the
term inheritance .
• Use case inheritance is useful when
you want to show that one use case is
a special type of another use case.
• To show use case inheritance , use the
generalization arrow to connect the
more general, or parent, use case to
the more specific use case
The designers of UML 2.0 took a very
different view as to the meaning of
<<extend>> between use cases. They
wanted a means for you to show that a use
case might completely reuse another use
case's behavior, similar to the <<include>>
relationship, but that this reuse was
optional and dependent either on a
runtime or system implementation decision
[RPL2] Pertemuan 3 - UML dan USECASE VIEW
[RPL2] Pertemuan 3 - UML dan USECASE VIEW
[RPL2] Pertemuan 3 - UML dan USECASE VIEW
[RPL2] Pertemuan 3 - UML dan USECASE VIEW
[RPL2] Pertemuan 3 - UML dan USECASE VIEW
[RPL2] Pertemuan 3 - UML dan USECASE VIEW

Contenu connexe

Tendances

Pengenalan power designer
Pengenalan power designerPengenalan power designer
Pengenalan power designer
pia_13
 
Laporan praktikum basis data my sql
Laporan praktikum basis data my sqlLaporan praktikum basis data my sql
Laporan praktikum basis data my sql
Lela Warni
 
Laporan Praktikum Basis Data Modul I-Membangun Database SQL Pada MYSQL
Laporan Praktikum Basis Data Modul I-Membangun Database SQL Pada MYSQLLaporan Praktikum Basis Data Modul I-Membangun Database SQL Pada MYSQL
Laporan Praktikum Basis Data Modul I-Membangun Database SQL Pada MYSQL
Shofura Kamal
 

Tendances (20)

Pengenalan UML (Unified Modelling Language)
Pengenalan UML (Unified Modelling Language)Pengenalan UML (Unified Modelling Language)
Pengenalan UML (Unified Modelling Language)
 
MATERI UML(Unified Modelling Language)
MATERI UML(Unified Modelling Language)MATERI UML(Unified Modelling Language)
MATERI UML(Unified Modelling Language)
 
Pertemuan 6 Rekayasa Perangkat Lunak
Pertemuan 6 Rekayasa Perangkat LunakPertemuan 6 Rekayasa Perangkat Lunak
Pertemuan 6 Rekayasa Perangkat Lunak
 
[RPL2] Package Diagram
[RPL2] Package Diagram[RPL2] Package Diagram
[RPL2] Package Diagram
 
Mini Google Design Sprint
Mini Google Design SprintMini Google Design Sprint
Mini Google Design Sprint
 
[RPL2] Class Diagram dan Konsep Object Oriented (1)
[RPL2] Class Diagram dan Konsep Object Oriented (1)[RPL2] Class Diagram dan Konsep Object Oriented (1)
[RPL2] Class Diagram dan Konsep Object Oriented (1)
 
Pemodelan berorientasi objek
Pemodelan berorientasi objekPemodelan berorientasi objek
Pemodelan berorientasi objek
 
[RPL2] Pengujian Perangkat Lunak
[RPL2] Pengujian Perangkat Lunak[RPL2] Pengujian Perangkat Lunak
[RPL2] Pengujian Perangkat Lunak
 
Pengenalan power designer
Pengenalan power designerPengenalan power designer
Pengenalan power designer
 
Laporan praktikum basis data my sql
Laporan praktikum basis data my sqlLaporan praktikum basis data my sql
Laporan praktikum basis data my sql
 
Makalah Peranan Semaphore Sistem Operasi - Universitas Widyatama
Makalah Peranan Semaphore Sistem Operasi - Universitas WidyatamaMakalah Peranan Semaphore Sistem Operasi - Universitas Widyatama
Makalah Peranan Semaphore Sistem Operasi - Universitas Widyatama
 
[PBO] Pertemuan 6 - Abstrak
[PBO] Pertemuan 6 - Abstrak[PBO] Pertemuan 6 - Abstrak
[PBO] Pertemuan 6 - Abstrak
 
[PBO] Pertemuan 5 - Inheritance
[PBO] Pertemuan 5 - Inheritance[PBO] Pertemuan 5 - Inheritance
[PBO] Pertemuan 5 - Inheritance
 
[RPL2] Class Diagram dan Relasinya (2)
[RPL2] Class Diagram dan Relasinya (2)[RPL2] Class Diagram dan Relasinya (2)
[RPL2] Class Diagram dan Relasinya (2)
 
RPL 1 (Lama) - Perancangan Perangkat Lunak
RPL 1 (Lama) - Perancangan Perangkat LunakRPL 1 (Lama) - Perancangan Perangkat Lunak
RPL 1 (Lama) - Perancangan Perangkat Lunak
 
Pertemuan 1 konsep dasar pemrograman berorientasi objek
Pertemuan 1 konsep dasar pemrograman berorientasi objekPertemuan 1 konsep dasar pemrograman berorientasi objek
Pertemuan 1 konsep dasar pemrograman berorientasi objek
 
pertemuan 7 basis data relational.ppt
pertemuan 7 basis data relational.pptpertemuan 7 basis data relational.ppt
pertemuan 7 basis data relational.ppt
 
Laporan Praktikum Basis Data Modul I-Membangun Database SQL Pada MYSQL
Laporan Praktikum Basis Data Modul I-Membangun Database SQL Pada MYSQLLaporan Praktikum Basis Data Modul I-Membangun Database SQL Pada MYSQL
Laporan Praktikum Basis Data Modul I-Membangun Database SQL Pada MYSQL
 
RPL 1 (Lama) - Pengujian Perangkat Lunak
RPL 1 (Lama) - Pengujian Perangkat LunakRPL 1 (Lama) - Pengujian Perangkat Lunak
RPL 1 (Lama) - Pengujian Perangkat Lunak
 
Data Management (Enhanced ERD and Mapping ERD)
Data Management (Enhanced ERD and Mapping ERD)Data Management (Enhanced ERD and Mapping ERD)
Data Management (Enhanced ERD and Mapping ERD)
 

Similaire à [RPL2] Pertemuan 3 - UML dan USECASE VIEW

Software Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfSoftware Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdf
MeagGhn
 
Quality Assurance. Quality Assurance Approach. White Box
Quality Assurance. Quality Assurance Approach. White BoxQuality Assurance. Quality Assurance Approach. White Box
Quality Assurance. Quality Assurance Approach. White Box
Kimberly Jones
 
Chap5 oodm-uml-part1
Chap5 oodm-uml-part1Chap5 oodm-uml-part1
Chap5 oodm-uml-part1
SJC
 
Chap5 oodm-uml-part11
Chap5 oodm-uml-part11Chap5 oodm-uml-part11
Chap5 oodm-uml-part11
SJC
 
Object oriented methodologies
Object oriented methodologiesObject oriented methodologies
Object oriented methodologies
naina-rani
 
Ooad Overview
Ooad OverviewOoad Overview
Ooad Overview
Dang Tuan
 

Similaire à [RPL2] Pertemuan 3 - UML dan USECASE VIEW (20)

Design UML diagrams
Design UML diagramsDesign UML diagrams
Design UML diagrams
 
Design UML diagrams
Design UML diagramsDesign UML diagrams
Design UML diagrams
 
Lab 3 Introduction to the UML - how to create a use case diagram
Lab 3 Introduction to the UML - how to create a use case diagramLab 3 Introduction to the UML - how to create a use case diagram
Lab 3 Introduction to the UML - how to create a use case diagram
 
Object oriented analysis and design unit- iii
Object oriented analysis and design unit- iiiObject oriented analysis and design unit- iii
Object oriented analysis and design unit- iii
 
Object oriented analysis and design unit- ii
Object oriented analysis and design unit- iiObject oriented analysis and design unit- ii
Object oriented analysis and design unit- ii
 
SELECT21.pptx
SELECT21.pptxSELECT21.pptx
SELECT21.pptx
 
Use case diagram
Use case diagramUse case diagram
Use case diagram
 
Software Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfSoftware Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdf
 
Unit-II(STATIC UML DIAGRAMS).ppt
Unit-II(STATIC UML DIAGRAMS).pptUnit-II(STATIC UML DIAGRAMS).ppt
Unit-II(STATIC UML DIAGRAMS).ppt
 
Quality Assurance. Quality Assurance Approach. White Box
Quality Assurance. Quality Assurance Approach. White BoxQuality Assurance. Quality Assurance Approach. White Box
Quality Assurance. Quality Assurance Approach. White Box
 
Design and Implementation in Software Engineering
Design and Implementation in Software EngineeringDesign and Implementation in Software Engineering
Design and Implementation in Software Engineering
 
Chap5 oodm-uml-part1
Chap5 oodm-uml-part1Chap5 oodm-uml-part1
Chap5 oodm-uml-part1
 
Chap5 oodm-uml-part11
Chap5 oodm-uml-part11Chap5 oodm-uml-part11
Chap5 oodm-uml-part11
 
Ooad quest and ans
Ooad quest and ansOoad quest and ans
Ooad quest and ans
 
Introduction to OOAD
Introduction to OOADIntroduction to OOAD
Introduction to OOAD
 
Object oriented methodologies
Object oriented methodologiesObject oriented methodologies
Object oriented methodologies
 
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
 
analysis and design with uml
analysis and design with umlanalysis and design with uml
analysis and design with uml
 
Modeling software with UML
Modeling software with UMLModeling software with UML
Modeling software with UML
 
Ooad Overview
Ooad OverviewOoad Overview
Ooad Overview
 

Plus de rizki adam kurniawan

Plus de rizki adam kurniawan (19)

[MPPL] Managemen Sumber Daya Manusia
[MPPL] Managemen Sumber Daya Manusia[MPPL] Managemen Sumber Daya Manusia
[MPPL] Managemen Sumber Daya Manusia
 
[RPL2] Growth Hacking
[RPL2] Growth Hacking[RPL2] Growth Hacking
[RPL2] Growth Hacking
 
[PBO] Pertemuan 10 - Exception & Error Handling
[PBO] Pertemuan 10 - Exception & Error Handling[PBO] Pertemuan 10 - Exception & Error Handling
[PBO] Pertemuan 10 - Exception & Error Handling
 
[PBO] Pertemuan 10 - Generic Programming & Collection
[PBO] Pertemuan 10 - Generic Programming & Collection[PBO] Pertemuan 10 - Generic Programming & Collection
[PBO] Pertemuan 10 - Generic Programming & Collection
 
[PBO] Pertemuan 13 - Membuat Aplikasi Desktop dengan JDBC DAO MVC
[PBO] Pertemuan 13 - Membuat Aplikasi Desktop dengan JDBC DAO MVC[PBO] Pertemuan 13 - Membuat Aplikasi Desktop dengan JDBC DAO MVC
[PBO] Pertemuan 13 - Membuat Aplikasi Desktop dengan JDBC DAO MVC
 
[PBO] Pertemuan 12 - Pemrograman Android
[PBO] Pertemuan 12 - Pemrograman Android[PBO] Pertemuan 12 - Pemrograman Android
[PBO] Pertemuan 12 - Pemrograman Android
 
[PBO] Pertemuan 11 - GUI Java Desktop
[PBO] Pertemuan 11 - GUI Java Desktop[PBO] Pertemuan 11 - GUI Java Desktop
[PBO] Pertemuan 11 - GUI Java Desktop
 
[PBO] Pertemuan 10 - Pemrograman Database (2)
[PBO] Pertemuan 10 - Pemrograman Database (2)[PBO] Pertemuan 10 - Pemrograman Database (2)
[PBO] Pertemuan 10 - Pemrograman Database (2)
 
[RPL2] Design Sprint
[RPL2] Design Sprint[RPL2] Design Sprint
[RPL2] Design Sprint
 
[PBO] Pertemuan 10 - Pemrograman Database (1)
[PBO] Pertemuan 10 - Pemrograman Database (1)[PBO] Pertemuan 10 - Pemrograman Database (1)
[PBO] Pertemuan 10 - Pemrograman Database (1)
 
[PBO] CARA BIKIN SOFTWARE (Kumpulan Referensi Java)
[PBO] CARA BIKIN SOFTWARE (Kumpulan Referensi Java)[PBO] CARA BIKIN SOFTWARE (Kumpulan Referensi Java)
[PBO] CARA BIKIN SOFTWARE (Kumpulan Referensi Java)
 
[PBO] Pertemuan 6 - Interface
[PBO] Pertemuan 6 - Interface[PBO] Pertemuan 6 - Interface
[PBO] Pertemuan 6 - Interface
 
[PBO] Pertemuan 5 - Polymorphism
[PBO] Pertemuan 5 - Polymorphism[PBO] Pertemuan 5 - Polymorphism
[PBO] Pertemuan 5 - Polymorphism
 
[PBO] Pertemuan 4 - Kontruktor Destruktor
[PBO] Pertemuan 4 - Kontruktor Destruktor[PBO] Pertemuan 4 - Kontruktor Destruktor
[PBO] Pertemuan 4 - Kontruktor Destruktor
 
[RPL2] Pertemuan 2 - Validasi Ide
[RPL2] Pertemuan 2 - Validasi Ide[RPL2] Pertemuan 2 - Validasi Ide
[RPL2] Pertemuan 2 - Validasi Ide
 
[PBO] Pertemuan 4 - Getter Setter
[PBO] Pertemuan 4 - Getter Setter[PBO] Pertemuan 4 - Getter Setter
[PBO] Pertemuan 4 - Getter Setter
 
[PBO] Pertemuan 3 - Package, enkapsulasi & instansiasi objek
[PBO] Pertemuan 3 - Package, enkapsulasi & instansiasi objek[PBO] Pertemuan 3 - Package, enkapsulasi & instansiasi objek
[PBO] Pertemuan 3 - Package, enkapsulasi & instansiasi objek
 
[PBO] Pertemuan 3 - Pengenalan Pemrograman Berbasis Objek
[PBO] Pertemuan 3 - Pengenalan Pemrograman Berbasis Objek[PBO] Pertemuan 3 - Pengenalan Pemrograman Berbasis Objek
[PBO] Pertemuan 3 - Pengenalan Pemrograman Berbasis Objek
 
[PBO] Pertemuan 2 - Method, String & array
[PBO] Pertemuan 2 - Method, String & array[PBO] Pertemuan 2 - Method, String & array
[PBO] Pertemuan 2 - Method, String & array
 

Dernier

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Dernier (20)

Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 

[RPL2] Pertemuan 3 - UML dan USECASE VIEW

  • 1.
  • 2. Miles, Russ & Hamilton, Kim, 2006, Oreilly Publisher , Learning UML 2.0 286 Page
  • 3. PERTEMUAN 3. UML DAN USE CASE VIEW 1. Pengenalan UML Sebagai Alat Bantu Pemodelan Pada Pembangunan Perangkat Lunak Menggunakan Pendekatan Analisis dan Desain Berorientasi Objek 2. Notasi, Semantik, dan Stereotype Pada UML 3. Komponen pada UML (Use Case View, Logical View, Physical View, dan Process View) 4. Pengenalan Use Case Diagram sebagai Use Case View Pada UML 5. Penjelasan Aktor, Generalisasi Aktor, dan Use Case 6. Penjelasan Use Case Scenario 7. Use Case Refinement (Relasi Include, Extends, dan Generalisasi Use Case)
  • 4. • The Unified Modeling Language (UML) is the standard modeling language for software and systems development. • A model is an abstraction of the real thing. • When you model a system, you abstract away any details that are irrelevant or potentially confusing. • Your model is a simplification of the real system, so it allows the design and viability of a system to be understood, evaluated, and criticized quicker than if you had to dig through the actual system itself. • To effectively model a system, you need one very important thing: a language with which the model can be described. And here's where UML comes in.
  • 5. 1. IT'S A FORMAL LANGUAGE Each element of the language has a strongly defined meaning, so you can be confident that when you model a particular facet of your system it will not be misunderstood. 2. IT'S CONCISE The entire language is made up of simple and straightforward notation. 3. IT'S COMPREHENSIVE It describes all important aspects of a system. 4. IT'S SCALEABLE Where needed, the language is formal enough to handle massive system modeling projects, but it also scales down to small projects, avoiding overkill. 5. IT'S BUILT ON LESSONS LEARNED UML is the culmination of best practices in the object-oriented community during the past 15 years. 6. IT'S THE STANDARD UML is controlled by an open standards group with active contributions from a worldwide group of vendors and academics, which fends off "vendor lock-in." The standard ensures UML's transformability and interoperability, which means you aren't tied to a particular product.
  • 6. WATERFALL The waterfall method attempts to pin down the requirements early in the project life cycle. After gathering requirements, software design is performed in full. Once the design is complete, the software is implemented. The problem with this method is that if a change in requirements occurs, the impact can be devastating. AGILE METHODS Agile methods use iterations in extremely short bursts and attempt to minimize risk by always having a working system of expanding capabilities. Methodologies under this category have introduced some of the more interesting development practices, such as pair programming and test-driven development. Agile methods emphasize using UML as a sketch.
  • 7. Philippe Kruchten's 4+1 view model LOGICAL VIEW Describes the abstract descriptions of a system's parts. Used to model what a system is made up of and how the parts interact with each other. The types of UML diagrams that typically make up this view include class, object, state machine, and interaction diagrams. PROCESS VIEW Describes the processes within your system. It is particularly helpful when visualizing what must happen within your system. This view typically contains activity diagrams. DEVELOPMENT VIEW Describes how your system's parts are organized into modules and components. It is very useful to manage layers within your system's architecture. This view typically contains package and component diagrams.
  • 8. Philippe Kruchten's 4+1 view model PHYSICAL VIEW Describes how the system's design, as described in the three previous views, is then brought to life as a set of real-world entities. The diagrams in this view show how the abstract parts map into the final deployed system. This view typically contains deployment diagrams. USE CASE VIEW Describes the functionality of the system being modeled from the perspective of the outside world. This view is needed to describe what the system is supposed to do. All of the other views rely on the use case view to guide themthat's why the model is called 4+1. This view typically contains use case diagrams, descriptions, and overview diagrams.
  • 9. The elements that make up a modeling language are called its notation 1. NOTES Notes allow you to enter additional comments that aren't captured in your diagrams. You can write anything you want in a note to explain your diagram, similar to a comment in code. 2. STEREOTYPES Stereotypes signify a special use or intent and can be applied to almost any element of UML notation. Stereotypes modify the meaning of an element and describe the element's role within your model. A stereotype sometimes has an associated icon
  • 10. 1. Things – Important modelling concepts 2. Relationships – tying individual things 3. Diagram – Grouping interrelated collections of things and relationships THINGS COMPONENT
  • 11. RELATIONSHIP COMPONENT DIAGRAM COMPONENT 1. STRUKTURAL DIAGRAM Digunakan untuk mendeskripsikan relasi antar kelas 2. BEHAVIORAL DIAGRAM Digunakan untuk mendeskripsikan interaksi antara aktor dan sebuah use case (bagaimana aktor menggunakan sistem)
  • 12.
  • 13.
  • 14.
  • 15. • A use case is a case (or situation) where your system is used to fulfill one or more of your user's requirements; a use case captures a piece of functionality that the system provides. • Use cases are at the heart of your model • Use cases specify only what your system is supposed to do, i.e., the system's functional requirements. • They do not specify what the system shall not do, i.e., the system's nonfunctional requirements. Nonfunctional requirements often include performance targets and programming languages, etc.
  • 16.
  • 19. WEBLOG CONTENT MANAGEMENT SYSTEM (CMS).
  • 20. What's in a Name? It's actually worth being very careful when naming your actors. The best approach is to use a name that can be understood by both your customer and your system designers. Wherever possible, use the original term for the actor as identified within your customer's requirements; that way, at least your use cases will be familiar to your customers. This approach also lets system designers get comfortable with the system's unique context.
  • 21. • Use cases can be identified from your user's requirements. • Remember, if use cases are truly requirements, then they must have very clear pass/fail criteria. The developer, the tester, the technical writer, and the user must explicitly know whether the system fulfils the use case or not.
  • 22. • A communication line connects an actor and a use case to show the actor participating in the use case. In this example, the Administrator actor is involved in the Create a new Blog Account use case; • The purpose of a communication line is to show that an actor is simply involved in a use case
  • 23. • To show your system's boundary on a use case diagram, draw a box around all of the use cases but keep the actors outside of the box. It's also good practice to name your box after the system you are developing, • It separated between actors (external to your system) and use cases (internal to your system) that marks your system's boundary
  • 24. • A diagram showing your use cases and actors may be a nice starting point, but it does not provide enough detail for your system designers to actually understand exactly how the system's concerns will be met.
  • 25.
  • 26. Use cases work in several different modes or special cases. Finally, you may also find a use case with multiple flows throughout its execution, and it would be good to show those important optional cases on your use case diagrams.
  • 27.
  • 28. • The first thing to notice is that we have some redundancy between the two use case descriptions. Both Create a new Blog Account and Create a new Personal Wiki need to check the applicant's credentials. Currently, this behavior is simply repeated between the two use case descriptions. • This repetitive behavior shared between two use cases is best separated and captured within a totally new use case. This new use case can then be reused by the Create a new Blog Account and Create a new Personal Wiki use cases using the <<include>> relationship. Reuse The <<include>> Relationship
  • 29.
  • 30.
  • 31.
  • 32. • This is where use case generalization comes in. A more common way of referring to generalization is using the term inheritance . • Use case inheritance is useful when you want to show that one use case is a special type of another use case. • To show use case inheritance , use the generalization arrow to connect the more general, or parent, use case to the more specific use case
  • 33.
  • 34. The designers of UML 2.0 took a very different view as to the meaning of <<extend>> between use cases. They wanted a means for you to show that a use case might completely reuse another use case's behavior, similar to the <<include>> relationship, but that this reuse was optional and dependent either on a runtime or system implementation decision