43
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 1 Catatan Kuliah Rekayasa Perangkat Lunak (Software Engineering) Bagian 2

Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

Embed Size (px)

Citation preview

Page 1: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 1

Catatan Kuliah

Rekayasa Perangkat Lunak

(Software Engineering) Bagian 2

Page 2: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 2

Software Engineering: A Practitioner’s Approach, 6/e

Bab 10

Desain Arsitektur copyright © 1996, 2001, 2005

R.S. Pressman & Associates, Inc.

For University Use Only

May be reproduced ONLY for student use at the university level

when used in conjunction with Software Engineering: A Practitioner's Approach.

Any other reproduction or use is expressly prohibited.

Page 3: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 3

Kenapa Arsitektur ?

Arsitektur bukanlah PL operasional, namun dia merupakan representasi yang memungkinkan pengembang PL untuk : (1)menganalisa efektivitas desain dalam memenuhi kebutuhan,

(2) Mengetahui alternatif2x arsitektur pada keadaan dimana membuat perubahan desain masih relatif lebih mudah, dan

(3) Mengurangi resiko terkait dengan konstruksi PL.

Page 4: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 4

Mengapa Arsitektur Penting?

Representasi dari arsitektur PL adalah enabler bagi komunikasi

antar pihak (stakeholder) yang tertarik dengan pengembangan

sistem berbasis komputer.

Arsitketur menyoroti keputusan desain awal yang akan mempunyai

pengaruh yang sangat besar pada pekerjaan RPL yang

mengikutinya, dan keberhasilan pada entitas sistem operasional.

Arsitektur membangun model yang relatif kecil dan mudah

digenggam secara intelektual tentang bagaimana sistem

distrukturkan dan bagaimana komponen2x bekerja sama [BAS03].

Page 5: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 5

Desain Data

Pada level arsitektur …

Desain satu atau lebih database untuk mendukung arsitektur

aplikasi

Desain method untuk „mining‟ isi dari berbagai database

Navigasi melalui database2x yang ada dalam usaha untuk

mengambil informasi level bisnis yang sesuai

Desain sebuah data warehouse—sebuah database besar,

independen yang mempunyai akses pada data yang disipan dalam

database yang melayani sekelompok aplikasi yang dibutuhkan

bisnis

Page 6: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 6

Desain Data

Pada level komponen …

Mengambil objek2x data dan mengembangkan satu set

abstraksi data

Implementasi atribut2x objek data sebagai satu atau

lebih struktur data

review struktur data untuk memastikan bahwa relasi

yang tepat sudah dibuat

Sederhanakan struktur data sesuai dengan kebutuhan

Page 7: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 7

Desain Data—Level Komponen 1. Prinsip2x analisis semantik yang diterapkan pada fungsi dan

perilaku harus juga dapat berjalan pada data.

2. Seluruh struktur data dan operasi yang akan dilakukan harus

dapat diidentifikasi.

3. Sebuah data dictionary harus dibuat dan digunakan untuk

menentukan desain program dan data.

4. Keputusan desain data level rendah harus ditunda hingga akhir

proses desain.

5. Representasi struktur dara harus diketahui oleh modul yang

menggunakannya langsung dalam struktur tersebut (enkapsulasi).

6. Sebuah pustaka struktur data dan operasi yang memungkinkan

untuk diterapkan harus dikembangkan.

7. Desain PL dan bahasa pemrograman harus mendukung

spesifikasi dan realisasi dari tipe data abstrak.

Page 8: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 8

Ragam Gaya Arsitektur

Data-centered architectures

Data flow architectures

Call and return architectures

Object-oriented architectures

Layered architectures

Masing2x menggambarkan kategori sistem yang menunjukkan : (1) a sekumpulan komponen (mis database, modul komputasi) yang menunjukkan fungsi yan dibutuhkan sistem, (2) sekumpulan connectors yang memungkinkan komunikasi, koordinasi dan kerjasama antar komponen components, (3) batasan yang menentukan bagaimana komponen dapat diintegrasikan untuk membentuk sistem, dan (4) smodel semantik yang memungkinkan desainer untk memahami properti keseluruhan dari sistem dengan menganlisai properti dalam bagian2x di dalamnya.

Page 9: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 9

Data-Centered Architecture

Page 10: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 10

Data Flow Architecture

Page 11: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 11

Call and Return Architecture

Page 12: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 12

Layered Architecture

Page 13: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 13

Pattern Arsitektural

Concurrency—aplikasi harus menangani banyak tugas dalam pola yang mensimulasikan paralelisasi

operating system process management pattern

task scheduler pattern

Persistence—Data ada jika dia bertahan setelah eksekusi proses yang membuatnya. Ada dua pattern umum ::

database management system pattern yang menerapkan penyimpanan dan pengambilan dari DBMS kepada arsitektur aplikasi

application level persistence pattern yang membangun fitur persistence pada aristektur aplikasi

Distribution— pola dimana sistem atau komponen2x di antaranya berkomunkasi dalam lingkungan terdistribusi

broker bertindak sebagai orang di tengah antara komponen klient dan komponen server.

Page 14: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 14

Desain Arsitektur

PL harus ditempatkan pada konteks

Desain harus menentukan entitas eksternal (sistem lain, piranti,

orang) dimana PL berinteraksi dengannya

Sekumpulan arsitektur archetypes harus diidentifikasi

archetype adalah abstraksi (mirip dengan class) yang

menampilkan satu elemen dari perilaku sistem

Desainer menentukan struktur sistem dengan memilih

komponen PL yang mengimplmentasi masing2x

archetype

Page 15: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 15

Architectural Context

target system:

Security Functionuses

uses peershomeowner

Safehome

ProductInternet-based

system

surveillance

function

sensors

control

panel

sensors

uses

Page 16: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 16

Archetypes

Figure 10.7 UML relat ionships for SafeHome securit y funct ion archetypes

(adapted f rom [BOS00] )

Cont roller

Node

communicates with

Detector Indicator

Page 17: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 17

Component Structure

SafeHome

Execut ive

Ext ernal

Communicat ion

Management

GUI Int ernet

Int erface

Funct ion

select ion

Securit y Surveillance Home

management

Cont rol

panel

processing

det ect or

management

alarm

processing

Page 18: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 18

Refined Component

Structure

sensorsensor

sensorsensor

sensorsensorsensor

sensor

Ext ernal

Communicat ion

Management

GUI Internet

Interface

Security

Cont ro l

panel

processing

det ect or

m anagem ent

alarm

processing

Key pad

processing

CP disp lay

funct ions

scheduler

sensorsensorsensorsensor

phone

com m unicat ion

alarm

SafeHome

Execut ive

Page 19: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 19

Analisis Desain Arsitektur

1. Kumpulkan semua skenario.

2. Dapatkan kebutuhan2x, batasan2x, dan gambaran lingkungan.

3. Gambarkan pola/gaya arsitektur yang telah dipilih untuk

menangani skenario2x dan kebutuhan2x ::

• module view

• process view

• data flow view

4. Evaluasi kualitas atribut2x dengan melihat setiap atribut dalam

isolasi.

5. Kenali kualitas atribut untuk setiap atribut arsitektural untuk

masing-masik gaya arsitektur yang spesifik.

6. Lakukkan kritik pada arsitektur2x kandidat (yg dikembangkan

pada langkah 3) menggunakan analisis pada langkah 5.

Page 20: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 20

Metode Desain Arsitektur

"four bedrooms, three baths, lots of glass ..."

customer requirements

architectural design

Page 21: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 21

Memperoleh Arsitektur Program

Program Architecture

Page 22: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 22

Partisi Arsitektur

Partisi “horizontal” dan “vertical”

dibutuhkan

Page 23: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 23

Partisi Horizontal

Tentukan cabang yang terpisah pada hierarki

modul untuk setiap fungsi utama

Gunakan modul kontrol untuk koodinasi

komunikasi antar fungsi2x

function 1 function 3

function 2

Page 24: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 24

Partisi Vertikal : Factoring

Didesain sehingga pengambilan keputusan dan

pekerjaan distratifikasi

Modul pengambilan keputusan tetap ada di

puncak arsitektur

workers

decision-makers

Page 25: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 25

Mengapa Arsitektur Terpartisi?

Hasilnya adalah PL yang mudah diuji

Membawa kepada PL yang lebih mudah dikelola

Hasilnya efek samping yang semakin sedikit

Hasilnya adalah PL yang lebih mudah

dikembangkan

Page 26: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 26

Desain Terstruktur

Tujuan : untuk mendapatkan arsitektur

program yang terpartisi

pendekatan:

DFD dipetakan ke arsitektur program

PSPEC dan STD digunakan untuk

mengindikasikan setiap modul

notasi: diagram struktur

Page 27: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 27

Karakteristik Aliran

Aliran Transformasi

Aliran Transaksi

Page 28: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 28

Pendekatan Pemetaan Umum

Isolasi aliran ke dalam dan ke luar

batasan; untuk aliran transaksi, isolasi

Pusat transaksi

Bekerja dari batasan luar, petakan

Transformasi DFD ke modul terkait

Tambahkan modul kontrol jika dibutuhkan

Sempurnakan struktur program

Menggunakan konsep modularitas efektif

Page 29: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 29

Pemetaan Transformasi

data flow model

"Transform" mapping

ab

c

d e fg h

ij

x1

x2 x3 x4

b c

a

d e f g i

h j

Page 30: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 30

Factoring

typical "worker" modules

typical "decision making" modules

direction of increasing decision making

Page 31: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 31

First Level Factoring

main program controller

input controller

processing controller

output

controller

Page 32: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 32

Second Level Mapping

D

C

BA

A

C

B

Dmapping from the flow boundary outward

main

control

Page 33: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 33

Transaction Flow

T

incoming flow

action path

Page 34: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 34

Transaction Example

operator commands

process operator commands

fixture setting

report

robot control

fixture servos

display screen

robot control software

in reality, other commands would also be shown

assembly record

Page 35: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 35

Refining the Analysis Model

write an English language processing narrative

for the level 01 flow model

apply noun/verb parse to isolate processes, data

items, store and entities

develop level 02 and 03 flow models

create corresponding data dictionary entries

refine flow models as appropriate

... now, we're ready to begin design!

1.

2.

3.

4.

5.

Page 36: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 36

Deriving Level 1 Processing narrative for " process operator commands"

Process operator command software reads operator commands from the cell operator. An error message is displayed for invalid commands. The command type is determined for valid commands and appropriate action is taken. When fixture commands are encountered, fixture status is analyzed and a fixture setting is output to the fixture servos. When a report is selected, the assembly record file is read and a report is generated and displayed on the operator display screen. When robot control switches are selected, control values are sent to the robot control system.

Processing narrative for " process operator commands"

Process operator command software reads operator commands from the cell operator . An error message is displayed for invalid commands . The command type is determined for valid commands and appropriate action is taken . When fixture commands are encountered , fixture status is analyzed and a fixture setting is output to the fixture servos . When a report is selected, the assembly record file is read and a report is generated and displayed on the operator display screen . When robot control switches are selected , control value s are sent to the robot control system.

noun-verb

parse

Page 37: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 37

Level 1 Data Flow Diagram

operator commands

read

operator

commands

determine

command

type

analyze

f ixture

status

generate

report

send

control

value

f ixture

servos

display

screen

robot

control

system

assembly

record

valid command

Error msg

f ixture setting

report

robot control

f ixture

select report

control

robot

status

Page 38: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 38

Level 2 Data Flow Diagram

read

command

produce

error

msg

validate

command

determine

type

read

fixture

status

determine

setting

format

setting

read

record

calculate

output

valuesformat

report

report

values

record

assembly

record

command

commandinvalid command

status

error msg

robot contro l

send

contro l

value

start /stop

combined

status

raw setting

fixture setting

Page 39: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 39

Transaction Mapping Principles

isolate the incoming flow path

define each of the action paths by looking for the "spokes of the wheel"

assess the flow on each action path

define the dispatch and control structure

map each action path flow individually

Page 40: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 40

Transaction Mapping

data flow model

ab

t

de f

gh

i

j

k

l

m

n Mapping

b

a

x1

t

x2

d e f

x3

g h x3.1

i j

k

x4

l m n

Page 41: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 41

Isolate Flow Paths

read

command

produce

error

msg

validate

command

determine

type

read

fixture

status

determine

setting

format

setting

read

record

calculate

output

va luesformat

report

report

va lues

record

assembly

record

command

commandinvalid command

status

error msg

robot contro l

send

contro l

va lue

start /stop

combined

status

raw setting

fixture setting

Page 42: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 42

Map the Flow Model

process operator

commands

command input

controller

read command

validate command

produce error

message

determine type

fixture status

controller

report generation controller

send control value

each of the action paths must be expanded further

Page 43: Rekayasa Perangkat Lunak (Software Engineering) · spesifikasi dan realisasi dari tipe data abstrak. ... dan komponen server. ... selec t ion Sec urit y Surv eillanc e Hom e

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 43

Refining the Structure Chart process operator

commands

command input

controller

read command

validate command

produce error

message

determine type

send control value

read fixture status

determine setting

format setting

read record

calculate output values

format report

fixture status

controller

report generation controller