Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem...

30

Transcript of Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem...

Page 1: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.
Page 2: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

Criteria And Component Diagram Pertemuan 0708

Matakuliah : M0126 - Analisis dan Perancangan Sistem Informasi Lanjut

Tahun : 2009 - 2010

Page 3: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

Learning Outcomes

Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu :• Buat component diagram untuk kasus rumah produksi

(C4)

Page 4: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

Outline Materi

• Mahasiswa dapat membuat diagram / skema component architecture class

Page 5: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

05 - 06 / 03 - 19

Application Domain Analysis in Context of OOA&D Activities

Now continue with this area of

activity andits product

Design ofcomponents

Design ofarchitecture

Analysis ofapplication

domain

Analysis ofproblemdomain

Specifications forcomponents

Model

Requirementsfor use

Specifications forarchitecture

(adapted from Mathiassen et al, 2000)

System Choice (Pre-analysis)

SystemDefinition

Page 6: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

05 - 06 / 04 - 19

Arsitektur komponen dan proses

(Mathiassen et al, 2000)

Component Architecture: Classes Stable aspects Related

components Logical level Structure for

descriptions

Process Architecture Objects Dynamic aspects Coordination of

processes Physical level Structure for

execution

Page 7: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

05 - 06 / 05 - 19

Finally, we’ll lookat this activity

Activities in Architectural Design

(Mathiassen et al, 2000)

Analysis document

Criteria

Componentarchitecture

Processarchitecture Architectural

specification

Page 8: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

05 - 06 / 06 - 19

Process

Purpose To Define the Physical Structuring of a system

Concepts Process architecture : A system-execution

structure composed of interdependent process Processor : A piece of equipment that can

execute a program Program component : A physical module of

program code Active Object : An object that has been

assigned a process

Page 9: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

05 - 06 / 07 - 19

Process (Cont’d)

Principles Aim at an architecture without bottlenecks Distribute components on processors Coordinate resource sharing with active

objects

Result A deployment diagram showing processors

with assigned program components and active objects

Page 10: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

05 - 06 / 08 - 19

When & Why Not a significant activity for a simple system

with a single process, e.g. a stand-alone system Critical for large systems, especially monitoring

and control systems, & embedded systems May wait to begin this activity until component

architecture and components are nearly complete

May start this activity early with exploratory and experimental work, which heavily influences components

Page 11: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

CONTOH USER INTERFACE UNTUK CUSTOMER

Page 12: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

PACKAGE & PACKAGE BODY

Page 13: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

Penjelasan

• Jika kita lihat dari slide ke 10 dan ke 11 maka satu user interface seperti contoh diatas Customer User Interface dapat terbagi menjadi fungsi-fungsi yang terdapat dalam package dan package body di dalam programming

Page 14: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

05 - 06 / 09 - 19

Processes, Active Objects, and Shared Objects

Process 3

Process 1

Process 2

Object 1

o1

o2

Object 4

o7

o8

Object 2

o3

o4

Object 3

o5

o6

Object 5

o9

o10Process 4

Potential conflict over shared programcomponent

Active object because it startsa new process

Page 15: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

BACKGROUND PROCESS

Page 16: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

Process

• Didalam slide ke 14 kita lihat bahwa setelah program dijalankan maka akan terlihat proses didalam Background Job yang mengakses masing-masing function yang ada di setiap class dan akan sangat memungkinkan terjadinya Bottlenecks artinya banyak sekali pemanggilan function untuk class yang sama, seperti gambar diatas pemanggilan function dimulai dari customer_order_line_api.modify kemudian dilanjutkan ke customer_order_line3_api, dan dilanjutkan ke customer_order_line2_api dan jika ada beberapa class yang memanggil customer_order_line3 dan 2 secara bersamaan akan sangat memungkinkan terjadinya conflict

Page 17: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

05 - 06 / 10 - 19

Concurrency

True concurrency: When two or more events in the system’s context can occur at the same time and processes must support this (e.g. multiple users)

Random concurrency: When two or more operations are designed to be executed at the same time (e.g. print in background) (

Don’t have any choice about the former

Page 18: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

05 - 06 / 11 - 19

Sub-activities in Process Architecture Design

Class diagram and component specifications

Deploymentdiagram

Distribute programcomponents

Identify shared resources

Selectcoordination mechanisms

Explore distributionpatterns

Explore coordinationpatterns

Page 19: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

05 - 06 / 12 - 19

Distribute Program Components

Different components need to be placed on individual processors

First, separate out any active objects from passive program components

Second, determine the available processors Distribute the program components and

active objects onto the processors

Page 20: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

05 - 06 / 13 - 19

Explore Distribution Patterns

Patterns for how components are placed on processors The centralized pattern: Centralized data and

functionality, thin client, but low robustness The distributed pattern: Replicated data, server

only broadcasts updates, robust, but potential data inconsistencies

The decentralized pattern: Partitioned data, low inconsistencies, more diversity/complexity

Page 21: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

05 - 06 / 14 - 19

Identify Shared Resources

Processor: Two or more concurrent processes that should be executed on the same processor

External Devices: Two or more concurrent processes use the same external device

Component: Two or more concurrent processes call operations on objects in the same component

Page 22: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

05 - 06 / 15 - 19

Example Deployment Diagram: Airline Check-in

Processor Externaldevices

(Mathiassen et al, 1999)

Active objects

Page 23: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

Contoh Deployment Diagram

Page 24: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

PENJELASAN GAMBAR 37.1

• Deployment diagram shows the assignment of concrete software artifacts (exe files) to computational nodes. It shows the deployment of software component to the physical architecture and the communication ( usually on a network) between physical element

Page 25: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

Deployment Diagram

Page 26: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

Deployment Diagram

Page 27: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

05 - 06 / 16 - 19

Finding Bottlenecks

Processors: what is the relationship between the capacity of each processor and the needs of the active objects assigned to it? Which processors thereby constitute potential bottlenecks?

External Devices: What is the accessibility, capacity, and load of the different external devices in the interface? Which external devices thereby constitute potential bottlenecks?

Data Storage: Which parts of the model need to be stored on which storage media and how are copies handled? What are the potential bottlenecks for data storage?

System/Network Connections: What is the capacity and load of the system’s connections? Which connections thereby constitute potential bottlenecks?

Page 28: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

05 - 06 / 17 - 19

Overcoming Bottlenecks

Two options: Change the design and the distribution of

the components onto the available processors

Enhance the platform with more processors or more powerful processors

Page 29: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

05 - 06 / 18 - 19

Select Coordination Mechanisms

Many operating systems and technical platforms provide mechanisms to control sharing Varies substantially from platform to

platform So need to be sure in each case!

If not, we have to solve it ourselves by developing our own coordination mechanisms Generally rely on active object that controls

the sharing Can make use of generic patterns

Page 30: Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010.

05 - 06 / 19 - 19

Coordination Mechanisms

Generalized patterns of coordination: Dedicated monitor ensuring atomic access to

shared resources. Centralized task dispatching for coordination

of all concurrent processes. (e.g., event loop) Subscription to state changes for initiation of

processes in opportune situations. Asynchronous exchange of data to avoid

unnecessary delays with read and write operations.