BAB IV ANALISA PERANCANGAN PERANGKAT LUNAK IV.1 Deskripsi Umum Perangkat Lunak Perangkat lunak yang akan dibangun adalah paket perangkat lunak bernama Integrated Enterprise Collaboration System (IECS). Paket perangkat lunak ini berguna untuk membangun dan mengimplementasi perangkat lunak proses bisnis secara cepat, mudah dan dinamis sebab memiliki abstraksi hubungan struktur data, struktur organisasi, proses bisnis dan aplikasi khusus yang lengkap. Cara kerja dari paket aplikasi ini adalah pertama-tama pendesain proses akan memodelkan spesifikasi proses menggunakan diagram proses. Setelah itu developer menambahkan form tugas, hubungan dengan basis data dan aplikasi khusus dan penulisan skrip kode khusus yang diperlukan. Perangkat lunak proses bisnis yang telah dilengkapi oleh developer akan dipasang oleh administator untuk dijalankan. Administrator juga bertugas untuk menentukan daftar staf dari masing-masing unit organisasi. Kemudian staf yang memiliki hak untuk memulai proses dapat menciptakan instan proses. Instan proses yang telah diciptakan akan digerakkan secara otomatis dari satu tugas ke tugas yang dilakukan lain berdasarkan interpretasi diagram proses yang dibangun pendesain proses. Staf yang mendapat penugasan dalam suatu state proses tertentu dapat melihat daftar tugas yang dimilikinya dan menjalankan form tugas yang berhubungan. Selama pelaksanaan proses, manajer dapat memonitor performansi pelaksanaan proses untuk bahan perbaikan proses selanjutnya. Perspektif IECS yang akan dibangun terhadap lingkungannya terlihat pada gambar IV-1. 40 Desiner Proses Administrator Integrated Enterprise Collaboration System Developer Staf Manager DB Server Server Aplikasi Khusus Gambar IV-1. Perspektif IECS terhadap lingkungan IV.2 Spesifikasi Kebutuhan Perangkat Lunak Kebutuhan fungsional yang akan diimplementasikan dalam IECS terlihat pada table IV-1. Tabel IV-1. Kebutuhan Perangkat Lunak AutoFlow Kode SRS-01 Deskripsi Menyediakan fasilitas untuk memodelkan proses bisnis dengan abstraksi hubungan lengkap antara struktur organisasi, struktur data, proses bisnis dan aplikasi khusus bagi desainer proses. SRS-02 Menyediakan fasilitas untuk membangun form tugas sebagai antarmuka bagi staf dalam pelaksanaan proses bagi developer. SRS-03 Menyediakan fasilitas untuk menentukan daftar staf dari unit kerja tertentu bagi administrator. SRS-04 Menyediakan fasilitas untuk memulai proses bagi staf yang memiliki hak untuk memulai proses. SRS-05 Menyediakan fasilitas untuk mendaftarkan tugas yang dimiliki oleh staf. SRS-06 Menyediakan fasilitas untuk menjalankan form tugas bagi staf yang 41 ditunjuk untuk mengerjakan suatu tugas tertentu. SRS-07 Menyediakan infrastruktur yang mampu menggerakkan instan proses dari satu state ke state lain secara otomatis berdasarkan diagram proses yang dibuat oleh pendesain proses. SRS-08 Menyediakan fasilitas untuk memonitor pelaksanaan proses. IV.3 Model Use Case Dari hasil deskripsi perangkat lunak dan spesifikasi kebutuhan diatas, maka model use case untuk IECS terlihat pada gambar IV-2. Gambar IV-2. Model Use Case IECS IV.3.1 Definisi Aktor Aktor yang terdapat dalam sistem IECS terlihat pada table IV-2. 42 Tabel IV-2. Definisi Aktor No 1 Nama Deskripsi Desainer Proses Adalah pengguna yang bertugas untuk membuat diagram model proses 2 3 Server Aplikasi Adalah server aplikasi khusus yang diintegrasikan Khusus dalam pelaksanaan proses DB Server Adalah server basis data yang diintegrasikan dalam pelaksanaan proses 4 Adalah pengguna yang bertugas melengkapi diagram Developer proses dengan form tugas dan kode skrip khusus agar perangkat lunak dapat dijalankan oleh staf 5 Adalah pengguna yang bertugas untuk mengatur Administator daftar staf unit 6 Staf Adalah pengguna yang melaksanakan tugas dalam pelaksanaan proses 7 Manajer Adalah pengguna yang memonitor performansi pelaksanaan proses. IV.3.2 Definisi Use Case Definisi use case yang terdapat dalam AutoFlow terlihat di tabel IV-3 dan IV-4. Tabel IV-3. Definisi use case membuat proses flow No 01 Nama Membuat Diagram Proses Aktor Desainer Proses, Server Aplikasi Khusus, DB Server Deskripsi Case ini bertujuan untuk membuat diagram proses yang menjadi dasar implementasi pelaksanaan proses dalam IECS. Skenario Utama Desainer proses membuka aplikasi pembuat diagram proses Desainer proses menentukan struktur organisasi dari 43 proses bisnis Desainer proses menentukan tugas dari masing-masing unit kerja Desainer proses menentukan data-data yang terlibat dalam perlaksanaan proses Desainer proses menentukan aplikasi-aplikasi khusus yang terlibat dalam pelaksanaan proses Desainer proses menentukan urut-urutan pelaksanaan tugas dalam proses bisnis. Desainer proses menyimpan diagram proses. - Skenario Alternatif Tabel IV-4. Definisi use case menentukan struktur unit No 02 Nama Membuat Form Tugas Unit Aktor Developer, DB Server Deskripsi Case ini bertujuan untuk membuat antarmuka bagi staf untuk melaksanakan tugas tertentu. Skenario Utama Developer membuka aplikasi pembuat form tugas Developer membuka diagram proses yang dimaksud Developer membuat form tugas untuk tugas unit tertentu Developer menambahkan fungsi-fungsi yang berkaitan dengan data Developer menyimpan form tugas. Skenario - Alternatif Definisi use case selengkapnya dapat dilihat di Lampiran A. 44 IV.4 Arsitektur Sistem Arsitektur fisik dari IECS terlihat pada gambar IV-3, sedangkan arsitektur IECS berdasarkan fungsionalitas terlihat pada gambar IV-4. Gambar IV-3. Arsitektur fisik IECS Designer Proses Simulator - Membangun Diagram Proses Manajer Developer Dashboard Studio Workspace - Membuat Form Tugas - Menentukan Hubungan Dengan Basis Data - Menulis Skrip Khusus - Daftar Proses yang Dapat Diinisialisasi - Membuat Instan Proses Baru - Daftar Tugas Staff - Menjalankan Form Tugas - Statistik Performansi Pelaksanaan Proses Staff Administrator SettingPanel - Manajemen Staff Web Browser Remote Object Call FlowEngine - Manajemen Diagram Proses - Mengggerakkan State Berdasarkan Diagram Proses - Pencatatan History Instan Proses Pemberian Tugas Ke Staff Laporan Tugas Selesai UnitEngine - Manajemen Staf Unit - Manajemen Tugas Unit - Manajemen Form Tugas - Menentukan Staf yang melaksanakan Tugas Web Server Enterprise DB Internal DB Server App Khusus Gambar IV-4. Arsitektur sistem IECS berdasarkan fungsionalitas 45 Terdapat dua bagian besar komponen IECS, yaitu bagian server dan bagian klien. Di server terdapat dua subsistem yaitu FlowEngine dan UnitServer. FlowEngine berguna untuk manajemen diagram proses dan mengatur pergerakan state proses berdasarkan diagram proses. UnitServer berguna untuk manajemen staf, tugas dan form tugas serta mengatur pelaksaan tugas staf. Pada bagian klien terdapat lima bagian yaitu Simulator, Studio, SettingPanel, Workspace dan Dashboard. Simulator digunakan oleh desainer proses untuk membangun diagram proses. Studio digunakan oleh developer untuk membangun form tugas dan menulis kode skrip khusus. SettingPanel dipergunakan oleh administrator untuk mengatur staf dari suatu unit. Sedangkan Workspace dipergunakan oleh staf untuk memulai sebuah proses dan menjalankan tugas dengan mempergunakan form yang sesuai dengan tugas tersebut. IV.5 Model Kelas Analisis Sistem yang dibangun memiliki beberapa subsistem yang saling berkerja sama untuk menjalankan sistem IECS secara keseluruhan. Pembagian subsistem IECS terlihat pada gambar IV-5. «subsystem» Simulator «subsystem» Studio «subsystem» Workspace «subsystem» FlowEngine «subsystem» SettingPanel «subsystem» Dashboard Gambar IV-5. Subsistem IECS 46 «subsystem» Unitserver Fungsi dari masing-masing subsistem dideskripsikan pada table IV-5. Tabel IV-5. Fungsi subsistem AutoFlow No 1 Nama Simulator Deskripsi Subsistem yang menyediakan fasilitas pembuatan diagram proses. 2 Studio Subsistem yang menyediakan fasilitas pembuatan form tugas dan penulisan kode skrip khusus. 3 Setting Panel Subsistem yang menyediakan fasilitas manjemen staf untuk unit tertentu. 4 Workspace Subsistem yang menyediakan fasilitas untuk mendaftarkan proses yang dapat dijalankan oleh user, mendaftarkan tugas yang telah ditugaskan ke staf dan menjalankan form sesuai tugas yang dipilih staf. 5 Dashboard Subsistem yang menyediakan fasilitas statistik performansi pelaksanaan proses. 6 FlowEngine Subsistem yang menyediakan manajemen diagram proses, menciptakan instan proses dan mengatur jalannya instan proses sesuai dengan diagram proses. 7 UnitServer Subsistem yang menyediakan manajeman staf, tugas dan form tugas unit serta mengatur penunjukan staf yang akan melaksanakan tugas dalam pelaksanaan proses. Kelas diagram analisis dari subsistem studio terlihat pada gambar IV-6. 47 Gambar IV-6. Diagram kelas subsistem studio Kelas FlowControl dan EditorControl dapat diturunkan lebih lanjut dan kelaskelas turunan tersebut dapat dipanggil secara dinamik dengan mempergunakan maknisme plugin seperti yang dijelaskan dalam Lampiran G. Model kelas analisis selangkapnya dapat dilihat di Lampiran B. Realisasi case membuat diagram proses terlihat pada gambar IV-7. 48 MainForm Desainer Proses FlowCanvas FlowControl Unit Table AppServer RemoteResourceMgr open Desainer proses membuka aplikasi flow designer create create addUnit Desainer proses menentukan struktur organisasi create addTask Desainer proses menentukan tugas unit addTable create Desainer proses menentukan data yang terlibat addApp Desainer proses menentukan aplikasi yang terlibat create addComponent Desainer proses menentukan urutan tugas proses create save Desainer proses menyimpan diagram getFlowXML getFlowXML addProgram Gambar IV-7 Realisasi case membuat diagram proses Realisasi use case selengkapnya dapat dilihat di Lampiran C. IV.6 Identifikasi Paket Analisis Hasil identifikasi terhadap paket dan kelas dari model kelas analisis diatas, maka dapat diidentifikasikan paket analisis seperti yang dideskripsikan pada tabel IV-6. Tabel IV-6. Identifikasi Paket Analisis No Nama Paket Kelas Jenis Kelas 1. RemoteResourceMgr Boundary RemoteProcessMgr Boundary AutoFlow RemoteDashboardMgr Boundary 2. Simulator SimulatorForm 49 Boundary 3. 4. SettingPanel Controls ControlPanelForm Boundary UnitForm Boundary FlowCanvas Boundary FormCanvas Boundary FlowControl Boundary EditorControl Boundary Unit Entity Table Entity AppServer Entity 5. Studio StudioForm Boundary 6. Workspace WorkspaceForm Boundary StartForm Boundary TaskForm Boundary ResourceManager Control ProcessManager Control DashboardManager Control Program Entity Process Entity FlowControl Entity Unit Entity Table Entity AppServer Entity ProcessValue Entity ProcessHistory Entity ProcessAttachment Entity UnitManager Control UnitServerManager Control Unit Entity Task Entity Form Entity Staff Entity StaffTask Entity 7. 7. WorkflowEngine UnitServer 50 IV.7 Perancangan Antar Muka Dalam sistem yang dibangun terdapat beberapa tampilan antar muka yang dipergunakan untuk menjalankan fungsionalitas yang diimplementasi. Contoh rancangan antar muka terlihat di gambar IV-8 dan IV-9. Menu Struktur Organisasi Comp 1 Flow Component List Comp 2 Data Comp 3 Name1 Properties List Name2 Aplikasi Khusus Name3 Flow Process Gambar IV-8. Rancangan antar muka untuk membuat diagram proses Menu Area Disain Form Comp 1 Form Component List Comp 2 Comp 3 Name1 Properties List Name2 Name3 Gambar IV-9. Rancangan antar muka untuk membangun form tugas Rancangan antar muka selengkapnya dapat dilihat di Lampiran D. 51