IF3037 Rekayasa Perangkat Lunak Lanjut

23
IF-ITB/YW/Agustus 2008 IF3037 Overview Analisis Terstruktur Page 1 IF3037 Rekayasa Perangkat Lunak IF3037 Rekayasa Perangkat Lunak Lanjut Lanjut Program Studi Teknik Program Studi Teknik Informatika Informatika STEI ITB STEI ITB Overview Analisis Overview Analisis Terstruktur Terstruktur

description

IF3037 Rekayasa Perangkat Lunak Lanjut. Overview Analisis Terstruktur. Program Studi Teknik Informatika STEI ITB. Review Analisis Terstruktur. Apa tujuan analisis ? Apa yang dimodelkan pada tahap analisis ? Apa keterkaitan antar model analisis ?. * SEPA 6 th ed, Roger S. Pressman. - PowerPoint PPT Presentation

Transcript of IF3037 Rekayasa Perangkat Lunak Lanjut

Page 1: IF3037 Rekayasa Perangkat Lunak Lanjut

IF-ITB/YW/Agustus 2008IF3037 Overview Analisis Terstruktur

Page 1

IF3037 Rekayasa Perangkat Lunak LanjutIF3037 Rekayasa Perangkat Lunak Lanjut

Program Studi Teknik InformatikaProgram Studi Teknik InformatikaSTEI ITBSTEI ITB

Overview Analisis TerstrukturOverview Analisis Terstruktur

Page 2: IF3037 Rekayasa Perangkat Lunak Lanjut

IF-ITB/YW/Agustus 2008IF3037 Overview Analisis Terstruktur

Page 2

Review Analisis TerstrukturReview Analisis TerstrukturApa tujuan analisis ?Apa tujuan analisis ?Apa yang dimodelkan pada tahap analisis ?Apa yang dimodelkan pada tahap analisis ?Apa keterkaitan antar model analisis ?Apa keterkaitan antar model analisis ?

* SEPA 6th ed, Roger S. Pressman

Page 3: IF3037 Rekayasa Perangkat Lunak Lanjut

IF-ITB/YW/Agustus 2008IF3037 Overview Analisis Terstruktur

Page 3

Review Analisis Terstruktur (2)Review Analisis Terstruktur (2)Apa tujuan analisis ?Apa tujuan analisis ? Memodelkan Memodelkan PROBLEMPROBLEM agar lebih mudah dipahami dan agar lebih mudah dipahami dan

siap di-design solusinyasiap di-design solusinyaApa yang dimodelkan pada tahap analisis ?Apa yang dimodelkan pada tahap analisis ? Pemodelan fungsional: DFDPemodelan fungsional: DFD Pemodelan data: ERDPemodelan data: ERD Pemodelan Pemodelan behaviourbehaviour: STD: STDApa keterkaitan antar model analisis ?Apa keterkaitan antar model analisis ? Data store (DFD) vs entitas/relasi (ERD)Data store (DFD) vs entitas/relasi (ERD) Process (DFD) vs aksi (STD)Process (DFD) vs aksi (STD) Harus dipastikan agar konsistenHarus dipastikan agar konsisten

Page 4: IF3037 Rekayasa Perangkat Lunak Lanjut

IF-ITB/YW/Agustus 2008IF3037 Overview Analisis Terstruktur

Page 4

Review DFDReview DFD

Apa yang dimodelkan pada DFD ?Apa yang dimodelkan pada DFD ?Sebutkan elemen DFD !Sebutkan elemen DFD !

Page 5: IF3037 Rekayasa Perangkat Lunak Lanjut

IF-ITB/YW/Agustus 2008IF3037 Overview Analisis Terstruktur

Page 5

Review DFD (2)Review DFD (2)

Apa yang dimodelkan pada DFD ?Apa yang dimodelkan pada DFD ? Proses dan aliran data antar prosesProses dan aliran data antar proses Proses pada DFD level 1 berkaitan dengan Proses pada DFD level 1 berkaitan dengan

kebutuhan fungsionalitas P/Lkebutuhan fungsionalitas P/LSebutkan elemen DFD !Sebutkan elemen DFD ! External EntityExternal Entity ProcessProcess Data flowData flow Data storeData store

Page 6: IF3037 Rekayasa Perangkat Lunak Lanjut

IF-ITB/YW/Agustus 2008IF3037 Overview Analisis Terstruktur

Page 6

Review Elemen DFDReview Elemen DFD

External EntityExternal Entity Bagaimana mengidentifikasi Bagaimana mengidentifikasi external entity external entity ?? Bagaimana memberi nama Bagaimana memberi nama external entity external entity ?? Kesalahan umum terkait Kesalahan umum terkait external entityexternal entity::

Tidak lengkap digambarkanTidak lengkap digambarkan

Page 7: IF3037 Rekayasa Perangkat Lunak Lanjut

IF-ITB/YW/Agustus 2008IF3037 Overview Analisis Terstruktur

Page 7

Review Elemen DFD (2)Review Elemen DFD (2)

ProcessProcess Bagaimana mengidentifikasi Bagaimana mengidentifikasi processprocess ? ? Bagaimana memberi nama Bagaimana memberi nama processprocess ? ? Bagaimana menurunkan Bagaimana menurunkan processprocess ke level ke level

berikutnya ?berikutnya ? Sampai kapan Sampai kapan processprocess perlu diturunkan ? perlu diturunkan ? Kesalahan umum terkait Kesalahan umum terkait processprocess::

Penamaan Penamaan processprocessProcessProcess yang tidak punya data masukan yang tidak punya data masukan “magic” “magic”ProcessProcess yang tidak punya data keluaran yang tidak punya data keluaran “black hole” “black hole”

Page 8: IF3037 Rekayasa Perangkat Lunak Lanjut

IF-ITB/YW/Agustus 2008IF3037 Overview Analisis Terstruktur

Page 8

Review Elemen DFD (3)Review Elemen DFD (3)Aliran dataAliran data Bagaimana mengidentifikasi aliran data ?Bagaimana mengidentifikasi aliran data ? Bagaimana menamakan data ?Bagaimana menamakan data ? Apa itu kamus data ?Apa itu kamus data ? Bagaimana membuat kamus data ?Bagaimana membuat kamus data ? Kesalahan umum terkait aliran data:Kesalahan umum terkait aliran data:

Penamaan data terlalu generik, mis.: DATA, LAPORANPenamaan data terlalu generik, mis.: DATA, LAPORAN““Tramp data”; data keluar masuk proses tetapi tidak berubah namaTramp data”; data keluar masuk proses tetapi tidak berubah namaData mengalir langsung dari external entity ke data storeData mengalir langsung dari external entity ke data storeData mengalir dari data store ke data storeData mengalir dari data store ke data storeAda aliran data dari external entity yang satu ke external entity Ada aliran data dari external entity yang satu ke external entity lainnyalainnyaAliran data antar level TIDAK BALANCE Aliran data antar level TIDAK BALANCE gunakan gunakan toolstools

Page 9: IF3037 Rekayasa Perangkat Lunak Lanjut

IF-ITB/YW/Agustus 2008IF3037 Overview Analisis Terstruktur

Page 9

Review Elemen DFD (4)Review Elemen DFD (4)Data StoreData Store Apa yang dimodelkan data store ?Apa yang dimodelkan data store ? Bagaimana menamakan data store ?Bagaimana menamakan data store ? Kesalahan umum terkait data store:Kesalahan umum terkait data store:

Data store terlalu generik, mis.: DATA, LAPORAN, Data store terlalu generik, mis.: DATA, LAPORAN, BASISDATABASISDATAData store terlalu detil, mis.: UMUR, ALAMATData store terlalu detil, mis.: UMUR, ALAMATData store tidak pernah diisi, hanya dibaca sajaData store tidak pernah diisi, hanya dibaca sajaData store tidak pernah dibaca, hanya diisi sajaData store tidak pernah dibaca, hanya diisi saja

Page 10: IF3037 Rekayasa Perangkat Lunak Lanjut

IF-ITB/YW/Agustus 2008IF3037 Overview Analisis Terstruktur

Page 10

Contoh Diagram KonteksContoh Diagram Konteks

EMPLOYEE

GENERAL-LEDGER

MANAGEMENT

0PAYROLL

EMPLOYEE-MAINTENANCE-TRANSACTION

EMPLOYEE-HOURS-WORKED-TRANSACTION

EMPLOYEE-PAYCHECK

EMPLOYEE-PAY-RATE-TRANSACTION

PAYROLL-AUDIT-TRAIL

EMPLOYEE-MAINTENANCE-AUDIT-TRAIL

PAYROLL-VOUCHER

PAYROLL-AUDIT-TRAIL

GENERAL-LEDGER-ACCOUNT-NUMBER

Context Diagram

10

Page 11: IF3037 Rekayasa Perangkat Lunak Lanjut

IF-ITB/YW/Agustus 2008IF3037 Overview Analisis Terstruktur

Page 11

Contoh DFD Level 1Contoh DFD Level 1

2MAINTAIN-EMPLOYEE-

RECORD

1PRODUCE-

EMPLOYEE-PAYCHECK

EMPLOYEE-MAINTENANCE-TRANSACTION

EMPLOYEE-PAY-RATE-TRANSACTION

EMPLOYEE-HOURS-WORKED-TRANSACTION

GENERAL-LEDGER-ACCOUNT-NUMBER

PAYROLL-AUDIT-TRAIL

PAYROLL-VOUCHER

EMPLOYEE-PAYCHECK

EMPLOYEE-MAINTENANCE-AUDIT-TRAIL

11

EMPLOYEE

Page 12: IF3037 Rekayasa Perangkat Lunak Lanjut

IF-ITB/YW/Agustus 2008IF3037 Overview Analisis Terstruktur

Page 12

Review ERDReview ERD

Apa yang dimodelkan pada ERD ?Apa yang dimodelkan pada ERD ?Apa elemen ERD ?Apa elemen ERD ?

Page 13: IF3037 Rekayasa Perangkat Lunak Lanjut

IF-ITB/YW/Agustus 2008IF3037 Overview Analisis Terstruktur

Page 13

Review ERD (2)Review ERD (2)

Apa yang dimodelkan pada ERD ?Apa yang dimodelkan pada ERD ? Data yang harus dikelola perangkat lunak dan Data yang harus dikelola perangkat lunak dan

relasinyarelasinya

Apa elemen ERD ?Apa elemen ERD ? Entity/EntitasEntity/Entitas Relationship/RelasiRelationship/Relasi AtributAtribut KardinalitasKardinalitas ModalitasModalitas

Page 14: IF3037 Rekayasa Perangkat Lunak Lanjut

IF-ITB/YW/Agustus 2008IF3037 Overview Analisis Terstruktur

Page 14

Review Elemen ERDReview Elemen ERD

Entity/EntitasEntity/Entitas Apa yang dimodelkan oleh entitas ?Apa yang dimodelkan oleh entitas ? Bagaimana menamakan entitas ?Bagaimana menamakan entitas ? Kesalahan umum terkait entitas:Kesalahan umum terkait entitas:

Entitas hanya akan mempunyai 1 data, mis.: Entitas hanya akan mempunyai 1 data, mis.: PERUSAHAAN, padahal data perusahaan hanya ada 1PERUSAHAAN, padahal data perusahaan hanya ada 1Entitas terlalu detil, mis.: UMUR, ALAMATEntitas terlalu detil, mis.: UMUR, ALAMAT

Entitas vs atributEntitas vs atribut

Penamaan entitas tidak jelas, mis.: BASISDATAPenamaan entitas tidak jelas, mis.: BASISDATA

Page 15: IF3037 Rekayasa Perangkat Lunak Lanjut

IF-ITB/YW/Agustus 2008IF3037 Overview Analisis Terstruktur

Page 15

Review Elemen ERD (2)Review Elemen ERD (2)

Relationship/RelasiRelationship/Relasi Apa yang dimodelkan oleh relasi ?Apa yang dimodelkan oleh relasi ? Bagaimana menamakan relasi ?Bagaimana menamakan relasi ? Kesalahan umum terkait relasi:Kesalahan umum terkait relasi:

Penamaan kurang pasPenamaan kurang pas Belum tergambar dengan lengkapBelum tergambar dengan lengkap

Page 16: IF3037 Rekayasa Perangkat Lunak Lanjut

IF-ITB/YW/Agustus 2008IF3037 Overview Analisis Terstruktur

Page 16

Review Elemen ERD (3)Review Elemen ERD (3)

AtributAtribut Apa yang dimodelkan oleh atribut ?Apa yang dimodelkan oleh atribut ? Bagaimana menamakan atribut ?Bagaimana menamakan atribut ? Kesalahan umum terkait atribut:Kesalahan umum terkait atribut:

Penamaan kurang pasPenamaan kurang pas Atribut tidak menggambarkan properti entitas atau Atribut tidak menggambarkan properti entitas atau relasirelasi Tidak teridentifikasi dengan lengkapTidak teridentifikasi dengan lengkap

Page 17: IF3037 Rekayasa Perangkat Lunak Lanjut

IF-ITB/YW/Agustus 2008IF3037 Overview Analisis Terstruktur

Page 17

Review Elemen ERD (4)Review Elemen ERD (4)

KardinalitasKardinalitas Apa yang dimodelkan oleh kardinalitas ?Apa yang dimodelkan oleh kardinalitas ? Bagaimana menentukan kardinalitas ?Bagaimana menentukan kardinalitas ?

ModalitasModalitas Apa yang dimodelkan oleh modalitas ?Apa yang dimodelkan oleh modalitas ? Bagaimana menentukan modalitas ?Bagaimana menentukan modalitas ?

Page 18: IF3037 Rekayasa Perangkat Lunak Lanjut

IF-ITB/YW/Agustus 2008IF3037 Overview Analisis Terstruktur

Page 18

Contoh ERDContoh ERD

Mahasiswa

Mata KuliahMengambil

Page 19: IF3037 Rekayasa Perangkat Lunak Lanjut

IF-ITB/YW/Agustus 2008IF3037 Overview Analisis Terstruktur

Page 19

Contoh ERD (2)Contoh ERD (2)

Page 20: IF3037 Rekayasa Perangkat Lunak Lanjut

IF-ITB/YW/Agustus 2008IF3037 Overview Analisis Terstruktur

Page 20

Review STDReview STD

Apa yang dimodelkan pada STD ?Apa yang dimodelkan pada STD ?Apa elemen STD ?Apa elemen STD ?

Page 21: IF3037 Rekayasa Perangkat Lunak Lanjut

IF-ITB/YW/Agustus 2008IF3037 Overview Analisis Terstruktur

Page 21

Review STD (2)Review STD (2)

Apa yang dimodelkan pada STD ?Apa yang dimodelkan pada STD ? Aspek dinamis perangkat lunakAspek dinamis perangkat lunak

Apa elemen STD ?Apa elemen STD ? StateState EventEvent ActionAction

Page 22: IF3037 Rekayasa Perangkat Lunak Lanjut

IF-ITB/YW/Agustus 2008IF3037 Overview Analisis Terstruktur

Page 22

Review Elemen STDReview Elemen STD

StateState Bagaimana mengidentifikasi state ?Bagaimana mengidentifikasi state ? Bagaimana menamakan state ?Bagaimana menamakan state ?EventEvent Bagaimana mengidentifikasi event ?Bagaimana mengidentifikasi event ? Bagaimana menamakan event ?Bagaimana menamakan event ?ActionAction Bagaimana mengidentifikasi action ?Bagaimana mengidentifikasi action ? Bagaimana menamakan action ?Bagaimana menamakan action ?

Page 23: IF3037 Rekayasa Perangkat Lunak Lanjut

IF-ITB/YW/Agustus 2008IF3037 Overview Analisis Terstruktur

Page 23

Contoh STDContoh STD

Minuman tersedia = 0

Terima koin baru

Menunggu koin

Menunggu masukan pilihan

Mengeluarkan minuman

Mengembalikan pembayaran

inisialisasi

Kembalikan pembayaran

Permintaan pengembalian koin

Kembalikan pembayaran

Terima koin baru

Pembayaran dikembalikan

Terima permintaan

Koin sah terdeteksi

Keluarkan minuman

Pembayaran mencukupiTerima koin baru

Minuman dikeluarkan