T0__BAB III Institutional Repository | Satya Wacana Christian University: Perancangan Aplikasi Sistem Informasi Supplier, Inventory, Produksi dan Penjualan Pastry dan Bakery T0 BAB III

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:

25

26

Lihat Data Supplier

Get List Supplier

Kelola Data
Supplier

Public Relation

Get Supplier Bahan

Lihat Persediaan
Bahan


Get List Bahan

Kelola Data
Inventory

Pengurus Inventory

Get Bahan

Owner

Lihat Persediaan
Produk

Get List Produk

Kelola Produksi

Pengelola Produksi


Get Produk

Lihat Data
Pengeluaran Produk

Get List Penjualan

Kelola Pengeluaran
Produk

Pengelola Pengeluaran Produk

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

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

Pengelola Supplier

Mengelola Supplier

Login

Sistem

Memeriksa Kebutuhan Login

Menampilkan Halaman Login

Tidak
valid
Otentifikasi Data
valid

Membuka Menu Kelola Supplier


Menampilkan Halaman Utama

Menampilkan Halaman Kelola Supplier

Mengelola Data

Tambah Data

Menampilkan Form Tambah Data

Update Data

Menampilkan Form Update Data

Hapus Data

Menghapus Data

Menyimpan Data


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

Pengelola Inventory
Mengelola Data Bahan Mentah

Login

Sistem
Memeriksa Kebutuhan Login

Menampilkan Halaman Login

tidak
Otentifikasi Data
berhasil


Membuka Menu Kelola Bahan Mentah

Menampilkan Halaman Utama

Menampilkan List Bahan Mentah

Mengisi Form Kelola Bahan Mentah

Memeriksa Kelengkapan Transaksi

Tidak
valid

valid
Menyimpan Data Kelola

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

Pengelola Produksi


Mengelola Produksi

Login

Sistem

Memeriksa Kebutuhan Login

Menampilkan Halaman Login

tidak
Otentifikasi Data

berhasil
Membuka Menu Kelola Produk

Menampilkan Halaman Utama

Update Produk

Menampilkan Tab Update Produk

Add Produk

Menampilkan Tab Add Produk

Mengisi List Bahan Produksi

Memeriksa Kelengkapan Data

Menyimpan Data List Produk

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

Bussiness Logic

User Interface

Pengelola Supplier

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

OPT

7.1 Memilih Menu Add Supplier
7.2 Menampilkan Form Detail Supplier

7.3 Memanggil Fungsi Create Object
7.4 Memberikan Data Member

7.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

OPT

8.1 Memilih Menu Edit Data Supplier
8.2 Memanggil Fungsi Edit Data Supplier
8.3 Meminta Data Supplier yang telah Dipilih
8.4 Request Data Member
8.5 Mengirim Data Member
8.6 Mengirim Object yang Berisi FieldInfo
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

OPT

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

Bussiness Logic

User Interface

Pengelola Inventory

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

OPT

7.1 Memilih Menu Add Bahan
7.2 Menampilkan Form Detail Bahan

7.3 Memanggil Fungsi Create Object
7.4 Memberikan Data Member

7.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

OPT

8.1 Memilih Menu Edit Data Bahan
8.2 Memanggil Fungsi Edit Data Bahan
8.3 Meminta Data Bahan yang telah Dipilih
8.4 Request Data Member
8.5 Mengirim Data Member
8.6 Mengirim Object yang Berisi FieldInfo
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

OPT

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

Bussiness Logic

User Interface

Pengelola Produksi

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

OPT

7.1 Memilih Menu Add Produk
7.2 Menampilkan Form Detail Produk
7.3 Memilih Menu Add Bahan
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

OPT

8.1 Memilih Menu Edit Data Produk
8.2 Memanggil Fungsi Edit Data Produk
8.3 Reqest Data Produk yang telah Dipilih
8.4 Request Data Member
8.5 Mengirim Data Member
8.6 Mengirim Object yang Berisi FieldInfo
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

OPT

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 Produk

Bussiness Logic

User Interface

Data Access

1. Memilih Menu Pengeluaran Produk
3. Memanggil InfoList Product
4. Get Data Product
5. Memberikan Object
6. Mengkonversi Object
7. Memberikan List Product
8. Menampilkan Form Pilih Produk
9. Memilih Product
10. Memanggil Fungsi DetailOfProductEditable
11. Memanggil Fungsi AddProduct
12. Memberikan DataTable
13. Mengirim ArrayList Product
14. Menampilkan List Pengeluaran Product
15. Menyimpan Data
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

Data Supplier
Data User

Data Pengeluaran Produk
+Delete()
+GetOneData()
+Insert()
+Update()

+GetIdentityData()

+Add()
+Delete()
+GetNoTransaksi()
+Update()

*
*

1

1

*

UserPrincipal

1

BussinessSupplier

-Identity
+IsInRole()
+New()

UI Supplier
-ArrayCompanyName
-ArrayKodeSupplier
-ArrayKontak
-ArraySupplierName
+Add()
+Edit()
+Delete()
+FillList()
+GetOneSupplier()

1
1
UserIdentity
-MyName
-Password
-Roles
-UserName
+GetDataUser()
+GetIdentity()
+IsInRole()

*

1

-CompanyName
-IsNew
-KodeSupplier
-Phone
-Status
-SupplierID
-SupplierName
-TanggalUpdate
+CreateObject()
+Edit()
+Save()
+GetList()
+Delete()
+New()

1

Bussiness Pengeluaran Produk
-IsNew
-JumlahProduct
-ProductName
-KodePenjualan
-KodeProduct
+Add()
+GetObject()
+NewObject()
+Save()
*
1
UI Pengeluaran Produk

UI Login

*
-up

+CekIdentity()

+Add()
+Delete()
+Fill List()

BussinessProduct
-IsNew
-JumlahProduct
-KodeProduct
-Picture
-ProductID
-ProductName
-TanggalUpdate
+CreateObject()
+New()
+GetList()
+Save()
+Delete()

*

UI Product

UI Bahan

+AddBahan()
+AddProduct()
+Delete()
+Edit()
+Fill List()

-ArrayKodeBahan
-ArrayNamaBahan
+New()
+Delete()
+Edit()
+Fill List()
+Load()
+GetOneBahan()

1

BussinessBahan
1

*

1

DataBahan
*

DetailOfProduct
Data Product
+Delete()
+GetOneData()
+Insert()
+GetAllData()
+Update()

*

+Delete()
+GetOneBahan()
+GetData()
+Insert()
+Update()

1

-IDBahan
-IsNew
-JumlahBahan
-KodeBahan
-KodeSupplier
-NamaBahan
-SatuanBahan
-TanggalUpdate
+CreateObject()
+EditBahan()
+SaveBahan()
+DeleteBahan()
+GetListBahan()
+New()

+AddDetailProduct()
+EditBahanProduksi()
+GetBahanProduksiToEdit()
+GetDetailOfProduct()
+GetJumlahStok()
+GetOneBahan()
+PotongStock()

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

BusinessSupplier

memiliki

untuk

relasi

customize

dengan
object.

kelas
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

Service

Business Logic Layer
Perangkat Client

User Interface

Connection Data Base
Basis Data

SQL Server

Data Access Layer

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.