bab iii perancangan sistem 3.1. perancangan unified ......produksi dalam menghasilkan produk ....
TRANSCRIPT
-
25
BAB III
PERANCANGAN SISTEM
3.1. Perancangan Unified Modeling Language (UML)
UML merupakan satu kumpulan konvensi permodelan yang
digunakan untuk menentukan dan menggambarkan sebuah sistem
perangkat lunak yang terkait dengan objek [25]. UML yang
digunakan pada perancangan perangkat lunak ini meliputi use case
diagram, activity diagram, sequence diagram, class diagram, dan
deployment diagram.
3.1.1 Use Case Diagram
Use Case Diagram menggambarkan pola dari interkasi dan
hubungan antara actor dengan use case. Terdapat tiga komponen
use case diagram yaitu use case, package, dan relationship [26].
Use case diagram sistem yang digunakan pada perancangan
perangkat lunak ini dapat dilihat pada Gambar 3.1. berikut:
-
26
Gambar 3.1 Use Case Diagram Sistem Pastry dan Bakery
Pada Gambar 3.1 menggambarkan sistem memiliki
empat pengguna yaitu Public Relation, Pengelola Inventory,
pengelola Produksi, dan pengelola Penjualan. Public Relation
Owner
Public Relation
Pengurus Inventory
Pengelola Produksi
Pengelola Pengeluaran Produk
Lihat Data Supplier
Lihat PersediaanBahan
Lihat PersediaanProduk
Lihat DataPengeluaran Produk
Kelola DataSupplierGet List Supplier
Kelola DataInventory
Get List Bahan
Kelola ProduksiGet List Produk
Kelola PengeluaranProdukGet List Penjualan
Get Supplier Bahan
Get Bahan
Get Produk
-
27
memiliki kemampuan untuk memenage data supplier, pengelola
inventory memiliki kemampuan memanage data bahan mentah
dari supplier, karyawan produksi memiliki kemampuan untuk
mengolah produk dari bahan mentah, dan pengelola pengeluran
produk memiliki kemampuan untuk mengelola produk penjualan
ke customer.
3.1.2 Activity Diagram
Activity Diagram merupakan gambaran narasi proses bisnis,
yakni alur event yang berada dalam tabel, dimana setiap event
tersebut digambarkan secara berurutan dan dilengkapi alur
informasi yang diperlukan dari setiap event [24].
-
28
1. Activity Diagram Kelola Supplier
SistemPengelola Supplier
Mengelola Supplier Memeriksa Kebutuhan Login
Menampilkan Halaman LoginLogin
Otentifikasi Data
Menampilkan Halaman UtamaMembuka Menu Kelola Supplier
Menampilkan Halaman Kelola Supplier
Mengelola Data
Tambah Data
Update Data
Hapus Data
Menampilkan Form Tambah Data
Menampilkan Form Update Data
Menghapus Data
Menyimpan Data
valid
Tidak
valid
Gambar 3.2 Activity Diagram Kelola Supplier
-
29
Pada Gambar 3.2 menggambarkan aktivitas karyawan
pengelola supplier saat memanage data supplier dengan
mengakses aplikasi. Setelah autentifikasi data login sistem
menampilkan halaman menu kelola supplier, ketika karyawan
pengelola supplier memilih kelola data supplier maka sistem akan
menampilkan list data supplier, kemudian karyawan pengelola
supplier dapat memilih manipulasi data (insert, update dan delete).
Ketika karyawan pengelola supplier selesai dengan aktivitasnya,
sistem akan mengupdate data pada database. Selanjutnya activity
diagram untuk inventory dapat dilihat pada Gambar 3.3 berikut :
-
30
2. Activity Diagram Kelola Inventory Bahan Mentah
SistemPengelola Inventory
Mengelola Data Bahan Mentah Memeriksa Kebutuhan Login
Menampilkan Halaman LoginLogin
Otentifikasi Data
Menampilkan Halaman UtamaMembuka Menu Kelola Bahan Mentah
Menampilkan List Bahan Mentah
Mengisi Form Kelola Bahan Mentah
Memeriksa Kelengkapan Transaksi
Menyimpan Data Kelola
tidak
berhasil
valid
Tidak
valid
Gambar 3.3 Activity Diagram Kelola Inventory Bahan Mentah
Gambar 3.3 menjelaskan tentang aktivitas pengelola
inventory ketika mengelola data bahan mentah. Setelah
autentifikasi login karyawan inventory diterima sistem, sistem
-
31
akan menampilkan list untuk kelola bahan mentah. Kemudian
karyawan inventory menginput form list untuk bahan mentah
produksi, sistem kemudian memeriksa kelengkapan kelola bahan
mentah. Setelah dinyatakan valid sistem akan menyimpan data
bahan mentah ke inventory produksi. Selanjutnya untuk aktivitas
Produksi dijelaskan Gambar 3.4 diagram activity berikut ini:
-
32
3. Activity Diagram Kelola Produksi
SistemPengelola Produksi
Mengelola Produksi Memeriksa Kebutuhan Login
Menampilkan Halaman LoginLogin
Otentifikasi Data
Menampilkan Halaman UtamaMembuka Menu Kelola Produk
Update Produk
Add Produk
Menampilkan Tab Update Produk
Menampilkan Tab Add Produk
Mengisi List Bahan Produksi
Memeriksa Kelengkapan Data
Menyimpan Data List Produk
tidak
berhasil
-
33
Gambar 3.4 Activity Diagram Kelola Produksi
Gambar 3.4 diatas menjelaskan tentang aktivitas karyawan
produksi dalam menghasilkan produk pastry bakery. Setelah
validitas data login diterima oleh sistem, sistem akan menampilkan
menu untuk mengelola produk. Setelah membuka main menu
kelola produk karyawan produksi dapat memilih update produk
dan menambah menu produk. Untuk update produk sistem akan
membuka list produk–produk yang telah ada untuk diupdate,
sedangkan untuk menambah produk baru sistem akan
menampilkan list bahan–bahan yang akan digunakan untuk
produksi. Setelah selesai dengan aktivitasnya sistem akan
memeriksa kelengkapan data, jika data telah valid sistem secara
otomatis menyimpan data ke database produk. Selanjutnya activity
diagram kelola pengeluaran produk dijelaskan pada Gambar 3.5
berikut:
-
34
4. Activity Diagram Kelola Pengeluaran Produk
Pengeluaran Produk Sistem
Gambar 3.5 Activity Diagram Kelola Pengeluaran Produk
Gambar 3.5 diatas menjelaskan tentang aktivitas pengelola
pengeluaran produk, Setelah validitas identity login diterima oleh
sistem, sistem akan menampilkan halaman utama menu
-
35
pengeluran produk. Kemudian pengelola pengeluaran produk akan
mengisi form transaksi berdasarkan list stock produk yang tersedia.
Setelah selesai sistem akan memeriksa kelengkapan data transaksi
kemudian sistem akan menyimpan record ke dalam basis data.
3.1.3 Sequence Diagram
Sequence diagram menggambarkan interaksi antar objek di
dalam dan di sekitar sistem berupa pesan yang digambarkan
terhadap waktu. Sequence diagram terdiri antar dimensi vertical
(waktu) dan dimensi horizontal (objek-objek yang terkait) [24].
Sequence diagram dalam perancangan aplikasi ini adalah sequence
diagram kelola supplier, sequence diagram kelola bahan,
sequence diagram kelola produksi dan sequence diagram kelola
pengeluaran produk.
-
36
1. Sequence Diagram Kelola Supplier
OPT
OPT
OPT
Pengelola SupplierUser Interface Bussiness Logic Data Access
1. Memilih Menu Custom Supplier
2. Memanggil Info List Supplier
3. Memanggil Fungsi Get Data Supplier
4. Memberikan Fields Object
5. Memberikan List Data Supplier
6. Menampilkan Data dalam Control ListView
7.1 Memilih Menu Add Supplier
7.3 Memanggil Fungsi Create Object7.2 Menampilkan Form Detail Supplier
7.4 Memberikan Data Member7.4 Menampilkan Form Detail Data Supplier
7.6 Mengisi Form
7.7 Memanggil Procedure Save Data
7.8 Memanggil Procedure Insert Data Supplier
7.9 Mengembalikan Perintah
7.10 Pemberitahuan Bahwa Data Telah Disimpan
7.11 Menampilkan Data dalam Control ListView
8.1 Memilih Menu Edit Data Supplier
8.2 Memanggil Fungsi Edit Data Supplier
8.3 Meminta Data Supplier yang telah Dipilih
8.6 Mengirim Object yang Berisi FieldInfo
8.4 Request Data Member
8.5 Mengirim Data Member
8.7 Mengkonversi Type Object
8.8 Menampilkan Form Detail Supplier
8.9 Customize Data Supplier
8.10 Memanggil Procedure SaveData
8.11 Memanggil Procedure Update Data Supplier
8.12 Mengembalikan Perintah
8.13 Pemberitahuan Data Telah Diperbaharui
8.14 Menampilkan Data dalam Control ListView
9.1 Memilih Menu Delete Supplier
9.2 Memanggil Procedure DeleteDataSupplier
9.3 Mengirim Pesan Delete ke DataBase
9.4 Mengembalikan Perintah
9.5 Mengirim List Data Supplier Baru
9.6 Menampilkan Data dalam Control ListView
Gambar 3.6 Sequence Diagram Kelola Supplier
Pada sequence diagram kelola supplier terjadi interaksi
antara user dan sistem seperti berikut:
-
37
1) Ketika user memilih menu custom supplier, user interface
akan memanggil info list supplier ke business logic layer,
kemudian class info list padaa business logic layer akan
memanggil fungsi get data supplier akan diakses dari layer
data access.
2) Data access kemudian akan mengirim fields object ke
business logic layer kemudian akan diteruskan oleh business
logic layer dalam bentuk array list ke layer user interface.
User Interface menyusun array list dalam bentuk control
listView dan ditampilkan untuk user.
3) Jika user memilih untuk menambah data, maka user interface
akan memanggil fungsi CreateObject pada business logic
layer, kemudian business logic layer akan memberikan
seperangkat data member yang dibutuhkan. Setelah user
mengisi form user interface akan memanggil procedure save
data pada business logic layer. Business logic layer akan
memeriksa apakah data yang diisi adalah data baru atau tidak,
jika yang diisi oleh user adalah data baru, maka business logic
layer akan memanggil procedure insert data pada data access
layer.
4) Jika user memilih untuk melakukan update data yang telah
ada maka user interface akan memanggil fungsi edit data
supplier pada business logic layer (class supplierEditable).
Business logic layer akan meminta data yang dipilih user di
data access layer. Dikarenakan perangkat menggunakan
-
38
sistem reflection, data access layer akan request data member
dari business logic layer terlebih dahulu untuk memeriksa
kesesuaian objek. Setelah class supplier editable mengirim
data member, data access akan mengirim object yang berisi
fieldInfo. FieldInfo tersebut akan dikonversi dalam bentuk
array oleh business logic agar dapat dibaca oleh user
interface. Kemudian user interface akan menampilkan form
detail supplier untuk dimanipulasi oleh user. Setelah user
selesai melakukan customize data, user interface akan
memanggil procedure saveData pada business logic (class
supplier editable) untuk diperiksa apakah objek yang telah
dimanipulasi adalah objek baru atau tidak. Jika objek tersebut
tidak baru atau sudah ada, layer ini akan memanggil
procedure upadate data supplier pada layer data access.
Setelah data access mengembalikan perintah dan business
logic telah melakukan pemberitahuan bahwa data telah
disimpan.
5) Jika user memilih untuk menghapus data supplier yang telah
ada. User interface akan memanggil procedure delete pada
business logic (supplier info). Business logic kemudian akan
mengirim perintah delete ke data access layer. Setelah
perintah dikembalikan maka business logic melalui class
supplier info akan mencompile objek baru berupa data list
supplier ke user interface.
-
39
2. Sequence Diagram Kelola Inventory Bahan Mentah
OPT
OPT
OPT
Pengelola InventoryUser Interface Bussiness Logic Data Access
1. Memilih Menu Custom Bahan
2. Memanggil Info List Bahan
3. Memanggil Fungsi Get Data Bahan
4. Memberikan Fields Object
5. Memberikan List Data Bahan
6. Menampilkan Data dalam Control ListView
7.1 Memilih Menu Add Bahan
7.3 Memanggil Fungsi Create Object7.2 Menampilkan Form Detail Bahan
7.4 Memberikan Data Member7.5 Menampilkan Form Detail Data Bahan
7.6 Mengisi Form
7.7 Memanggil Procedure Save Data
7.8 Memanggil Procedure Insert Data Bahan
7.9 Mengembalikan Perintah
7.10 Pemberitahuan Bahwa Data Telah Disimpan
7.11 Menampilkan Data dalam Control ListView
8.1 Memilih Menu Edit Data Bahan
8.2 Memanggil Fungsi Edit Data Bahan
8.3 Meminta Data Bahan yang telah Dipilih
8.6 Mengirim Object yang Berisi FieldInfo
8.4 Request Data Member
8.5 Mengirim Data Member
8.7 Mengkonversi Type Object
8.8 Menampilkan Form Detail Bahan
8.9 Customize Data Bahan
8.10 Memanggil Procedure SaveData
8.11 Memanggil Procedure Update Data Bahan
8.12 Mengembalikan Perintah
8.13 Pemberitahuan Data Telah Diperbaharui
8.14 Menampilkan Data dalam Control ListView
9.1 Memilih Menu Delete Bahan
9.2 Memanggil Procedure DeleteDataBahan
9.3 Mengirim Pesan Delete ke DataBase
9.4 Mengembalikan Perintah
9.5 Mengirim List Data Bahan Baru
9.6 Menampilkan Data dalam Control ListView
Gambar 3.7 Sequence Diagram Kelola Inventory Bahan Mentah
Pada sequence diagram kelola inventory bahan terjadi
interaksi antara user dan sistem seperti berikut:
-
40
1) Ketika user memilih menu custom inventory bahan, user
interface akan memanggil info list bahan ke business logic
layer, kemudian class info list padaa business logic layer akan
memanggil fungsi get data bahan akan diakses dari layer data
access. Data access kemudian akan mengirim fields object ke
business logic layer kemudian akan diteruskan oleh business
logic layer dalam bentuk array list ke layer user interface.
User Interface menyusun array list dalam bentuk control
listView dan ditampilkan untuk user.
2) Jika user memilih untuk menambah data, maka user interface
akan memanggil fungsi CreateObject pada business logic
layer, kemudian business logic layer akan memberikan
seperangkat data member yang dibutuhkan. Setelah user
mengisi form user interface akan memanggil procedure save
data pada business logic layer. Business logic layer akan
memeriksa apakah data yang diisi adalah data baru atau tidak,
jika yang diisi oleh user adalah data baru, maka business logic
layer akan memanggil procedure insert data pada data access
layer.
3) Jika user memilih untuk melakukan update data yang telah
ada maka user interface akan memanggil fungsi edit data
supplier pada business logic layer (class bahanEditable).
Business logic layer akan meminta data yang dipilih user di
data access layer. Dikarenakan perangkat menggunakan
sistem reflection, data access layer akan request data member
-
41
dari business logic layer terlebih dahulu untuk memeriksa
kesesuaian objek. Setelah class supplier editable mengirim
data member, data access akan mengirim object yang berisi
fieldInfo. FieldInfo tersebut akan dikonversi dalam bentuk
array oleh business logic agar dapat dibaca oleh user
interface. Kemudian user interface akan menampilkan form
detail bahan untuk dimanipulasi oleh user. Setelah user
selesai melakukan customize data, user interface akan
memanggil procedure saveData pada business logic (class
bahan editable) untuk diperiksa apakah objek yang telah
dimanipulasi adalah objek baru atau tidak. Jika objek tersebut
tidak baru atau sudah ada, layer ini akan memanggil
procedure upadate data supplier pada layer data access.
Setelah data access mengembalikan perintah dan business
logic telah melakukan pemberitahuan bahwa data telah
disimpan.
4) Jika user memilih untuk menghapus data bahan yang telah
ada. User interface akan memanggil procedure delete pada
business logic (bahan info). Business logic kemudian akan
mengirim perintah delete ke data access layer. Setelah
perintah dikembalikan maka business logic melalui class
bahan info akan mencompile objek baru berupa data list bahan
ke user interface.
-
42
3. Sequence Diagram Kelola Produksi
OPT
OPT
OPT
Pengelola ProduksiUser Interface Bussiness Logic Data Access
1. Memilih Menu Custom Produk
2. Memanggil Info List Produk
3. Memanggil Fungsi Get Data Produk
4. Memberikan Fields Object
5. Memberikan List Data Produk
6. Menampilkan Data dalam Control ListView
7.1 Memilih Menu Add Produk
7.3 Memilih Menu Add Bahan
7.2 Menampilkan Form Detail Produk
7.4 Menampilkan Form List Bahan
7.5 Mengisi Form
7.6 Memanggil Procedure Save Data
7.7 Memanggil Procedure Insert Data Produk
7.8 Mengembalikan Perintah
7.9 Pemberitahuan Bahwa Data Telah Disimpan
7.10 Menampilkan Data dalam Control ListView
8.1 Memilih Menu Edit Data Produk
8.2 Memanggil Fungsi Edit Data Produk
8.3 Reqest Data Produk yang telah Dipilih
8.6 Mengirim Object yang Berisi FieldInfo
8.4 Request Data Member
8.5 Mengirim Data Member
8.7 Mengkonversi Type Object
8.8 Menampilkan Form Detail Produk
8.9 Customize Data Produk
8.10 Memanggil Procedure SaveData
8.11 Memanggil Procedure Update Data Produk
8.12 Mengembalikan Perintah
8.13 Pemberitahuan Data Telah Diperbaharui
8.14 Menampilkan Data dalam Control ListView
9.1 Memilih Menu Delete Produk
9.2 Memanggil Procedure DeleteDataProduk
9.3 Mengirim Pesan Delete ke DataBase
9.4 Mengembalikan Perintah
9.5 Mengirim List Data Supplier Produk
9.6 Menampilkan Data dalam Control ListView
Gambar 3.8 Sequence Diagram Kelola Produksi
Pada sequence diagram kelola produksi terjadi interaksi
antara user dan sistem seperti berikut:
-
43
1) Ketika user memilih menu custom produksi, user interface
akan memanggil info list produk ke business logic layer,
kemudian class info list padaa business logic layer akan
memanggil fungsi get data product akan diakses dari layer
data access. Data access kemudian akan mengirim fields
object ke business logic layer kemudian akan diteruskan oleh
business logic layer dalam bentuk array list ke layer user
interface. User Interface menyusun array list dalam bentuk
control listView dan ditampilkan untuk user.
2) Jika user memilih untuk menambah data, maka user interface
akan menampilkan form detail produk, jika user
menginginkan untuk menambah bahan maka user interface
akan meminta info list bahan ke business logic layer.
Kemudian business logic akan memanggil fungsi get all data
bahan ke data access. Data acess akan mengirimkan field
object ke business logic dan akan diteruskan dalam bentuk
array list ke user interface. User Interface akan menampilkan
list bahan produksi beserta quantity yang akan dipilih oleh
user. Setelah user selesai memilih bahan, user interface akan
memanggil procedure save data ke business logic. Business
logic kemudian akan memanggil procedure insert data bahan
to detail data produk. Setelah data access mengembalikan
perintah business logic akan mengirimkan seperangkat array
list bahan ke user interface, user interface akan menampilkan
kembali form detailOfproduct yang telah berisi bahan-bahan
-
44
yang telah dipilih user. User kemudian akan mengisi form
identitas produk kemudian user interface akan mengirimkan
procedure save data ke business logic (productEditable).
Business logic akan memanggil procedure insert data product
ke data access untuk menyimpan identitas produk baru.
Setelah data access mengembalikan perintah, business logic
akan memberitahu bahwa data telah disimpan yang kemudian
akan ditampilkan kembali melalui user interface dalam
control listView.
3) Jika user memilih untuk melakukan update data yang telah
ada maka user interface akan memanggil fungsi edit data
product pada business logic layer (class productEditable).
Business logic layer akan meminta data yang dipilih user di
data access layer. Dikarenakan perangkat menggunakan
sistem reflection, data access layer akan request data member
dari business logic layer terlebih dahulu untuk memeriksa
kesesuaian objek. Setelah class product editable mengirim
data member, data access akan mengirim objek yang berisi
fieldInfo. FieldInfo tersebut akan dikonversi dalam bentuk
array oleh business logic agar dapat dibaca oleh user
interface. Kemudian user interface akan menampilkan form
detail produk untuk dimanipulasi oleh user. Jika user hanya
melakukan update pada identitas produk, user interface akan
memanggil procedure saveData pada business logic (class
product editable). Business logic kemudian akan memanggil
-
45
procedure update data produk pada data access. Setelah data
access mengembalikan perintah, business logic akan
mengirim kembali seperangkat data member baru ke user
interface.
4) Jika user memilih untuk melakukan update data bahan
produk, maka user interface akan memanggil procedure edit
detail of product pada business logic. Business logic kemudian
akan memanggil procedure get data bahan produk pada data
access. Data access akan mengirimkan field info yang akan
dikonversi dalam bentuk array list oleh business logic melalui
detail of product info ke user interface. Setelah user selesai
melalukan manipulasi bahan produksi, user interface akan
memanggil procedure save data pada business logic (class
detail of product). Business logic kemudian akan memanggil
procedure update data detail of product ke data access layer.
Setelah data access mengembalikan perintah, business logic
akan mengirimkan seperangkat object bahan detail of product
baru melalui class detail of product info ke user interface
untuk ditampilkan dalam bentuk control ListView kembali
5) Jika user memilih untuk menghapus data product yang telah
ada. User interface akan memanggil procedure delete pada
business logic (product info dan detail of product info).
Business logic kemudian akan mengirim perintah delete ke
data access layer. Setelah perintah dikembalikan maka
business logic melalui class product info dan detail product
-
46
info akan mencompile objek baru berupa data list bahan ke
user interface.
4. Sequence Diagram Kelola Pengeluaran Produk
Pengelola Pengeluaran ProdukUser Interface Bussiness Logic Data Access
1. Memilih Menu Pengeluaran Produk
3. Memanggil InfoList Product
7. Memberikan List Product
5. Memberikan Object
10. Memanggil Fungsi DetailOfProductEditable
4. Get Data Product
8. Menampilkan Form Pilih Produk
9. Memilih Product
15. Menyimpan Data
6. Mengkonversi Object
11. Memanggil Fungsi AddProduct
12. Memberikan DataTable
13. Mengirim ArrayList Product
14. Menampilkan List Pengeluaran Product
16. Memanggil Procedure SaveData
17. Memanggil Fungsi InsertPengeluaranProduct
18. Memberikan DataRow
19. Mengembalikan Perintah
20. Pemberitahuan Data Telah Disimpan
Gambar 3.9 Sequence Diagram Kelola Pengeluaran Produk
Pada sequence diagram kelola produksi terjadi interaksi
antara user dan sistem seperti berikut:
1) Ketika user memilih menu custom pengeluaran, user interface
akan meminta info list bahan ke business logic layer.
Kemudian business logic akan memanggil fungsi get all data
-
47
product ke data access. Data acess akan mengirimkan field
object ke business logic dan akan diteruskan dalam bentuk
array list ke user interface. User Interface akan menampilkan
list produk beserta quantity yang akan dipilih oleh user.
Setelah user selesai memilih produk, user interface akan
memanggil procedure save data ke business logic. Business
logic kemudian akan memanggil procedure insert data
product to pengeluaran product. Setelah data access
mengembalikan perintah business logic akan mengirimkan
seperangkat array list bahan ke user interface, user interface
akan menampilkan kembali form detailOfpengeluaran
product yang telah berisi produk-produk yang telah dipilih
user. User kemudian akan mengisi form identitas pengeluaran
produk kemudian user interface akan mengirimkan procedure
save data ke business logic (pengeluaranEditable). Business
logic akan memanggil procedure insert data
pengeluaranProduct ke data access untuk menyimpan
identitas pengeluaran produk baru. Setelah data access
mengembalikan perintah, business logic akan memberitahu
bahwa data telah disimpan ke user interface.
2) Jika user memilih untuk melakukan update data yang telah
ada maka user interface akan memanggil fungsi edit
pengeluraran product pada business logic layer (class
pengeluaranEditable). Business logic layer akan meminta
data yang dipilih user di data access layer. Dikarenakan
-
48
perangkat menggunakan sistem reflection, data access layer
akan request data member dari business logic layer terlebih
dahulu untuk memeriksa kesesuaian objek. Setelah class
pengeluaran editable mengirim data member, data access
akan mengirim objek yang berisi fieldInfo. FieldInfo tersebut
akan dikonversi dalam bentuk array oleh business logic agar
dapat dibaca oleh user interface. Kemudian user interface
akan menampilkan form edit detail pengeluaran produk untuk
dimanipulasi oleh user. Jika user hanya melakukan update
pada identitas pengeluaran product, user interface akan
memanggil procedure saveData pada business logic (class
pengeluaran editable). Business logic kemudian akan
memanggil procedure update data pengeluaran product pada
data access. Setelah data access mengembalikan perintah,
business logic akan mengirim kembali seperangkat data
member baru ke user interface.
3) Jika user memilih untuk menghapus data pengeluaran yang
telah ada. User interface akan memanggil procedure delete
pada business logic (pengeluaran info dan detail of
pengeluaran info). Business logic kemudian akan mengirim
perintah delete ke data access layer. Setelah perintah
dikembalikan maka business logic melalui class pengeluaran
info dan detail pengeluaran info akan mencompile objek baru
berupa data list pengeluaran ke user interface.
-
49
3.1.4 Class Diagram
Class diagram merupakan kumpulan dari kelas-kelas yang
saling berhubungan atau berelasi secara terstruktur [24]. Class
diagram sistem yang digunakan pada perancangan perangkat
lunak ini dapat dilihat pada Gambar 3.10 berikut:
-
50
+Add()+Edit()+Delete()+FillList()+GetOneSupplier()
-ArrayCompanyName-ArrayKodeSupplier-ArrayKontak-ArraySupplierName
UI Supplier
+CekIdentity()
-up
UI Login
+New()+Delete()+Edit()+Fill List()+Load()+GetOneBahan()
-ArrayKodeBahan-ArrayNamaBahan
UI Bahan
+AddBahan()+AddProduct()+Delete()+Edit()+Fill List()
UI Product
+Add()+Delete()+Fill List()
UI Pengeluaran Produk
+CreateObject()+EditBahan()+SaveBahan()+DeleteBahan()+GetListBahan()+New()
-IDBahan-IsNew-JumlahBahan-KodeBahan-KodeSupplier-NamaBahan-SatuanBahan-TanggalUpdate
BussinessBahan
+CreateObject()+Edit()+Save()+GetList()+Delete()+New()
-CompanyName-IsNew-KodeSupplier-Phone-Status-SupplierID-SupplierName-TanggalUpdate
BussinessSupplier
+CreateObject()+New()+GetList()+Save()+Delete()
-IsNew-JumlahProduct-KodeProduct-Picture-ProductID-ProductName-TanggalUpdate
BussinessProduct
+Add()+GetObject()+NewObject()+Save()
-IsNew-JumlahProduct-ProductName-KodePenjualan-KodeProduct
Bussiness Pengeluaran Produk
+AddDetailProduct()+EditBahanProduksi()+GetBahanProduksiToEdit()+GetDetailOfProduct()+GetJumlahStok()+GetOneBahan()+PotongStock()
DetailOfProduct
+GetDataUser()+GetIdentity()+IsInRole()
-MyName-Password-Roles-UserName
UserIdentity
+IsInRole()+New()
-Identity
UserPrincipal
+Delete()+GetOneBahan()+GetData()+Insert()+Update()
DataBahan
+Delete()+GetOneData()+Insert()+Update()
Data Supplier
+Delete()+GetOneData()+Insert()+GetAllData()+Update()
Data Product
+Add()+Delete()+GetNoTransaksi()+Update()
Data Pengeluaran Produk
+GetIdentityData()
Data User
1
*
1
1
1
*
* 1
1
*
*1
1*
1*
1
*
1
*
1
*
Gambar 3.10 Class Diagram Sistem Pastry dan Bakery
Pada Gambar 3.10 menggambarkan sistem Pastry dan
Bakery yang memiliki kelas user interface antara lain: kelas UI
-
51
Login, kelas UI Supplier, kelas UI Bahan, kelas UI Produksi dan
kelas UI Pengeluaran Produk:
1) Kelas UI Login memiliki relasi dengan kelas UserIdentity
(untuk memeriksa identitas user). Kelas UserIdentity memiliki
relasi dengan kelas User Principal untuk memeriksa role dan
kelas UserPrincipal memiliki relasi dengan kelas DataUser
untuk mengakses data base.
2) Kelas UI Supplier memiliki relasi dengan kelas
BusinessSupplier untuk customize object. Kelas
BusinessSupplier memiliki relasi dengan kelas DataSupplier
untuk mangakses database.
3) Kelas UI Bahan memilik relasi dengan kelas Business Bahan
untuk customize object. Kelas BusinessBahan memiliki relasi
dengan kelas Data Bahan untuk mangakses database.
4) Kelas UI Produk memilik relasi dengan kelas Business Produk
dan kelas DetailOf Product untuk customize object. Kelas
BusinessProduct dan kelas DetailOfProduct memiliki relasi
dengan kelas Data Produk untuk mangakses database.
5) Kelas UI PengeluaranProduk memilik relasi dengan kelas
BusinessPengeluaranProduct untuk customize object. Kelas
BusinessPengeluaranProduct memiliki relasi dengan kelas
Data PengeluaranProduk untuk mangakses database.
3.1.5 Deployment Diagram
Deployment diagram menggambarkan detail bagaimana
komponen di-deploy dalam infrastruktur sistem, letak komponen,
-
52
kemampuan jaringan, spesifikasi server, dan hal-hal lainnya yang
bersifat fisikal [25]. Deployment diagram sistem yang digunakan
pada perancangan perangkat lunak ini dapat dilihat pada Gambar
Perangkat Client
User Interface
Service
Business Logic Layer
Connection Data Base
Data Access Layer
Basis Data
SQL Server
Gambar 3.11 Deployment Diagram Sistem Pastry dan Bakery
Pada gambar 3.11 menggambarkan Sistem Windows
Application sebagai perangkat antarmuka. User Interface
mendapatkan seluruh suplai objek dari Layer BusinessLogic
-
53
sedangkan Layer BusinessLogic mengakses semua data melalui
DataAccess Layer yang telah terkoneksi dengan Basis Data SQL
Server.
3.2. Perancangan Basis Data
Basis Data yang dibangun pada sistem ini disimpan di basis
data bertipe SQL Server. Perancangan basis data sistem perangkat
lunak Pastry dan Bakery dapat dilihat pada Gambar 3.12.
Gambar 3.12 Database Diagram Pastry dan Bakery
Pada Gambar 3.12 menggambarkan sistem menggunakan 10
tabel yaitu Tabel Products, Tabel Penjualan, Tabel
-
54
DetailPenjualan, Tabel Supplier, Tabel Employees, Tabel Bahan ,
Tabel DetailOfProducts, Tabel EmployeeRoles dan Tabel Roles.
Tabel Employees, EmployeeRoles dan Roles digunakan sebagai
akses login pengguna. Tabel Bahan memiliki relasi dengan Tabel
Supplier untuk mendapatkan identitas supplier yang mengirim
bahan. Tabel Product memiliki relasi dengan Tabel Bahan yang
digunakan untuk mendapkan data bahan untuk produksi. Tabel
Penjualan mendapatkan data dari relasi dengan Tabel Product
untuk mendapatkan product mana saja yang akan dikeluarkan.
Tabel Detail Of Product berisi identitas produk dan bahan yang
ada, Tabel Detail Of Penjualan berisi record data pengerluaran
produk.