Proses pengembangan perangkat lunak awalnya kita mulai
dengan pembuatan model bisnis. Model bisnis ini kita buat berdasarkan dari
kasus yang dikerjakan. Pada kasus yang
kita kerjakan, kita lihat proses bisnis apa saja yang terjadi. Lalu kita
tentukan proses bisnis yang penting saja untuk diambil. Setelah mendapatkan
seluruh proses bisnis yang penting, maka tentukan event, input, resource, goal,
dan output dari setiap proses bisnis tersebut. Setelah model bisnis jadi, maka
langkah selanjutnya adalah membuat model datanya (ERD). Dari model bisnis yang
telah kita buat, kita lihat data-data apa saja yang ada yang dapat merangkum
keseluruhan dari proses bisnis yang ada. Data-data tersebut yang kemudian akan
menjadi entitas-entitas pada model data (ERD) kita. Setelah seluruh entitas
telah didapatkan, kita tentukan keterkaitan antara entitas-entitas tersebut
(kita tentukan relasi antara entitas yang ada). Setelah itu, tentukan
kardinalitas beserta modalitas untuk setiap relasi yang ada. Selanjutnya kita
tentukan atribut-atribut yang ada pada setiap entitas termasuk atribut utama
dan juga atribut referensialnya. Setelah semua selesai, maka model data (ERD)
kita sudah jadi.
Langkah selanjutnya adalah mengubah model data (ERD) kita
menjadi sebuah model fungsi (DFD). Namun, sebelum itu kita lakukan proses IPO. Proses
IPO ini sebenarnya belum dipublikasi, namun langkah ini diajarkan oleh dosen
saya sebagai langkah sebelum mengubah dari ERD ke DFD. Cara ini cukup efektif
dan juga cukup memudahkan dalam mengubah dari model data (ERD) ke model fungsi
(DFD). Pada proses IPO ini kita pikirkan fungsi apa-apa saja yang muncul karena
adanya entitas-entitas pada model data kita. Entitas-entitas pada model data
kita bisa berupa input dari fungsi dan juga bisa berupa output dari fungsi
tersebut. Selain entitas, kita tentukan juga entitas eksternal atau yang biasa
dikenal sebagai terminator pada DFD. Sama seperti entitas, entitas eksternal
ini dapat berupa input dari fungsi dan juga dapat berupa output dari fungsi. Fungsi-fungsi
inilah yang akan menjadi proses dalam DFD yang akan kita buat. Ketika seluruh
fungsi sudah ditentukan beserta input dan outputnya, maka yang kita lakukan
selanjutnya adalah mengelompokkan fungsi-fungsi tersebut berdasarkan levelnya /
tingkatannya.
Berdasarkan dari rujukan proses IPO tersebut maka kita akan
lebih mudah membuat DFD nya. Entitas eksternal akan menjadi terminator,
fungsi-fungsi akan menjadi proses, dan entitas-entitas akan menjadi data store.
Ketika pengelompokkan sudah selesai maka akan jelas yang mana diagram lvl 0,
diagram lvl 1, dan seterusnya. Ketika levelnya sudah jelas, maka yang kita
lakukan adalah membuat diagram berjenjang untuk memperlihatkan secara lebih
jelas mulai dari diagram level 0 sampai pada diagram level 1 misalnya (batasan
level terakhir diagram tergantung pada setiap kasus). Setelah itu, kita buat
secara detail untuk diagram level 0, lalu diagram level 1, dan yang terakhir
semua subproses yang ada pada diagram level 1. Ketika semua sudah selesai, maka
model fungsi (DFD) kita sudah jadi.
Namun, model fungsi saja belum cukup karena dalam setiap fungsi-fungsi
(proses) yang ada pada model fungsi (DFD) yang dibuat, kita tidak mengetahui
apa-apa saja yang terjadi dalam setiap fungsi tersebut. Oleh karena itu kita
perlu membuat model behaviornya yang dalam hal ini adalah flowchartnya. Dengan membuat
flowchart untuk setiap fungsi yang ada, maka akan jelas terlihat apa-apa saja
yang terjadi dalam fungsi tersebut. Dengan adanya flowchart tersebut, bisa kita
jadikan sebuah rujuan untuk membuat user interfacenya. Seperti form input
misalnya, kita lihat apa-apa saja data yang diinput pada flowchart tersebut
kemudian kita implementasikan ke dalam form. Begitu pula untuk tampilan dalam
bentuk layar maupun cetakan misalnya. Ketika user interfacenya sudah jelas,
maka tinggal diserahkan ke programmer untuk melakukan coding.