• Tidak ada hasil yang ditemukan

Penerapan Service Oriented Architecture Menggunakan Web Service Pada Sistem Informasi Akademik

N/A
N/A
Protected

Academic year: 2017

Membagikan "Penerapan Service Oriented Architecture Menggunakan Web Service Pada Sistem Informasi Akademik"

Copied!
110
0
0

Teks penuh

(1)

GHOFFAR SETIAWAN

G64103058

DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

INSTITUT PERTANIAN BOGOR

(2)

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

(3)

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.

(4)

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

(5)
(6)

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

(7)

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

(8)

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 KelasSPP dan turunannya... 37

5 KelasDokCetak dan turunannya ... 38

6 KelasDaftar dan turunannya ... 38

7 KelasDaftarDomain dan turunannya ... 38

8 KelasDaftarHasilPencarian dan turunannya ... 39

9 KelasPencari dan turunannya ... 39

(9)

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.

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

(10)

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

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.

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

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

(11)

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

interface service 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 design code test

Gambar 4Metode 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

(12)

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.

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

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,

(13)

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

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

(14)

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

(15)

Sistem Informasi Kemahasiswaan Mengelola data SPP <<include>

> <<include>>

Gambar 8Diagram 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.

(16)

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

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

(17)

Memilih

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.

(18)

+New()

+TahunAkademik[1] : String = 1000/1001 +Semester[1] : JenisSemester = ganjil +TingkatStudi[1] : JenisTingkatStudi = TPB +KodeTempatStudi[1] : String

+MemeriksaSyaratBebabStudiTerpenuhi(in CalonWisudawan : Mahasiswa) : Boolean +YangHarusMemenuhi[1] : Mahasiswa

+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

+CariBerdasarkan(in KriteriaPencarian : String, in YangDicari : String) : DaftarHasilPencarian +ParameterPencarian[1] : String

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 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. Berbagaikelas yang digunakan

untuk memenuhi kebutuhan fungsional

tersebut adalah kelas turunan kelas domain dokumen cetak yang dimodelkan dengan diagram pada Lampiran 5.

(19)

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

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

(20)

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

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 Web Server IIS 6 UDDI Server

Windows Server 2003 SP2

Windows Server 2003 SP2

Gambar 11Deployment 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

(21)

Menu pada jendela anak

Menu pada jendela anak

Jendela anak

Jendela 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 dibuatmelalui 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

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

(22)

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

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

(23)

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

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

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

(24)
(25)

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. menampilkanpesan 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 : saatstep 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 : saatstep 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

(26)

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. menampilkanpesan 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 : syaratitemmata kuliah baru belum terpenuhi

Precondition : saatstep 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 : saatstep 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

(27)

TOS untuk use case mencari data KRS

Use case name : mencari data KRS

Description : use case ini mencari data KRS

Main Course of events : pencariandata 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 : saatstep 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

(28)

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. menampilkanpesan 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 : saatstep 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 : saatstep 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 : saatstep 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

(29)

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 : saatstep 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 : saatstep 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

Gambar

Gambar 2 (Manes 2003).
Gambar 3 Model aplikasi three-tier.
Gambar 5 Diagram use case subsistem manajemen data mahasiswa.
Gambar 7 Diagram use case subsistem manajemen data wisuda.
+7

Referensi

Dokumen terkait

Kangsa diberitahu oleh pamanya Surati Mantra bahwa sebetulnya Basudewa telah mempunyai anak dari isterinya Maekah yaitu Kakrasana dan Narayana, sedang dengan Br-

Bagi para eksekutif non keuangan dalam bidang jasa yang telah memahami laporan keuangan, dan sering terlibat perencanaan keuangan perusahaan, baik langsung maupun tidak langsung,

Kita berada di Segara anakan sampai pukul 10 an saja karena kita akan melanjutkan perjalanan menuju lokasi lain dari Pulau Sempu..

2011 sampai dengan triwulan IV tahun 2015 yang menjadi sampel penelitian.. Besarnya kontribusi LAR yaitu sebesar 0,32

Puji syukur penulis panjatkan kehadirat Allah SWT karena atas rahmat, dan hidayah-Nya sehingga penulis dapat menyelesaikan karya tulis akhir dengan judul “Perbedaan

Secara garis besar tujuan penelitian ini adalah untuk mengukur kinerja RSUD Tanjungpinang berdasarkan empat perspektif Balanced Scorecard yaitu Perspektif

Hasil pengujian pada tabel 4 menunjukan bahwa tahan luntur warna terhadap pencucian untuk semua jenis kain, baik yang dicelup dengan bantuan surfaktan

Sekolah Tinggi Ekonomi Syariah (STES) Islamic Village Jln Raya Islamic Kelapa Dua Tangerang 15810, Indonesia Abstrak: Penelitian ini adalah untuk mengetahui tingkat