Alat Bantu Perangkat Lunak
Interaksi Manusia dan Komputer
Sesi 4
Topik Bahasan
Metode spesifikasi
Multiparty Grammar
Unified Modeling Language (UML)
User Action Notation (UAN)
Interface-building tools
Design tools
Software-engineering tools
IMK Sesi 4
2/26
Metode Spesifikasi
Aset pertama dalam membuat perancangan adalah
notasi yang baik untuk merekam dan
mendiskusikan kemungkinan-kemungkinan.
Spesifikasi dalam bahasa alami: cenderung berteletele, samar-samar, dan membingungkan.
Bahasa formal dan semiformal: efektif untuk bahasa
perintah.
Menu-tree structures: menunjukkan tata letak menu.
Tidak menunjukkan seluruh aksi yang mungkin.
IMK Sesi 4
3/26
Metode Spesifikasi (Lanj.)
UML class diagram: hubungan antar-elemen
sistem. Lebih baik daripada menu-tree.
UML Statechart diagram: sesuai untuk sistem
interaktif.
User action notation (UAN): notasi pendekatan
untuk pengembangan sistem manipulasi
langsung.
IMK Sesi 4
4/26
Multiparty Grammar
Penggambaran interaksi dengan notasi seperti BNF
(Backus-Naur Form).
Contoh BNF:
<Telephone book entry> ::= <Name> <Telephone
number>
<Name> ::= <Last name>, <First name>
<Last name> ::= <string>
<First name> ::= <string>
<string> ::= <character>|<character> <string>
<character> ::= A|B|C|...|W|X|Y|Z
<Telephone number> ::= (<area code><exchange> <local number>)
<area code> ::= <digit><digit><digit>
<exchange> ::= <digit><digit><digit>
<local number> ::= <digit><digit><digit><digit>
<digit> ::= 0|1|2|3|4|5|6|7|8|9
IMK Sesi 4
5/26
Multiparty Grammar (Lanj.)
Pada multiparty grammar ada nonterminal yang
diberi label untuk menyatakan pihak yang
menghasilkan string (U: user; C: computer).
Contoh: Proses log-in
<Session> ::= <U: Opening> <C: Responding>
<U: Opening> ::= LOGIN <U: Name>
<U: Name> ::= <U: string>
<C: Responding> ::= HELLO [<U: Name>]
• Multiparty grammar efektif untuk rentetan perintah
berorientasi teks yang berulang-ulang
dipertukarkan, seperti pada terminal bank.
IMK Sesi 4
6/26
UML Class Diagram (Bagian Atas)
Web Class Diagram for E-Commerce Site
cpHome
Shopping cart is
stored in Web
Session
1
0..1
<<link>>
<<link>>
<<link>>
{CategoryId} {FeaturedItemId}
0..n
0..n
spCatalog
spCart
spItem
<<Web Session>>
Session
0..n
<<build>>
1
<<link>>
{ItemId}
cpCatalog
<<link>> <<build>><<submit>>
<<build>>{action=Add,ItemId}
{action=Change Quantity}
cpItem
IMK Sesi 4
cpCart
frmCartContent
7/26
UML Class Diagram (Bagian Bawah)
Web Class Diagram for E-Commerce Site
cpCart
<<link>>
<<Web Session>>
Session
spCheckout
<<build>>
cpCheckout
Checkout process
successful
<<redirect>>
spOrderSummar
y
<<build>>
<<submit>>
cpOrderSummar
y
IMK Sesi 4
frmCheckout
8/26
UML Class Diagram (Lanj.)
Web Application Stereotypes (Jim Conallen)
Web Server Page
Web Target
Web Client Page
Web Frameset
IMK Sesi 4
Web HTML Form
9/26
UML Class Diagram (Lanj.)
Stereotype asosiasi untuk Web Application
Extension to UML:
«link»
«targeted link»
«redirect»
«submit»
«build»
IMK Sesi 4
10/26
UML Statechart Diagram
Statechart Diagram
for Robot Transmission
IMK Sesi 4
11/26
User Action Notation (UAN)
Digunakan untuk mengatasi keanekaragaman
dunia manipulasi langsung.
Simbol-simbol UAN:
~[icon] : bergerak menuju icon
~[x,y]
: menuju koordinat (x,y)
Mv
: tombol mouse ditekan
M^
: tombol mouse dilepas
icon!
: icon di-highlight
icon-!
: icon kembali normal
icon!
: icon berkedip
icon > ~ : icon bergerak mengikuti kursor
* : dapat berulang ( 0 kali)
IMK Sesi 4
12/26
User Action Notation (Lanj.)
Contoh 1:
TASK: select an icon
User Actions
~[icon] Mv
M^
Interface Feedback
icon!
Contoh 2:
TASK: select an icon
User Actions
~[file] Mv
~[x,y]*
~[trash]
M^
Interface Feedback
Interface State
file!, forall(file!): file-! selected = file
outline(file) > ~
outline(file) > ~, trash!
erase(file), trash!!
selected = null
IMK Sesi 4
13/26
Interface-Building Tools (Lanj.)
Fitur interface-building tools:
Kebebasan antarmuka pemakai
Metodologi dan notasi
Rapid prototyping
Dukungan perangkat lunak
IMK Sesi 4
14/26
Interface-Building Tools
Interface-building tools disebut juga:
Rapid Prototyper
User Interface Builder
User Interface Management System
User Interface Development Environment
Rapid Application Developer
IMK Sesi 4
15/26
Interface-Building Tools (Lanj.)
Kebebasan antarmuka pemakai
Memisahkan perancangan antarmuka dari
program internal.
Memungkinkan strategi multiple user-interface.
Memungkinkan dukungan multi-platform.
Memberi peranan arsitek antarmuka pemakai.
Menegakkan standar.
IMK Sesi 4
16/26
Interface-Building Tools (Lanj.)
Metodologi dan notasi
Mengembangkan prosedur perancangan.
Menemukan cara berbicara tentang perancangan.
Melakukan manajemen proyek.
Rapid prototyping
Mencoba gagasan dengan sangat dini.
Uji, revisi, uji, revisi, ….
Mengikutsertakan end users, manajer, pelanggan.
IMK Sesi 4
17/26
Interface-Building Tools (Lanj.)
Dukungan perangkat lunak
Meningkatkan produktivitas.
Memberikan pemeriksaan kendala dan
konsistensi.
Memfasilitasi pendekatan tim.
Memudahkan pemeliharaan.
IMK Sesi 4
18/26
Contoh Interface-Building Tools
Design tools
Software engineering tools
IMK Sesi 4
19/26
Design Tools
Membuat gambaran awal dengan cepat
penting di tahapan awal perancangan untuk:
Menjajaki berbagai alternatif;
Memungkinkan komunikasi dalam tim
perancang;
Menyampaikan kepada klien seperti apa bentuk
produk nantinya.
IMK Sesi 4
20/26
Design Tools (Lanj.)
Beberapa contoh design tools:
CAI software: Macromedia Authorware, IconAuthor,
Quest.
Multimedia construction tools: HyperCard,
Macromedia Director, Macromedia Flash.
Slide presentation software: Microsoft PowerPoint.
Visual programming tools: Microsoft Visual Basic
(sekarang dalam Visual Studio .NET), Borland Delphi.
Web design tools: Macromedia Dreamweaver,
Macromedia Fireworks.
IMK Sesi 4
21/26
Design Tools (Lanj.)
IMK Sesi 4
22/26
Design Tools (Lanj.)
IMK Sesi 4
23/26
Software Engineering Tools
Tcl/Tk:
#First make a menu button
menubutton.menu1 -text "Unix Commands" menu.menu1.m
-underline 0
#Now make the menu, and add
time
menu.menu1.m
.menu1.m add command -label
command {ls}
.menu1.m add command -label
{date}
.menu1.m add command -label
command {xcalendar}
the lines one at a
"List Files" "Get Date" -command
"Start Calendar" -
pack.menu1
IMK Sesi 4
24/26
Software Engineering Tools (Lanj.)
Java:
class Test
{
public static void main(String[] args)
{
for(int i = 0; i < args.length; i++)
System.out.print(i == 0 ? args[i] :
" " + args[i]);
System.out.println();
}
}
IMK Sesi 4
25/26
Software Engineering Tools (Lanj.)
JavaScript
<script language="JavaScript"
type="text/javascript">
<!-function square(i)
{
return i * i;
}
document.write('The function returned:‘ +
square(5) + '.');
//-->
</script>
IMK Sesi 4
26/26
© Copyright 2026 Paperzz