Document 15060366

advertisement

Matakuliah

Informasi Lanjut

Tahun

: M0126 - Analisis dan Perancangan Sistem

: 2009 - 2010

Criteria And Component Diagram

Pertemuan 0304

Learning Outcomes

Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu :

• Mahasiswa dapat membuat Criteria (C4)

• Mahasiswa dapat membuat diagram / skema component architecture class (C4)

Outline Materi

• Criteria

• General design criteria

• Reduce complexity by separating concerns

• Reflect stable context structures

• Reuse existing components

Criteria

• Tujuan dalam kita membuat kriteria adalah menentukan dalam sistem yang akan kita buat memiliki kriteria apa yang dibutuhkan oleh user

• Untuk itu diperlukan wawancara kepada user untuk mendapatkan kriteria yang dibutuhkan oleh sistem

• Membuat Table Criteria

Phases of OOA&D

System Choice

(Pre-analysis)

System

Definition

Problem domain analysis

Requirements for use

Application domain analysis

Model

Component design

Specifications for components

Specifications for architecture

(adapted from Mathiassen et al , 2000)

Architectural design

03 - 04 / 02 - 35

03 - 04 / 03 - 35

Architectural Design

Purpose

To structure a computerized system

Concepts

Criterion : a preferred property of an architecture

Component architecture : A system structure composed of interconnected components

Process architecture : A system-execution structure composed of interdependent process

Architectural Design (Cont’d)

Principles

Define and prioritize criteria

Bridge criteria and technical platform

Evaluate designs early

Result

Structures for a system’s components and process

03 - 04 / 04 - 35

03 - 04 / 05 - 35

Component and Process Architectures

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

(Mathiassen et al , 2000)

03 - 04 / 07 - 35

Activities in Architectural Design

Activity Content

Criteria How are the conditions and criteria for design?

Concepts

 Criterion

Components

How is the system structured into components?

Processes How are the system’s processes distributed and coordinated?

 Component architecture

 Component

 Process Architecture

 Process

Criteria

Purpose

– To set design priorities

Concept

– Criterion : A preferred property of an architecture

– Conditions : The technical, organizational, and human opportunities and limits involved in performing a task

03 - 04 / 09 - 35

Criteria (Cont’d)

Principles

– A good design has no major weakness

– A good design balances several criteria

– a good design is usable, flexible and comprehensible

Result

– A collection of prioritized criteria

03 - 04 / 10 - 35

Criterions

Usable

General Design Criteria

03 - 04 / 11 - 35

Measure of

The system’s adaptability to the organizational, workrelated, and technical context ( Apakah sistem yang akan

Kita buat bisa beradaptasi dengan sistem yang sedang

Secure

Efficient

Platform’s berjalan sekarang )

The precautions against unauthorized access to data and facilities ( Memiliki Sistem Security yang baik)

The economical exploitation of the technical

Correct

Reliable facilities ( Apakah Secara Teknis Platform yang dipakai

Hardware dan Software sudah mendukung )

The fulfillment of requirement

The fulfillment of the required precision in function

03 - 04 / 12 - 35

General Design Criteria (Cont’d)

Criterions Measure of

Maintainable The cost of locating and fixing system defects

Testable performs its

The cost of ensuring that the deployment system

Flexible intended function

The cost of modifying the deployed system

Comprehensible understanding of the system

The effort needed to obtain a coherent

The potential for using system parts in other Reusable related system

Portable technical platform

The cost of moving the system to another

Useable

Secure

Efficient

Correct

Reliable

Maintanable

Testable

Flexible

Comprehensible

Reuseable

Portable

Interoperatable

Criterion

Very

Important Important

Less important Irrelevant

1

4

2

3

9

8

10

11

6

7

5

Easily fulfilled

Penjelasan Criteria untuk VCD CASE

• Didalam kasus VCD maka yang paling penting adalah

• Reliable-> Karena sistem harus digunakan sehari – hari

• Correct-> Perhitungannya harus tepat

• Flexible-> Harus flexible jika ada program-program promosi

• Maintainable-> Harus mudah untuk diadakan perubahan

03 - 04 / 13 - 35

System definition

Sub-activities in Criteria

Consider general criteria

Prioritize

Analyse specific conditions

Criteria for design

(Mathiassen et al , 2000)

Analyse Specific Conditions

• Each situation is different and has different specific requirements which constrain design

Technical: hardware, software, reuse, available components

Organisational: contracts, related plans, work division

Human: Staff experience and competence

03 - 04 / 14 - 35

Evaluating Design Criteria

Two forms of evaluation

Reviews

Experiments (prototypes)

Other questions need to be answered

Which parts should be reviewed?

Which parts should be prototyped?

Who will participate in evaluations?

When will the evaluations take place?

Need to plan now for later evaluations!

03 - 04 / 16 - 35

Components

• Purpose

 To create a comprehensible and flexible system structure

• Concepts

 Component architecture : A system structure of interconnected components

 Component : A collection of program parts that constitutes a whole and has well-defined responsibilities

03 - 04 / 18 - 35

Components (Cont’d)

Principles

Reduce complexity by separating concerns

Reflect stable context structures

Reuse existing components

Result

A Class diagram with specifications of the complex components

03 - 04 / 19 - 35

03 - 04 / 21 - 35

Explore

Architectural Patterns

Patterns are a useful guide to design

Some patterns have been proven useful

Layered architecture

 idea is from the ISO OSI network model

A generic architecture

 from the authors

 based on the Model Function Interface framework

Client-server architecture

 should consider whenever distribute a system

03 - 04 / 22 - 35

The Layered Architecture Pattern

« component »

Layer i+1

Upward interface

« component »

Layer i

Downward interface

« component »

Layer i-1

(Mathiassen et al , 2000)

03 - 04 / 23 - 35

The Generic Architecture Pattern

« component » Interface

« component »

User Interface

« component »

System Interface

« component »

Function

« component »

Model

« component » Technical platform

« component »

UserInterfaceISystem

« component »

DataBaseSystem

« component »

NetworkSystem

(Mathiassen et al , 2000)

03 - 04 / 24 - 35

Generic Architecture (Cont’d)

Can further divide functions into two kinds and group into components differently

Task-related functions

Model-related functions

Can split functions, or place some with model component

For very simple system, may not need the function component at all

03 - 04 / 25 - 35

The Client-Server Architecture Pattern

« component »

Client

1

« component »

Client

2

« component »

Client n

« component »

Server

(Mathiassen et al , 2000)

03 - 04 / 26 - 35

Client-Server Architecture (Cont’d)

The components in a client-server architecture are a server and several client

The server has a collection of operations that it makes available to the clients

Potentially a good architecture whenever distribute a system geographically

03 - 04 / 27 - 35

Define Subsystems

For large systems, often need to split the system into subsystems

Allows division of work so that design and building of subsystems is independent (except for any interfaces between them)

Each subsystem may be a system in its own right, with interface, function, and model components

Must design the architecture of each subsystem

03 - 04 / 28 - 35

Five Forms of Distribution

Client

U

U

U + F

U + F

U + F + M

Server Architecture

U + F + M Distributed presentation

F + M Local presentation

F + M Distributed functionality

M

M

Centralized data

Distributed data

(Mathiassen et al , 2000)

03 - 04 / 29 - 35

Example Subsystems and (Sub)system

Interfaces

« component » Subsystem A « component » Subsystem B

« component »

User Interface

« component »

System Interface

« component »

System Interface

« component »

User Interface

« component »

Function

« component »

Function

« component »

Model

« component »

Model

(Mathiassen et al , 2000)

03 - 04 / 30 - 35

Identify Components

-

-

-

Design the architecture for each system or subsystem by breaking into components

Begin with 3-tiered architecture or a pattern

Extend basic architecture by examining model, function, and interface design concerns

Extend further by finding useful existing components

03 - 04 / 31 - 35

Model Design Concerns

Responsibility:

Contextual issues:

Exemplars:

Special needs:

The problem domain model

Incohesive or complex problem domains

Accounting, reservations, inventory, administration databases

03 - 04 / 32 - 35

Function Design Concerns

Responsibility:

Contextual issues:

Exemplars:

Special needs:

The functionality on the model

Need for incohesive or complex functionality

Payroll, signal processing, cruise control

Model-related functions, application-related functions

03 - 04 / 33 - 35

Interface Design Concerns

Responsibility:

Contextual issues:

Exemplars:

Special needs:

Interaction between functions and actors

Incohesive or complex actors or usage

Browsing, games, presentation monitoring

Screens, windows, buttons, print-outs, devices, communications

03 - 04 / 34 - 35

Using Components

Can obtain and use components from a number of sources

Another existing system

Earlier version of system

Standard purchased components - software library

03 - 04 / 35 - 35

Specifying Components

Complex components should be specified in detail.

May attach supplemental notes to class diagrams.

Good to summarize each component’s

Responsibility (service it provides)

Dependency (on other components)

Relationship to the system context

Contoh Component untuk VCD CASE

Client:Kasir

Server

User

Interface

Function Model

Download