Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras,...

56
PENERAPAN SERVICE ORIENTED ARCHITECTURE MENGGUNAKAN WEB SERVICE PADA SISTEM INFORMASI AKADEMIK GHOFFAR SETIAWAN G64103058 DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR 2007

Transcript of Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras,...

Page 1: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

PENERAPAN SERVICE ORIENTED ARCHITECTURE

MENGGUNAKAN WEB SERVICE

PADA SISTEM INFORMASI AKADEMIK

GHOFFAR SETIAWAN

G64103058

DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

INSTITUT PERTANIAN BOGOR

2007

Page 2: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

PENERAPAN SERVICE ORIENTED ARCHITECTURE

MENGGUNAKAN WEB SERVICE

PADA SISTEM INFORMASI AKADEMIK

Skripsi

Sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer

pada Fakultas Matematika dan Ilmu Pengetahuan Alam

Institut Pertanian Bogor

Oleh:

GHOFFAR SETIAWAN

G64103058

DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

INSTITUT PERTANIAN BOGOR

2007

Page 3: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

ABSTRAK

GHOFFAR SETIAWAN. Penerapan Service Oriented Architecture Menggunakan Web Service

Pada Sistem Informasi Akademik. Dibimbing oleh WISNU ANANTA KUSUMA dan RINDANG

KARYADIN.

Web service merupakan salah satu bentuk implementasi Service Oriented Architecture yang

dapat memberikan banyak keuntungan bagi sebuah organisasi. Sebuah aplikasi berbasis teknologi

Web service dapat menyediakan data maupun fungsi tertentu bagi aplikasi lain meskipun berbeda

sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk

membangunnya. Keunggulan web service ini dapat dimanfaatkan untuk memecahkan

permasalahan integrasi sistem informasi dalam suatu organisasi. Institusi pendidikan merupakan

sebuah organisasi yang di dalamnya terdapat beberapa entitas/unit yang memiliki fungsi khusus. Setiap unit dapat memiliki satu atau lebih sistem perangkat lunak yang berbeda-beda. Dalam

menjalankan suatu fungsi tertentu, suatu perangkat lunak bisa jadi memerlukan data atau fungsi

dari unit lain.

Penelitian ini adalah menerapkan konsep Service Oriented Architecture pada pengembangan

sistem informasi akademik sehingga memiliki interoperability lintas platform dan mampu

berkomunikasi dengan unit lain dengan menyediakan service yang dapat diakses oleh aplikasi lain.

Publikasi service dilakukan pada Universal Description Discovery and Integration server yang

menyimpan informasi alamat untuk proses service binding. Strategi tertentu perlu digunakan untuk

mengembalikan data dalam web service tergantung pada data yang dikembalikan. Pembuatan web

service harus memastikan SOAP dapat dibentuk dari objek yang menjadi nilai kembalian bagi web

service client. Pada penelitian ini, penggunaan array suatu tipe data struktur digunakan untuk

mengganti objek yang tidak dapat dikonversi menjadi SOAP.

Kata kunci: Web Service, SOAP, UDDI Server

Page 4: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

Judul : Penerapan Service Oriented Architecture Menggunakan Web Service Pada Sistem Informasi Akademik

Nama : Ghoffar Setiawan NRP : G64103058

Menyetujui:

Pembimbing I

Wisnu Ananta Kusuma, ST., MT. NIP 132312485

Pembimbing II

Rindang Karyadin, ST., M.Kom.

NIP 132311915

Mengetahui:

Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam Institut Pertanian Bogor

Prof. Dr. Ir. Yonny Koesmaryono, MS NIP 131473999

Tanggal lulus:

Page 5: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

RIWAYAT HIDUP Penulis dilahirkan di Magetan pada tanggal 17 Maret 1986 sebagai anak pertama dari

pasangan Supriyadi dan Sri Sudiyem. Penulis menyelesaikan pendidikan menengah atas di

SMUN 1 Sooko dan lulus pada tahun 2003. Pada tahun yang sama penulis diterima sebagai

mahasiswa Departemen Ilmu Komputer, Fakultas Matematika dan Ilmu Pengetahuan Alam,

Institut Pertanian Bogor. Penulis diterima melalui jalur Seleksi Penerimaan Mahasiswa Baru (SPMB). Penulis pernah melaksanakan praktek lapang selama dua bulan di PT. Superintending

Company of Indonesia.

Page 6: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

PRAKATA

Alhamdulillahirabbil ‘alamin, puji syukur penulis panjatkan ke hadirat Allah Subhanahu

wata’ala atas segala rahmat dan karunia-Nya sehingga tugas akhir dengan judul Penerapan Service

Oriented Architecture Menggunakan Web Service Pada Sistem Informasi Akademik. Shalawat

dan salam selalu untuk junjungan Nabi Muhammad Shallalahu ‘alaihi wasallam beserta keluarga

dan sahabat.

Penulis menyadari bahwa selesainya penulisan karya ilmiah ini tidak terlepas dari pihak-

pihak yang telah banyak membantu. Oleh karena itu penulis ingin mengucapkan terima kasih

kepada Ayah, Ibu, serta adikku yang selalu mengalirkan do’a, kasih sayang, dan dukungannya

kepada penulis. Bapak Wisnu Ananta Kusuma, ST, MT. selaku pembimbing I, Bapak Rindang

Karyadin, ST, M.Kom. selaku pembimbing II yang telah memberikan bimbingan, wawasan, saran, dan kritik yang membangun bagi penulis selama pengerjaan tugas akhir ini.

Ungkapan terima kasih penulis sampaikan kepada teman seangkatan ilkomerz 40 yang

banyak membantu penulis menyelesaikan karya ilmiah ini baik secara langsung maupun tidak.

Semangat penulis terpompa kembali tatkala mendapat sms motivasi dari Meynar dan Arum.

Bantuan Risha “Mamen” Raditya kepada penulis mendapatkan komponen server dan diskusi

membahas web service turut memperkaya wawasan penulis. Motivasi, inspirasi, dan informasi

juga diperoleh penulis melalui rekan-rekan Sarang Rayap dan Bboys yaitu Nono, Dona,Pis, Pandi,

Mulyadi, Nacha, Gemma, Iqbal,Ryan. Pengujian interoperability dapat dilakukan dengan mudah

berkat web server portable dari Dhanny. Bantuan Nurhadi “Cunning” Susanto memperoleh sistem

operasi versi server, database server, dan konfigurasi jaringan dalam mesin virtual sangat

meringankan beban penulis dalam implementasi sistem. Bantuan Albert, Meynar dan Rachman

SJMP menjelang sidang sangat memperingan penulis dalam menempuh sidang.

Penulis bersyukur memiliki rekan-rekan di Himasurya Plus yang turut memotivasi penulis

sehingga tidak mudah patah semangat menyelesaikan karya ilmiah ini. Kepedulian Sika, Anggi,

Dian, Mada, dan Ratna turut membesarkan hati penulis. Semangat juang penulis raih juga dari adik

kelas SMU asal penulis, Yuki, Doddy, Putri, dan Triyanto.

Sebagaimana manusia yang tidak luput dari kesalahan. Penulis menyadari bahwa karya

ilmiah ini jauh dari sempurna. Penulis berharap semoga tulisan ini dapat bermanfaat khususnya di

bidang software engineering di lingkungan Departemen Ilmu Komputer Institut Pertanian Bogor.

Jazakumullahu khairan katsiira.

Bogor, Agustus 2007

Ghoffar Setiawan

Page 7: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

vii

DAFTAR ISI

Halaman

DAFTAR GAMBAR ................................................................................................................viii

DAFTAR LAMPIRAN .............................................................................................................viii

PENDAHULUAN

Latar Belakang ........................................................................................................................ 1 Tujuan .................................................................................................................................... 1 Ruang Lingkup ....................................................................................................................... 1 Manfaat .................................................................................................................................. 1

TINJAUAN PUSTAKA Service Oriented Architecture .................................................................................................. 1 Web Service ............................................................................................................................ 2 Komponen Web Service .......................................................................................................... 2 Protokol Web Service .............................................................................................................. 2 Arsitektur Model Aplikasi Three-Tier ...................................................................................... 3 Linear Sequential Model ......................................................................................................... 3

METODE PENELITIAN Analisis Kebutuhan ................................................................................................................. 4 Perancangan ............................................................................................................................ 4 Implementasi .......................................................................................................................... 4 Pengujian ................................................................................................................................ 4 Lingkungan Implementasi ....................................................................................................... 4

HASIL DAN PEMBAHASAN Analisis kebutuhan .................................................................................................................. 4

Identifikasi Pengguna Sistem .............................................................................................. 4 Kebutuhan Fungsional ........................................................................................................ 4 Pemodelan Kebutuhan Fungsional ...................................................................................... 5 Kebutuhan Antarmuka dan Komunikasi .............................................................................. 7

Perancangan ............................................................................................................................ 7 Arsitektur Model Aplikasi................................................................................................... 7 Perancangan Basis Data ...................................................................................................... 7 Identifikasi Kelas Domain................................................................................................... 9 Identifikasi Kelas Aplikasi dan Interaksinya ...................................................................... 11 Perancangan Arsitektur Fisik ............................................................................................ 11 Perancangan Antarmuka ................................................................................................... 12 Penanganan Kesalahan...................................................................................................... 13

Implementasi ........................................................................................................................ 13 Typed Dataset................................................................................................................... 13 Pembuatan Pustaka Kelas ................................................................................................. 13 Pembuatan Komponen Service .......................................................................................... 13 Penanganan Kegagalan SOAP Serialization oleh Interface ICollection .............................. 13 Publikasi Web Service ....................................................................................................... 14 Pembuatan Lapisan User Interface .................................................................................... 14 Penanganan Kesalahan...................................................................................................... 14 Keunggulan Sistem .......................................................................................................... 14

Pengujian .............................................................................................................................. 15

KESIMPULAN DAN SARAN

Kesimpulan ........................................................................................................................... 15 Saran .................................................................................................................................... 15

DAFTAR PUSTAKA ................................................................................................................ 15

Page 8: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

viii

DAFTAR GAMBAR

Halaman

1 Pola SOA. ................................................................................................................................. 2 2 Pemetaan pola SOA dalam web service. .................................................................................... 2 3 Model aplikasi three-tier. .......................................................................................................... 3 4 Metode linear sequential model................................................................................................. 3 5 Diagram use case subsistem manajemen data mahasiswa. .......................................................... 5 6 Diagram use case subsistem manajemen data akademik. ............................................................ 6 7 Diagram use case subsistem manajemen data wisuda. ................................................................ 6 8 Diagram use case subsistem pembayaran SPP. .......................................................................... 7 9 Entity relationship diagram. ...................................................................................................... 9 10 Diagram kelas domain. .......................................................................................................... 10 11 Deployment diagram. ............................................................................................................ 12 12 Perancangan antarmuka operator client . .............................................................................. 13 13 Perancangan halaman web. ................................................................................................... 13 14 Contoh penggunaan try…catch…finally. ............................................................................... 14 15 Pengujian interoperability. .................................................................................................... 15

DAFTAR LAMPIRAN

Halaman

1 Table-oriented steps (TOS) ..................................................................................................... 17 2 Skema tabel ............................................................................................................................ 36 3 Kelas MataKuliah dan turunannya ........................................................................................... 37 4 Kelas SPP dan turunannya....................................................................................................... 37 5 Kelas DokCetak dan turunannya ............................................................................................. 38 6 Kelas Daftar dan turunannya ................................................................................................... 38 7 Kelas DaftarDomain dan turunannya ....................................................................................... 38 8 Kelas DaftarHasilPencarian dan turunannya ............................................................................ 39 9 Kelas Pencari dan turunannya ................................................................................................. 39 10 Sequence diagram ................................................................................................................. 40

Page 9: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

1

PENDAHULUAN

Latar Belakang

Service oriented architecture (SOA)

merupakan sebuah konsep arsitektur

perangkat lunak yang mendefinisikan

penggunaan layanan untuk memenuhi

kebutuhan suatu perangkat lunak. Layanan ini

tidak hanya dapat digunakan oleh sistem yang

menaunginya namun dapat digunakan juga

oleh sistem lain yang berbeda, sehingga

integrasi antarsistem dapat dicapai. Dibandingkan dengan arsitektur berorientasi

objek terdistribusi, SOA lebih sesuai untuk

mengintegrasikan sistem yang heterogen dan

lebih mudah beradaptasi dengan perubahan

lingkungan.

Web service merupakan salah satu bentuk

implementasi SOA yang dapat memberikan

banyak keuntungan bagi sebuah organisasi.

Web service menggunakan seperangkat

teknologi standar terbuka yang

memungkinkan sebuah aplikasi dapat berkomunikasi dan menyediakan layanan bagi

aplikasi lain melalui jaringan komputer. Web

service memberikan kemudahan upaya

integrasi antarsistem dengan latar belakang

teknologi yang heterogen. Sebuah aplikasi

berbasis teknologi Web service dapat

menyediakan data maupun fungsi tertentu

bagi aplikasi lain meskipun berbeda sistem

operasi, perangkat keras, maupun bahasa

pemrograman yang digunakan untuk

membangunnya.

Keunggulan web service ini dapat

dimanfaatkan untuk memecahkan

permasalahan integrasi sistem informasi

dalam suatu organisasi, misalnya institusi

pendidikan tinggi. Institusi pendidikan

merupakan sebuah organisasi yang di

dalamnya terdapat beberapa entitas/unit yang

memiliki fungsi khusus. Setiap unit dapat

memiliki satu atau lebih sistem perangkat

lunak yang berbeda-beda. Dalam menjalankan

suatu fungsi tertentu, suatu perangkat lunak

bisa jadi memerlukan data atau fungsi dari unit lain. Sebagai contoh untuk menjalankan

salah satu proses bisnis atau layanan yang

dimiliki oleh unit administrasi akademik, yaitu

pengelolaan wisuda, diperlukan data bebas

pustaka dari perpustakaan dan bebas SPP dari

bank. Tanpa SOA, data ini diperoleh secara

manual sehingga menjadi tidak efisien.

Dengan adanya web service, data dari

perpustakaan dan bank dapat diperoleh

dengan mudah.

Penelitian ini menerapkan service oriented

architecture menggunakan Web service pada

pengembangan sistem informasi akademik.

Sistem ini memiliki fungsi utama mengelola

data mahasiswa dan akademik. Penerapan

SOA memungkinkan sistem informasi

akademik dapat diintegrasikan dengan sistem

di perpustakaan dan bank untuk

menyelesaikan proses bisnis tertentu.

Tujuan

Tujuan penelitian ini adalah menerapkan konsep SOA pada pengembangan sistem

informasi akademik sehingga memiliki

interoperability lintas platform dan mampu

berkomunikasi dengan unit lain dengan

menyediakan service yang dapat diakses oleh

aplikasi lain.

Ruang Lingkup

Ruang lingkup penelitian ini adalah:

1 Sistem informasi akademik mengelola

data terbatas pada mahasiswa dan yang

terkait langsung dengan perkuliahan.

2 Uji interoperability dengan sistem

eksternal dilakukan dengan

mengembangkan sistem yang dapat

mengkonsumsi service dengan

lingkungan pengembangan yang

berbeda, tidak dengan memanfaatkan

sistem yang ada pada entitas/unit yang

bersangkutan.

Manfaat

Sistem yang dikembangkan dalam

penelitian ini diharapkan memberikan gambaran pengembangan sistem informasi

akademik di lingkungan institusi pendidikan.

Penggunaan web service memungkinkan

sistem mampu menyediakan service bagi

sistem lain. Penyediaan service dapat

meningkatan efisiensi pengembangan sistem

dalam lingkungan yang heterogen yaitu multi

entitas dan multi platform. Sistem ini bersifat

interoperability lintas platform sehingga

memudahkan proses integrasi sistem secara

keseluruhan.

TINJAUAN PUSTAKA

Service Oriented Architecture

Service oriented architecture atau SOA

didefinisikan sebagai kebijakan, praktek,

kerangka kerja yang memungkinkan

fungsionalitas aplikasi disediakan dan

dikonsumsi sebagai seperangkat service pada

sebuah unit yang sesuai dengan kebutuhan

Page 10: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

2

service customer. Service dapat digunakan,

dipulikasikan, ditemukan, dan diabstraksikan

menggunakan standar antarmuka (Sprott &

Wilkes 2004).

SOA menggambarkan pola yang

membantu sebuah aplikasi client terhubung

pada sebuah service. Pola tersebut menyajikan

mekanisme yang digunakan untuk

menggambarkan sebuah service,

mempublikasikan dan menemukan service,

dan berkomunikasi dengan service. Pola tersebut digambarkan pada Gambar 1 (Manes

2003).

Service

Broker

Service

Provider

Service

Service

Consumer

Client

Service

Contract

Find Register

Bind

Gambar 1 Pola SOA.

Web Service

Sebuah web service adalah sebuah sistem

perangkat lunak yang didesain untuk

mendukung interaksi machine-to-machine

yang dapat beroperasi melalui suatu jaringan.

Web service memiliki sebuah antarmuka yang

digambarkan dalam sebuah format yang dapat

diproses mesin (khususnya WSDL). Sistem lain berinteraksi dengan Web service dengan

cara yang ditentukan oleh deskripsi Web

service. Deskripsi ini menggunakan pesan

SOAP yang disampaikan menggunakan HTTP

dengan sebuah serialisasi XML yang dengan

berhubungan standar web lain yang. (W3C

2004)

Komponen Web Service

Komponen utama arsitektur web service

adalah service provider, service registry, dan

service requester. Sebuah service adalah

sebuah aplikasi yang tersedia untuk digunakan

oleh requester yang sesuai prasyarat awal

yang ditetapkan oleh service provider. Web

service dapat disusun dengan berbagai service

lain menjadi service atau aplikasi baru.

Berbagai service disebar pada suatu tempat pada web oleh service provider. Sebuah

service tertentu yang disebut registry

menyediakan dukungan untuk

mempublikasikan dan menemukan service.

Registry merupakan sebuah tempat

penyimpanan deskripsi service yang dapat

dicari dimana service provider

mempublikasikan service-nya. Sebuah bahasa

deskripsi digunakan untuk mendeskripsikan

web service. Fungsionalitas dan kebijakan

akses dicatat dan diterbitkan dengan sebuah

registry. Berbagai service digunakan melalui

sebuah jaringan dengan menggunakan

informasi yang disimpan dalam deskripsi

service (Menasce & Almeida 2002).

Web service bersandar pada pola SOA.

Pemetaan pola SOA dalam web service

beserta komponennya dapat dilihat pada

Gambar 2 (Manes 2003).

UDDI

Service

Provider

Service

Service

Consumer

Client

WSDL

Find Register

Bind

(SOAP)

Gambar 2 Pemetaan pola SOA dalam web service.

Protokol Web Service

Web service berdasarkan pada sekumpulan

protokol kunci. Protokol-protokol ini

merupakan blok bangunan web service

platform. Protokol utama adalah (Turban et all 2005):

XML

Extensible Markup Language membuat

web service lebih mudah bertukar data

antaraplikasi yang bervariasi dan untuk

mengesahkan dan menerjemahkan data

tersebut. Sebuah dokumen XML

menggambarkan sebuah web service dan

memasukkan detil informasi bagaimana

web service dapat dijalankan.

SOAP

Simple Object Access Protocol adalah

seperangkat aturan yang memfasilitasi

XML untuk melakukan pertukaran data

antaraplikasi jaringan. SOAP

mendefinisikan sebuah standar umum

yang mengijinkan berbagai web service

yang berbeda untuk saling beroperasi.

SOAP merupakan spesifikasi platform

independent yang mendefinisikan

Page 11: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

3

bagaimana pesan dapat dikirimkan di

antara dua sistem perangkat lunak

melalui penggunaan XML. Pesan

tersebut khususnya mengikuti pola

request/response.

WSDL

Web Service Description Language

digunakan untuk menciptakan dokumen

XML yang menggambarkan tugas yang

dilakukan oleh web service. WSDL mendefinisikan antarmuka yang dari web

service.

UDDI

Universal Description Discovery and

Integration memungkinkan untuk

pembuatan direktori publik atau privat.

Direktori web service ini dapat dicari.

UDDI merupakan registry dari deskripsi

web service.

Protokol Keamanan

Standar keamanan yang masih dalam

tahap pengembangan adalah Security Assertion Markup Language (SAML) .

Standar ini digunakan untuk autentikasi

dan otorisasi. Standar keamanan lainnya

adalah XML Signature, XML

Encryption, XKMS, dan XACML.

Arsitektur Model Aplikasi Three-Tier

Berbicara mengenai suatu aplikasi, ada

beberapa komponen yang terlibat di

dalamnya, yaitu user interface, business

service, dan data provider. Lapisan user

interface merupakan bagian aplikasi yang

berinteraksi dengan user. Lapisan ini

menampilkan semua data yang diperlukan

dengan menggunakan objek-objek window.

Lapisan ini menerima masukan dan

modifikasi user terhadap data dengan

menggunakan objek-objek window. Lapisan business service mengendalikan semua data

yang diakses dan meng-update data yang ada

dalam basis data. Lapisan ini biasanya dapat

digunakan oleh modul-modul lain dalam

aplikasi. Lapisan data provider bertanggung

jawab menyimpan data dan menyediakan data

yang akan diberikan ke lapisan user interface.

Arsitektur model aplikasi three-tier

memisahkan lapisan user interface, business

service, dan data provider dalam bagian yang

berbeda sebagaimana terlihat pada Gambar 3 (Hadiwinata 2003).

User

interface

Business

service

Data

provider

Gambar 3 Model aplikasi three-tier.

Linear Sequential Model

Pada metode Linear Sequential Model,

proses pengembangan sistem dibagi menjadi 4

tahap utama, yaitu tahap analisis, tahap

perancangan, tahap implementasi dan tahap

pengujian. Antara tahap yang satu dengan

tahap yang lain saling berhubungan. Pada saat

berada pada suatu tahap, dapat melanjutkan ke

tahap selanjutnya apabila tahap tersebut

dianggap selesai atau kembali ke tahap sebelumnya jika terdapat perubahan atau

penambahan proses baru. Tahapan metode

Linear Sequential Model dapat dilihat pada

Gambar 4 (Pressman 2001).

analysis testcodedesign

Gambar 4 Metode linear sequential model.

Tahap Analisis

Kegiatan pada tahap analisis adalah

melakukan analisis untuk menentukan kebutuhan (reqiurement) dalam proses

pengembangan sistem. Setelah diperoleh

kebutuhan dalam pembangunan suatu

sistem aplikasi, kemudian disusun

diagram konteks. Hasil dari tahap ini

adalah deskripsi umum sistem, analisis

kebutuhan, dan diagram konteks.

Tahap Perancangan

Kegiatan pada tahap perancangan adalah

menerjemahkan kebutuhan-kebutuhan

yang didefinisikan dalam tahapan analisis ke dalam bentuk model presentasi sistem

aplikasi. Pada tahap ini dirancang

arsitektur perangkat lunak, antarmuka,

input, proses dan output dalam

menggunakan aplikasi.

Tahap Implementasi

Kegiatan pada tahap implementasi adalah

mengimplementasikan rancangan yang

telah disusun pada tahap perancangan

menjadi instruksi-instruksi program.

Dalam tahap implementasi, antarmuka dibuat agar dapat dimengerti untuk

memudahkan pengguna dalam

menggunakan sistem ini.

Page 12: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

4

Tahap Pengujian

Hasil implementasi kemudian diuji dan

dievaluasi, selanjutnya pengujian

dibandingkan dengan hasil uji yang

diharapkan. Apabila tidak sesuai dengan

yang diharapkan akan dilakukan

perbaikan kemudian diuji kembali,

sampai memenuhi hasil yang diharapkan.

METODE PENELITIAN

Pengembangan sistem informasi akademik akan menerapkan SOA dengan

metode pengembangan linear sequential

model.

Analisis Kebutuhan

Tahap ini dilakukan untuk

mengidentifikasi kebutuhan sistem yang akan dikembangkan dan tipe pengguna sistem.

Kebutuhan meliputi kebutuhan fungsional dan

kebutuhan non fungsional. Kebutuhan

fungsional dimodelkan dengan pembuatan

diagram use case dan instrumen lain untuk

memudahkan pemahaman dalam tahap

selanjutnya. Kebutuhan sistem dipengaruhi

oleh tipe pengguna sistem.

Perancangan

Aktivitas dalam tahap perancangan

meliputi perancangan basis data yang

diwujudkan dengan pembuatan Entity Relationship Diagram (ERD). Pembuatan

diagram Unified Modelling Language (UML)

untuk pemodelan objek dalam sistem baik

objek yang berfungsi sebagai penyedia service

maupun eksekutor proses bisnis, serta

pemodelan arsitektur sistem.

Implementasi

Tahap ini dilakukan untuk menransformasi

model pada tahap perancangan menjadi kode-

kode yang bisa dieksekusi komputer untuk

setiap tier sistem. Untuk data provider, wujud implementasinya adalah kueri berbasis

pemrograman yang dapat dieksekusi oleh

DBMS. Untuk Business service, wujud

implementasinya adalah kumpulan kelas yang

saling bekerjasama untuk mencapai tujuan

tertentu. Kumpulan kelas tersebut digunakan

untuk pembuatan service. Untuk user

interface wujud implementasinya adalah

antarmuka yang berinteraksi langsung dengan

pengguna serta meminta service. Berbagai

service yang dihasilkan dipublikasikan ke server UDDI.

Pengujian

Tahap ini dilakukan dengan memeriksa

apakah semua service telah memenuhi

spesifikasi kebutuhan yang telah ditentukan

melalui antarmuka yang telah dibuat. Jika

sudah tidak ditemukan kesalahan pada seluruh

service, suatu perangkat lunak akan dibuat

untuk uji interoperability. Perangkat lunak ini

dibuat dengan lingkungan pengembangan

yang berbeda dan mampu mengonsumsi

service yang telah dibuat.

Lingkungan Implementasi

Lingkungan implementasi yang digunakan

adalah sebagai berikut:

Perangkat lunak: Microsoft Windows

Server 2003 SP 2, IIS Versi 6, Microsoft

SQL Server 2005, Microsoft Visual

Studio 2005, Microsoft Office Visio

2003, Crystal report 11, VMWare

Workstation 4.5.2, Microsoft Windows

XP SP2, WOS Portable 2 (PHP 5.1.6,

Apache 2, Mysql 5), Zend Studio 5, Mozilla Firefox 2.

Perangkat keras: Prosesor Intel Pentium

IV 2.8 GHz, RAM 1430 MB, harddisk 80

GB, keyboard, mouse, dan monitor.

HASIL DAN PEMBAHASAN

Analisis kebutuhan

Tahap analisis kebutuhan meliputi

identifikasi pengguna, membuat daftar

kebutuhan fungsional serta pemodelannya,

dan mengidentifikasi kebutuhan non

fungsional.

Identifikasi Pengguna Sistem

Pengguna sistem dikategorikan menjadi

tiga, yaitu mahasiswa, pegawai staf akademik

departemen, dan staf kantor Administrasi dan

Jaminan Mutu Pendidikan (AJMP). Setiap

kategori pengguna memiliki hak akses yang

berbeda terhadap fitur sistem. Setiap

pengguna sistem memiliki identitas pengenal

dan password yang unik dan disimpan dalam

basis data. Identitas pengenal dan password

digunakan tatkala akan memasuki sistem.

Kebutuhan Fungsional

Sistem yang dikembangkan harus mampu

melakukan operasi terhadap data dalam basis

data. Operasi meliputi penambahan,

penghapusan, pengubahan dan pencarian yang

biasa disingkat CRUD (Create, Read, Update,

Delete). Data yang dikelola meliputi data

Page 13: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

5

model kurikulum mayor-minor dan passing

out.

Untuk memudahkan proses administrasi,

sistem harus mampu membangkitkan

dokumen yang siap dicetak. Dokumen

memiliki format tetap namun isinya berbeda

sesuai parameter masukan dalam operasi serta

data yang dilibatkan.

Jika terdapat operasi yang menyebabkan

perubahan data dalam basis data, sistem harus

mencatat informasi yang bersangkutan dengan operasi tersebut dalam sebuah log file.

Kebutuhan fungsional sistem

selengkapnya adalah:

1 Menyimpan data KRS

2 Mengubah data KRS

3 Mencari data KRS

4 Menyimpan data mata kuliah

5 Mengubah data mata kuliah

6 Menghapus data mata kuliah

7 Mencari data mata kuliah

8 Mengelola data tugas akhir 9 Mencetak transkrip

10 Mencetak daftar kuliah

11 Mencetak KRS

12 Menyimpan data mahasiswa

13 Mengubah data mahasiswa

14 Menghapus data mahasiswa

15 Mencari data mahasiswa

16 Memeriksa kelengkapan syarat wisuda

17 Mengelola data SPP

18 Membaca data pembayaran SPP

19 Mencatat history/log sistem

20 Memeriksa validitas operator

21 Memeriksa validitas mahasiswa

Pemodelan Kebutuhan Fungsional

Pemodelan dilakukan untuk memudahkan

pemahaman dan mengomunikasikan tujuan

suatu kebutuhan serta pihak-pihak yang

terlibat. Pemodelan dilakukan dengan

pembuatan diagram use case yang

menggambarkan aktor beserta use case dalam

sistem. Aktor ialah segala sesuatu yang

berinteraksi secara langsung dengan sistem, baik manusia maupun non manusia. Dalam

penelitian ini, aktor meliputi mahasiswa, staf

administrasi akademik departemen, staf kantor

AJMP, sistem pengelolaan pembayaran SPP

di bank, dan sistem pencatatan peminjaman

dan pengembalian buku di perpustakaan.

Aktor manusia digambarkan sebagai garis-

garis dan lingkaran sedangkan aktor non

manusia digambarkan dengan kotak dengan

stereotype aktor.

Pemodelan sistem dibagi menjadi empat subsistem berdasarkan data yang dikelola.

Keempat subsistem tersebut adalah subsistem

manajemen data akademik, subsistem

manajemen data mahasiswa, subsistem

manajemen data wisuda, dan subsistem

manajemen data SPP. Pembagian sistem ke

dalam empat subsistem juga dapat

mempermudah pembacaan diagram use case.

Diagram Use case disajikan pada Gambar 5

hingga Gambar 8.

<<system>>

Sistem Informasi Kemahasiswaan

Operator pegawai AJMP

Staff administrasi

akademik

departemen

<<SubSystem>>

Manajemen Data

Mahasiswa

memeriksa

validitas operator

menyimpan data

mahasiswa

mengubah data

mahasiswa

menghapus data

mahasiswa

mencari data

mahasiswa

mencatat

history/log sistem

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<Include>>

<<include>>

Gambar 5 Diagram use case subsistem manajemen data mahasiswa.

Page 14: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

6

<<system>>

Sistem Informasi Kemahasiswaan

Operator pegawai AJMP

Staff administrasi

akademik

departemen

mencetak transkrip

nilai mahasiswa

mencetak daftar

kuliah

mencetak KRS

<<SubSystem>>

Manajemen Data

Akademik

mahasiswa

menyimpan data KRS

memeriksa

validitas mahasiswa

memeriksa

validitas operator

menyimpan data

mata kuliah

mengubah data mata

kuliah

menghapus data

mata kuliah

mencari data mata

kuliah

mencatat

history/log sistem

mengubah data KRS

mencari data KRS

Mengelola data

tugas akhir

Gambar 6 Diagram use case subsistem manajemen data akademik.

<<system>>

Sistem Informasi Kemahasiswaan

Operator pegawai AJMP<<aktor>>

Sistem pencatatan

peminjaman/

pengembalian buku

perpustakaan

<<aktor>>

Sistem manajemen

Transaksi keuangan

bank

<<SubSystem>>

Manajemen Data Wisuda

memeriksa

kelengkapan syarat wisuda

memeriksa

validitas operator<<include>>

Gambar 7 Diagram use case subsistem manajemen data wisuda.

Page 15: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

7

<<system>>

Sistem Informasi Kemahasiswaan

Operator pegawai AJMP

<<aktor>>

Sistem manajemen

Transaksi keuangan

bank

<<SubSystem>>

Pembayaran SPP

memeriksa

validitas operator

membaca data

pembayaran SPP

mencatat

history/log sistem

Mengelola data SPP <<include>>

<<include>>

Gambar 8 Diagram use case subsistem pembayaran SPP.

Setiap Use case memiliki skenario utama

dan beberapa skenario alternatif. Diagram Use case tidak mendeskripsikan secara jelas jalur

skenario, jadi diperlukan instrumen tersendiri

untuk menjelaskannya. Untuk

mendeskripsikan jalur skenario setiap Use

case digunakan table-oriented steps yang

terdapat pada Lampiran 1.

Kebutuhan Antarmuka dan Komunikasi

Sistem memerlukan antamuka berbasis

web yang bisa diakses melalui web browser

dan antarmuka operator client yang diakses

melalui komputer khususnya yang terhubung dalam intranet. Sistem melibatkan lebih dari

satu komputer yang saling terhubung melalui

jaringan baik intranet maupun internet.

Komunikasi antarkomputer dilakukan dengan

protokol TCP/IP yang mampu melewatkan

data berbasis teks.

Perancangan

Penerapan SOA pada sistem

memungkinkan sistem menyediakan fungsi

yang dapat dipakai oleh sistem lain. Fungsi

sistem harus mengakses basis data dan

mengakomodasi proses bisnis tertentu. Dengan demikian sistem melibatkan banyak

pengguna dan melibatkan jaringan komputer.

Antarmuka sistem melibatkan antarmuka

berbasis web untuk diakses melalui internet

dan operator client untuk lingkungan intranet.

Arsitektur Model Aplikasi

Sistem dibagi menjadi tiga lapisan, yaitu

user interface, business service dan data

provider. Lapisan User interface berinteraksi

langsung dengan pengguna yaitu mahasiswa,

staf administrasi akademik departemen, dan staf kantor AJMP. Pengguna memberikan

masukan, menerima data dan

memodifikasinya melalui lapisan ini. Wujud nyata lapisan user interface adalah halaman

web dan antarmuka operator client. Lapisan

business service menyediakan service bagi

lapisan user interface dan mengolah data yang

diambil dari lapisan data provider. Lapisan

business service terdiri atas kumpulan

komponen yang mengeksekusi fungsi tertentu

dan menghasilkan dokumen WSDL yang

mendeskripsikan service. Lapisan data

provider melibatkan DBMS untuk

memanipulasi, menyimpan, dan menyediakan data. Ketiga proses tersebut menggunakan

Stored procedure dan berbagai kelas.

Perancangan Basis Data

Entitas yang diperlukan adalah pengguna

sistem, pegawai, fakultas, departemen,

mahasiswa, mata kuliah, KRS, SPP, dosen,

tugas akhir. Entitas Mahasiswa memiliki

atribut agama dan jalur masuk yang nilainya

spesifik. Karena agama dan jalur masuk hanya

memiliki beberapa kemungkinan dan masing-

masing kemungkinan dapat memiliki atribut

tambahan yang spesifik, maka agama dan jalur masuk dijadikan entitas. Data mata

kuliah yang terlibat dalam sistem meliputi

mata kuliah mayor-minor dan passing out.

Mata kuliah mayor-minor memiliki atribut

yang berbeda dengan mata kuliah passing out,

sehingga muncul entitas mata kuliah mayor-

minor dan mata kuliah passing out. SPP yang

dikelola juga memilki tipe mayor-minor dan

passing out. Atribut SPP mayor-minor lebih

banyak daripada SPP passing out sehingga

muncul entitas SPP mayor-minor.

Seorang mahasiswa dapat mengambil

banyak mata kuliah dan satu mata kuliah

Page 16: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

8

dapat diambil banyak mahasiswa, sehingga

keterhubungan “mengambil” antar mahasiswa

dan mata kuliah adalah N:N. Keterhubungan

antara mahasiswa dan mata kuliah merupakan

konsekuensi dari keterhubungan menentukan

antara mahasiswa dan KRS, sehingga

keterhubungan antara mahasiswa dan mata

kuliah merupakan realisasi penentuan KRS

dengan bentuk nyata adalah kuliah. Dengan

demikian keterhubungan antara mahasiswa

dan mata kuliah lebih tepat memiliki nama “kuliah”. Entitas tugas akhir dan dosen juga

memiliki keterhubungan N:N. Seorang dosen

dapat membimbing banyak tugas akhir dan

satu tugas akhir dapat dibimbing oleh dua atau

lebih dosen. Nama keterhubungan adalah

“bimbingan tugas akhir”.

Mahasiswa dan pegawai bisa menjadi

pengguna sistem. Setiap mahasiswa dan

pegawai memiliki identitas yang unik

sehingga entitas mahasiswa dan pegawai

memiliki keterhubungan 1:1 dengan entitas pengguna sistem dengan nama keterhubungan

“menjadi”. Mahasiswa memiliki 1 agama dan

diterima di universitas melalui satu jalur

penerimaan, sehingga entitas mahasiswa

memiliki keterhubungan 1:1 dengan entitas

agama dengan nama keterhubungan

“menganut” dan memiliki keterhubungan 1:1

dengan entitas jalur masuk dengan nama

keterhubungan “melalui”. Satu mahasiswa

diwajibkan menyelesaikan satu tugas akhir,

sehingga entitas mahasiswa memiliki keterhubungan 1:1 dengan entitas tugas akhir

dengan nama keterhubungan

“menyelesaikan”. Setiap KRS dapat disahkan

jika SPP telah dibayar, sehingga entitas KRS

memiliki keterhubungan 1:1 dengan entitas

SPP dengan nama keterhubungan

“membiayai”.

Satu mata kuliah mata passing out bisa

menjadi syarat bagi mata kuliah passing out

lainnya, dengan demikian entitas mata kuliah

memiliki keterhubungan 1:N dengan dirinya

sendiri dengn nama keterhubungan

“mensyaratkan”. Hal ini terjadi juga pada

entitas mata kuliah mayor minor. Satu fakultas

terdiri atas beberapa departemen dan satu

departemen hanya terdapat pada satu fakultas,

sehingga entitas fakultas memiliki

keterhubungan 1:N dengan entitas departemen

dengan nama keterhubungan “membawahi”.

Seorang mahasiswa hanya dapat memilih satu departemen dan satu departemen memiliki

banyak mahasiswa, sehingga entitas

mahasiswa memiliki keterhubungan 1:N

dengan entitas departemen dengan nama

keterhubungan “memilih”. Seorang

mahasiswa wajib membayar SPP setiap

semester dan satu SPP dibayar atas nama

hanya satu mahasiswa, dengan demikian

entitas mahasiswa memiliki keterhubungan

1:N dengan entitas SPP dengan nama

keterhubungan “membayar”. Seorang mahasiswa wajib menentukan KRS pada

setiap semester dan satu KRS hanya berlaku

untuk satu mahasiswa, sehingga entitas

mahasiswa memiliki keterhubungan 1:N

dengan KRS dengan nama keterhubungan

“menentukan”. Seorang dosen dapat

mengesahkan banyak KRS pada setiap

semester dan satu KRS hanya dapat disahkan

oleh satu dosen, sehingga entitas dosen

memiliki keterhubungan 1:N dengan KRS

dengan nama keterhubungan “menandatangani”.

Entitas memiliki lebih dari satu atribut.

Satu atau lebih atribut pada setiap entitas

menjadi primary key. Entitas dan primaty key

dimodelkan dengan ERD pada Gambar 9

sedangkan atribut entitas secara lengkap

terdapat Lampiran 2.

Page 17: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

9

Memilih

MahasiswaNim

KRS

MataKuliah

DepartemenFakultas

Dosen

SPP

TugasAkhir

JalurMasukIPB

SPPMayorMinor

Nip NamaDosen

KodeJalurMasukKodeFak KodeDept

KodeMK

KodeKRS

KodeTA

KodeKRSNim

KodeKRSNim

Membawahi

N

1

N1

Agama

KodeAgamaMenganut

N

1

Melalui

N

1

Menyelesaikan

1

1

Membayar

1N

Menentukan

1

N

Menandatangani

N

1

Membimbing

NN KodeTA

Nip

Membiayai1

1

Bertipe

1

1

MengikutiN N

KodeMKNim

Merealisasikan

N

1

PenggunaSistem

Menjadi

ID

1

1

Pegawai

KodePeg

1

Menjadi

1

KodeKRS

Mensyaratkan

1 N

MataKuliahPO

Mensyaratkan

1 N

MataKuliahMami

KodeMK

Bertipe

1

1

Bertipe

1

1

Wisuda

KodeSKL

Nim

Mengikuti

1

1

Gambar 9 Entity relationship diagram.

Identifikasi Kelas Domain

Kelas domain merupakan kelas stabil yang dapat digunakan kembali berdasarkan dunia

nyata dan merepresentasikan domain bisnis

tertentu. Kelas domain pada sistem informasi

akademik yaitu mata kuliah, SPP, mahasiswa,

dokumen cetak, tugas akhir, KRS, dan syarat

wisuda. Kelas domain digunakan pada lapisan

business service untuk melakukan fungsi

tertentu.

Selain kelas domain tersebut, diperlukan

kelas pendukung yang mendukung

terpenuhinya kebutuhan fungsional. Adanya

kebutuhan fungsional mencatat log operasi

yang mengubah data menyebabkan perlunya kelas pengguna, log dan penulis log. Sistem

harus mampu melakukan operasi pencarian

data yang setiap hasil yang ditemukan

diwujudkan dalam kelas domain. Operasi

tersebut dilakukan oleh kelas pencari. Setiap

kelas domain hasil pencarian dikumpulkan

pada suatu kelas tertentu. Kelas yang

menampung kelas domain ialah kelas daftar

yang merupakan kelas abstrak turunan kelas

CollectionBase dalam .Net Framework.

Seluruh kelas domain dimodelkan dalam

kelas diagram pada Gambar 10.

Page 18: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

10

+New()

+Mencetak()

+Pemohon[1] : Mahasiswa

+Pencetak[1] : Pengguna

+TanggalCetak[1] : Date

+WaktuCetak[1] : Date

+TahunAkademik[1] : String = 1000/1001

+Semester[1] : JenisSemester = ganjil

+TingkatStudi[1] : JenisTingkatStudi = TPB

+KodeTempatStudi[1] : String

+SudahTercetak[1] : Boolean

DokCetak

+New()

+KapanDiselenggarakan() : String

+IdentifikasiDepartemen() : String

+SimpanMataKuliah()

+UbahMataKuliah()

+HapusMataKuliah()

+Kode[1] : String

+Nama[1] : String

+JumlahSKS[1] : Byte

+SKSKuliah[1] : Byte

+SKSPraktikum[1] : Byte

+KodeMataKuliahSyarat[1] : String

+Deskripsi[1] : String

MataKuliah

+New()

+MemeriksaSyaratBebabStudiTerpenuhi(in CalonWisudawan : Mahasiswa) : Boolean

+YangHarusMemenuhi[1] : Mahasiswa

+SyaratBebanStudiTerpenuhi[1] : Boolean

+SyaratSemuaSudahLunas[1] : Boolean

+SyaratSudahBebasPustaka[1] : Boolean

SyaratWisuda

+New()

-Operasi[1] : JenisOperasi

-TargetOperasi[1] : String

-WaktuOperasi[1] : Date

-PemakaiSistem[1] : Pengguna

Log

+Tulis(in Log : Log)

+TentukanPosisiFile(in Posisi : String)

+Posisi[1] : String

PenulisLog

+New()

+DapatkanDaftarPilihanMataKuliah(in KodeKRS : String) : DaftarPilihanMataKuliah

+HitungJumlahSKS(in MataKuliahYangDiambil : DaftarPilihanMataKuliah) : Byte

+SimpanKRS()

+UbahKRS()

+HapusKRS()

+KodeKRS[1] : String

+TahunAkademik[1] : String = 1000/1001

-SemesterKe[1] : JenisSemester

+JumlahSKS[1] : Byte

+JumlahSKSKumulatif[1] : Byte

+NIPDosen[1] : String

+NamaDosen[1] : String

+Pengambil[1] : Mahasiswa

+MataKuliahYangDiambil[1] : DaftarPilihanMataKuliah

KRS

+New()

+SimpanTugasAkhir()

+UbahTugasAkhir()

+HapusTugasAkhir()

+Kode[1] : String

+Judul[1] : String

+Peneliti[1] : Mahasiswa

+NamaPembimbing[1..*] : String

+NrpPembimbing[1..*] : String

TugasAkhir

+New()

+SimpanMahasiswa()

+UbahMahasiswa()

+HapusMahasiswa()

+DapatkanNamaDepartemen() : String

+DapatkanKodeFakultas() : String

+DapatkanNamaFakultas() : String

+Nim[1] : String

+Nama[1] : String

+TanggalLahir[1] : Date

+AsalSMU[1] : String

+Kelamin[1] : JenisKelamin

+Agama[1] : Agama

+AlamatAsal[1] : String

+AlamatLokal[1] : String

+TahunMasuk[1] : Integer

+StatusStudi[1] : StatusStudi

+StatusPernikahan[1] : StatusPernikahan

+JalurMasukIPB[1] : JalusMasukIPB

+KotaAsal[1] : String

+KodeDepartemen[1] : String

Mahasiswa

+New()

-Username[1] : String

-Level[1] : LevelPengguna

-Bagian[1] : String

-AlamatIP[1] : String

-Antarmuka[1] : JenisAntarmuka

-WaktuLogin[1] : Date

Pengguna

1

1 memohon4

1

1

1

1

mencari info

1

1

mengelola

1

1

memenuhi

1

1

mencatat

1

1

mencatat

11

menulis

11

mengelola

1

1

mengambil

1

1

mengelola

1

1

menyelesaikan

1

1

mengelola

1

1

melunasi

+New()

+CariBerdasarkan(in KriteriaPencarian : String, in YangDicari : String) : DaftarHasilPencarian

+ParameterPencarian[1] : String

+KriteriaPencarian[1] : String

Pencari

+New()

+TambahItem()

+ItemSelanjutnya()

+ItemSebelumnya()

+HapusItem()

+HitungJumlahItem() : Integer

+Item[1] : String

Daftar

1

1

memakai1

1

1

1

memeriksa

1

1

memeriksa

+New()

+HitungTotalBiayaSPP() : Integer

+UbahDataSPP()

+SimpanDataSPP()

+HapusDataSPP()

+Pembayar[1] : Mahasiswa

+UntukPembayaran[1] : KRS

+BatasWaktuPembayaran[1] : Date

+TanggalPembayaran[1] : Date

+NilaiPembayaran[1] : Integer

+SudahLunas[1] : Boolean

+TotalBiayaSPP[1] : Integer

+Keterangan[1] : String

+BPMK[1] : Integer

+BPMP[1] : Integer

+BPIF[1] : Integer

+Status[1] : StatusSPP

SPP

Gambar 10 Diagram kelas domain.

Kelas domain mata kuliah memiliki dua

turun yaitu kelas mata kuliah passing out dan

mata kuliah mayor-minor. Hal ini karena

sistem melibatkan data mata kuliah passing

out dan mata kuliah mayor minor yang

memiliki atribut dan fungsi yang berbeda.

Dengan alasan yang sama, kelas domain SPP juga memiliki dua turunan yaitu kelas SPP

passing out dan kelas SPP mayor minor.

Pemodelan kelas domain mata kuliah pada

Lampiran 3 sedangkan kelas domain SPP

pada Lampiran 4.

Kelas domain dokumen cetak merupakan

kelas abstrak. Kelas ini memiliki turunan yang

menyediakan informasi yang akan dicetak.

Kebutuhan fungsional sistem di antaranya

ialah mencetak KRS, daftar kuliah, dan

transkrip nilai. Berbagai kelas yang digunakan

untuk memenuhi kebutuhan fungsional tersebut adalah kelas turunan kelas domain

dokumen cetak yang dimodelkan dengan

diagram pada Lampiran 5.

Kelas daftar memiliki dua turunan.

Pertama ialah kelas daftar domain yang

Page 19: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

11

berfungsi untuk mengumpulkan kelas domain

dan kedua ialah kelas daftar hasil pencarian

yang berfungsi mengumpulkan berbagai kelas

yang terbentuk dari hasil pencarian. Kelas

daftar beserta kedua turunannya dimodelkan

pada Lampiran 6.

Kelas daftar domain dan kelas daftar hasil

pencarian diturunkan lagi sesuai untuk

memenuhi kebutuhan fungsional. Sebagai

contoh, kebutuhan fungsional mencetak

transkrip nilai memerlukan kelas yang memiliki properti yang bertipe nilai

mahasiswa. Kelas ini adalah kelas daftar nilai

yang merupakan turunan dari kelas daftar

domain. Kelas daftar domain beserta

turunannya dimodelkan dalam Lampiran 7.

Contoh lainnya, kebutuhan fungsional

mencari data mahasiswa memerlukan kelas

yang menampung kelas mahasiswa yang

terbentuk dari hasil pencarian data, kelas ini

adalah kelas daftar hasil pencarian mahasiswa

dan merupakan turunan kelas daftar hasil pencarian. Kelas daftar hasil pencarian beserta

turunannya domodelkan pada Lampiran 8.

Kelas pencari berfungsi memenuhi

kebutuhan fungsional pencarian data,

sehingga kelas pencari diturunkan sesuai

dengan data yang dicari. Sebagai contoh,

kebutuhan fungsional mencari mata kuliah

melibatkan kelas pencari mata kuliah yang

merupakan turunan kelas pencari. Kelas

pencari beserta turunannya dimodelkan pada

Lampiran 9.

Identifikasi Kelas Aplikasi dan

Interaksinya

Kelas aplikasi merupakan semua kelas

terdapat pada sistem baik pada lapisan user

interface, business service, maupun data

provider. Kelas aplikasi dari ketiga lapiasan

saling berinteraksi untuk menyelesaikan satu

use case tertentu. Sebagai contoh pada use

case mencari data mahasiswa. Kelas aplikasi

pada lapisan data provider berfungsi

memanggil stored procedure dan menampung

hasil eksekusinya. Kelas aplikasi ini kemudian memberikan datanya kepada kelas aplikasi

pada lapisan business service untuk

menginisiasi kelas domain yang sesuai. Ketika

pemrosesan data telah terpenuhi pada lapisan

business service, langkah selanjutnya adalah

menampilkan hasil melalui kelas pada lapisan

user interface.

Kelas aplikasi dibagi menjadi tiga

golongan, yaitu kelas controller, kelas view,

dan kelas boundary. Kelas controller adalah

kelas yang mengelola interaksi antara

pengguna dan kelas domain dalam aplikasi

atau sistem. Controller mengetahui kapan

meminta domain kelas menjalankan aplikasi.

Controller kelas biasanya ditambahkan untuk

setiap use case. Fungsi utama controller

adalah meyakinkan pengguna berinteraksi

dengan sistem sesuai definisi pada use case.

Kelas view memiliki fungsi utama mengelola

antamuka pengguna yang membatasi

pengguna dengan sistem. Setiap kelas view mengetahui bagaimana menampilkan kelas

domain dengan tampilan yang spesifik. Kelas

boundary berinteraksi dengan sistem lain,

basis data, dan piranti eksternal dengan sistem

yang dibuat, sebagai contoh, sebuah kelas

boundary digunakan untuk memisahkan

sistem yang dibuat dari basis data. Jika objek

apapun dalam aplikasi memerlukan data dari

basis data, objek ini meminta kelas boundary

untuk mengambil data dari basis data. Dengan

demikian jika basis data berubah, hanya kerja internal dalam kelas boundary yang harus

disesuaikan.

Ketiga golongan kelas aplikasi memiliki

ciri khusus pada namanya. Kelas controller

memiliki nama dengan akhiran manager,

sebagai contoh KRSManager dan

MahasiswaManager. Kelas view memiliki

nama dengan awalan UI, sebagai contoh

UISPPPO dan UIMahasiswa. Kelas boundary

yang memiliki nama dengan awalan

DBAccessor, sebagai contoh DBAccessorUntukMataKuliah.

Interaksi kelas aplikasi pada untuk use

case melibatkan kelas service yang

merupakan turunan dari kelas dalam .Net

framework yaitu kelas WebService dalam

namespace System.Web.Services. Kelas

service mampu menggunakan secara langsung

objek-objek dalam .Net Framework untuk

mengekspos XML Web Service. Interaksi

kelas aplikasi dimodelkan dengan sequence

diagram pada Lampiran 10.

Perancangan Arsitektur Fisik

Antarmuka sistem meliputi antamuka

berbasis web dan operator client. Antarmuka

berbasis web diperuntukkan bagi pengguna

mahasiswa sedangkan operator client

diperuntukkan bagi pengguna staf administrasi

departemen dan staf kantor AJMP. Halaman

web sistem dapat diakses melalui komputer

yang terhubung dengan internet, sedangkan

antarmuka operator client hanya dapat

berfungsi pada komputer dalam intranet.

Page 20: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

12

Terdapat tiga server yang digunakan dalam

sistem ,yaitu web server, application server,

dan database server. Web server berfungsi

menyediakan layanan antarmuka kepada

pengguna yang mengakses melalui internet.

Halaman-halaman web yang merupakan

lapisan user interface disimpan pada directory

dalam web server. Applicaton server berfungsi

menyediakan service yang dapat dikonsumsi

oleh halaman web pada web server maupun

antarmuka operator client. Komponen yang

mengeksekusi proses bisnis dan

mempublikasikan service terdapat dalam

application server. Dengan demikian

application server merupakan target operasi

publish, find dan bind terhadap service.

Application server dapat mengambil data pada

database server. Tempat penyimpanan semua

data adalah database server. Pemisahan server

menjadi tiga agar beban sistem tidak tertumpu

pada satu sumber daya dan memudahkan

pemeliharaan seperti pada Gambar 11.

Web Client

Browser support javascript

Web Server

Web Server IIS 6

.Net Framework 2.0

Operator Client

Sistem Operasi Windows XP SP2

.Net Framework 2.0

<<Executable>>

SimakOptUI.exe

<<File>>

Simak Web Site (ekstensi .aspx)

* 1

<<internet>>

Application Server

.Net Framework 2.0

<<File>>

Simak Web Service (ekstensi .asmx)

Database Server

Windows Server 2003 SP2

SQL Server 2005

<<File>>

Penyedia data web service (ekstensi .asmx)

.Net Framework 2.0

* 1

<<Lan>>

1

1

<<Lan>>

11

<<Lan>>

Web Server IIS 6

UDDI Server

Windows Server 2003 SP2

Windows Server 2003 SP2

Gambar 11 Deployment diagram.

Perancangan Antarmuka

Antarmuka operator client merupakan

aplikasi multiple document interface (MDI).

Aplikasi memiliki jendela utama yang dapat

menampung banyak jendela anak. Jendela

utama memiliki tombol navigasi untuk

menampilkan maupun menutup jendela anak. Satu jendela anak menampilkan domain data

tertentu beserta data domain lain sebagai

pelengkap. Sebagai contoh jendela anak

untuk data mahasiswa, SPP, KRS. Setiap

jendela anak memiliki tombol untuk

melakukan operasi terhadap data, seperti

pencarian, penghapusan, penambahan, dan

pengubahan data. Antarmuka sistem dalam

bentuk halaman web mengandung header,

menu, dan bagian untuk menampilkan data

secara tabular. Menu operasi antara

antarmuka operator client dan antarmuka web

berbeda karena disesuaikan dengan use case

bagi setiap pengguna. Sebelum pengguna

memasuki jendela atau halaman utama,

pengguna harus memberikan identitas dan

password pengguna. Antarmuka operator client digambarkan pada Gambar 12

sedangkan halaman web digambarkan pada

Gambar 13.

Page 21: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

13

Menu Utama

Menu pada jendela anak

Menu pada jendela anak

Jendela anakJendela anak

Gambar 12 Perancangan antarmuka operator client .

Header

Menu operasi

Tempat menampilkan hasil

operasi

Gambar 13 Perancangan halaman web.

Penanganan Kesalahan

Kesalahan atau error dapat terjadi pada lapisan data provider, business service,

maupun user interface. Kesalahan yang

muncul pada lapisan data provider seringkali

disebabkan oleh interaksi yang tidak tepat

antara aplikasi dengan basis data, sebagai

contoh aplikasi mengakses database server

yang tidak sedang berjalan. Kesalahan pada

lapisan user interface sering muncul saat kelas

pada lapisan user interface melakukan proses

binding terhadap service. Kelas pada lapisan

data provider harus memiliki mekanisme

penanganan error tatkala berinteraksi dengan basis data dan kelas pada lapisan user

interface harus memiliki mekanisme

penanganan error saat binding service.

Implementasi

Pada tahap implentasi, hasil yang didapat

pada tahap perancangan diwujudkan melalui

pembuatan kelas dengan barisan kode yang

dapat dieksekusi oleh .Net Framework. Kelas

pada lapisan data provider, business service,

dan user interface dibuat melalui project yang

berbeda dalam Visual Studio.Net namun dalam satu solution. Pemisahan project

berdasarkan perbedaan lapisan memberi

kemudahan dalam perawatan sistem, seperti

upaya update fitur maupun pengubahan layout

antarmuka.

Typed Dataset

Dataset berisi tabel-tabel data yang

menyimpan data yang digunakan dalam

aplikasi secara sementara. Data dalam basis

data dapat dimuat dalam dataset sehingga data

tersedia bagi aplikasi dalam memori lokal.

Aplikasi dapat bekerja dengan data dalam

dataset sekalipun koneksi dengan basis data

terputus. Pembuatan typed dataset dapat

menyimpan informasi basis data yang

digunakan, seperti tabel, kolom, relasi,dan

stored procedure. Dataset termasuk lapisan

data provider dan berbagai kelas dalam

lapisan tersebut yang menggunakannya secara

langsung.

Pembuatan Pustaka Kelas

Pembuatan pustaka kelas dapat

meningkatkan cohesion dalam aplikasi. Kelas

pada lapisan data provider dan business

service serta tipe data enumeration dibuat

dalam satu project dan dikompilasi bersama

menjadi sebuah file pustaka kelas. Pustaka

kelas ini digunakan untuk mengeksekusi

proses bisnis yang diinginkan, seperti

mengubah data mahasiswa dan mencetak

transkrip nilai.

Pembuatan Komponen Service

Komponen service berfungsi

menghasilkan web service sehingga

fungsionalitas pada sistem dapat diakses oleh

lapisan user interface sistem maupun lain.

Pembuatan komponen service dilakukan dalam project tersendiri dan memiliki

referensi pada pustaka kelas sebab pustaka

kelas merupakan komponen yang

mengeksekusi proses bisnis. Seluruh web

service dibuat dalam satu komponen service

untuk meminimalkan ketergantungan

antarkomponen dalam aplikasi. Setiap

pembuatan web service dalam komponen

service dilakukan dengan pembuatan web

method.

Penanganan Kegagalan SOAP Serialization

oleh Interface ICollection

Setiap data hasil eksekusi suatu proses

bisnis akan dikonversi oleh komponen service

menjadi dokumen SOAP yang dapat

dieksekusi oleh sistem atau mesin lain. Data

hasil eksekusi dapat diberikan kepada web

service client dengan melewatkan suatu objek

dalam web method. Web service dapat

menghasilkan data tunggal maupun tidak,

namun permasalahan muncul tatkala web

method harus melewatkan objek yang

merupakan turunan kelas CollectionBase yang menggunakan interface ICollection.

Komponen service dalam .Net Framework

hanya dapat menghasilkan SOAP dari objek

Page 22: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

14

yang tidak menjadi turunan kelas

CollectionBase.

Untuk memecahkan masalah tersebut, web

method yang mengembalikan banyak data

tidak melewatkan objek turunan kelas

CollectionBase namun array yang berisi tipe

data struktur. Struktur didefinisikan menurut

data yang dieksekusi dan diinisialisasi dalam

controller kelas. Sebagai contoh, jika web

service harus mengembalikan banyak data

mahasiswa, maka web method akan mengembalikan array StrukMahasiswa yang

diinisialisasi oleh kelas MahasiswaManager.

Publikasi Web Service

Web service harus dipublikasikan sehingga

dapat ditemukembalikan oleh subsistem atau entitas di luar sistem. Temukembali web

service merupakan langkah awal untuk proses

binding. Publikasi web service dilakukan

melalui UDDI Server. Informasi yang harus

diberikan sebagai masukan UDDI server

meliputi service provider, contact

information, dan access point yang merupakan

alamat URL tempat web service berada.

Bagian service provider berisi informasi

yang terkait organisasi atau lembaga yang

mempublikasikan service, misal nama

organisasi dan kategori bidang usaha. Bagian contact information berisi informasi bagi web

service client untuk menghubungi pihak yang

mempublikasikan web service, misal alamat

dan nomor telepon. Alamat URL pada bagian

Access point menunjuk pada direktori dimana

dokumen WSDL disimpan. Alamat URL

memungkinkan WSDL dapat dilihat

langsung web service client melalui web

browser.

Pembuatan Lapisan User Interface

Pembuatan antarmuka pengguna meliputi

project untuk antarmuka operator client dan

web site. Kedua project memiliki referensi

kepada web service sesuai access point yang ditunjukkan UDDI server. Pembuatan

antarmuka operator client dilakukan dengan

membuat beberapa kelas turunan

System.Windows.Forms.Form dalam .Net

Framework. Satu kelas ditentukan sebagai

parent window yang dapat menampung kelas

lain sebagai child window. Pembuatan

antarmuka berbasis web dilakukan dengan

membuat beberapa kelas turunan

System.Web.UI.Page dalam .Net Framework.

Kelas yang dibuat dalam kedua project menginisialisasi komponen-komponen visual

yang telah ada dalam .Net Framework sesuai

perancangan antarmuka.

Penanganan Kesalahan

Dalam .Net Framework terdapat

pernyataan digunakan untuk menangkap berbagai kelas berfungsi menunjukkan

eksepsi. Pernyataan tersebut adalah

Try…Catch…Finally. Pernyataan ini dipakai

untuk menangkap eksepsi saat berbagai kelas

dalam lapisan data provider berusaha bekerja

dengan basis data dan berbagai kelas dalam

lapisan user interface berusaha

menginisialiasasi web service. Gambar 14

adalah contoh potongan kode yang

menunjukkan penggunaan pernyataan

Try…Catch…Finally dalam suatu kelas untuk menangkap eksepsi yang muncul pada

service binding.

Dim SimakServ As SimakIpbService.Service = New SimakIpbService.Service

Try

If SimakServ.PeriksaKelengkapanSyaratWisuda(Me.TextBox1.Text) = True Then

Me.lblStatus.Text = "Status : Syarat Wisuda telah Terpernuhi"

Else

Me.lblStatus.Text = "..." + ControlChars.NewLine + "..."

End If

Catch ex As Exception

MsgBox("Server mati", MsgBoxStyle.Information, "Peringatan")

End Try

Gambar 14 Contoh penggunaan try…catch…finally.

Keunggulan Sistem

Sistem menyediakan fungsionalitasnya

dalam bentuk service yang dapat digunakan sistem lain. Sistem juga dapat menggunakan

service yang telah disediakan oleh sistem

lain. Hal ini menunjukkan sistem memiliki

kemampuan interoperability sekaligus dapat diintegrasikan dengan sistem lain. Contoh

Page 23: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

15

pemakaian service sistem informasi akademik

adalah ketika diperlukan pemeriksaan seorang

mahasiswa apakah telah memenuhi syarat

wisuda. Sistem di perpustakaan dapat

mengonsumsi service yang memberikan data

mahasiswa untuk pemeriksaan syarat bebas

pustaka. Jika mahasiswa dinyatakan bebas

pustaka, bukti elektronik dapat diberikan

kepada sistem informasi akademik dalam

bentuk service. Hal ini lebih handal dan cepat

daripada pemrosesan secara manual.

Pengujian

Pengujian sistem dibagi menjadi dua, yaitu

pengujian fungsionalitas web service dan

pengujian interoperability. Pengujian

fungsionalitas web service dilakukan dengan metode black box melalui antarmuka operator

client dan web site. Pengujian

interoperability dilakukan dengan pembuatan

web service lain dengan lingkungan

pengembangan yang berbeda, yaitu PHP dan

web server Apache untuk dikonsumsi oleh

web service sistem informasi akademik seperti

pada Gambar 15.

Sistem Untuk Uji Introperability

Windows XP SP2

Apache 2

MySql 5

PHP 5

Simak Server

Windows Server 2003

SQL Server 2005

IIS 6

service

Gambar 15 Pengujian interoperability.

KESIMPULAN DAN SARAN

Kesimpulan

SOA dapat diterapkan dalam sistem

informasi akademik. Fungsionalitas sistem disajikan dalam bentuk service yang dapat

dikonsumsi sistem lain. Web service sistem

juga dapat mengonsumsi web service dari

sistem lain. Hal ini mengindikasikan

interoperability telah tercapai.

Strategi tertentu perlu digunakan untuk

mengembalikan data dalam web service

tergantung pada data yang dikembalikan.

Tidak semua objek yang dihasilkan dari

lingkungan pengembangan dapat dikonversi

menjadi SOAP yang merupakan protokol standar pertukaran data. Salah satu strategi

yang bisa ditempuh adalah mengembalikan

array dari struktur yang berisi data objek yang

tidak dapat dikonversi.

Saran

Sistem yang telah dikembangkan telah

memenuhi kemampuan interoperability yang

menjadi dasar upaya integrasi sistem. Pada

penelitian selanjutnya integrasi sistem

informasi akademik dengan sistem lain dalam

satu lingkungan universitas dapat dilakukan

untuk meningkatkan efisiensi dan integritas

data dan untuk mewujudkan proses bisnis

yang lebih komprehensif.

Penerapan protokol keamanan web service

pada sistem informasi akademik dapat

menjadi topik penelitian dengan

memanfaatkan hasil penelitian ini. Salah satu

penelitian yang dapat dilakukan adalah penerapan Security Assertion Markup

Language (SAML) pada sistem informasi

akademik dengan memperhatikan kebutuhan

service berbagai unit/entitas dalam institusi

pendidikan.

DAFTAR PUSTAKA

Hadiwinata, Mario. 2003. XML Web Service

dengan Visual Basic.Net. Jakarta: Elex

Media Komputindo.

Koolwaij, et al. 2002. The Promise of Web

Service an Analysis. https://doc.telin.nl/dscgi/ds.py/Get/File-

27842 [7 November 2006]

Manes, A.T. 2003. Web Services A Manager’s

Guide. USA: Addison-Wesley.

Menasce DA, Almeida VAF. 2002. Capacity

Planning for Web Service Metrics,

Models, and Methods. Upper Saddle

River New Jersey: Prentice Hall PTR.

Pressman, R.S. 2001. Software Engineering:

A Practitioner’s Approach. Fifth

Edition. New York,USA: McGraw Hill.

Sprott D, Wilkes L. 2004. Understanding

Service Oriented Architecture. 10:17.

[Microsoft Architect Journals].

http://www.architecturejournal.net/200

4/issue1/pdf/journal1_english.pdf

[7 November 2006]

Turban, et al. 2005. Introduction to

Information Technology. USA: John

Wiley & Sons, Inc.

[W3C] World Wide Web Consortium. 2004.

Web Service Architecture

http://www.w3.org/TR/ws-arch/ [15 Juli 2006]

Page 24: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

LAMPIRAN

Page 25: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

17

Lampiran 1 Table-oriented steps (TOS)

TOS untuk use case menyimpan data KRS

Use case name : menyimpan data KRS

Description : use case ini memasukkan data KRS baru mahasiswa pada awal semester.

Main Course of events : muncul data KRS baru dalam database

Precondition : aktor baik operator pegawai AJMP atau staff administrasi akademik

departemenberhasil masuk sistem dan berhadapan dengan jendela utama

aplikasi.

Successful postcondition : aktor berhadapan dengan jendela utama aplikasi

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. use case ini dimulai dengan menjalankan step 1 use case memeriksa validitas operator

2. memilih menu menyimpan data KRS 3. menampilkan jendela form pengisian

KRS

4. memberikan masukan data KRS 5. memasukkan KRS ke dalam database

6. menampilkan pesan data KRS berhasil

disimpan

7. menjalankan step 1 use case mencatat

histori/log sistem

8. use case ini berakhir dan aktor berhadapan

dengan jendela utama aplikasi

Alternate Course # 1 : mata kuliah dalam KRS dimana syaratnya belum terpenuhi

Precondition : saat step 4, aktor memasukkan mata kuliah yang syartnya belum terpenuhi

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. memeriksa status mata kuliah berdasarkan

2. menampilkan pesan bahwa mata kuliah tidak

dapat diambil

3. use case berlanjut pada step 4

Alternate Course # 2 : aktor membatalkan menyimpan data KRS

Precondition : saat step 2 atau 4, aktor aktor memutuskan untuk tidak menyimpan data KRS

Postcondition : aktor berhadapan dengan jendela utama aplikasi dan tidak ada penambahan data

KRS

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. meminta membatalkan menyimpan data

KRS

2. menutup jendela anak dari menu menyimpan

data KRS

Page 26: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

18

Lanjutan Lampiran 1

TOS untuk use case mengubah data KRS

Use case name: mengubah data KRS

Description : use case ini mengubah item data KRS dalam database

Main Course of events : data KRS berubah

Precondition : aktor baik operator pegawai AJMP atau staff administrasi akademik

departemen berhasil masuk sistem dan berhadapan dengan jendela

utama aplikasi.

Successful postcondition : aktor berhadapan dengan jendela utama aplikasi

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. use case ini dimulai dengan menjalankan step 1

use case memeriksa validitas operator

2. memilih menu mengubah data KRS 3. meminta NIM, semester dan tahun ajaran

4. memberikan NIM dan semester 5. mencari data KRS

6. menampilkan data KRS

7. mengubah item data KRS 8. memeriksa status mata kuliah

9. menyimpan perubahan KRS

10. menampilkan pesan perubahan KRS

berhasil

11. menjalankan step 1 use case mencatat

histori/log sistem

12. use case ini berakhir dan aktor berhadapan

dengan jendela utama aplikasi

Alternate Course # 1 : syarat item mata kuliah baru belum terpenuhi

Precondition : saat step 7, aktor memasukkan mata kuliah yang syartnya belum terpenuhi

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. memeriksa status mata kuliah berdasarkan

2. menampilkan pesan bahwa mata kuliah tidak

dapat diambil

3. use case berlanjut pada step 7

Alternate Course # 2 : aktor membatalkan untuk menyimpan data KRS

Precondition : saat step 4 atau 7, aktor memutuskan untuk tidak mengubah data KRS

Postcondition : aktor berhadapan dengan jendela utama aplikasi

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. meminta membatalkan mengubah data KRS 2. menutup jendela anak dari menu mengubah

data KRS

Page 27: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

19

Lanjutan Lampiran 1

TOS untuk use case mencari data KRS Use case name : mencari data KRS

Description : use case ini mencari data KRS

Main Course of events : pencarian data KRS sukses

Precondition : aktor baik operator pegawai AJMP, staff administrasi akademik departemen

maupun mahasiswa berhasil masuk sistem dan berhadapan dengan jendela utama

aplikasi.

Successful postcondition : aktor berhadapan dengan data KRS yang dicari

operator pegawai AJMP / staff administrasi

akademik departemen/mahasiswa Sistem

1. use case ini dimulai dengan menjalankan step 1 use case memeriksa validitas

operator/mahasiswa

2. memilih menu mencari KRS 3. meminta kriteria dan parameter

pencarian

4. memberikan kriteria dan parameter pencarian 5. mencari data KRS dalam database

6. menampilkan hasil pencarian

7. use case berakhir

Alternate Course # 1 : aktor membatalkan untuk mencari data KRS

Precondition : saat step 4, aktor memutuskan untuk tidak mencari data KRS

Postcondition : aktor berhadapan dengan jendela utama aplikasi

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. meminta membatalkan mencari KRS 2. menutup jendela anak dari menu mencari

data KRS

Page 28: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

20

Lanjutan Lampiran 1

TOS untuk use case menyimpan data mata kuliah Use case name : menyimpan data mata kuliah

Description : use case ini memasukkan data mata kuliah

Main Course of events : muncul data mata kuliah baru dalam database

Precondition : aktor baik operator pegawai AJMP atau staff administrasi akademik

departemenberhasil masuk sistem dan berhadapan dengan jendela utama

aplikasi.

Successful postcondition : aktor berhadapan dengan jendela utama aplikasi

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. use case ini dimulai dengan menjalankan step 1

use case memeriksa validitas operator

2. memilih menu menyimpan data mata kuliah 3. menampilkan jendela form pengisian data mata kuliah

4. memberikan masukan data mata kuliah 5. memeriksa validitas masukan

6. memasukkan data mata kuliah ke dalam

database

7. menampilkan pesan data mata kuliah

berhasil disimpan

8. menjalankan step 1 use case mencatat

histori/log sistem

9. use case ini berakhir dan aktor berhadapan

dengan jendela utama aplikasi

Alternate Course # 1 : masukan tidak valid Precondition : saat step 4, aktor memasukkan nilai yang tidak valid

operator pegawai AJMP / staff

administrasi akademik departemen Sistem

1. menampilkan pesan bahwa masukan tertentu tidak valid

2. use case berlanjut pada step 3

Alternate Course # 2 : penambahan data gagal karena internal error database

Precondition : saat step 6, muncul internal error dalam database

Postcondition : aktor berhadapan dengan jendela utama aplikasi dan tidak ada penambahan data

KRS

operator pegawai AJMP / staff

administrasi akademik departemen Sistem

1. menampilkan pesan penambahan data gagal dan

deskripsi error

2. use case berlanjut pada step 3

Alternate Course # 3 : aktor membatalkan menyimpan data mata kuliah

Precondition : saat step 4, aktor memutuskan untuk tidak menyimpan data mata kuliah

Postcondition : aktor berhadapan dengan jendela utama aplikasi

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. meminta membatalkan menyimpan data

mata kuliah

2. menutup jendela anak dari menu menyimpan

data mata kuliah

Page 29: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

21

Lanjutan Lampiran 1

TOS untuk use case menghapus data mata kuliah Use case name: menghapus data mata kuliah

Description : use case ini menghapus data mata kuliah tertentu dalam database

Main Course of events : penghapusan data mata kuliah berhasil

Precondition : aktor baik operator pegawai AJMP atau staff administrasi akademik departemen

berhasil masuk sistem dan berhadapan dengan jendela utama aplikasi.

Successful postcondition : aktor berhadapan dengan jendela utama aplikasi

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. use case ini dimulai dengan menjalankan step 1

use case memeriksa validitas operator

2. memilih menu menghapus data mata kuliah 3. meminta kode mata kuliah

4. memberikan kode mata kuliah 5. mencari data mata kuliah

6. menampilkan data mata kuliah yang

ditemukan

7. meminta penghapusan 8. menghapus data mata kuliah

9. menjalankan step 1 use case mencatat

histori/log sistem

10. use case ini berakhir dan aktor berhadapan

dengan jendela utama aplikasi

Alternate Course # 1 : mata kuliah yang dihapus menjadi syarat mata kuliah lain

Precondition : saat step 8, sistem gagal menghapus mata kuliah

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. menampilkan mata kuliah yang bergantung

pada mata kuliah yang dihapus

2. merubah syarat mata kuliah pada mata

kuliah yang bergantung pada mata kuliah yang dihapus

3. use case berlanjut pada step 7

Alternate Course # 2 : aktor membatalkan untuk menghapus data mata kuliah

Precondition : saat step 4 atau 7, aktor memutuskan untuk tidak menghapus data mata kuliah

Postcondition : aktor berhadapan dengan jendela utama aplikasi

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. meminta membatalkan menghapus data mata

kuliah

2. menutup jendela anak dari menu menghapus

data mata kuliah

Page 30: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

22

Lanjutan Lampiran 1

TOS untuk use case mencari data mata kuliah Use case name: mencari data mata kuliah

Description : use case ini mencari data mata kuliah

Main Course of events : pencarian data mata kuliah sukses

Precondition : aktor baik operator pegawai AJMP atau staff administrasi akademik departemen

berhasil masuk sistem dan berhadapan dengan jendela utama aplikasi.

Successful postcondition : aktor berhadapan dengan data KRS yang dicari

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. use case ini dimulai dengan menjalankan step 1

use case memeriksa validitas operator

2. memilih menu mencari mata kuliah 3. meminta kriteria pencarian

4. memberikan kriteria pencarian 5. mencari data mata kuliah dalam

database

6. menampilkan hasil pencarian

7. use case berakhir

Alternate Course # 1 : aktor membatalkan untuk mencari data mata kuliah

Precondition : saat step 4, aktor memutuskan untuk tidak mencari data mata kuliah Postcondition : aktor berhadapan dengan jendela utama aplikasi

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. meminta membatalkan mencari mata kuliah 2. menutup jendela anak dari menu mencari

data mata kuliah

TOS untuk use case Use case name: membaca data pembayaran SPP

Description : use case ini memberikan data secara lengkap yang diperlukan untuk proses

pembayaran SPP pada sistem di bank

Main Course of events : pembacaan data berhasil

Precondition : aktor bisa mengakses layanan sistem informasi akademik

Successful postcondition : sistem menerima konfirmasi data telah diterima secara lengkap

Sistem manajemen

Transaksi keuangan bank Sistem

1. use case ini dimulai dengan permintaan

mengakses layanan sistem

2. meminta identitas mahasiswa

3. memberikan indentitas mahasiswa 4. memungut data untuk pembayaran SPP

5. menghitung beban SPP

6. mengirim nilai beban SPP dan data

tambahan yang sesuai

9. memberikan konfirmasi data telah diterima

10. use case ini berakhir

Page 31: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

23

Lanjutan Lampiran 1

TOS untuk use case mengubah data mata kuliah Use case name: mengubah data mata kuliah

Description : use case ini mengubah data mata kuliah dalam database

Main Course of events : data mata kuliah berubah

Precondition : aktor baik operator pegawai AJMP atau staff administrasi akademik departeme

berhasil masuk sistem dan berhadapan dengan jendela utama aplikasi.

Successful postcondition : aktor berhadapan dengan jendela utama aplikasi

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. use case ini dimulai dengan menjalankan

step 1 use case memeriksa validitas operator

2. memilih menu mengubah data mata kuliah 3. meminta kode mata kuliah

4. memberikan kode mata kuliah 5. mencari data mata kuliah

6. menampilkan data mata kuliah yang

ditemukan

7. mengubah item data mata kuliah 8. memeriksa nilai masukan berdasarkan

9. menyimpan perubahan mata kuliah

10. menampilkan pesan perubahan mata kuliah

berhasil

11. menjalankan step 1 use case mencatat

histori/log sistem

12. use case ini berakhir dan aktor berhadapan

dengan jendela utama aplikasi

Alternate Course # 1 : masukan tidak valid

Precondition : saat step 7, aktor memebri masukan tidak valid

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. menampilkan pesan bahwa masukan tertentu

tidak valid

1. use case berlanjut pada step 7

Alternate Course # 2 : aktor membatalkan untuk mengubah data mata kuliah

Precondition : saat step 4 atau 7, aktor memutuskan untuk tidak mengubah data mata kuliah

Postcondition : aktor berhadapan dengan jendela utama aplikasi

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. meminta membatalkan mengubah data mata

kuliah

2. menutup jendela anak dari menu mengubah

data mata kuliah

Page 32: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

24

Lanjutan Lampiran 1

TOS untuk use case mengelola data tugas akhir Use case name: mengelola data tugas akhir

Description : use case ini menambah, mengubah menghapus maupun sekedar melihat data

tugas akhir

Main Course of events : pengelolaan data tugas akhir berhasil

Precondition : aktor baik operator pegawai AJMP atau staff administrasi akademik departemen

berhasil masuk sistem dan berhadapan dengan jendela utama aplikasi

Successful postcondition : aktor menerima pesan proses pengelolaan data tugas akhir berhasil

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. use case ini dimulai dengan menjalankan step 1 use case memeriksa validitas operator

2. memilih menu mengelola data tugas akhir 3. meminta masukan sebagai parameter

4. memberikan masukan 5. melakukan operasi pengelolaan data

tugas akhir

6. jika operasi menyebabkan perubahan

data dalam database maka

menjalankan step 1 use case mencatat histori/log sistem

7. memberikan konfirmasi operasi telah

berhasil diselesaikan

8. use case ini berakhir

Alternate Course # 1 : aktor membatalkan mengelola data tugas akhir

Precondition : saat step 4, aktor aktor memutuskan untuk tidak mengelola data tugas akhir

Postcondition : aktor berhadapan dengan jendela utama aplikasi

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. meminta membatalkan mengelola data tugas

akhir

2. menutup jendela anak dari menu mengelola

data tugas akhir

Page 33: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

25

Lanjutan Lampiran 1

TOS untuk use case mencetak transkip nilai mahasiswa Use case name: mencetak transkip nilai mahasiswa

Description : use case ini mencetak daftar nilai mahasiswa pada semester tertentu atau

keseluruhan

Main Course of events : muncul hasil pencetakan (print out) daftar nilai

Precondition : aktor baik operator pegawai AJMP atau staff administrasi akademik departemen

berhasil masuk sistem dan berhadapan dengan jendela utama aplikasi.

Successful postcondition : aktor berhadapan dengan jendela utam aplikasi

operator pegawai AJMP / staff administrasi

akademik departemen/ mahasiswa Sistem

1. use case ini dimulai dengan menjalankan step 1

use case memeriksa validitas opertor

2. memilih menu mencetak transkip nilai mahasiswa 3. meminta NIM , tahun akademik, dan

semester

4. memberikan NIM, tahun akademik dan semester 5. mencari data nilai dalam database

6. menampilkan preview daftar nilai

7. meminta mencetak daftar nilai pada preview 8. mencetak daftar nilai

9. menampilkan pesan pencetakan nilai

berhasil

10. use case ini berakhir dan aktor berhadapan

dengan jendela utama aplikasi

Alternate Course # 1 : aktor membatalkan untuk mencetak transkip nilai

Precondition : saat step 4 atau 7, aktor aktor memutuskan untuk tidak mencetak transkip nilai

Postcondition : aktor berhadapan dengan jendela utama aplikasi dan tidak ada print out daftar

nilai

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. meminta membatalkan pencetakan 2. menutup jendela anak dari menu mencetak

transkip

Page 34: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

26

Lanjutan Lampiran 1

TOS untuk use case mencetak daftar kuliah Use case name: mencetak daftar kuliah

Description : use case ini mencetak informasi inti mata kuliah apa saja yang diambil pada

semester tertentu dan siapa saja yang mengikutinya.

Main Course of events : muncul hasil pencetakan (print out) daftar kuliah

Precondition : aktor baik operator pegawai AJMP atau staff administrasi akademik departemen

berhasil masuk sistem dan berhadapan dengan jendela utama aplikasi.

Successful postcondition : aktor berhadapan dengan jendela utama aplikasi

operator pegawai AJMP / staff administrasi

akademik departemen/ mahasiswa Sistem

1. use case ini dimulai dengan menjalankan step 1

use case memeriksa validitas opertor

2. memilih menu mencetak daftar kuliah 3. meminta tahun akademik, semester, kode departemen atau program studi

4. memberikan tahun akademik, semester, kode

departemen atau program studi

5. mencari data nilai dalam database

6. menampilkan preview daftar kuliah

7. meminta mencetak daftar kuliah pada preview 8. mencetak daftar nilai

9. menampilkan pesan pencetakan daftar

kuliah berhasil

10. use case ini berakhir dan aktor berhadapan

dengan jendela utama aplikasi

Alternate Course # 1 : aktor membatalkan untuk mencetak transkip nilai Precondition : saat step 4 atau 7, aktor aktor memutuskan untuk tidak mencetak daftar kuliah

Postcondition : aktor berhadapan dengan jendela utama aplikasi dan tidak ada print out daftar

kuliah

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. meminta membatalkan pencetakan daftar

kuliah

2. menutup jendela anak dari menu mencetak

daftar kuliah

Page 35: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

27

Lanjutan Lampiran 1

TOS untuk use case mencetak KRS Use case name: mencetak KRS

Description : use case ini mencetak daftar mata kuliah yang diambil seorang mahasiswa pada

semester tertentu.

Main Course of events : muncul hasil pencetakan (print out) KRS

Precondition : aktor baik operator pegawai AJMP atau staff administrasi akademik departemen

berhasil masuk sistem dan berhadapan dengan jendela utama aplikasi.

Successful postcondition : aktor berhadapan dengan jendela utama aplikasi

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. use case ini dimulai dengan menjalankan step 1 use case memeriksa validitas operator

2. memilih menu mencetak KRS 3. meminta NIM , tahun akademik, dan

semester

4. memberikan NIM dan semester 5. mencari data KRS dalam database

6. menampilkan preview KRS

7. meminta mencetak KRS pada preview 8. mencetak KRS

9. menampilkan pesan pencetakan daftar

kuliah berhasil

10. use case ini berakhir dan aktor berhadapan

dengan jendela utama aplikasi

Alternate Course # 1 : aktor membatalkan untuk mencetak transkip nilai

Precondition : saat step 4 atau 7, aktor aktor memutuskan untuk tidak mencetak daftar kuliah

Postcondition : aktor berhadapan dengan jendela utama aplikasi dan tidak ada print out KRS

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. meminta membatalkan pencetakan 2. menutup jendela anak dari menu mencetak

KRS

Page 36: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

28

Lanjutan Lampiran 1

TOS untuk use case menyimpan data mahasiswa Use case name: menyimpan data mahasiswa

Description : use case ini menyimpan data mahasiswa ke dalam database

Main Course of events : muncul baris baru dalam database yang mengandung data mahasiswa

Precondition : aktor baik operator pegawai AJMP atau staff administrasi akademik departemen

berhasil masuk sistem dan berhadapan dengan jendela utama aplikasi.

Successful postcondition : aktor berhadapan dengan jendela utama aplikasi

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. use case ini dimulai dengan menjalankan

step 1 use case memeriksa validitas operator

2. memilih menu penambahan data mahasiswa 3. menampilkan jendela form data mahasiswa

4. memberi masukan data mahasiswa yang

ingin disimpan

5. memeriksa validitas nilai masukan

6. memasukan data ke dalam database

7. menampilkan pesan penambahan data

berhasil

8. menjalankan step 1 use case mencatat

histori/log sistem

9. use case ini berakhir dan aktor berhadapan

dengan jendela utama aplikasi

Alternate Course # 1 : masukan tidak valid

Precondition : saat step 4, aktor memberi masukan yang tidak valid

operator pegawai AJMP / staff

administrasi akademik departemen Sistem

1. memeriksa validitas nilai masukan

2. menampilkan pesan masukan tertentu tidak valid

3. use case berlanjut pada step 3 main course

Alternate Course # 2 : penambahan data gagal karena internal error database

Precondition : saat step 6, muncul internal error dalam database

operator pegawai AJMP / staff

administrasi akademik departemen Sistem

1. menampilkan pesan penambahan data gagal dan

deskripsi error

2. use case berlanjut pada step 3 main course

Alternate Course # 3 : aktor membatalkan penambahan data mahasiswa

Precondition : saat step 3, 4 dan 5, aktor memutuskan untuk tidak menambah data mahasiswa

Postconditin : aktor tidak berhadapan dengan jendela form data mahasiswa

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. membatalkan penambahan data 2. menutup jendela form data mahasiswa

Page 37: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

29

Lanjutan Lampiran 1

TOS untuk use case mencari data mahasiswa Use case name: mencari data mahasiswa

Description : use case ini mencari data mahasiswa

Main Course of events : pencarian data mahasiswa sukses

Precondition : aktor baik operator pegawai AJMP atau staff administrasi akademik departemen

berhasil masuk sistem dan berhadapan dengan jendela utama aplikasi.

Successful postcondition : aktor berhadapan dengan data KRS yang dicari

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. use case ini dimulai dengan menjalankan step 1

use case memeriksa validitas operator

2. memilih menu mencari mahasiswa 3. meminta kriteria pencarian

4. memberikan kriteria pencarian 5. mencari data mahasiswa dalam

database

6. menampilkan hasil pencarian

7. use case berakhir

Alternate Course # 1 : aktor membatalkan untuk mencari data mahasiswa

Precondition : saat step 4, aktor memutuskan untuk tidak mencari data mahasiswa

Postcondition : aktor berhadapan dengan jendela utama aplikasi

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. meminta membatalkan mencari mahasiswa 2. menutup jendela anak dari menu mencari

data mahasiswa

Page 38: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

30

Lanjutan Lampiran 1

TOS untuk use case menghapus data mahasiswa Use case name: menghapus data mahasiswa

Description : use case ini menghapus data mahasiswa di dalam database

Main Course of events : penghapusan data mahasiswa berhasil

Precondition : aktor baik operator pegawai AJMP atau staff administrasi akademik departemen

berhasil masuk sistem dan berhadapan dengan jendela utama aplikasi.

Successful postcondition : aktor berhadapan dengan jendela utama aplikasi

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. use case ini dimulai dengan menjalankan

step 1 use case memeriksa validitas operator

2. memilih menu menghapus data mahasiswa 3. meminta NIM

4. memberikan NIM 5. mencari data mahasiswa

6. menampilkan data yang ditemukan

7. meminta penghapusan 8. menghapus data mahasiswa

9. menampilkan pesan data mahasiswa telah

dihapus

10. menjalankan step 1 use case mencatat

histori/log sistem

11. use case ini berakhir dan aktor berhadapan

dengan jendela utama aplikasi

Alternate Course # 1 : terdapat ketergantungan data lain terhadap data mahasiswa yang dihapus Precondition : saat step 8, penghapusan data gagal

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. menampilkan pesan data tidak dapat dihapus

dan data yang memiliki ketergantungngan

2. use case berlanjut pada step 4 main course

Alternate Course # 2 : aktor membatalkan menghapus data mahasiswa

Precondition : saat step 4 atau 7, aktor memutuskan untuk tidak menghapus data mahasiswa

Postcondition : aktor tidak berhadapan dengan jendela form data mahasiswa

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. membatalkan menghapus data mahasiswa 2. menutup jendela anak menu menghapus data

mahasiswa

Page 39: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

31

Lanjutan Lampiran 1

TOS untuk use case mengubah data mahasiswa Use case name: mengubah data mahasiswa

Description : use case ini mengubah data mahasiswa di dalam database

Main Course of events : perubahan data mahasiswa berhasil

Precondition : aktor baik operator pegawai AJMP atau staff administrasi akademik departemen

berhasil masuk sistem dan berhadapan dengan jendela utama aplikasi.

Successful postcondition : aktor berhadapan dengan jendela utama aplikasi

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. use case ini dimulai dengan menjalankan

step 1 use case memeriksa validitas operator

2. memilih menu mengubah data mahasiswa 3. meminta NIM

4. memberi NIM 5. mencari data mahasiswa dalam database

6. menampilkan hasil yang ditemukan

7. mengubah data

8. memeriksa validitas nilai masukan

9. menyimpan perubahan data

10. menampilkan perubahan data disimpan

11. menjalankan step 1 use case mencatat

histori/log sistem

12. use case ini berakhir dan aktor berhadapan

dengan jendela utama aplikasi

Alternate Course # 1 : masukan tidak valid

Precondition : saat step 7, aktor memberi masukan yang tidak valid

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. memeriksa validitas nilai masukan

2. menampilkan pesan masukan tertentu tidak

valid

3. use case berlanjut pada step 7 main course

Alternate Course # 2 : pengubahan data gagal karena internal error database

Precondition : saat step 9, muncul internal error dalam database

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. menampilkan pesan penambahan data gagal

dan deskripsi error

2. use case berlanjut pada step 7 main course

Alternate Course # 3 : aktor membatalkan penambahan data mahasiswa

Precondition : saat step 4 atau 7, aktor memutuskan untuk tidak mengubah data mahasiswa

Postconditin : aktor tidak berhadapan dengan jendela form data mahasiswa

operator pegawai AJMP / staff

administrasi akademik departemen Sistem

1. membatalkan mengubah data mahasiswa 2. menutup jendela anak menu mengubah data

mahasiswa

Page 40: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

32

Lanjutan Lampiran 1

TOS untuk use case memeriksa kelengkapan syarat wisuda Use case name: memeriksa kelengkapan syarat wisuda

Description : use case ini memeriksa apakah mahasiswa tertentu dapat diwisuda atau tidak

Base use case : mencetak Surat Keterangan Lulus (SKL)

Main Course of events : pemeriksaan syarat wisuda sukses

Precondition : aktor operator pegawai AJMP departemen berhasil masuk sistem dan berhadapan

dengan jendela utama aplikasi.

Successful postcondition : aktor menerima pesan bahwa syarat wisuda sudah lengkap atau

belum

operator pegawai AJMP sistem

Sistem

manajemen

Transaksi

keuangan bank

Sistem

pencatatan

peminjaman/pe

ngembalian

buku

perpustakaan

1. use case ini dimulai dengan

menjalankan step 1 use

case memeriksa validitas

operator

2. memilih menu memeriksa

syarat wisuda

3. meminta NIM

4. memberikan NIM 5. memeriksa beban

studi

6. meminta bukti pelunasan

tanggungan

pembayaran

7. memberi bukti

pembayaran

8. meminta bukti

bebas pustaka

9. memberi

bukti bebas

pustaka

10. menampilkan pesan

syarat wisuda

sudah/belum

lengkap

11. use case ini berakhir

Alternate Course # 1 : aktor membatalkan untuk memeriksa kelengkapan syarat wisuda

Precondition : saat step 4, aktor memutuskan untuk tidak memeriksa kelengkapan syarat wisuda

Postcondition : aktor berhadapan dengan jendela utama aplikasi

operator pegawai AJMP sistem

Sistem

manajemen

Transaksi

keuangan

bank

Sistem

pencatatan

peminjaman/pen

gembalian buku

perpustakaan

1. memutuskan membatalkan

memeriksa kelengkapan

syarat wisuda

2. menutup jendela anak

menu memeriksa

kelengkapan syarat

wisuda

Page 41: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

33

Lanjutan Lampiran 1

TOS untuk use case mencatat histori/log sistem Use case name: mencatat histori/log sistem

Description : use case ini mencatat operasi yang dilakukan aktor dalam sistem beserta informasi

tambahan yang terkait dengan operasi yang dieksekusi. Operasi aktor yang

dicatat adalah operasi data yang baik pembacaan, penambahan, perubahan,

dan penghapusan serta operasi yang menghasilkan keluaran tertentu seperti

mencetak KRS.

Base Use cases : 1. mencetak transkip nilai mahasiswa

2. mencetak daftar kuliah 3. mencetak KRS

4. mengelola data tugas akhir

5. menyimpan data KRS

6. mengubah data KRS

7. mencari data KRS

8. menyimpan data mata kuliah

9. mengubah data mata kuliah

10. menghapus data mata kuliah

11. mencari data mata kuliah

12. menyimpan data mahasiswa

13. mengubah data mahasiswa 14. menghapus data mahasiswa

15. mencari data mahasiswa

16. memeriksa kelengkapan syarat wisuda

17. mengelola data SPP

Main Course of events : operasi dan informasi tambahan tercatat dalam file log

Precondition : aktor baik operator pegawai AJMP, staff administrasi akademik departemen

maupun mahasiswa berhasil menjalankan operasi terhadap data dalam

database maupun operasi mencetak keluaran.

Successful postcondition : file log berisi operasi dan informasi tambahan aktual.

operator pegawai AJMP / staff administrasi

akademik departemen/ mahasiswa Sistem

1. use case ini dimulai ketika aktor telah berhasil

menjalankan operasi terhadap data dalam

database maupun operasi mencetak keluaran

2. mengidentifikasi operasi yang

dieksekusi

3. membaca informasi tambahan yang

terkait dengan operasi yang dilakukan

4. mencatat operasi dan informasi

tambahan kedalam file log

5. use case ini berakhir dan aktor dapat melakukan

operasi lain

Page 42: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

34

Lanjutan Lampiran 1

TOS untuk use case memeriksa validitas operator Use case name: memeriksa validitas operator

Description : use case ini mengijinkan aktor baik operator pegawai AJMP maupun staff

administrasi akademik departemen memasuki Sistem dan sehingga dapat

melakukan operasi-operasi yang tersedia.

Base Use cases : 1. mencetak transkip nilai mahasiswa

2. mencetak daftar kuliah

3. mencetak KRS

4. mengelola data tugas akhir 5. menyimpan data KRS

6. mengubah data KRS

7. mencari data KRS

8. menyimpan data mata kuliah

9. mengubah data mata kuliah

10. menghapus data mata kuliah

11. mencari data mata kuliah

12. menyimpan data mahasiswa

13. mengubah data mahasiswa

14. menghapus data mahasiswa

15. mencari data mahasiswa 16. memeriksa kelengkapan syarat wisuda

17. mengelola data SPP

Main Course of events : pemeriksaan validitas operator berhasil

Precondition : aktor baik operator pegawai AJMP maupun staff administrasi akademik

departemen menjalankan aplikasi dan berhadapan dengan jendela pertama

aplikasi.

Successful postcondition : aktor memasuki sistem dan berhadapan dengan jendela utama aplikasi.

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. use case ini dimulai ketika aktor

menjalankan aplikasi dan berhadapan

dengan jendela pertama aplikasi

2. meminta username dan password aktor

3. memberikan username dan password 4. memeriksa validitas masukan username dan

password berdasarkan data operator dalam

database

5. sistem menampilkan jendela/halaman utama

aplikasi

6. use case ini berakhir ketika aktor

berhadapan dengan jendela /halaman utama

aplikasi

Alternate Course # 1 : masukan username dan password salah

Precondition : saat step 3, aktor memberi masukan username dan password salah

operator pegawai AJMP / staff

administrasi akademik departemen Sistem

1. memeriksa validitas masukan username dan

password berdasarkan data operator dalam

database

2. menampilkan pesan username atau password

tidak valid/salah

3. use case berlanjut pada step 2 main course

Page 43: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

35

Lanjutan Lampiran 1

Alternate Course # 2 : aktor membatalkan memasuki sistem

Precondition : pada step 1,2,3, dan 4 aktor memutuskan untuk tidak memasuki system

Postcondition : tidak ada jendela alikasi yang dihadapi aktor

operator pegawai AJMP / staff administrasi akademik

departemen Sistem

1. aktor menutup aplikasi

TOS untuk use case memeriksa validitas mahasiswa

Use case name: memeriksa validitas mahasiswa

Description : use case ini mengijinkan aktor mahasiswa dapat memasuki Sistem dan sehingga

dapat melakukan operasi-operasi yang tersedia.

Base Use cases : 1. menyimpan data KRS

2. mencari data KRS

3. mencari data mata kuliah Main Course of events : pemeriksaan validitas mahasiswa berhasil

Precondition : aktor mahasiswa berhadapan dengan halaman login melalui web browser.

Successful postcondition : aktor memasuki sistem dan berhadapan dengan jendela utama aplikasi.

operator pegawai AJMP / staff administrasi

akademik departemen Sistem

1. use case ini dimulai ketika aktor mengakses

web browser dan menghadapi halaman login

aplikasi

2. meminta NIM dan password aktor

3. memberikan NIM dan password 4. memeriksa validitas masukan NIM dan password berdasarkan data operator dalam

database

5. sistem menampilkan jendela/halaman utama

aplikasi

6. use case ini berakhir ketika aktor

berhadapan dengan halaman utama aplikasi

Alternate Course # 1 : masukan NIM dan password salah

Precondition : saat step 3, aktor memberi masukan NIM dan password salah

operator pegawai AJMP / staff

administrasi akademik departemen Sistem

1. memeriksa validitas masukan NIM dan password

berdasarkan data operator dalam database

2. menampilkan pesan NIM atau password tidak

valid/salah

3. use case berlanjut pada step 2 main course

Alternate Course # 2 : aktor membatalkan memasuki sistem

Precondition : pada step 1,2,3, dan 4 aktor memutuskan untuk tidak memasuki system

Postcondition : tidak ada jendela alikasi yang dihadapi aktor

operator pegawai AJMP / staff administrasi akademik departemen Sistem

1. aktor menutup aplikasi

Page 44: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

36

Lampiran 2 Skema tabel

PenggunaSistem(ID, Username, Password, level)

Departemen (KodeDept, NamaDept, Kodefak, SandiDept)

Fakultas (KodeFak, NamaFak)

Pegawai (KodePeg, NamaPeg, TempatKerja)

JalurMasukIPB (KodeJalurMasuk, NamaJalurMasuk, Deskripsi)

MataKuliahMami (KodeMK, StatusBagiMayor, StatusBagiMinor, SebagaiSupportingCost,

HargaPerSKSKuliahMinor, HargaPerSKSKuliahMayor,

HargaPerSKSKuliahSC, HargaPerSKSPraktikumMinor,

HargaPerSKSPraktikumMayor, HargaPerSKSPraktikumSC, KodeMKSyarat)

Mahasiswa (Nim, NamaMahasiswa, TanggalLahir, Kelamin, AsalSMU, KodeAgama,

AlamatAsal, AlamatLokal, TahunMasuk, StatusStudi, StatusPernikahan,

kodeJalurMasuk, KotaAsal, KodeDept)

Mengikuti (Nim, KodeMK, KodeKRS, NilaiMutu, StatusKuliah, NilaiAngka)

MataKuliah (KodeMK, NamaMK, DeskripsiMK, SKS,SKSKuliah, SKSKPraktikum, SKSKuliah)

Agama (KodeAgama, NamaAgama)

SPP (KodeKRS, Nim, NilaiPembayaran, BPMP, BPMK, BPIF, TanggalPembayaran,

BatasPembayaran, Status)

TugasAkhir (KodeTA, Nim, Judul)

SPPMayorMinor (Nim, KodeKRS, BiayaSPPKuliah, BiayaSPPPraktikum, JatahDept, JatahFak, JatahRektor)

Dosen (Nip, NamaDosen)

KRS (KodeKRS, JumlahSKS, JumlahSKSKum, Nip, Nim, TahunAkademik, Semester)

Membimbing (KodeTS, Nip, PebimbingKe)

MataKuliahPO (KodeMK, Status, KodeMKSyarat)

Page 45: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

37

Lampiran 3 Kelas MataKuliah dan turunannya

+New()

+KapanDiselenggarakan() : String

+IdentifikasiDepartemen() : String

+SimpanMataKuliah()

+UbahMataKuliah()

+HapusMataKuliah()

+Kode : String

+Nama : String

+JumlahSKS : Byte

+SKSKuliah : Byte

+SKSPraktikum : Byte

+KodeMataKuliahSyarat : String

+Deskripsi : String

MataKuliah

+Status : BebanStudi

MataKuliahPO

+BiayaBagiMinor() : Integer

+BiayaBagiMayor() : Integer

+BiayaBagiSupprtingCost() : Integer

+StatusBagiMinor : BebanStudi

+StatusBagiMayor : BebanStudi

+SupportingCost : Boolean

+HargaPerSKSKuliahMinor : Integer

+HargaPerSKSPraktikumMinor : Integer

+HargaPerSKSKuliahMayor : Integer

+HargaPerSKSPraktikumMayor : Integer

+HargaPerSKSKuliahSC : Integer

+HargaPerSKSPraktikumSC : Integer

MataKuliahMami

Lampiran 4 Kelas SPP dan turunannya

+New()

+HitungTotalBiayaSPP() : Integer

+UbahDataSPP()

+SimpanDataSPP()

+HapusDataSPP()

+Pembayar[1] : Mahasiswa

+UntukPembayaran[1] : KRS

+BatasWaktuPembayaran[1] : Date

+TanggalPembayaran[1] : Date

+NilaiPembayaran[1] : Integer

+SudahLunas[1] : Boolean

+TotalBiayaSPP[1] : Integer

+Keterangan[1] : String

+BPMK[1] : Integer

+BPMP[1] : Integer

+BPIF[1] : Integer

+Status[1] : StatusSPP

SPP

+New()

+DeskripsiPassingOut[1] : String

SPPPassingOut

+New()

+HitungBiayaSPP() : Integer

+HitungBiayaSPPPraktikum() : Integer

+BiayaSPPKuliah[1] : Integer

+BiayaSPPPraktikum[1] : Integer

+DeskripsiMayorMinor[1] : String

-JatahDept[1] : Byte

-JatahFak[1] : Byte

-JatahRektor[1] : Byte

SPPMayorMinor

Page 46: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

38

Lampiran 5 Kelas DokCetak dan turunannya

+New()

+Mencetak()

+Pemohon[1] : Mahasiswa

+Pencetak[1] : Pengguna

+TanggalCetak[1] : Date

+WaktuCetak[1] : Date

+TahunAkademik[1] : String = 1000/1001

+Semester[1] : JenisSemester = ganjil

+TingkatStudi[1] : JenisTingkatStudi = TPB

+KodeTempatStudi[1] : String

+SudahTercetak[1] : Boolean

DokCetak

+New()

+DapatkanDaftarNilai(in Nim : String, in KodeKRS : String) : DaftarNilai

+Mencetak(in InfoMahasiswa : Mahasiswa, in nilai : DaftarNilai)

+DapatkanDataMahasiswa(in Nim : String)

+DapatkanNamaDepartemen(in Nim : String)

+DapatkanNilaiKumulatif(in Nim : String) : Integer

+DapatkanSKSKumulatif(in Nim : String) : Integer

+DapatkanDataKRS(in Nim : String, in TahunAkademik : String, in Semester : JenisSemester)

DokTranskip

+New()

+DapatkanKRS() : KRS

+Mencetak(in KRSMahasiswa : KRS)

DokKRS

+New()

+Mencetak(in Peserta : DaftarMahasiswa, in MataKuliah : DaftarMataKuliah)

+DapatkanDaftarMataKuliah() : DaftarMataKuliah

+BuatKoleksiKuliah(in Jumlah : Integer)

+BuatKoleksiPeserta(in Jumlah : Integer)

+DapatkanJumlahKuliah() : Integer

+DapatkanJumlahPeserta() : Integer

+DaftarKuliah[0..*] : StrukDaftarKuliah

+PesertaKuliah[0..*] : StrukPesertaKuliah

DokDaftarKuliah

Lampiran 6 Kelas Daftar dan turunannya

+New()

+TambahItem()

+ItemSelanjutnya()

+ItemSebelumnya()

+HapusItem()

+HitungJumlahItem() : Integer

+Item[1] : String

Daftar

+New()

+DeskripsiDomain[1] : String

DaftarDomain

+New()

+ParameterPencarian[1] : String

+KriteriaPencarian[1] : String

DaftarHasilPencarian

Lampiran 7 Kelas DaftarDomain dan turunannya

+New()

+DeskripsiDomain[1] : String

DaftarDomain

+New(in NimMahasiswa : String, in KodeKRS : String)

+TambahItem(in Nilai : NilaiMahasiswa)

+HitungIP() : Decimal

+NimMahasiswa[1] : String

+KodeKRS[1] : String

+Item[1] : NilaiMahasiswa

DaftarNilai

+New()

+TambahItem(in MataKuliahMAMI : MataKuliahMami)

+TambahItem(in MataKuliahPO : MataKuliahPO)

DaftarMataKuliah

+New()

+TambahItem(in PilihanMataKuliahPO : MataKuliahPO)

+HapusItem(in PilihamMataKuliahPO : MataKuliahPO)

+HapusItem(in PilihanMataKuliahMami : MataKuliahMami)

+TambahItem(in PilihanMataKuliahMami : MataKuliahMami)

+JenisMK : JenisMK

+Item : MataKuliahPO

+ItemMKMami : MataKuliahMami

-ProgramKuliah : ProgramKuliah

DaftarPilihanMataKuliah

+New()

+TambahItem(in Mahasiswa : Mahasiswa)

DaftarMahasiswa

Page 47: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

39

Lampiran 8 Kelas DaftarHasilPencarian dan turunannya

+New()

+ParameterPencarian[1] : String

+KriteriaPencarian[1] : String

DaftarHasilPencarian

+New()

+TambahItem(in KRS : KRS)

+Item : KRS

DaftarHasilPencarianKRS

+New()

+TambahItem(in MataKuliah : MataKuliah)

+Item : MataKuliahPO

+ItemMKMami : MataKuliahMami

DaftarHasilPencarianMataKuliah

+New()

+tambahItem(in TugasAkhir : TugasAkhir)

+Item : TugasAkhir

DaftarHasilPencarianTugasAkhir

+New()

+TambahItem(in Mahasiswa : Mahasiswa)

+Item : Mahasiswa

DaftarHasilPencarianMahasiswa

+New()

+TambahItem(in SPPMayorMinor : SPPMayorMinor)

+TambahItem(in SPPPAssingOut : SPPPassingOut)

+Item : SPPPassingOut

+ItemSPPMami : SPPMayorMinor

DaftarHasilPencarianSPP

Lampiran 9 Kelas Pencari dan turunannya

+New()

+CariBerdasarkan(in KriteriaPencarian : String, in YangDicari : String) : DaftarHasilPencarian

+ParameterPencarian[1] : String

+KriteriaPencarian[1] : String

Pencar

+New()

+CariBerdasarkan(in Kriteria : KriteriaPencarianKRS, in YangDicari : String)

PencariKRS

+New()

+CariBerdasarkan(in Kriteria : KriteriaPencarianMahasiswa, in YangDicari : String)

PencariMahasiswa

+New()

+CariMataKuliahMamiBerdasarkan(in Kriteria : KriteriaPencarianMataKuliah, in YangDicari : String, in Pembanding : String)

+CariMataKuliahPOBerdasarkan(in Kriteria : KriteriaPencarianMataKuliah, in YangDicari : String, in Pembanding : String)

PencariMataKuliah

+New()

+CariSPPPOBerdasarkan(in Kriteria : KriteriaPencarianSPP, in YangDicari : String, in Pembanding : String)

+CariSPPMAMIBerdasarkan(in Kriteria : KriteriaPencarianSPP, in YangDicari : String, in Pembanding : String)

PencariSPP

+New()

+CariBerdasarkan(in Kriteria : KriteriaPencarianTugasAkhir, in YangDicari : String)

PencariTugasAkhir

Page 48: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

40

Lampiran 10 Sequence diagram

Sequence Diagram menyimpan data KRS

KRSManager DBAccessorUntukKRSKRS Log PenulisLogUIFormKRS

data KRS

New()

DapatkanDataMahasiswa(Nim)

Data mahasiswa

Mahasiswa DaftarPilihanMataKuliah

New()

New()

SimpanKRS()

PeriksaStatusMataKuliah()

alt[Status = False]

TampilkanPesanMataKuliahTidakDapatDiambil()

alt[Status = True]

New()

info operasi menyimpan KRS

New()

Sd

mencatat history/log sistem

ref

<<create>>

<<create>>

<<create>>

<<create>>

<<create>>

Service

New()

TampilkanPesanSukses()

Sequence Diagram mengubah data KRS

MataKuliahManager DBAccessorUntukMataKuliahMataKuliah Log PenulisLogUIMataKuliah

DapatkanDataMataKuliah(KodeMataKuliah)

Data mata kuliah

New

TampilkanMataKuliah()

Data mata kuliah hasil perubahan

alt[Status = False]

TampilkanKodeSalah()

alt[Status = True]

New()

info operasi perubahan mata kuliah

New()

Sd

mencatat history/log sistem

ref

<<create>>

<<create>>

<<create>>

PeriksaKodeMataKuliah:=PeriksaKodeMataKuliah()

DapatkanKodeDepartemen()

kode mata kuliah

UbahMataKuliah()

Service

New()

TampilkanPesanSukses()

Sequence Diagram menulis history/log sistem

Log PenulisLog

Info operasi

Tulis(Log)

Page 49: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

41

Lanjutan Lampiran 10

Sequence Diagram mencari data KRS

DaftarHasilPencarianKRS UIDaftarHasilPencarianKRSKRSManager DBAccessorUntukKRSKRS DaftarPilihanMataKuliahPencariKRS

CariBerdasarkan:=CariBerdasarkan(Kriteria, YangDicari)

Loop 0, jumlah KRSNew()

<<create>>

<<create>>

Cari(Kriteria, YangDicari)

data KRS yang ditemukan

New()

TambahItem

Service

New()<<create>>

Data KRS

TampilkanDaftarKRS()

MahasiswaManager

DapatkanDataMahasiswa(Nim)

data mahasiswa

Sequence Diagram menyimpan data mata kuliah

MataKuliahManager Log PenulisLogUIFormMataKuliah

data mata kuliah

New()

Sd

mencatat history/log sistem

ref

<<create>>

<<create>>

New

SimpanMataKuliah

Service

New()

TampilkanPesanSukses()

MataKuliahPO MataKuliahMami

alt [Jenis MK = Passing Out]

alt[Jenis MK = Mayor Minor]

New()<<create>>

SimpanMataKuliah()

info operasi simpan MK

Page 50: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

42

Lanjutan Lampiran 10

Sequence Diagram mengubah data mata kuliah

MataKuliahManager DBAccessorUntukMataKuliahLog PenulisLogUIMataKuliah

TampilkanMataKuliah()

alt

New

info operasi perubahan mata kuliah

Sd

mencatat history/log sistem

ref

<<create>>

Service

New

TampilkanPesanSukses

MataKuliahPO MataKuliahMami

[Jenis MK = Passing Out]

DapatkanDataMKPO(KodeMK)

Data mata kuliah PO

New()<<create>>

alt[Jenis MK = Mayor Minor

DapatkanMKMami

Data mata kuliah MAMI

New

TampilkanMataKuliah

Data mata kuliah hasil perubahan

UbahMataKuliahPO()

TampilkanMataKuliah

Data mata kuliah hasil perubahan

UbahMataKuliahMami()

<<create>>

Sequence Diagram menghapus data mata kuliah

MataKuliahManager DBAccessorUntukMataKuliahLog PenulisLogUIMataKuliah

Sd

mencatat history/log sistem

ref

<<create>>

Data mata kuliah

Service

New()

alt [Jenis MK = Passing Out]

MataKuliahPO MataKuliahMami

New()

DapatkanDataMKPO(KodeMK)

TampilkanMataKuliah()

HapusMKPO(KodeMK)

alt [Jenis MK = Mayor minor]DapatkanMKMami()

Data mata kuliah

Data mata kuliah

TampilkanPesanSukses()

<<create>>

New()

TampilkanMataKuliah

HapusMKMami(KodeMK)

New

info operasi penghapusan mata kuliah

Page 51: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

43

Lanjutan Lampiran 10

Sequence Diagram mencari data mata kuliah

DaftarHasilPencarianMataKuliah UIDaftarHasilPencarianMKMataKuliahManager DBAccessorUntukMataKuliah

data mata kuliah yang ditemukan

Loop 0, jumlah MK

PencariMataKuliahService

New()<<create>>

Daftar Mata Kuliah

TampilkanMataKuliah()

MataKuliahPO MataKuliahMami

alt[Jenis MK = Passing Out]

New()

CariMKPO(Kriteria, YangDicari, Pembanding)

New()

Loop 0, jumlah MK

altCariMKMami(Kriteria, YangDicari, Pembanding)

data mata kuliah yang ditemukan

TambahItem(MataKuliahPO)

TambahItem(MataKuliahMami)

New()

Sequence Diagram menyimpan tugas akhir

TugasAkhirManager TugasAkhirUIFormTugasAkhir Log PenulisLog

data tugas akhir

New()

SimpanTugasAkhir()

ref

New()

info operasi menyimpan data tugas akhir

Sd

mencatat history/log sistem

<<create>>

Service

TampilkanPesanSukses()

New()

Sequence Diagram mengubah tugas akhir

TugasAkhirManager TugasAkhir Log PenulisLogUITugasAkhir

New()

Data tugas akhir hasil perubahan

New()

info operasi perubahan tugas akhir

Sd

mencatat history/log sistem

ref

<<create>>

<<create>>

Service

New()

TampilkanPesanSukses()

UbahTugasAkhir()

Page 52: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

44

Lanjutan Lampiran 10

Sequence Diagram mencari tugas akhir

TugasAkhirManager DBAccessorUntukTugasAkhirTugasAkhir UIHasilPencarianTugasAkhir

New

Mahasiswa

New

DaftarHasilPencarianTugasAkhirPencariTugasAkhir

Cari(Kriteria, YangDicari)

data tugas akhir yang ditemukan

Loop 0, jumlah TA

tambahItem

Service

New()

Data Tugas Akhir

CariBerdasarkan(Kriteria, YangDicari)

MahasiswaManager

TampilkanTugasAkhir

Sequence Diagram mencetak transkrip

PencetakTranskrip DBAccessorUntukTranskripDokTranskrip UIDokTranskrip DaftarNilai Mahasiswa

DapatkanDataMahasiswa(Nim)

Data mahasiswa

New <<create>>

DapatkanDaftarNilai

kode KRS

<<create>>

TambahItem(Nilai)

Loop 1, jumlah kodeMK

New(NimMahasiswa, KodeKRS)

Mencetak

DapatkanDaftarNilai

Service

New<<create>>

Data transkrip

New

Sequence Diagram mencetak daftar kuliah

PencetakDaftarKuliah DBAccesorUntukMataKuliahDokDaftarKuliah UIDokDaftarKuliah

data daftar mata kuliah

MataKuliah DaftarMataKuliah

DapatkanDaftarmataKuliah(KodeDept, TahunAkademik, Semester)

CariDataDaftarKuliah(Semester, KodeDepartemen, TahunAkademik)

New()

TambahItem(MataKuliah)

Loop 1, jumlah MK

Mahasiswa DaftarMahasiswa

<<create>>

<<create>>

Loop 1, jumlah Mahasiswa

CariPesertaKuliah(Kuliah, TahunAkademik)

data peserta kuliah

New<<create>>

TambahItem(Mahasiswa)

New()

Mencetak()

Service

New()<<create>>

Daftar Kuliah

Page 53: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

45

Lanjutan Lampiran 10

Sequence Diagram mencetak KRS

PencetakKRS KRSDokKRS UIDokKRS DaftarPilihanMataKuliah DBAccessorUntukKRS

DapatkanDataKRS(Nim, TahunAkademik, Semester)

data KRS

<<create>>

<<create>>

DapatkanDataPilihanMataKuliah(Nim, TahunAkademik, Semester)

data pilihan mata kuliah

Loop 1, jumlah

MKTambahItem

TampilkanKRS()

New

Mencetak()

DapatkanKRS(Nim, TahunAkademik, Semester)

Service

New()

Data KRS

New()<<create>>

Sequence Diagram menyimpan data mahasiswa

MahasiswaManager MahasiswaUIFormMahasiswa Log PenulisLog

data mahasiswa

New()

SimpanMahasiswa()

New()

info operasi simpan mahasiswa

refSd

mencatat history/log sistem

<<create>>

Service

New<<create>>

TampilkanPesanSukses()

Sequence Diagram mengubah data mahasiswa

MahasiswaManager Mahasiswa UIMahasiswa Log PenulisLog DBAccessorUntukMahasiswa

New

info operasi ubah data mahasiswa

refSd

mencatat history/log sistem

DapatkanDataMahasiswa(Nim)

data mahasiswa

New()

data mahasiswa hasil perubahan

UbahMahasiswa

<<create>>

<<create>>

Service

New()

TampilkanPesanSukses()

TampilkanMahasiswa()

Page 54: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

46

Lanjutan Lampiran 10

Sequence Diagram menghapus data mahasiswa

MahasiswaManager Mahasiswa UIMahasiswa Log PenulisLog DBAccessorUntukMahasiswa

New()

info operasi hapus data mahasiswa

refSd

mencatat history/log sistem

DapatkanDataMahasiswa(Nim)

data mahasiswa

New()

<<create>>

<<create>>

HapusMahasiswa()

Service

New

TampilkanMahasiswa

<<create>>

TampilkanPesanSukses

Sequence Diagram mencari data mahasiswa

MahasiswaManager Mahasiswa PencariMahasiswa UIDaftarHasilPencarianMhsDaftarHasilPencarianMahasiswa DBAccessorUntukMahasiswa

New

<<create>>CariBerdasarkan(Kriteria, YangDicari)

Loop 0, jumlah Mahasiswa

TambahItem(Mahasiswa)

Cari(Kriteria, YangDicari)

data mahasiswa yang ditemukan

Service

New()

Data Mahasiswa

TampilkanMahasiswa()

Sequence Diagram menyimpan data SPP

SPPManager SPPMayorMinor SPPPassingOut Log PenulisLog DBAccessorUntukSPP

DapatkanDataMahasiswa(Nim)

data mahasiswa

Mahasiswa

New()

alt[jenis SPP = Mayor minor

New()

alt

New()[jenis SPP = Passing Out

SimpanDataSPP()

SimpanDataSPP()

New()

info operasi simpan SPP

refSd

mencatat history/log sistem

UIFormSPP

data SPP

<<create>>

<<create>>

<<create>>

<<create>>

Service

New<<create>>

TampilkanPesanSukses()

Page 55: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

47

Lanjutan Lampiran 10

Sequence Diagram mengubah data SPP

SPPManager SPPMayorMinor SPPPassingOut Log PenulisLog DBAccessorUntukSPP

data SPP

Mahasiswa

New()<<create>>

alt

New()

New()

info operasi simpan SPP

New()

refSd

mencatat history/log sistem

UISPPMayorMinor UISPPPassingOut

data SPP

data SPP hasil perubahan

alt

New()

TampilkanSPP()

UbahDataSPP()

[jenis SPP = Passing Out ]

TampilkanSPP()

data hasil perubahan

UbahDataSPP()

[jenis SPP = Mayor minor ]

DapatkanDataSPP(Nim, TahunAkademik, Semester)

DapatkanDataSPP(Nim, TahunAkademik, Semester)

<<create>>

<<create>>

<<create>>

<<create>>

Service

New()<<create>>

Sequence Diagram menghapus data SPP

SPPManager SPPMayorMinor SPPPassingOut Log PenulisLog DBAccessorUntukSPP

data mahasiswa

Mahasiswa

New()<<create>>

alt

New()

New

info operasi hapus SPP

refSd

mencatat history/log sistem

UISPPMayorMinor UISPPPassingOut

data SPP

alt

New()

TampilkanSPP()

[jenis SPP = Passing Out ]

TampilkanSPP

[jenis SPP = Mayor minor ]

DapatkanDataMahasiswa(Nim)

DapatkanDataSPP(Nim, TahunAkademik, Semester)

<<create>>

<<create>>

<<create>>

Service

Message1

Hapus(Nim, TahunAkademik, Semester)

Page 56: Penerapan Service Oriented Architecture Menggunakan Web ... · sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk ... Keunggulan web service ini dapat

48

Lanjutan Lampiran 10

Sequence Diagram mencari data SPP

SPPManager SPPMayorMinor SPPPassingOutPencariSPP DBAccessorUntukSPPMahasiswaManager

<<create>>

DaftarHasilPencarianSPP UIDaftarHasilPencarianSPP

DapatkanDataMahasiswa(Nim)

CariBerdasarkan:=CariBerdasarkan(Kriteria, YangDicari)

Cari

data SPP yang ditemukan

Loop 0, jumlah SPP

alt

alt

New

[jenis SPP = Mayor minor ]

[jenis SPP = Passing out ]

TambahItem(SPPMayorMinor)

New()

TambahItem(SPPPAssingOut)

data mahasiswa

<<create>>

<<create>>

Service

New()

TampilkanSPP()

Data SPP

Sequence Diagram memeriksa validitas mahasiswa

PemeriksaMahasiswa DBAccessorUntukMahasiswaUILoginMahasiswa

Nim, password

alt[Status = True]

alt [Status = False]

Service

New<<create>>

TampilkanMainWindow()

TampilkanPesan()

PeriksaPenggunaMahasiswa(Nim, Password)

Sequence Diagram memeriksa validitas operator

PemeriksaPengguna DBAccessorUntukPenggunaUILoginPengguna

username, password

<<create>>

alt[Status = True]

alt[Status = False]

Service

New

TampilkanMainWindow

TampilkanPesan()

PeriksaOperator(Username, Password)