Download presentation
Presentation is loading. Please wait.
Published byKeira Reames Modified over 9 years ago
2
Criteria And Component Diagram Pertemuan 0708 Matakuliah: M0126 - Analisis dan Perancangan Sistem Informasi Lanjut Tahun: 2009 - 2010
3
Learning Outcomes Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu : Buat component diagram untuk kasus rumah produksi (C4)
4
Outline Materi Mahasiswa dapat membuat diagram / skema component architecture class
5
05 - 06 / 03 - 19 Application Domain Analysis in Context of OOA&D Activities Now continue with this area of activity and its product Design of components Design of architecture Analysis of application domain Analysis of problem domain Specifications for components Model Requirements for use Specifications for architecture (adapted from Mathiassen et al, 2000) System Choice (Pre-analysis) System Definition
6
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
7
05 - 06 / 05 - 19 Finally, we’ll look at this activity Activities in Architectural Design (Mathiassen et al, 2000) Analysis document Criteria Component architecture Process architecture Architectural specification
8
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
9
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
10
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
11
CONTOH USER INTERFACE UNTUK CUSTOMER
12
PACKAGE & PACKAGE BODY
13
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
14
05 - 06 / 09 - 19 Processes, Active Objects, and Shared Objects Process 3 Process 1 Process 2 Object 1 o1o1 o2o2 Object 4 o7o7 o8o8 Object 2 o3o3 o4o4 Object 3 o5o5 o6o6 Object 5 o9o9 o 10 Process 4 Potential conflict over shared program component Active object because it starts a new process
15
BACKGROUND PROCESS
16
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
17
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
18
05 - 06 / 11 - 19 Sub-activities in Process Architecture Design Class diagram and component specifications Deployment diagram Distribute program components Identify shared resources Select coordination mechanisms Explore distribution patterns Explore coordination patterns
19
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
20
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
21
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
22
05 - 06 / 15 - 19 Example Deployment Diagram: Airline Check-in Processor External devices (Mathiassen et al, 1999) Active objects
23
Contoh Deployment Diagram
24
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
25
Deployment Diagram
27
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?
28
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
29
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
30
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.
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.