pengertian dfd
Post on 07-Aug-2015
119 Views
Preview:
TRANSCRIPT
Pengertian DFD
Diagram Alir Data (DAD) atau Data Flow Diagram (DFD) adalah suatu diagram yang
menggunakan notasi-notasi untuk menggambarkan arus dari data sistem, yang
penggunaannya sangat membantu untuk memahami sistem secara logika, tersruktur dan jelas.
DFD merupakan alat bantu dalam menggambarkan atau menjelaskan DFD ini sering disebut
juga dengan nama Bubble chart, Bubble diagram, model proses, diagram alur kerja, atau
model fungsi.
Latar belakang DAD
Suatu yang lazim bahwa ketika menggambarkan sebuah sistem kontekstual data flow
diagram yang akan pertama kali muncul adalah interaksi antara sistem dan entitas luar. DFD
didisain untuk menunjukkan sebuah sistem yang terbagi-bagi menjadi suatu bagian sub-
sistem yang lebih kecil adan untuk menggarisbawahi arus data antara kedua hal yang tersebut
diatas. Diagram ini lalu “dikembangkan” untuk melihat lebih rinci sehingga dapat terlihat
model-model yang terdapat di dalamnya.
Tujuan DFD
Tujuan DFD adalah :
1. Memberikan indikasi mengenai bagaimana data ditransformasi pada saat data bergerak
melalui sistem
2. Menggambarkan fungsi-fungsi(dan sub fungsi) yang mentransformasi aliran data
Manfaat DFD
Manfaat DFD adalah :
Data Flow Diagram (DFD) adalah alat pembuatan model yang memungkinkan
profesional sistem untuk menggambarkan sistem sebagai suatu jaringan proses
fungsional yang dihubungkan satu sama lain dengan alur data, baik secara manual
maupun komputerisasi.
DFD ini adalah salah satu alat pembuatan model yang sering digunakan,khususnya
bila fungsi-fungsi sistem merupakan bagian yang lebih penting dan kompleks dari pada
data yang dimanipulasi oleh sistem.Dengan kata lain, DFD adalah alat pembuatan
model yang memberikan penekanan hanya pada fungsi sistem.
DFD ini merupakan alat perancangan sistem yang berorientasi pada alur data dengan
konsep dekomposisi dapat digunakan untuk penggambaran analisa maupun rancangan
sistem yang mudah dikomunikasikan oleh profesional sistem kepada pemakai maupun
pembuat program.
Simbol DFD
TERMINATOR/KESATUAN LUAR (EXTERNAL ENTITY )
Setiap sistem pasti mempunyai batas sistem (boundary) yang memisahkan suatu sistem
dengan lingkungan luarnya. Kesatuan luar (external entity) merupakan kesatuan (entity) di
lingkungan luar sistem yang berupa orang, organisasi atau sistem lainnya yang berada di
lingkungan luarnya yang akan membeikan input atau menerima output dari sistem (Jogiyanto,
1989).
Suatu kesatuan luar dapat disimbolkan dengan suatu notasi kotak.
Notasi terminator/Kesatuan Luar di DFD
Terminator dapat berupa orang, sekelompok orang, organisasi, departemen di dalam
organisasi, atau perusahaan yang sama tetapi di luar kendali sistem yang sedang dibuat
modelnya. Terminator dapat juga berupa departemen, divisi atau sistem di luar sistem yang
berkomunikasi dengan sistem yang sedang dikembangkan.
ARUS DATA (DATA FLOW)
Arus data (data flow) di DFD diberi simbol suatu panah. Arus data ini mengalir diantara
proses (Process), simpanan data (data store) dan kesatuan luar (external entity). Arus data ini
menunjukkan arus data yang dapat berupa masukkan untuk sistem atau hasil dari proses
sistem.
Notasi Arus Data di DFD
Arus Arus data data dapat dapat berbentuk berbentuk sebagai sebagai berikut berikut : :
Formulir atau atau dokumen dokumen yang yang digunakan digunakan perusahaan
perusahaan
Laporan tercetak tercetak yang yang dihasilkan dihasilkan sistem sistem
Output dilayar komputer
Masukan untuk komputer komputer
Komunikasi ucapan
Surat atau memo
Data yang dibaca atau atau direkam di file
Suatu isian yang yang dicatat pada buku agenda
Transmisi data dari suatu komputer ke komputer lain
PROSES (PROCESS)
Suatu proses adalah kegiatan atau kerja yang dilakukan oleh orang, mesin, atau komputer dan
hasil suatu arus data yang masuk ke dalam proses untuk dilakukan arus data yang akan keluar
dari prises. Suatu proses dapat ditunjukkan dengan simbol lingkaran atau dengan simbol
empat persegi panjang tegak dengan sudut-sudutnya tumpul.
Notasi Proses di DFD
Ada beberapa hal yang perlu diperhatikan tentang proses :
Proses harus memiliki input dan output.
Proses dapat dihubungkan dengan komponen terminator, data store atau proses
melalui alur data.
Sistem/bagian/divisi/departemen yang sedang dianalisis oleh profesional sistem
digambarkan dengan komponen proses.
SIMPANAN DATA (DATA STORE)
Simpanan data (data store) merupakan simpanan dari data yang dapat berupa file atau
database di sistem komputer, arsip atau catatan manual, kotak tempat data di meja seseorang,
tabel acuan manual, agenda atau buku. Simpanan data di DFD dapat disimbolkan dengan
sepasang garis horizontal paralel yang tertutup di salah satu ujungnya.
Simbol dari Simpanan Data di DFD
Syarat Memuat DFD
Syarat-syarat pembuatan DFD ini adalah :
1. Pemberian nama untuk tiap komponen DFD
2. Pemberian nomor pada komponen proses
3. Penggambaran DFD sesering mungkin agar enak dilihat
4. Penghindaran penggambaran DFD yang rumit
5. Pemastian DFD yang dibentuk itu konsiten secara logika
Tips-tips dalam membuat DFD
Berikut ini tips-tips dalam membuat DFD :
1. Pilih notasi sehingga proses yang didekomposisi atau tidak didekomposisi dapat
dibaca dengan mudah
2. Nama proses harus terdiri dari kata kerja dan kata benda
3. Nama yang dipakai untuk proses, data store, dataflow harus konsisten (identitas perlu)
4. Setiap level harus konsisten aliran datanya dengan level sebelumnya
5. Usahakan agar external entity pada setiap level konsisten peletakannya
6. Banyaknya proses yang disarankan pada setiap level tidak melebihi 7 proses
7. Dekomposisi berdasarkan kelompok data lebih disarankan (memudahkan aliran data
ke storage yang sama)
8. Nama Proses yang umum hanya untuk prose yang masih akan didekomposisi
9. Pada Proses yang sudah tidak didekomposisi, nama Proses dan nama Data harus
sudah spesifik
10. Aliran ke storage harus melalui proses, tidak boleh langsung dari external entity
11. Aliran data untuk Proses Report .. : harus ada aliran keluar. Akan ada aliran masuk
jika perlu parameter untuk mengaktifkan report
12. Aliran data yang tidak ada datastorenya harus diteliti, apakah memang tidak
mencerminkan persisten entity (perlu disimpan dalam file/tabel), yaitu kelak hanya
akan menjadi variabel dalam program.
Langkah membuat/menggambar DFD
Tidak ada aturan baku untuk menggambarkan DFD. Tapi dari berbagai referensi yang ada,
secara garis besar langkah untuk membuat DFD adalah :
IDENTIFIKASI ENTITAS LUAR, INPUT DAN OUTPUT
Identifikasi terlebih dahulu semua entitas luar, input dan ouput yang terlibat di sistem.
BUAT DIAGRAM KONTEKS (DIAGRAM CONTEXT)
Diagram ini adalah diagram level tertinggi dari DFD yang menggambarkan hubungan sistem
dengan lingkungan luarnya.
Caranya :
Tentukan nama sistemnya.
Tentukan batasan sistemnya.
Tentukan terminator apa saja yang ada dalam sistem.
Tentukan apa yang diterima/diberikan external entity dari/ke sistem.
Gambarkan diagram konteks.
BUAT DIAGRAM LEVEL ZERO (OVERVIEW DIAGRAM)
Diagram ini adalah dekomposisi dari diagram konteks.
Caranya :
Tentukan proses utama yang ada pada sistem.
Tentukan apa yang diberikan/diterima masing-masing proses ke/dari sistem sambil
memperhatikan konsep keseimbangan (alur data yang keluar/masuk dari suatu level
harus sama dengan alur data yang masuk/keluar pada level berikutnya).
Apabila diperlukan, munculkan data store (master) sebagai sumber maupun tujuan
alur data.
Hindari perpotongan arus data
Beri nomor pada proses utama (nomor tidak menunjukkan urutan proses).
(klik gambar untuk resolusi yang lebih baik)
Overview Diagram
BUAT DIAGRAM LEVEL SATU
Diagram ini merupakan dekomposisi dari diagram level zero.
Caranya :
Tentukan proses yang lebih kecil (sub-proses) dari proses utama yang ada di level
zero.
Tentukan apa yang diberikan/diterima masing-masing sub-proses ke/dari sistem dan
perhatikan konsep keseimbangan.
Apabila diperlukan, munculkan data store (transaksi) sebagai sumber maupun tujuan
alur data.
Hindari perpotongan arus data.
Beri nomor pada masing-masing sub-proses yang menunjukkan dekomposisi dari
proses sebelumnya.C ontoh : 1.1, 1.2, 2
Level dalam DFD
Kesalahan dalan pembuatan DFD
Umumnya kesalahan dalam pembuatan DFD adalah :
(klik gambar untuk resolusi yang lebih baik)
1. Proses mempunyai input tetapi tidak menghasilkan output. Kesalahan ini disebut
dengan black hole (lubang hitam), karena data masuk ke dalam proses dan lenyap tidak
berbekas seperti dimasukkan ke dalam lubang hitam.
2. Proses menghasilkan output tetapi tidak pernah menerima input. Kesalahan ini disebut
dengan miracle (ajaib), karena ajaib dihasilkan output tanpa pernah menerima input.
3. Input yang masuk tidak sesuai dengan kebutuhan proses
4. Data Store tidak memiliki keluaran
5. Data Store tidak memiliki masukan
6. Hubungan langsung antar entitas luar
7. Masukan langsung entitas data store
8. Keluaran langsun dari data store ke Entitas luar
9. Hubungan langsung antar data store
10. Data masukan dan keluaran yang tidak bersesuain dalam data store
UML (Unified Modeling Language) adalah sebuah bahasa untuk menetukan, visualisasi,
kontruksi, dan mendokumentasikan artifact (bagian dari informasi yang digunakan atau
dihasilkan dalam suatu proses pembuatan perangkat lunak. Artifact dapat berupa model,
deskripsi atau perangkat lunak) dari system perangkat lunak, seperti pada pemodelan bisnis
dan system non perangkat lunak lainnya.
UML merupakan suatu kumpulan teknik terbaik yang telah terbukti sukses dalam
memodelkan system yang besar dan kompleks. UML tidak hanya digunakan dalam proses
pemodelan perangkat lunak, namun hampir dalam semua bidang yang membutuhkan
pemodelan.
BAGIAN-BAGIAN UML
Bagian-bagian utama dari UML adalah view, diagram, model element, dan general
mechanism.
a. View
View digunakan untuk melihat sistem yang dimodelkan dari beberapa aspek yang
berbeda. View bukan melihat grafik, tapi merupakan suatu abstraksi yang berisi sejumlah
diagram.
Beberapa jenis view dalam UML antara lain: use case view, logical view, component view,
concurrency view,dan deployment view.
b. Use case view
Mendeskripsikan fungsionalitas sistem yang seharusnya dilakukan sesuai yang
diinginkan external actors. Actor yang berinteraksi dengan sistem dapat berupa user atau
sistem lainnya.
View ini digambarkan dalam use case diagramsdan kadang-kadang dengan activity
diagrams. Viewini digunakan terutama untuk pelanggan, perancang (designer), pengembang
(developer), dan penguji sistem (tester).
c. Logical view
Mendeskripsikan bagaimana fungsionalitas dari sistem, struktur statis (class,
object,danrelationship ) dan kolaborasi dinamis yang terjadi ketika object mengirim pesan
ke object lain dalam suatu fungsi tertentu.
View ini digambarkan dalam class diagrams untuk struktur statis dan dalam state, sequence,
collaboration, dan activity diagram untuk model dinamisnya. View ini digunakan untuk
perancang (designer) dan pengembang (developer).
d. Component view
Mendeskripsikan implementasi dan ketergantungan modul. Komponen yang merupakan tipe
lainnya dari code module diperlihatkan dengan struktur dan ketergantungannya juga alokasi
sumber daya komponen dan informasi administrative lainnya.
View ini digambarkan dalam component view dan digunakan untuk pengembang
(developer).
e. Concurrency view
Membagi sistem ke dalam proses dan prosesor.View ini digambarkan dalam diagram dinamis
(state, sequence, collaboration, dan activity diagrams) dan diagram implementasi
(component dan deployment diagrams) serta digunakan untuk pengembang (developer),
pengintegrasi (integrator), dan penguji (tester).
f. Deployment view
Mendeskripsikan fisik dari sistem seperti komputer dan perangkat (nodes) dan bagaimana
hubungannya dengan lainnya.
View ini digambarkan dalam deployment diagramsdan digunakan untuk pengembang
(developer), pengintegrasi (integrator), dan penguji (tester).
g. Diagram
Diagram berbentuk grafik yang menunjukkan simbol elemen model yang disusun untuk
mengilustrasikan bagian atau aspek tertentu dari sistem. Sebuah diagram merupakan bagian
dari suatu view tertentu dan ketika digambarkan biasanya dialokasikan untuk view tertentu.
Adapun jenis diagram antara lain :
1. Use Case Diagram
Use case adalah abstraksi dari interaksi antara system dan actor. Use case bekerja dengan
cara mendeskripsikan tipe interaksi antara user sebuah system dengan sistemnya sendiri
melalui sebuah cerita bagaimana sebuah system dipakai. Use casemerupakan konstruksi
untuk mendeskripsikan bagaimana system akan terlihat di mata user. Sedangkan use case
diagram memfasilitasi komunikasi diantara analis dan pengguna serta antara analis dan client.
2. Class Diagram
Class adalah dekripsi kelompok obyek-obyek dengan property, perilaku (operasi) dan relasi
yang sama. Sehingga dengan adanya class diagram dapat memberikan pandangan global atas
sebuah system. Hal tersebut tercermin dari class- class yang ada dan relasinya satu dengan
yang lainnya. Sebuah sistem biasanya mempunyai beberapa class diagram. Class diagram
sangat membantu dalam visualisasi struktur kelas dari suatu system.
3. Component Diagram
Component software merupakan bagian fisik dari sebuah system, karena menetap di
komputer tidak berada di benak para analis. Komponent merupakan implementasi software
dari sebuah atau lebih class. Komponent dapat berupa source code, komponent biner,
atau executable component. Sebuah komponent berisi informasi tentang logic class atau class
yang diimplementasikan sehingga membuat pemetaan dari logical view ke component
view.Sehingga component diagram merepresentasikan dunia riil yaitu component software
yang mengandung component, interface dan relationship.
4. Deployment Diagram
Menggambarkan tata letak sebuah system secara fisik, menampakkan bagian-bagian software
yang berjalan pada bagian-bagian hardware, menunjukkan hubungan komputer dengan
perangkat (nodes) satu sama lain dan jenis hubungannya. Di dalam nodes,executeable
component dan object yang dialokasikan untuk memperlihatkan unit perangkat lunak yang
dieksekusi oleh node tertentu dan ketergantungan komponen.
5. State Diagram
Menggambarkan semua state (kondisi) yang dimiliki oleh suatu object dari suatu class dan
keadaan yang menyebabkan state berubah. Kejadian dapat berupa object lain yang mengirim
pesan. State class tidak digambarkan untuk semua class, hanya yang mempunyai
sejumlah state yang terdefinisi dengan baik dan kondisi class berubah oleh stateyang berbeda.
6. Sequence Diagram
Sequence Diagram digunakan untuk menggambarkan perilaku pada sebuah scenario.
Kegunaannya untuk menunjukkan rangkaian pesan yang dikirim antara object juga interaksi
antaraobject, sesuatu yang terjadi pada titik tertentu dalam eksekusi sistem.
7. Collaboration Diagram
Menggambarkan kolaborasi dinamis sepertisequence diagrams. Dalam menunjukkan
pertukaran pesan, collaboration diagrams menggambarkan objectdan hubungannya (mengacu
ke konteks). Jika penekannya pada waktu atau urutan gunakansequencediagrams, tapi jika
penekanannya pada konteks gunakan collaboration diagram.
8. Activity Diagram
Menggambarkan rangkaian aliran dari aktivitas, digunakan untuk mendeskripsikan aktifitas
yang dibentuk dalam suatu operasi sehingga dapat juga digunakan untuk aktifitas lainnya
seperti use caseatau interaksi.
Tujuan Penggunaan UML
1. Memberikan bahasa pemodelan yang bebas dari berbagai bahas pemrograman dan
proses rekayasa.
2. Menyatukan praktek-praktek terbaik yang terdapat dalam pemodelan.
3. Memberikan model yang siap pakai, bahsa pemodelan visual yang ekspresif untuk
mengembangkan dan saling menukar model dengan mudah dan dimengerti secara umum.
4. UML bisa juga berfungsi sebagai sebuah (blue print) cetak biru karena sangat lengkap
dan detail. Dengan cetak biru ini maka akan bias diketahui informasi secara detail tentang
coding program atau bahkan membaca program dan menginterpretasikan kembali ke
dalam bentuk diagram (reserve enginering).
Perangkat lunak yang mendukung pembuatan diagaram UML
1. StarUML (http://staruml.sourceforge.net/en/)
StarUML adalah sebuah proyek open source untuk mengembangkan cepat, fleksibel,
extensible, featureful, dan bebas-tersedia UML / platform MDA berjalan pada platform
Win32.Tujuan dari proyek StarUML adalah untuk membangun sebuah alat pemodelan
perangkat lunak dan juga platform yang menarik adalah pengganti alat UML komersial
seperti Rational Rose, Bersama dan sebagainya
2. Acceleo (http://www.acceleo.org/pages/home/en)
Acceleo adalah generator kode yang mengubah model menjadi kode. Acceleo mudah
digunakan dan menyediakan “dari rak” generator (Jee,. Bersih, Php …) dan template editor
untuk Eclipse.
3. ArgoUML (http://argouml.tigris.org/)
ArgoUML adalah open source UML modeling tool terkemuka dan termasuk dukungan untuk
semua diagram UML standar 1,4. Ini berjalan pada setiap platform Java dan tersedia dalam
bahasa sepuluh. ArgoUML ditulis seluruhnya di Jawa dan menggunakan Java Kelas
Foundation.Hal ini memungkinkan ArgoUML untuk berjalan di hampir semua platform.
Context Diagram adalah bagian dari Data Flow Diagram (DF) yang berfungsi
memetakan model lingkungan, yang dipresentasikan dengan lingkaran tunggal
yang mewakili keseluruhan sistem. CD menyoroti sejumlah karakteristik
penting sistem, yaitu :
1. Kelompok pemakai, organisasi atau sistem lain dimana sistem melakukan
2. komunikasi (sebagai terminator).
3.
4. Data masuk, yaitu data yang diterima sistem dari lingkungan dan harus
5. diproses dengan cara tertentu.
6.
7. Data keluar, yaitu data yang dihasilkan sistem dan diberikan ke
8. dunia luar.
9.
10. Penyimpanan data (storage), yaitu digunakan secara bersama antara
11. sistem dengan terminator. Data ini dapat dibuat oleh sistem dan digunakan
12. oleh lingkungan atau sebaliknya dibuat oleh lingkungan dan digunakan oleh
13. sistem. Hal ini berarti pembuatan simbol data storage dalam CD dibenarkan,
14. dengan syarat simbol tersebut merupakan bagian dari dunia diluar sistem.
15.
16. Batasan, antara sistem dan lingkungan.
17.
Simbol yang digunakan dalam Context Diagram (CD), antara lain :
a. Persegi panjang (terminator)
b. Untuk berkomunikasi langsung dengan sistem melalui aliran data.
c. Antara terminator tidak diperbolehkan komunikasi langsung.
d.
e. Lingkaran
f. Untuk menunjukkan adanya kegiatian proses dalam sistem.
g.
Bentuk simbol dapat dilihat pada gambar 2.2.
Aturan-aturan CD :
a. Bila terdapat terminator yang mempunyai banyak masukan dan keluaran,
b. diperbolehkan untuk digambarkan lebih dari satu kali sehingga mencegah
c. penggambaran yang terlalu rumit, dengan ditandai secara khusus untuk
d. menjelaskan bahwa terminator yang dimaksud adalah identik. Tanda dapat
e. berupa asterisk (*) atau tanda kres (#).
f.
g. Bila terminator mewakili individu (personil) sebaiknya diwakili oleh
h. peran yang dimainkan personil tersebut. Alasannya adalah : personil yang
i. berfungsi untuk melakukan itu dapat berganti, sedangkan CD harus tetap
j. akurat walaupun personil berganti dan mungkin seorang personil dapat
k. memiliki lebih dari satu tugas (peran).
l.
m. Karena model ini membedakan sumber (resources) dan pelaku (handler).
n. Dimana pelaku adalah mekanisme, perangkat, atau media fisik yang
o. mentransformasikan data ke/dari sistem, sehingga pelaku tidak perlu
p. digambarkan.
q.
Aliran dalam CD memodelkan masukkan ke sistem dan keluaran dari sistem,
seperti halnya sinyal kontrol yang diterima atau dibuat sistem.
Aliran data hanya digambarkan jika diperlukan untuk mendeteksi kejadian
dalam lingkungan dimana sistem harus memberikan respon atau membutuhkan
data untuk menghasilkan respon. Selain itu aliran data dibutuhkan untuk
menggambarkan transportasi antara sistem dan terminator. Dengan kata lain
aliran data digambarkan jika data tersebut diperlukan untuk menghasilkan
respon pada kejadian tertentu.
Dalam hal ini seharusnya menggambar dengan asumsi bahwa masukan disebabkan
dan diinisiasi oleh terminator, sedangkan keluaran disebabkan dan diinisiasi
oleh sistem. Hal itu dilakukan dengan mencegah interaksi yang tidak perlu
(extraneous prompts) yang berorientasi pada implementasi masukan-keluaran,
dan mengkonsentrasikan pemodelan pada aliran data yang esensial saja.
CD dimulai dengan penggambaran terminator, aliran data, aliran kontrol,
penyimpanan, dan proses tunggal yang mempresentasikan keseluruhan sistem.
Bagian termudah adalah menetapkan proses yang hanya terdiri dari satu
lingkaran dan diberi nama yang mewakili sistem. Nama harus dapat menjelaskan
proses.
Langkah yang dapat membantu dalam menggambarkan CD :
1. Identifikasikan seluruh informasi yang dibutuhkan.
2. Identifikasikan seluruh data yang dibutuhkan proses/informasi.
3. Identifikasikan seluruh tujuan setiap informasi bagi penggunanya.
4. Identifikasikan seluruh sumber data yang dibutuhkan proses/informasi
Contoh :
No Nama Data atau Informasi Arah aliran (Sumber/Tujuan) Terminator
1 Daftar tarian Menuju sistem Pengurus
2 Data peserta Menuju sistem Peserta
3 Data kuitansi Menuju sistem Peserta
4 Data pengajar Menuju sistem Pengajar
5 Data jadwal latihan Menuju sistem Pengurus
6 Daftar kehadiran Menuju sistem Pengajar
7 Data order menari Menuju sistem Pengajar
8 Data penugasan penari Menuju sistem Pengurus
9 Data honor pengajar Dari sistem Pengurus
10 Daftar honor penari peserta Dari sistem Pengurus
11 Rencana biaya order Menuju sistem Pengurus
12 Realisasi biaya order Menuju sistem Pengurus
13 Laporan daftar peserta tarian Dari sistem Pengurus
14 Laporan daftar pengajar tarian Dari sistem Pengurus
15 Laporan rencana dan realisasi order Dari sistem Pengurus
16 Laporan keuangan Dari sistem Pengurus
17 Komponen biaya Menuju sistem Pengurus
Tabel 2.1 : Inventarisasi data, informasi, sumber data, tujuan informasi
Sumber : Pengantar Perancangan Sistem, Husni Iskandar Pohan, dkk.
Gambar 2.1 : Context Diagram Sistem Informasi Sanggar Tari
Sumber : Pengantar Perancangan Sistem, Husni Iskandar Pohan, dkk.
top related