Desain Perangkat Lunak

nesabamedia.com/pengertian-software-engineering

Desain perangkat lunak merupakan tahapan pengembangan perangkat lunak yang hasilnya dapat digunakan oleh pengembang perangkat lunak untuk membuat program. Desain perangkat lunak sering juga disebut sebagai physical design. Jika tahapan analisis sistem menekankan pada masalah bisnis (business rule), maka sebaliknya desain perangkat lunak fokus pada sisi teknis dan implementasi sebuah perangkat lunak.

Jenis desain perangkat lunak :
1. Desain data
Pengaruh struktur data pada struktur program dan kompleksitas prosedural menyebabkan desain data berpengaruh penting terhadap kualitas perangkat lunak, konsep penyembunyian informasi dan abstraksi data memberi dasar pendekatan terhadap desain data.

Desain Data
2. Desain arsitektur
Sasaran utama desain arsitektur adalah untuk mengembangkan struktur program modular dan merepresentasikan hubungan kontrol antar modul. Desain arsitektur juga membentuk struktur program dan struktur data dengan menentukan interface yang memungkinkan data mengalir melalui program.

Desain Arsitektur
3. Desain interface
Pengguna (User Interface Design) atau rekayasa antarmuka pengguna (User Interface Engineering) adalah desain untuk komputer, peralatan, mesin, perangkat komunikasi mobile, aplikasi perangkat lunak, dan situs web yang berfokus pada pengalaman pengguna (User Experience) dan interaksi.

4. Desain prosedural
Dalam dunia yang ideal, spesifikasi prosedural diperlukan untuk menetapkan detail algoritma yang akan dinyatakan dalam suatu bahasa ibu, seperti Bahasa Indonesia. Desain prosedural harus menentukan detail desain prosedural tanpa ada ambiguitas.

Desain Prosedural
Terdapat beberapa metode untuk membuat desain perangkat lunak, diantaranya menggunakan :

1. I.G.O.E
Input, Guide, Output, dan Enabler. Komponen dasar untuk proses bisnis yang digunakan untuk menangkap dan mendokumentasikan proses informasi. 

Template I.G.O.E

Penjelasan :
a. Input
Didefinisikan sebagai sesuatu yang berubah atau digunakan. Perubahan tersebut pastinya memiliki nilai tambah. Jenis transformasi meliputi fisik, lokasi dan informasi.

- Transformasi fisik – terjadi bila ada perubahan pada produk, misalnya bahan baku berubah menjadi barang jadi.
- Transformasi lokasi – terjadi perubahan tempat, misalnya memindahkan barang dari satu tempat ke tempat lain
- Transformasi informasi – terjadi saat ada perubahan informasi, misalnya saat informasi dibuat, diperbarui atau dihapus

b. Guide
Menjaslkan when, why, atau how pada suatu proses atau kegiatan yang terjadi. Oleh karena itu peristiwa yang menentukan kapan proses dimulai atau berakhir diklasifikasikan sebagai Guides, serta semua kebijakan, peraturan dan kebutuhan standard yang lain.
Contoh Guide :
- Kebijakan bisnis
- Peraturan bisnis
- Prosedur 
- Budaya 
- Tujuan 
- Kriteria proses
- Hukum atau kebijakan

c. Output
Produk atau hasil dari perubahan yang terjadi dari masukan atau sesuatu yang dihasilkan berdasarkan Guides.

d. Enabler
Sumber daya atau aset untuk merubah masukan menjadi keluaran atau untuk menghasilkan keluaran. 
Sumberdaya ini meliputi orang, sistem dan peralatan serta fasilitas yang digunakan untuk aktifitas atau proses.

Contoh Enabler :
- SDM
- Sistem 
- Fasilitas 
- Peralatan 

Fill Cars With Gas

Pay Cell Phone Bill

Make a Peanut Butter and Jelly Sandwich


2. B.P.M.N
B.P.M.N atau Business Process Management adalah :

Pencapaian dari tujuan organisasi melalui  pengembangan, pengaturan dan kontrol dari proses bisnis yang esensi (Jeston dan Nelis, 2006).

Proses yang memastikan perkembangan yang berkesinambungan dalam kinerja perusahaan (Burlton, 2001)

Adalah sebuah pendekatan untuk meningkatkan efektifitas dan efisiensi melalui  pembangunan otomatisasi proses dan ketangkasan untuk mengelola perubahan, serta membantu perusahaan dalam mengawasi dan mengontrol seluruh elemen pada proses bisnis. Tujuannya adalah menyediakan sebuah notasi yang mudah dimengerti dan dipahami pembacaannya bagi seluruh pihak bisnis baik dari seorang analis bisnis yang membuat draft proses, sampai ke pengembang teknik yang bertanggungjawab dalam implementasi teknologi proses tersebut, dan terakhir bagi para pelaku bisnis yang akan menjalani serta mengawasi proses-proses tersebut.

Framework BPM

Penjelasan :
- Organization Foundation
Pada fase ini dibahas mengenai organisasi yang terkait secara jelas, 
- Process Foundation 
Pada fase ini dibahas mengenai hasil  analisa dari proses bisnis yang sedang berjalan.
- Technology Foundation 
Pada fase ini berisi gambaran mengenai sistem yang sedang berjalan  serta teknologi dan peralatan-peralatan yang dibutuhkan oleh pihak-pihak yang berkepentingan (stakeholder) di dalam organisasi.
- BPM Foundation 
Pada fase ini tidak hanya disediakan cara untuk memulai suatu proyek, tetapi juga dilengkapi  dengan langkah-langkah yang dibutuhkan untuk membuat suatu proyek yang sukses.
- Elaboration 
Pada fase ini dibahas mengenai proses bisnis yang sedang berjalan serta mengidentifikasikan apakah proses bisnis tersebut perlu untuk dilakukan pengembangkan lagi.
- Improvement 
Pada fase ini dilakukan pengembangan terhadap sistem, dengan tujuan untuk melakukan modifikasi dari sistem yang ada sekarang ataupun mengubah dari sistem yang lama ke sistem yang baru, agar  sesuai dengan kebutuhan.
- People and Technology Development 
Pada fase ini menjelaskan pengembangan pada SDM dan teknologi 
- Deployment 
Fase ini merupakan penindaklanjutan dari pengembangan-pengembangan yang ada pada fase-fase sebelumnya ke dalam sistem baru untuk dijalankan dalam kegiatan operasional. 
- Monitor and Benefit Realization 
Pada fase ini ditetapkan sebuah kerangka untuk mengelola manfaat  proyek bisnis, target, ukuran dan usaha untuk mencapainya
- Continuous Improvement 
Pada fase ini dijelaskan mengenai aspek-aspek pendukung yang dibutuhkan di dalam pengembangan sistem 

BPM Project Management

Dari hasil pemahaman proses bisnis, kemudian dilakukan pemetaan proses bisnis yang dilakukan dengan menggunakan BPMN (Business Process Modeling Notation)

BPMN (Business Process Modeling Notation) adalah suatu notasi standar yang dapat berupa ikon atau gambar untuk digunakan di dalam pemodelan proses bisnis. 

Tujuan dari pembuatan BPMN adalah untuk menyediakan notasi yang siap digunakan dan sudah terstandarisasi untuk setiap bisnis user. Mulai dari analis bisnis yang membuat perencanaan awal dari proses, sampai pada technical developer yang bertanggung jawab mengimplementasi teknologi yang akan menjalankan proses, dan terakhir sampai kepada orang-orang di bisnis yang akan mengatur dan memonitor proses. 

Flow Object Notation

Connecting Object Notation

Swimlane Notation

BPMN-Doctor-Patient

Contoh BPM

3. Use Case Diagram Bisnis
Model merupakan model yang menggambarkan proses bisnis dari sebuah bisnis atau organisasi dan interaksi proses tersebut dengan pihak luar, seperti para customer dan partner. Proses bisnis merupakan sekumpulan aktivitas yang dirancang untuk menghasilkan output tertentu bagi customer. 
Proses bisnis lebih menekankan pada bagaimana sebuah pekerjaan dikerjakan dalam sebuah organisasi berfokus pada produk yang dihasilkan proses tersebut.

Tujuan :
- Untuk memperjelas konteks bisnis dari perangkat lunak yang akan dibuat 
- Bersifat opsional 
- Digunakan untuk menyajikan fungsi yang disediakan oleh keseluruhan organisasi. 
- Diagram ini menjawab pertanyaan "Apa yang bisnis dilakukan dan mengapa harus membangun sistem". 
- Diagram ini digunakan selama pemodelan aktifitas bisnis berlangsung dan mengatur konteks sistem untuk membentuk pondasi dalam pembentukan use case diagram.

Contoh Use Case Diagram :

Contoh Use Case Diagram


Contoh Use Case Diagram 2

Desain perangkat lunak pada kasus pengembangan perangkat lunak kami :
Judul              : Pembuatan sistem informasi penjualan berbasis desktop pada Toko Mainan Anak Dana Sentosa.
Deskripsi       : Sistem informasi atau software yang digunakan untuk melakukan kegiatan transaksi
atau pembelian mainan pada Toko Mainan Anak Dana Sentosa.
Metode          : Use Case Diagram

Hasil dan Pembahasan :

Use Case Diagram Proses Aktivitas

UCD Proses Aktivitas

Penjelasan :
Seperti pada bab sebelumnya yang sudah kami jelaskan (Bab 8 : VORD dan Bab 9 : Spesifikasi Kebutuhan) , Terdapat 3 subjek yang menggunakan sistem dengan 7 aktivitas atau proses utama dan 3 sub proses yang terjadi. Proses utamanya yaitu kelola data produk, pendaftaran, login, pemesanan, pembayaran, pengiriman barang & bukti transaksi serta pembuatan laporan penjualan. Sedangkan 3 sub prosesnya yaitu lupa password sub proses login, simpan data pesanan sub proses pemesanan dan stok kurang atau habis sub proses dari pengiriman barang & bukti transaksi.

Pada proses tersebut, terdapat proses yang dimana menggantung pada proses lainnya atau yang disebut dengan "include relationship"

"Include relationship : yaitu kelakuan yang harus terpenuhi agar sebuah event dapat terjadi, dimana pada kondisi ini sebuah use case adalah bagian dari use case lainnya."

Proses tersebut yaitu pemesanan ke login karena pemesanan tidak dapat dilakukan sebelum pengguna login ke sistem, pengiriman barang & bukti transaksi ke pembayaran dan pembuatan laporan penjualan ke pengiriman barang & bukti transaksi ke pembayaran. Selain itu, terdapat juga proses yang merupakan penjabaran atau proses yang terdapat pada proses lainnya yang disebut dengan "extend relationship"

"Extend relationship : adalah relasi use case tambahan ke sebuah use case dimana use case yang ditambahkan dapat berdiri sendiri walau tanpa use case tambahan itu."

Extend relationship tersebut terdapat pada proses lupa password ke proses login karena pengguna dapat menggunakan opsi tersebut jika berada pada menu login dan stok produk kurang atau habis ke proses pengiriman barang & bukti transaksi yang dimana pegawai dapat menghubungi penyuplai untuk menyuplai produk bila saat pemeriksaan ternyata produk kurang atau habis dan kegiatan tersebut dilakukan pada saat akan melakukan pengiriman barang & bukti transaksi.






Referensi :
https://www.codepolitan.com/mengenal-uml-diagram-use-case
https://timur.ilearning.me/2016/01/04/apa-perbedaan-include-dan-extend-di-use-case/

Referensi Gambar :
https://www.nesabamedia.com/pengertian-software-engineering/

Komentar

Postingan Populer

Kebutuhan Fungsional Dan Non Fungsional

Penjelasan Model-Model Proses Pengembangan Perangkat Lunak

Metode Prototype, Contoh Penggunaan dan Cara Menggunakannya

Metode Extreme Programming, Contoh Penggunaan dan Cara Menggunakannya

Pengujian Perangkat Lunak

Metode RAD, Contoh Penggunaan dan Cara Menggunakannya

Metode Waterfall, Contoh Penggunaan dan Cara Mengunakannya

Jenis-jenis Perangkat Lunak Atau Software

Elisitasi Kebutuhan