Sistem Pemodelan Perangkat Lunak - PowerPoint PPT Presentation

1 / 40
About This Presentation
Title:

Sistem Pemodelan Perangkat Lunak

Description:

Pemodelan Perangkat Lunak Choose the design with the best combination of learning and execution times. Especially useful for: Assessing consistency and ease of learning. – PowerPoint PPT presentation

Number of Views:382
Avg rating:3.0/5.0
Slides: 41
Provided by: ryu1
Category:

less

Transcript and Presenter's Notes

Title: Sistem Pemodelan Perangkat Lunak


1
Sistem Pemodelan Perangkat Lunak
  • Pemodelan Perangkat Lunak

2
Pemodelan Perangkat Lunak
  • System models gt Merupakan gambaran abstrak dari
    sebuah sistem dimana persyaratan sistem tersebut
    akan / sedang dianalisa.
  • Metode Formal (Formal methods) gt merupakan
    teknik dan notasi dari persyaratan perangkat
    lunak yang tidak ambigu.

3
Tujuan
  • 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

4
Requirement Engineering (Short Review)
  • Merupakan suatu cara agar perekayasa perangkat
    lunak memahami permasalahan yang akan dipecahkan
  • Task yang terlibat yaitu inception,
    elicitation, elaboration, negotiation,
    specification, validation dan management

5
The Unified Modeling Language
  • 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

6
The Unified Modeling Language
7
Pemodelan Perangkat Lunak dan Modelnya
  • 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.

8
Model Konteks
  • 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.

9
Model Konteks
  • Arsitektur model sederhana

10
Model Proses / Aktifitas
  • Procuring equipment case

11
Model Perilaku
  • 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

12
Model Aliran Data
  • Proses data dari aktifitas place equipment order

Send to supplier
Checked signed order
Signed order form
Completed order form
Signed order form
Order Detail Blank Form
Complete Order Form
Validate order
Record order
Adjust avail budget
Signed order form
Order Details
Order amount acount detail
Orders File
Budget File
13
Model Perilaku Pemrosesan Data
  • CASE toolset data flow diagram (DFD)

14
Model State Machine
  • Contoh sederhana pada microwave

15
Model Data
  • 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

16
Semantic data (a.k.a. ER) models
17
Data dictionary models
  • 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

18
Data dictionary models
19
Model Obyek
  • 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

20
Model Obyek - Model Inheritance
Hirarki kelas library
21
Model Obyek - Model Aggregasi
Aggregate object repr. A course
22
Model Obyek Model Interaksi
Interaksi antar obyek dlm issue of electronic
item pada Sistem Perpustakaan
23
Sasaran dari metode formal
  • 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

24
Mengapa menggunakan metode formal
  • 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

25
Mengapa menggunakan metode formal?
  • 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

26
Mengapa tidak menggunakan metode formal?
  • 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

27
Tipe Bahasa spesifikasi formal
  • Spesifikasi axiomatic
  • Axiomatic yang sudah jelas kebenarannya.
  • Mendefinisikan operasi dengan pernyataan logika
  • Spesifikasi pergantian keadaan (state-transition)
  • Mendefinisikan operasi dalam pernyataan state dan
    transisi
  • Spesifikasi model abstrak
  • Mendefinisikan operasi dengan model matematika
  • Spesifikasi aljabar
  • Mendefinisikan operasi dalam kumpulan relasi
    yang ekuivalen
  • 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)

28
Mitos yang ada pada metode formal
  • 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
    safety-critical.
  • 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

29
Pemodelan G.O.M.S untuk antarmuka
  • Pemodelan Perangkat Lunak

30
Pendahuluan
  • 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)

31
Deskripsi Model GOMS
  • 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.

32
Model GOMS
  • 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

33
Metode Analisa Model Prosedur GOMS
  • 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

34
GOMS Procedure Model Method
  • 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

35
Example uses NGOMSL notation
  • 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.

36
GOMS Procedure Model MethodExample VCR
Procedures
  • 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

37
(Continue)
  • 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

38
(Continue)
  • 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.

39
Contoh Implementasi aksi game dengan GOMS
Goal Objectif Methods  
Melewati jurang Melompati jurang Ancang-ancang  
Melewati jurang Melompati jurang Tekuk kaki  
    Lompat  
  Pakai tali Tali di ikat pada pohon  
    Tali diulur ke bawah  
    Rambati tali  
  Terbang Cari kesaktian terbang pada jimat  
    Gunakan jimat terbang  
    Lompat dan terbang  
40
End Session
  • Question??

41
Contoh permasalahan - Jam
  • Inisialiasi Wakti tengah malam, bell dalam
    keadaan mati dan alarm tidak aktif.
  • Jika waktu sekarang sama dengan waktu alarm dan
    alarm aktif, bell akan memulai berbunyi.
  • Hanya dalam kondisi ini bell dapat mulai berbunyi
  • Waktu alarm dapat diatur setiap saat
  • Hanya ketika alarm aktif saja dapat di non
    aktifkan
  • Jika alarm tidak aktif ketika bell berbunyi, maka
    bell akan berhenti berbunyi
  • Pengaturan kembali jam, mengatifkan atau
    nonaktifkan alarm dianggap telah dilakukan
Write a Comment
User Comments (0)
About PowerShow.com