Model AnalisisDFD
Model AnalisisDFD
halaman : 1
Pada tingkat teknik, rekayasa perangkat lunak dimulai dengan serangkaian tugas pemodelan yang membawa kepada suatu spesifikasi lengkap dari persyaratan representasi dan representasi desain yang komprehensip bagi perangkat lunak yang dibangun.
4.1. Elemen Model Analisis Model analisis harus dapat mencapai tiga sasaran utama yakni untuk : Menggambarkan apa yang dibutuhkan untuk pelanggan Membangun dasar bagi pembuatan desain perangkat lunak Membatasi serangkaian persyaratan yang dapat divalidasi begitu perangkat lunak dibangun.
halaman : 2
Untuk mencapai sasaran tersebut dibuatlah model analisis yang berisi: Data Dictionary Penyimpanan yang berisi deskripsi dari semua obyek data yang dikonsumsi atau diproduksi oleh perangkat lunak. Entity Relationship Diagram (ERD) Menggambarkan hubungan antara obyek data. Data Flow Diagram (DFD) o Memberikan indikasi mengenai bagaiman data ditransformasi pada saat data bergerak melalui sistem o Menggambarkan fungsi-fungsi (dan sub fungsi) yang mentransformasikan aliran data. State Transition Diagram Menunjukkan bagaimana sistem bertingkah laku sebagai akibat dari kejadian eksternal. Control Specification (CSPEC) Informasi tambahan mengenai aspek kontrol dari perangkat lunak
4.2. Pemodelan Data Untuk dapat menjawab sebagai berikut : Bagaimana komposisi dari masing-masing obyek data dan atribut apa yang menggambarkab obyek tersebut? Dimana obyek saat ini berada? Bagaimana hubungan antara masing-masing obyek data dan obyek lainnya? Bagaimana hubungan antara obyek dengan proses yang mentransformasikannya?
4.2.1. Obyek Data, Atribut dan Hubungan Obyek Data Adalah representasi dari hamper semua informasi gabungan yang harus dipahami oleh perangkat lunak
halaman : 3
Atribut Menentukan property suatu obyek data dan mengambil salah satu dari tiga karakteristik yang berbeda. o Menamai sebuah contoh dari obyek data o Menggambarkan contoh o Membujat referensi ke contoh yang lain pada tabel yang lain.
Hubungan Obyek data disambungkan satu dengan lainnya dengan berbagai macam cara.
4.2.2. Kardinalitas dan Modalitas Kardinalitas Model data harus dapat merepresentasikan jumlah peristiwa dari obyek di dalam hubungan yang diberikan o Satu ke satu (1:1) Misalnya: seorang suami hanya dapat memiliki satu istri, dan seorang istri hanya mempunyai satu suami. o Satu ke banyak (1:N) Misalnya: seorang ibu dapat memiliki banyak anak, tetapi seorang anak hanya dapat memiliki satu ibu. o Banyak ke banyak (M:N) Misalnya: seorang paman dapat memiliki banyak keponakan, sementara itu seorang keponakan dapat memiliki banyak paman.
Modalitas Modalitas dari suatu hubungan adalah nol bila tidak ada kebutuhan eksplisit untuk hubungan yang terjadi atau hubungan itu bersifat opsional. Modalitas bernilai satu jika suatu kejadian dari hubungan merupakan perintah.
halaman : 4
4.2.3. Entity Relational Diagram Pada mulanya digunakan untuk desain sistem database relational dan telah dikembangkan oleh yang lainnya. Serangkaian komponen utama diidentifikasikan untuk ERD: obyek data, atribut, hubungan dan berbagai tipe indicator. Tujuan utama dari ERD adalah untuk mewakili obyek data dan hubungan mereka.
4.3. Pemodelan Fungsional dan Aliran Informasi. Informasi ditransformasikan pada saat dia mengalir melalui sebuah sistem berbasis komputer. Sistem tersebut menerima input dengan berbagai cara dan menghasilkan suatu output. Akibatnya kita dapat menciptakan suatu model aliran bagi setiap sistem berbasis komputer tanpa melihat ukuran dan kompleksitasnya.
4.3.1. Diagram Aliran Data/ Data Flow Diagram (DFD) Merupakan sebuah teknik grafis yang menggambarkan aliran informasi dan transformasi yang diaplikasikan pada saat data bergerak dari input menjadi output. Dikenal juga dengan sebutan grafik aliran data atau buble chart.
halaman : 5
Komponen-komponen DFD : o Proses o External entity o Data Flow o Data Store Proses
Proses menunjukkan apa yang dikerjakan oleh sistem Setiap proses memiliki nama yang unik dan nomor yang ditempatkan dalam simbol.
o Simbol : o File atau Data Store adalah tempat penyimpanan data o Proses dapat menempatkan data ke dalam data store atau mengambil / mendapatkan data store o Setiap data store mempunyai nama yang unik
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 :
halaman : 6
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 :
BUDGET ALLOCATION DEPARTEMENTS
NG DI T S EN SP QUE RE
MANAGEMENT
REJECTED
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
Brahmantyo- Pemodelan Analisis
REQUEST
PART ORDER
SUPPLIER
Diagram Konteks
halaman : 7
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
2 SETUP BUDGET
DEPARTEMENTS
MANAGEMENT
IAL EC P S OR AL T FROV S E P QU AP
SUSPENDED REQUEST
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.
Brahmantyo- Pemodelan Analisis
NG DI T EN ES SP QU RE ED CT T JE ES RE QU RE
ALLOCATED BUDGET
RE
1 CHECK FUNDING
3 CLASSIFY EXPENDITUR
TYPE ACCOUNTS
R ED D T R O ES EC QU E R
DELIVERY ADVICE
5 ORGANIZE SUPPLIER
halaman : 8
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
AP PR OV RE ED QU ES T
TYPE ACCOUNTS
CL AS RE SIFIE QU D ES T
DEPARTEMENTAL ACCOUNTS
ED RD T O C S RE QUE RE
halaman : 9
Amend the expense docket reading the description for each request item and classifying it by type
For each request item irv request docket * get ACCOUNT for TYPE from store TYPE_ACCOUNTS * sum TOTAL_AMOUNT = TOTAL_AMOUNT + AMOUNT * write TYPE_ACOUNT back to store TYPE_ACOUNTS
D IE IF T SS ES U LA C EQ R
KETERANGAN
DESKIPSI DATA STORE DESKRIPSI PROSES DESKRIPSI DATA FLOW
U R PD EQ A U TE ES T
3.3 SUM TOTAL For each requesition REQUEST_SUM = REQUEST_SUM + AMOUNT DEPARTEMENTAL ACCOUNTS = DEPT_NO + TOTAL_EXP
R EQ TO UE TA ST L
Get departement accounts for DEPT_NO from data store DEPARTEMENTAL-ACCOUNTS TOTAL_EXP = TOTAL_EXP + REQUEST_TOTAL write departemental accounts back to data store
R EC EQ OR U DE ES D T
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
Brahmantyo- Pemodelan Analisis
halaman : 10
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
PROFIT
SALES DATA
COMPUTE INCOME
LOSS
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
END OF MONTH
halaman : 11
EM IT
= REQ_NO + ITEM_NO + QTY_NEEDED find INVENTORY_RECORD with ITEM_NO in INVENTORY_RECORD = ITEM_NO in ITEM-REQUEST if QTY_HELD in INVENTORY_RECORD < QTY_NEEDED in ITEM-REQUEST then write UNMET_REQUEST send UNAVAILABLE NOTE else send DELIVERY NOTE
TOTAL SALES
= DAILY_SALES_TOTAL
REPEAT FOR ALL SALESDOCKET BEGIN SALES_AMOUNT = QTY_SOLD * PRICE DAILY_SALES_TOTAL = DAILY_SALES_TOTAL + SALES_AMOUNT END SEND 'TOTAL SALES'
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 :
halaman : 12
1.
PU RC H
= ITEM_NAME + QTY
AS ED _IT E
PRICE_LIST
M
COMPUTE DISCOUNT
CUSTOMERS
Channel Use Per Day output Tetapi tidak ada informasi masukkan tentang jumlah disk yang masuk setiap hari 3. Gunakanlah nama-nama yang berarti, baik untuk data flow, maupun proses. Pada contoh tersebut penamaan untuk data flow dan proses tidak jelas.
memerlukan data
informasi
Beberapa petunjuk dalam pemakaian nama ( penamaan ) 1. Penamaan Proses Nama proses harus frase tunggal dan dapat mendeskripsikan suatu proses dalam sebuah kalimat Nama proses harus mendefinisikan kegiatan / aksi yang spesifik Contoh : Mengedit Menghitung gaji mingguan
Brahmantyo- Pemodelan Analisis
halaman : 13
Menghitung diskon pada pesanan dan lain-lain Jika suatu proses menangani beberapa proses, maka harus dipecah menjadi beberapa proses 2. Penamaan Data Store Gunakan nama yang khas / spesifik Ingat bahwa setiap data store hanya berisi satu set struktur data Contoh Machine_Schedules and Parts_Used pisahkan ke dalam 2 data store 3. Penamaan Data Flows antara Proses Gunakan 1 kata / frase. Contoh : Kuitansi , Cek , dan sebagainya Jangan menggunakan nama yang sama untuk setiap data flow 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 )
halaman : 14
SUPPLIER
CHEQUE
MAKE PAYMENT
RECEIVE PAYMENT
CHEQUE
CUSTOMER
EDIT INVOICE
SUPPLIER
EDIT INVOICE
Pembuatan Aliran Material DFD digunakan untuk aliran informasi, bukan aliran material. Tetapi kadang-kadang aliran material diperlukan. Caranya ????
SU P
ACCOUNT_NO +
AM
PL I
SUPPLIER +
APP
ER _N O UN AM E T
APPROVED INVOICES
RO V ED
AMOUNT
AMOUNT
E IC VO IN
VERIFY INVOICE MAKE PAYMENT
INVOICE
APPROVE PAYMENT
gambar ( a )
RECEIVE PAYMENT CUSTOMER CHEQUE
CUSTOMER
INVOICE
SU P
ACCOUNT_NO +
AM
PL I
SUPPLIER +
APP
ER _N O UN AM E T
APPROVED INVOICES
RO V
AMOUNT
AMOUNT
ED ED IT IN E IC VO
VERIFY INVOICE
VERIFIED INVOICE
APPROVE PAYMENT
gambar ( b )
halaman : 15
TOKO
TEMPAT
RUANG MESIN