وَمَا هَٰذِهِ ٱلْحَيَوٰةُ ٱلدُّنْيَآ إِلَّا لَهْوٌ وَلَعِبٌ ۚ وَإِنَّ ٱلدَّارَ ٱلْءَاخِرَةَ لَهِىَ ٱلْحَيَوَانُ ۚ لَوْ كَانُوا۟ يَعْلَمُونَ

“Dan tiadalah kehidupan dunia ini melainkan senda gurau dan main-main. Dan sesungguhnya akhirat itulah yang sebenarnya kehidupan, kalau mereka mengetahui.” (QS. Al-Ankabut:64)

Thursday, 18 June 2020

Arsitektur Enterprise:Pertemuan 12-UML Untuk Permodelan TOGAF

UML DAN BPMN UNTUK PERMODELAN TOGAF
  • TOGAF merujuk beberapa kali ke bahasa pemodelan UML dan BPMN untuk mendukung pemodelan arsitektur enterprise. Namun, beberapa penjelasan masih diperlukan tentang bagaimana standar ini harus digunakan untuk menerapkan TOGAF, dan pada bagian model mana yang akan ditampilkan untuk setiap viewpoint.
  • UML dan BPMN akan digunakan untuk mewakili objek arsitektur dasar, yang didefinisikan dalam metamodel TOGAF. Ini berarti kita harus memutuskan elemen UML atau BPMN mana yang akan digunakan untuk mewakili setiap objek TOGAF. Dengan cara ini, proses BPMN secara alami akan mewakili proses TOGAF, aktor UML akan mewakili aktor TOGAF tetapi juga peran TOGAF, dan kelas UML akan mewakili entitas bisnis TOGAF juga produk TOGAF.
UML DAN BPN UNTUK PERMODELAN TOGAF
Model harus disesuaikan untuk memfasilitasi komunikasi antara participants. UML dan BPMN, keduanya standar yang sangat kaya, harus difilter menurut sudut pandang sehingga dapat menyajikan konsep yang berguna dan juga harus disesuaikan agar sesuai dengan terminologi TOGAF (seperti peran, entitas bisnis, dll.). Kadang-kadang mereka harus diperluas untuk mendukung konsep yang tidak ada dalam bahasa ini (misalnya, fungsi, unit organisasi, tujuan).

The UML Standard
  • UML was standardized in 1997, and a major new version was published in 2005. UML groups together a large number of modeling techniques that were previously scattered among different domains (entity relationship, object model, state diagram, sequence diagram, process modeling, etc.). It is widely accepted and used in the modeling of software systems.
  • UML enables data to be modeled through class diagrams. Behavior is modeled through object modeling (object behaviors, operations, etc.) and the support of sequence diagrams, state diagrams, and activity diagrams. Systems and architectures are also modeled using the concept of components and component assembly techniques.
  • UML is used for a wide variety of domains and targets and must therefore be adapted to correspond to the concerns and concepts specific to each target. For example, the concept of persistence must be introduced when modeling database schemas, while concepts specific to programming languages must be added for targets. Similarly, the concept of service is required when modeling SOA architectures, while the concept of the system is central to large system modeling.
  • A UML profile is a set of extensions brought to UML to adapt it to a particular target. For example, SoaML or SysML (Figure 1) are UML profiles standardized by the OMG.
Figure 1
System Analysis and Design with UML
1. System Analysis
1. Business Process Identification
 Use Case Diagram
2. Business Process Modeling
 Activity Diagram or Business Process Modeling Notation (BPMN)
3. Business Process Realization
 Sequence Diagram
2. System Design
1. Program Design
1. Class Diagram
2. Package Diagram
3. Deployment Diagram
2. User Interface Design
3. Entity-Relationship Model

STUDI KASUS: ATM SYSTEM

ATM System
 

Use Case Diagram

Use Case Diagram (Alternatif)


BUSINESS PROCESS MODELING: ACTIVITY DIAGRAM
BPM With Activity Diagrams
  • A number of activities support a business process across several departments
  • Activity diagrams model the behavior in a business process
STUDI KASUS: ATM SYSTEM
Activity Diagram: Memasukkan Kartu


Activity Diagram: Memasukkan PIN

Activity Diagram: Mengecek Saldo

Activity Diagram: Mentransfer Uang

Activity Diagram: Mengambil Uang

Activity Diagram: Melakukan Logout

Sequence Diagrams
  • Illustrate the objects that participate in a use case
  • Show the messages that pass between objects for a particular use-case over time
Sequence Diagram Syntax
Sequence Diagram
  1. Susun Sequence Diagram untuk setiap Use Case yang dibuat
  2. Mulai dari menarik Actor yang ada di Use Case Diagram, lanjutkan dengan membuat sequence detail dari berjalannya Use Case

Catatan: Objek dari Lifeline di Sequence Diagram akan menjadi kandidat Class

Jenis Class
1. Boundary Class:

  1. Class yang berinteraksi dengan aktor langsung (user interface)
  2. Form, input, UI ini masuk di sini
2. Control Class:
  1. Class yang berhubungan dengan pemrosesan, penghitungan, kalkulasi, komputasi, query, dst
3. Entity Class:
  1. Class yang berhubungan dengan data, penyimpanan
    data/file
STUDI KASUS: ATM SYSTEM
Sequence Diagram: Memasukkan PIN

Sequence Diagram: Mengecek Saldo

Sequence Diagram: Mentransfer Uang

Sequence Diagram: Mengambil Uang

Sequence Diagram: Melakukan Logout

CLASS DIAGRAM
Class Diagram Elements
  1. Classes
  2. Attributes
  3. Operations
  4. Relationships
Classes
  • Templates for creating instances or objects
  • All objects of a class have same structure and behavior, but contain different attributes
  1. Concrete: used to create actual objects
  2. Abstract: extended to create other classes
Attributes
  • Units of information relevant to the description of the class
  • Only attributes important to the task should be included
  • Attributes should be primitive types (integers, strings, doubles, date, time, Boolean, etc.)
Operations (Methods)
  • Defines the behavior of the class
  • Action that instances/objects can take
  • Focus on relevant problem-specific operations (at this point)
Relationships
  • Generalization
    • “Is-A” relationship
    • Enables inheritance of attributes & oper's
    • Subclasses and superclasses
    •  Principle of substitutability
      • Subclass be substituted for superclass
  • Aggregation
    • “Has-A” relationship
    • Relates parts to wholes
    • Uses decomposition
  • Association
    • Relationships that don't fit “Is-A” or “Has-A”
    • Often a weaker form of “Has-A”
    • Miscellaneous relationships between classes
    • Example:
      • Patient schedules an appointment
      • So the appointment has a patient
      • This is weak
Example Class Diagram
More on Attributes
  • Derived attributes
    •  /age, for example can be calculated from birth date and current date
  • Visibility of attributes
    •  +Public: not hidden from any object
    •  #Protected: hidden from all but immediate subclasses
    •  Private: hidden from all other classes
  • Default is private
More on Operations
  • Constructor: creates object
  • Query: see class state
  • Update: change attribute values
  • Operations can also be public, protected, or private
    • – Default for operations is public
More on Relationships
  • A primary purpose of class diagrams is to show relationships, or associations,  between classes
  • Class can be related to itself (role)
    • Use a "+" sign to show it's a role and not the name of a relationship
Class Diagram: Sistem ATM

DEPLOYMENT DIAGRAM
  • Servers
    • Mainframes, Minis, Micros
  •  Clients
    • Input/Output HW used by users
    • Terminals, PCs, special purpose HW
  • Network
    • HW and SW to connect clients to servers
  • Nodes
    • Any piece of hardware in the model
    • A computational resource
    • Labeled by its name
    • Stereotype to label the type of node
  • Artifacts
    • Piece of the information system, such as software or a database table
  • Node with Deployed Artifact
    • Shows artifact placed on a physical node
    • Good for showing distribution data or software
  • Communication paths
    •  Links between nodes of the network

Diagram Examples
Deployment Diagram (3 Tier)

2 comments :

  1. Matthew Marcellino (19170453)
    https://docs.google.com/forms/d/e/1FAIpQLSf--kZW6N2iKcLUV2LK2TCrvbx0QJSz1gzopAGU-u3wRgvTCw/viewscore?viewscore=AE0zAgBRMZbNPngbaLlxqg9MKbyXLStAd6anbtpMCbCsUeEre4473mi55HxTjzkM-MyCAi8

    ReplyDelete