Day 2 Software System Modelling
Pemodelan Perangkat Lunak
System
models –> Merupakan
gambaran abstrak dari sebuah
sistem dimana persyaratan sistem
tersebut akan / sedang dianalisa.
Metode Formal (Formal methods) –>
merupakan teknik dan notasi dari
persyaratan perangkat lunak yang
tidak ambigu.
Menjelaskan
mengapa konteks dari
sistem harus dimodelkan sebagai
bagian dari proses Requirement
Engineering
Menggambarkan konsep pemodelan
perilaku, pemodelan data dan
pemodelan obyek
Memperkenalkan beberapa notasi
yang digunakan pada UML (Unified
Modelling Language)
Memperkenalkan pendekatan metode
formal dan pemodelan formal
Merupakan
suatu
cara
agar
perekayasa
perangkat
lunak
memahami permasalahan yang akan
dipecahkan
Task yang terlibat yaitu : inception,
elicitation, elaboration, negotiation,
specification,
validation
dan
management
Disarankan
untuk para perekayasa
yang menggunakan analisa dan
desain berorientasi obyek dalam
metodenya.
Menjadi sebuah standar yang efektif
dalam pemodelan perangkat lunak
Memiliki 9 notasi yang berbeda
Use Case
Use Case
Diagrams
Sequence
Diagrams
Diagrams
Use Case
Use Case
Diagrams
Use Case
Diagrams
Diagrams
Scenario
Scenario
Diagrams
Collaboration
Diagrams
Diagrams
Scenario
Scenario
Diagrams
Statechart
Diagrams
Diagrams
State
State
Diagrams
Class
Diagrams
Diagrams
Models
State
State
Diagrams
Object
Diagrams
Diagrams
State
State
Diagrams
Component
Diagrams
Diagrams
Component
Component
Diagrams
Deployment
Diagrams
Activity
Diagrams
Diagrams
Pemodelan perangkat lunak membantu para
perekayasa untuk memahami fungsionalitas dari
sistem
Model digunakan untuk berkomunikasi dengan
para stakeholder
Model yang yang berbeda – beda akan
menampilkan suatu sistem dari sudut pandang
yang berbeda pula.
Sudut pandang luar (eksternal) akan menampilkan
lingkungan atau konteks dari sistem
Model proses / aktifitas menampilkan proses
pembangunan dari sistem sama halnya dengan
menggambarkan segala aktifitas yang didukung oleh
sistem
Sudut pandang perilaku memperlihatkan perilaku dari
sistem tersebut
Sudut pandang struktural memperlihatkan arsitektur
dari sistem atau data.
Model
ini menggambarkan sistem dengan
lingkungan diluarnya tetapi tidak
menggambarkan relasi antara sistem luar
dalam lingkungan dengan sistem
Lingkungan luar mungkin mengirim data
ke sistem, terhubung langsung ke sistem
dan membagi datanya ke sistem.
Untuk itu ada detail proses yang harus
disediakan seperti dalam model proses.
Arsitektur
model sederhana
Security
system
Branch
accounting
system
Account
database
Auto-teller
system
Branch
counter
system
Usage
database
Maintenance
system
Procuring
Specify
equipment
requir ed
equipment case
Equipment
spec.
Validate
specification
Equipment
spec.
Supplier
database
Delivery
note
Checked
spec.
Supplier list
Find
suppliers
Accept
delivery of
equipment
Get cost
estimates
Spec. +
supplier +
estima te
Choose
supplier
Order
notification
Order
details +
Blank order
form
Place
equipment
order
Checked and
signed order form
Delivery
note
Check
delivered
items
Installation
instructions
Install
equipment
Installation
acceptance
Accept
delivered
equipment
Equipment
details
Equipment
database
Ada
dua macam
Model aliran data, dimana memodelkan
proses data dalam sistem
Model state machine, memodelkan
bagaimana sistem bereaksi terhadap
kejadian
Model
- model ini dapat digunakan
secara bersama –sama atau sendiri
Proses
data dari aktifitas place
equipment order
Completed
order form
Order Detail
Blank Form
Complete
Order
Form
Signed
order form
Signed
order form
Validate
order
Send to
supplier
Checked &
signed order
Record
order
Signed
order form
Order
Details
Orders File
Adjust avail
budget
Order amount +
acount detail
Budget File
CASE
Input
design
toolset data flow diagram (DFD)
Valid
design
Design
editor
Referenced
designs
Design
database
Checked
design
Design
cross checker
and
Design
analysis
Design
analyser
Checked
design
Code skeleton
generator
User
report
Report
generator
Output
code
Design
database
Contoh
sederhana pada microwave
Kebanyakan sistem perangkat lunak besar
menggunakan database yang juga cukup besar.
Bagian terpenting dari pemodelan sistem
adalah mencari bentuk logic data yang diproses
dalam sistem.
Pemodelan mencari bentuk logic ini dinamakan
semantic data model
Contoh pemodelan data yang terkenal adalah
menggunakan teknik ERA modelling
Model ini juga kurang detil, sehingga
dibutuhkan deskripsi lebih detil dari masing
entitas, atribut dan relasi. Maka dapat
digunakan data dictionary
Design
1
name
description
C-date
M-date
is-a
has-nodes
n
Node
name
type
1
has-links
1
n
1
has-links
1
2
Link
n
1
links
1
name
type
1
has-labels
has-labels
Label
n
name
text
icon
n
Data
dictionary merupakan daftar
nama yang terlibat dalam model
sistem
Berisi deskripsi entitas dan informasi
pendukung lainnya
Kegunaannya :
Mengelola nama unique
Berfungsi untuk menyimpan infomasi
organisasi
Model
obyek menggambarkan suatu sistem
dalam kelas - kelas obyek
Kelas Obyek merupakan abstraksi dari
suatu set obyek dengan atribut dan operasi
yang dimiliki oleh masing – masing obyek.
Model obyek yang berbeda dapat
dihasilkan :
Model Inheritance
Model Aggregasi
Model Interaksi
Library item
Catalogue number
Acquisition date
Cost
Type
Status
Number of copies
Acquire ()
Catalogue ()
Dispose ()
Issue ()
Return ()
Published item
Recorded item
Title
Medium
Title
Publisher
Book
Author
Edition
Publication date
ISBN
Magazine
Year
Issue
Film
Director
Date of release
Distributor
Computer
program
Version
Platform
Study pack
Course title
Number
Year
Instructor
Assignment
Slides
Credits
Exercises
#Problems
Description
OHP slides
Solutions
Text
Diagrams
Lectur e
notes
Text
Videotape
Tape ids.
Ecat:
Catalog
:Library Item
:Library User
Lookup
Display
Issue
Issue licence
Accept licence
Compress
Deliver
Lib1:
NetServer
Menghindari ambiguitas, konsisten, lengkap dan dapat
dibuktikan kebenarannya
Spesifikasi persyaratan :
Mengklarifikasi persyaratan kustomer
Mengungkapkan ambiguitas, ketidakonsistenan dan
ketidaklengkapan
Desain sistem / perangkat lunak
Spesifikasi struktural dari relasi antar komponen
Spesifikasi perilaku dari komponen
Verifikasi :
Apakah kita telah membangun sistem dengan benar?
Membuktikan bahwa realisasi sesuai dengan spesifikasi
Validasi :
Apakah sistem yang dibangun sesuai permintaan?
Test dan debugging
Dokumentasi:
Komunikasi diantara stakeholder
Metode
formal memiliki kemampuan untuk
meningkatkan kualitas dan produktifitas
dalam pembangunan perangkat lunak.
Diantara kemampuannya :
Untuk meningkatkan pendeteksian error sejak
awal
Untuk membangun sistem perangkat lunak yang
aman, handal dan terjamin
Untuk memfasilitasi pengujian dari implementasi
Untuk memungkinkan dilakukannya simulasi,
animasi, pembuktian, eksekusi dan transformasi
Metode formal telah berada pada
ambang
untuk
dijadikan
sebagai
metode yang terbaik dan/atau metode
yang
sangat
dibutuhkan
untuk
membangun sistem perangkat lunak
yang safety-critical dan mission-critical
Untuk memastikan bahwa sistem telah
memenuhi standar dan peraturan.
To avoid legal liability repercussions
Teknologi
baru yang belum pasti hasil
baliknya
Kurangnya
pengalaman
dan
pembuktian akan keberhasilan.
Kurangnya dukungan otomasi
Tool yang ada sekarang tidak user
friendly
Kurva pembelajaran yang tinggi
Dibutuhkan kemampuan matematika
dan kesempurnaan yang baik.
Teknik yang tidak banyak penggunanya
Teknik tidak dapat diukur
Spesifikasi axiomatic
Axiomatic = yang sudah jelas kebenarannya.
Mendefinisikan operasi dengan pernyataan logika
Spesifikasi pergantian keadaan (state-transition)
Mendefinisikan
transisi
operasi dalam pernyataan state dan
Spesifikasi model abstrak
Mendefinisikan operasi dengan model matematika
Spesifikasi aljabar
Mendefinisikan operasi
ekuivalen
dalam kumpulan relasi yang
Spesifikasi logika temporal (waktu)
Mendefinisikan operasi dengan pernyataan urutan waktu
dan eksekusi (pelaksanaan)
Spesifikasi kebersamaan (concurrent)
Mendefinisikan operasi dalam pernyataan kejadian yang
berlangsung secara berkesinambungan (simultaneously
occurring events)
Metode formal dapat menjamin kesempurnaan dari
perangkat lunak
Tetapi apakah bisa memastikan spec yang dibangun sempurna?
Metode formal semuanya berupa pembuktian program
Metode ini merupakan pemodelan, komunikasi dan demonstrasi
Metode formal hanya berguna pada sistem safetycritical.
Tidak juga, mungkin juga berguna pada semua sistem
Metode formal sangat membutuhkan matematikawan
terlatih
metode ini melibatkan tidak lebih dari satu set teori dan logika saja
Metode formal meningkatkan biaya pembangunan
Justru lebih sering kebalikannya
Metode formal tidak dapat diterima oleh user
Justru user akan mendapatkan bahwa metode itu sangat membantu
jika dipresentasikan dengan baik
Metode formal tidak digunakan pada perangkat lunak
skala besar
Justru metode ini digunakan setiap hari pada banyak cabang dalam
industri
Pemodelan Perangkat Lunak
G.O.M.S
Merupakan pendekatan untuk
menganalisa kualitas prosedur dari
sebuah antar muka
Merupakan pendekatan untuk
menggambarkan pengetahuan dari
suatu prosedur yang harus dimiliki oleh
user untuk menjalankan suatu sistem
Proposed by Card, Moran, & Newell
(1983)
Goals (tujuan)
Apa tujuan yang harus dicapai oleh user pada
sistem
Operators
Apa perlakuan dasar yang dapat dilakukan oleh
user
Methods
Apa saja urut-urutan dari operator (prosedur) yang
harus diikuti oleh user untuk mencapai tujuan
Selection Rules
Ada beberapa metode yang bisa user lakukan
untuk mencapai tujuan pada situasi tertentu yang
diberikan.
Terdapat
dua pendekatan dalam
mengevaluasi kualitas prosedur dari
sebuah antarmuka
Metode Model Tingkat Penekanan
Tombol (Keystroke – Level)
Operator dan Waktu untuk Model Tingkat
Penekanan Tombol
Pilih satu set level teratas dari tujuan user
Pilih desain antarmuka tertentu
Tulis prosedur umum yang harus user
pelajari dan lakukan untuk mencapai
tujuan
Dapat menggunakan notasi tertentu seperti
NGOMSL
Perkirakan
pembelajaran dan implikasi
pelaksanaan dari prosedur
Informal : Kompleksitas yang tidak perlu,
lambat dan langkah yang sulit
Formal : Hitung waktu perkiraan pembelajaran
dan pelaksanaan
Choose
the design with the best
combination of learning and
execution times.
Especially useful for:
Assessing consistency and ease of
learning.
Predicting execution time for a large
variety of situations
Methods for Setting the Clock
Method for goal: set the clock
▪ Step 1. Press CLOCK button
▪ Step 2. Accomplish goal: set a day and time with the current
day and time
▪ Step 3. Press CLOCK button
▪ Step 4. Return with goal accomplished
Method for goal: set a day and time
▪ Step 1. Accomplish goal: set day value to the desired value
▪ Step 2. Press SELECT
▪ Step 3. Accomplish goal: set hour value to the desired value
▪ Step 4. Press SELECT
▪ Step 5. Accomplish goal: set minute value to the desired value
▪ Step 6. Return with goal accomplished
Method for goal: set a value to a desired value
▪ Step 1. Verify that display shows current value is flashing
▪ Step 2. Decide: If display shows value same as desired, then
return with goal accomplished.
▪ Step 3. Decide: If display shows value smaller than desired,
then press UP button. else press DOWN button.
▪ Step 4. Go to Step 2.
User goals - a subset
• Set the clock
• Record a program
• Stop current recording
• Cancel previously programmed
recording
Assumptions
• A cassette is loaded
• Power is on
• Desired channel is already selected
Methods and Selection Rules are
somewhat simplified
Methods for Recording a Program
Selection rule set for goal: record a program
If you are present when the program starts and
you will be present when the program ends then
accomplish goal: record a program manually
If you are present when the program starts and
you will not be present when the program ends
and you know how long the program lasts and the
VCR clock is set then accomplish goal: record a
program with One-Touch Recording
If you will not be present when the program starts
and you know when the program will start and you
know how long the program lasts and the VCR
clock is set then accomplish goal: record a
program with Timer Recording
Return with goal accomplished
Method for goal: record a program manually
Step 1. Wait for program to start.
Step 2. Hold down REC button.
Step 3. Press PLAY button.
Step 4. Release both buttons.
Step 5. Verify that display shows "REC" and arrow is moving
Step 6. Wait for program to end
Step 7. Press STOP button.
Step 8. Return with goal accomplished.
Method for goal: record a program with One-Touch
Recording
Step 1. Wait for program to start
Step 2. Press OTR button.
Step 3. Press OTR button.
Step 4. Decide: If time shown in display is less than length
of program, go to Step 3.
Step 5. Return with goal accomplished.
Goal
?
Melewati
jurang
Objectif
Methods
Melompati
jurang
Ancang-ancang
Tekuk kaki
Lompat
Tali di ikat pada pohon
Tali diulur ke bawah
Rambati tali
Cari kesaktian terbang pada jimat
Gunakan jimat terbang
Lompat dan terbang
!!!
Pakai tali
?
a
n
Terbang
Question??
System
models –> Merupakan
gambaran abstrak dari sebuah
sistem dimana persyaratan sistem
tersebut akan / sedang dianalisa.
Metode Formal (Formal methods) –>
merupakan teknik dan notasi dari
persyaratan perangkat lunak yang
tidak ambigu.
Menjelaskan
mengapa konteks dari
sistem harus dimodelkan sebagai
bagian dari proses Requirement
Engineering
Menggambarkan konsep pemodelan
perilaku, pemodelan data dan
pemodelan obyek
Memperkenalkan beberapa notasi
yang digunakan pada UML (Unified
Modelling Language)
Memperkenalkan pendekatan metode
formal dan pemodelan formal
Merupakan
suatu
cara
agar
perekayasa
perangkat
lunak
memahami permasalahan yang akan
dipecahkan
Task yang terlibat yaitu : inception,
elicitation, elaboration, negotiation,
specification,
validation
dan
management
Disarankan
untuk para perekayasa
yang menggunakan analisa dan
desain berorientasi obyek dalam
metodenya.
Menjadi sebuah standar yang efektif
dalam pemodelan perangkat lunak
Memiliki 9 notasi yang berbeda
Use Case
Use Case
Diagrams
Sequence
Diagrams
Diagrams
Use Case
Use Case
Diagrams
Use Case
Diagrams
Diagrams
Scenario
Scenario
Diagrams
Collaboration
Diagrams
Diagrams
Scenario
Scenario
Diagrams
Statechart
Diagrams
Diagrams
State
State
Diagrams
Class
Diagrams
Diagrams
Models
State
State
Diagrams
Object
Diagrams
Diagrams
State
State
Diagrams
Component
Diagrams
Diagrams
Component
Component
Diagrams
Deployment
Diagrams
Activity
Diagrams
Diagrams
Pemodelan perangkat lunak membantu para
perekayasa untuk memahami fungsionalitas dari
sistem
Model digunakan untuk berkomunikasi dengan
para stakeholder
Model yang yang berbeda – beda akan
menampilkan suatu sistem dari sudut pandang
yang berbeda pula.
Sudut pandang luar (eksternal) akan menampilkan
lingkungan atau konteks dari sistem
Model proses / aktifitas menampilkan proses
pembangunan dari sistem sama halnya dengan
menggambarkan segala aktifitas yang didukung oleh
sistem
Sudut pandang perilaku memperlihatkan perilaku dari
sistem tersebut
Sudut pandang struktural memperlihatkan arsitektur
dari sistem atau data.
Model
ini menggambarkan sistem dengan
lingkungan diluarnya tetapi tidak
menggambarkan relasi antara sistem luar
dalam lingkungan dengan sistem
Lingkungan luar mungkin mengirim data
ke sistem, terhubung langsung ke sistem
dan membagi datanya ke sistem.
Untuk itu ada detail proses yang harus
disediakan seperti dalam model proses.
Arsitektur
model sederhana
Security
system
Branch
accounting
system
Account
database
Auto-teller
system
Branch
counter
system
Usage
database
Maintenance
system
Procuring
Specify
equipment
requir ed
equipment case
Equipment
spec.
Validate
specification
Equipment
spec.
Supplier
database
Delivery
note
Checked
spec.
Supplier list
Find
suppliers
Accept
delivery of
equipment
Get cost
estimates
Spec. +
supplier +
estima te
Choose
supplier
Order
notification
Order
details +
Blank order
form
Place
equipment
order
Checked and
signed order form
Delivery
note
Check
delivered
items
Installation
instructions
Install
equipment
Installation
acceptance
Accept
delivered
equipment
Equipment
details
Equipment
database
Ada
dua macam
Model aliran data, dimana memodelkan
proses data dalam sistem
Model state machine, memodelkan
bagaimana sistem bereaksi terhadap
kejadian
Model
- model ini dapat digunakan
secara bersama –sama atau sendiri
Proses
data dari aktifitas place
equipment order
Completed
order form
Order Detail
Blank Form
Complete
Order
Form
Signed
order form
Signed
order form
Validate
order
Send to
supplier
Checked &
signed order
Record
order
Signed
order form
Order
Details
Orders File
Adjust avail
budget
Order amount +
acount detail
Budget File
CASE
Input
design
toolset data flow diagram (DFD)
Valid
design
Design
editor
Referenced
designs
Design
database
Checked
design
Design
cross checker
and
Design
analysis
Design
analyser
Checked
design
Code skeleton
generator
User
report
Report
generator
Output
code
Design
database
Contoh
sederhana pada microwave
Kebanyakan sistem perangkat lunak besar
menggunakan database yang juga cukup besar.
Bagian terpenting dari pemodelan sistem
adalah mencari bentuk logic data yang diproses
dalam sistem.
Pemodelan mencari bentuk logic ini dinamakan
semantic data model
Contoh pemodelan data yang terkenal adalah
menggunakan teknik ERA modelling
Model ini juga kurang detil, sehingga
dibutuhkan deskripsi lebih detil dari masing
entitas, atribut dan relasi. Maka dapat
digunakan data dictionary
Design
1
name
description
C-date
M-date
is-a
has-nodes
n
Node
name
type
1
has-links
1
n
1
has-links
1
2
Link
n
1
links
1
name
type
1
has-labels
has-labels
Label
n
name
text
icon
n
Data
dictionary merupakan daftar
nama yang terlibat dalam model
sistem
Berisi deskripsi entitas dan informasi
pendukung lainnya
Kegunaannya :
Mengelola nama unique
Berfungsi untuk menyimpan infomasi
organisasi
Model
obyek menggambarkan suatu sistem
dalam kelas - kelas obyek
Kelas Obyek merupakan abstraksi dari
suatu set obyek dengan atribut dan operasi
yang dimiliki oleh masing – masing obyek.
Model obyek yang berbeda dapat
dihasilkan :
Model Inheritance
Model Aggregasi
Model Interaksi
Library item
Catalogue number
Acquisition date
Cost
Type
Status
Number of copies
Acquire ()
Catalogue ()
Dispose ()
Issue ()
Return ()
Published item
Recorded item
Title
Medium
Title
Publisher
Book
Author
Edition
Publication date
ISBN
Magazine
Year
Issue
Film
Director
Date of release
Distributor
Computer
program
Version
Platform
Study pack
Course title
Number
Year
Instructor
Assignment
Slides
Credits
Exercises
#Problems
Description
OHP slides
Solutions
Text
Diagrams
Lectur e
notes
Text
Videotape
Tape ids.
Ecat:
Catalog
:Library Item
:Library User
Lookup
Display
Issue
Issue licence
Accept licence
Compress
Deliver
Lib1:
NetServer
Menghindari ambiguitas, konsisten, lengkap dan dapat
dibuktikan kebenarannya
Spesifikasi persyaratan :
Mengklarifikasi persyaratan kustomer
Mengungkapkan ambiguitas, ketidakonsistenan dan
ketidaklengkapan
Desain sistem / perangkat lunak
Spesifikasi struktural dari relasi antar komponen
Spesifikasi perilaku dari komponen
Verifikasi :
Apakah kita telah membangun sistem dengan benar?
Membuktikan bahwa realisasi sesuai dengan spesifikasi
Validasi :
Apakah sistem yang dibangun sesuai permintaan?
Test dan debugging
Dokumentasi:
Komunikasi diantara stakeholder
Metode
formal memiliki kemampuan untuk
meningkatkan kualitas dan produktifitas
dalam pembangunan perangkat lunak.
Diantara kemampuannya :
Untuk meningkatkan pendeteksian error sejak
awal
Untuk membangun sistem perangkat lunak yang
aman, handal dan terjamin
Untuk memfasilitasi pengujian dari implementasi
Untuk memungkinkan dilakukannya simulasi,
animasi, pembuktian, eksekusi dan transformasi
Metode formal telah berada pada
ambang
untuk
dijadikan
sebagai
metode yang terbaik dan/atau metode
yang
sangat
dibutuhkan
untuk
membangun sistem perangkat lunak
yang safety-critical dan mission-critical
Untuk memastikan bahwa sistem telah
memenuhi standar dan peraturan.
To avoid legal liability repercussions
Teknologi
baru yang belum pasti hasil
baliknya
Kurangnya
pengalaman
dan
pembuktian akan keberhasilan.
Kurangnya dukungan otomasi
Tool yang ada sekarang tidak user
friendly
Kurva pembelajaran yang tinggi
Dibutuhkan kemampuan matematika
dan kesempurnaan yang baik.
Teknik yang tidak banyak penggunanya
Teknik tidak dapat diukur
Spesifikasi axiomatic
Axiomatic = yang sudah jelas kebenarannya.
Mendefinisikan operasi dengan pernyataan logika
Spesifikasi pergantian keadaan (state-transition)
Mendefinisikan
transisi
operasi dalam pernyataan state dan
Spesifikasi model abstrak
Mendefinisikan operasi dengan model matematika
Spesifikasi aljabar
Mendefinisikan operasi
ekuivalen
dalam kumpulan relasi yang
Spesifikasi logika temporal (waktu)
Mendefinisikan operasi dengan pernyataan urutan waktu
dan eksekusi (pelaksanaan)
Spesifikasi kebersamaan (concurrent)
Mendefinisikan operasi dalam pernyataan kejadian yang
berlangsung secara berkesinambungan (simultaneously
occurring events)
Metode formal dapat menjamin kesempurnaan dari
perangkat lunak
Tetapi apakah bisa memastikan spec yang dibangun sempurna?
Metode formal semuanya berupa pembuktian program
Metode ini merupakan pemodelan, komunikasi dan demonstrasi
Metode formal hanya berguna pada sistem safetycritical.
Tidak juga, mungkin juga berguna pada semua sistem
Metode formal sangat membutuhkan matematikawan
terlatih
metode ini melibatkan tidak lebih dari satu set teori dan logika saja
Metode formal meningkatkan biaya pembangunan
Justru lebih sering kebalikannya
Metode formal tidak dapat diterima oleh user
Justru user akan mendapatkan bahwa metode itu sangat membantu
jika dipresentasikan dengan baik
Metode formal tidak digunakan pada perangkat lunak
skala besar
Justru metode ini digunakan setiap hari pada banyak cabang dalam
industri
Pemodelan Perangkat Lunak
G.O.M.S
Merupakan pendekatan untuk
menganalisa kualitas prosedur dari
sebuah antar muka
Merupakan pendekatan untuk
menggambarkan pengetahuan dari
suatu prosedur yang harus dimiliki oleh
user untuk menjalankan suatu sistem
Proposed by Card, Moran, & Newell
(1983)
Goals (tujuan)
Apa tujuan yang harus dicapai oleh user pada
sistem
Operators
Apa perlakuan dasar yang dapat dilakukan oleh
user
Methods
Apa saja urut-urutan dari operator (prosedur) yang
harus diikuti oleh user untuk mencapai tujuan
Selection Rules
Ada beberapa metode yang bisa user lakukan
untuk mencapai tujuan pada situasi tertentu yang
diberikan.
Terdapat
dua pendekatan dalam
mengevaluasi kualitas prosedur dari
sebuah antarmuka
Metode Model Tingkat Penekanan
Tombol (Keystroke – Level)
Operator dan Waktu untuk Model Tingkat
Penekanan Tombol
Pilih satu set level teratas dari tujuan user
Pilih desain antarmuka tertentu
Tulis prosedur umum yang harus user
pelajari dan lakukan untuk mencapai
tujuan
Dapat menggunakan notasi tertentu seperti
NGOMSL
Perkirakan
pembelajaran dan implikasi
pelaksanaan dari prosedur
Informal : Kompleksitas yang tidak perlu,
lambat dan langkah yang sulit
Formal : Hitung waktu perkiraan pembelajaran
dan pelaksanaan
Choose
the design with the best
combination of learning and
execution times.
Especially useful for:
Assessing consistency and ease of
learning.
Predicting execution time for a large
variety of situations
Methods for Setting the Clock
Method for goal: set the clock
▪ Step 1. Press CLOCK button
▪ Step 2. Accomplish goal: set a day and time with the current
day and time
▪ Step 3. Press CLOCK button
▪ Step 4. Return with goal accomplished
Method for goal: set a day and time
▪ Step 1. Accomplish goal: set day value to the desired value
▪ Step 2. Press SELECT
▪ Step 3. Accomplish goal: set hour value to the desired value
▪ Step 4. Press SELECT
▪ Step 5. Accomplish goal: set minute value to the desired value
▪ Step 6. Return with goal accomplished
Method for goal: set a value to a desired value
▪ Step 1. Verify that display shows current value is flashing
▪ Step 2. Decide: If display shows value same as desired, then
return with goal accomplished.
▪ Step 3. Decide: If display shows value smaller than desired,
then press UP button. else press DOWN button.
▪ Step 4. Go to Step 2.
User goals - a subset
• Set the clock
• Record a program
• Stop current recording
• Cancel previously programmed
recording
Assumptions
• A cassette is loaded
• Power is on
• Desired channel is already selected
Methods and Selection Rules are
somewhat simplified
Methods for Recording a Program
Selection rule set for goal: record a program
If you are present when the program starts and
you will be present when the program ends then
accomplish goal: record a program manually
If you are present when the program starts and
you will not be present when the program ends
and you know how long the program lasts and the
VCR clock is set then accomplish goal: record a
program with One-Touch Recording
If you will not be present when the program starts
and you know when the program will start and you
know how long the program lasts and the VCR
clock is set then accomplish goal: record a
program with Timer Recording
Return with goal accomplished
Method for goal: record a program manually
Step 1. Wait for program to start.
Step 2. Hold down REC button.
Step 3. Press PLAY button.
Step 4. Release both buttons.
Step 5. Verify that display shows "REC" and arrow is moving
Step 6. Wait for program to end
Step 7. Press STOP button.
Step 8. Return with goal accomplished.
Method for goal: record a program with One-Touch
Recording
Step 1. Wait for program to start
Step 2. Press OTR button.
Step 3. Press OTR button.
Step 4. Decide: If time shown in display is less than length
of program, go to Step 3.
Step 5. Return with goal accomplished.
Goal
?
Melewati
jurang
Objectif
Methods
Melompati
jurang
Ancang-ancang
Tekuk kaki
Lompat
Tali di ikat pada pohon
Tali diulur ke bawah
Rambati tali
Cari kesaktian terbang pada jimat
Gunakan jimat terbang
Lompat dan terbang
!!!
Pakai tali
?
a
n
Terbang
Question??