Rabu, 13 Januari 2016

Metode Analisa Kebutuhan Pada Perangkat Lunak


Karakteristik Umum :
  • Mekanisme untuk analisa domain informasi
  • Pendekatan untuk representasi fungsional
  • Mendefinisikan antar muka
  • Mekanisme untuk partisi masalah
  • Membantu pengabstraksian
  • Gambaran dari pandangan fisikal dan logikal.

Metoda analisa keperluan digolongkan ke dalam 3 kategori :

  1. Data flow oriented analysis ( manual )
  2. Data structure oriented analysis ( manual )
  3. Language base formal specification

1. Data flow oriented analysis
  • Data flow diagram
  • Data dictionari
  • Functional description

2. Data structure oriented
  • Data structured systems development ( DSSD )
  • Jackson system development ( JSD )
  • Structural analysis and design technique ( SADT )

3. Menggunakan computer aided requirements engineering



DATA FLOW DIAGRAM

KOMPONEN-KOMPONEN DATAFLOW DIAGRAM

Contoh Data Flow Diagram_
Data Flow Diagram

Komponen-komponen Data Flow Diagram  :
  • Proses
  • External entity
  • Data Flow
  • Data Store

Proses


  • Simbol proses adalah lingkaran : 
  • Proses menunjukkan apa yang dikerjakan oleh sistem
  • Setiap proses memiliki nama yang unik dan nomor yang ditempatkan dalam simbol.

File atau Data Store



Simbol :


  • File atau Data Store adalah tempat penyimpanan data
  • Proses dapat menempatkan data ke dalam data store atau mengambil / mendapatkan data store
  • Setiap data store mempunyai nama yang unik

External Entity

Simbol :


  • External entity adalah di luar sistem, tetapi mereka merupakan salah satu bagian yang memberikan input data ke dalam sistem atau digunakan oleh output sistem
  • Source : External entity yang memberikan input data ke dalam sistem
  • Sinks : External entity yang menggunakan data sistem

Data Flow

Simbol : ð anak panah menunjukkan arah aliran



Aliran data pada sistem :
  • antara dua proses
  • dari sebuah data store ke sebuah proses
  • dari sebuah proses ke sebuah data store
  • dari sebuah source ke sebuah proses
  • dari sebuah proses ke sebuah sink

MENGGAMBARKAN SISTEM DENGAN DATAFLOW DIAGRAM


Langkah awal adalah membuat “DIAGRAM KONTEKS”

Diagram konteks : DFD di mana sistem terdiri dari satu proses

Pada tahap ini terlihat semua external entity yang berinteraksi dengan sistem dan data flow, antara external entity dan sistem

Contoh :

Diagram Konteks



+ Budget monitoring system

+ System berinteraksi dengan 3 external entity, yaitu :

& DEPARTEMENTS

& MANAGEMENTS

& SUPPLIERS

+ Aliran data utama dari Departements adalah “Spending Request”.

Sebagai tanggapan dari sistem, Departemen menerima “Rejected Request” atau aliran data “Delivery Advice”

+ Management menerima data flow “Request For Special Approval”, yang kemudian memberikan respons

+ Management juga mengirim data flow “Budget Allocation” ke sistem dan mendapatkan data flow “Spending Summaries”

+ Supplier menerima data flow “Part Order” dan mengembalikan data flow “Supplier Delivery Advice”

` Setelah mendapatkan “Diagram Konteks”, langkah selanjutnya adalah membuat DFD yang memperlihatkan proses dari sistem utama, yang dinamakan dengan TOP LEVEL DFD



Top Level DFD dari Diagram Konteks



+ Top level DFD memperlihatkan berbagai proses yang membentuk sistem

+ Setiap proses mempunyai sebuah nama unik dan nomor proses

+ Dari DFD di atas kita lihat bahwa data flow “Spending Request” dari Departements menuju ke proses “Check Funding”. Proses “Check Funding” melihat “Allocated Budget” dan menetapkan apakah izin khusus diperlukan dari management untuk diteruskan ke permintaan.

Data flow “Approved Request” menuju ke proses “Classify Expenditure”, dan kemudian dimasukkan pada data store “Departemental-Accounts” dan “Type-Accounts”.

Akhirnya, jika diperlukan, “Part Order” untuk menetapkan bagian ( part ) semula dalam “Spending Request” diurus oleh supplier.

Dua proses lainnya : “Setup Budget” dan “Provide Spending Summaries”

Kita dapat memperluas setiap proses pada Top Level DFD. Sebagai contoh diambil proses “Classify Expenditure”

Data Flow Diagram yang baik :

& Ketiadaan dari struktur flowchart

& Penyimpanan data

& Penamaan yang baik

Perbedaan antara Flowchart dan Data Flow Diagram :

Flowchart terdiri dari box-box yang mendeskripsikan :

& Komputasi

& Decision / Keputusan

& Iterasi

& Loop

Data Flow Diagram bukan Flowchart program dan tidak mempunyai elemen kontrol

DFD yang baik harus :

& Tidak mempunyai aliran data yang split up ke dalam sejumlah aliran data lain



& Tidak mempunyai garis yang berpotongan

& Tidak terdapat iterasi antara 2 proses ; 1 proses dengan dirinya sendiri

& Tidak mengandung aliran data yang berfungsi sebagai signal untuk mengaktifkan suatu proses

Bagaimana membuat : Decisions dan Interactive Control

& Decisions dalan DFD

& Perulangan dalam DFD

Penyimpanan Data

& Data store tidak boleh membuat “elemen data” baru

& Proses juga tidak dapat membuat data baru ; hanya mengambil data dan mengeluarkannya ke dalam sebuah bentuk data baru

& Beberapa contoh kesalahan penggunaan prinsip penyimpanan data :

a Item data QTY hilang setelah melalui proses “Retrieve-Item Price”

2.

a “Channel Use Per Day” ð output

a Tetapi tidak ada informasi masukkan tentang jumlah disk yang masuk setiap hari

Gunakanlah nama-nama yang berarti, baik untuk data flow, maupun proses. Pada contoh tersebut penamaan untuk data flow dan proses tidak jelas.

Beberapa petunjuk dalam pemakaian nama ( penamaan )

1. Penamaan “Proses”

a Nama proses harus frase tunggal dan dapat mendeskripsikan suatu proses dalam sebuah kalimat

a Nama proses harus mendefinisikan kegiatan / aksi yang spesifik

a Contoh :

+ Mengedit

+ Menghitung gaji mingguan

+ Menghitung diskon pada pesanan

+ dan lain-lain

a Jika suatu proses menangani beberapa proses, maka harus dipecah menjadi beberapa proses

2. Penamaan Data Store

a Gunakan nama yang khas / spesifik

a Ingat bahwa setiap data store hanya berisi satu set struktur data

a Contoh

Machine_Schedules and Parts_Used 8

ä

pisahkan ke dalam 2 data store

3. Penamaan Data Flows antara Proses

a Gunakan 1 kata / frase. Contoh : “Kuitansi” , “Cek” , dan sebagainya

a Jangan menggunakan nama yang sama untuk setiap data flow

a Lihat gambar :

+ Pada ( a ) data flow “Invoice” yang masuk ke “Edit Invoice” , keluar “Invoice” ð Jangan pakai nama yang sama.

+ Output dari “Make Payment” adalah “Cheque”. “Cheque” juga dipakai untuk data flow yang menghubungkan external entity “Customer” dan proses “Receive Payment”. Bedakan nama kedua data flow tersebut !!!!

+ DFD ( b ) memperbaiki beberapa kesalahan pada DFD ( a )

Pembuatan Aliran Material

DFD digunakan untuk aliran informasi, bukan aliran material. Tetapi kadang-kadang aliran material diperlukan. Caranya ????

TEKNIK-TEKNIK PEMODELAN DATA

& LEVELING DATA FLOW DIAGRAM ( Top - Down )

& PHYSICAL dan LOGICAL MODELING


Leveling DFD

` Dimulai dengan top level function dan kemudian mengembangkannya menjadi komponen-komponen yang lebih detail ( lower level DFD )

` Jika seseorang ingin mengetahui tentang sebuah fungsi khusus, atau fungsi pada suatu level, dapat mengacu pada level berikutnya.

` Perhatikan bahwa jangan sampai terjadi kehilangan informasi pada saat leveling. ð Gunakan nomor proses , dan data flow balancing ; juga perhatikan data store.

` Perhatikan DFD berikut ini :

& Numbering

& Data Flow Balancing

& Data Store : Local Data Store : DS2

& All external entities should appear on the context diagram

Leveling DFD

EXPANDING DATA FLOWS

1. Top Level DFD

2. DFD Diagram 1

3. DFD Diagram 2

Error Handling

1. Trivial Reject ð tidak mengerjakan apa-apa jika terjadi reject

2. Non Trivial Reject ð melakukan sesuatu jika terjadi reject

LOGICAL versus PHYSICAL FUNCTION

1. Logical process ð DFD yang merupakan model dari APA yang terjadi. Tidak menjelaskan BAGAIMANA sesuatu dikerjakan atau SIAPA yang mengerjakan

2. Physical Process ð kebalikan dari logical process

DATA DICTIONARY

Merupakan metode untuk merepresentasikan isi dari setiap data flow yang merepresentasikan satu atau lebih item-item informasi.

Data Dictionary terdiri atas :

1. Sequence

2. Selection

3. Repetition

Data Construct

Notation

Meaning

=
is composed of
sequence
+
and
selection

[ | ]

either - or


repetition

{ } n

n repetitions of




( )

optional data




Contoh :

Keyed phone number = [ local extention | outside number | 0 ]

Local extention = [ 2001 | 2002 | ..... | 2999 | conference set ]

Outside number = 9 + [ local number | long distance number ]

Local number = prefix + access number

Long distance number = ( 0 ) + area code + local number

Conference set = { # + local extention + # ( # ) } 6 2



FUNCTIONAL DESCRIPTIONS

Mendeskripsikan setiap proses dengan menggunakan bahasa alami atau notasi lainnya.

Contoh : Structured English

...

...

repeat until all process tasks have been described

case of processing task logic :

case : process task includes a sequence

state sequence of steps ;

case : process task is a condition

use if-then-else to describe conditions ;

...

...

endcase

endrep

...

...


Daftar Pustaka

  • Pressman, R. S., Software Engineering: A Practitioner’s Approach, 8th Edition, McGraw-Hill, 2008
  • Sommerville, I., Software Engineering 8th Edition, Addison-Wesley, 2007.

Terimakasih sudah membaca artikel di situs ini, silahkan tinggalkan komentar dan pertanyaan..
EmoticonEmoticon