29
a. Pemodulan Encapsulation
Pada dunia nyata, seorang ibu rumah tangga menanak nasi dengan menggunakan rice cooker, ibu tersebut menggunakannya hanya dengan menekan tombol. Tanpa harus
tahu bagaimana proses itu sebenarnya terjadi. Disini terdapat penyembunyian informasi milik rice cooker, sehingga tidak perlu diketahui seorang ibu. Dengan demikian menanak
nasi oleh si ibu menjadi sesuatu yang menjadi dasar bagi konsep information hiding.
b. Penurunan Inheritance
Obyek-obyek memiliki banyak persamaan, namun ada sedikit perbedan. Contoh dengan beberapa buah mobil yang mempunyai kegunaan yang berbeda-beda. Ada mobil
bak terbuka seperti truk, bak tertutup seperti sedan dan minibus. Walaupun demikian obyek-obyek ini memiliki kesamaan yaitu teridentifikasi sebagai obyek mobil, obyek ini
dapat dikatakan sebagai obyek induk parent. Sedangkan minibus dikatakan sebagai obyek anak child, hal ini juga berarti semua operasi yang berlaku pada mobil berlaku
juga pada minibus.
c. Polymorphism
Pada obyek mobil, walaupun minibus dan truk merupakan jenis obyek mobil yang sama, namun memiliki juga perbedaan. Misalnya suara truk lebih keras dari pada
minibus, hal ini juga berlaku pada obyek anak child melakukan metoda yang sama dengan algoritma berbeda dari obyek induknya. Hal ini yang disebut polymorphism,
teknik atau konsep dasar lainnya adalah ruang lingkup pembatasan. Artinya setiap obyek mempunyai ruang lingkup kelas, atribut, dan metoda yang dibatasi.
30
Pengenalan UML Unified Modelling Language UML adalah sebuah bahasa yang telah menjadi
standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem piranti lunak. UML menawarkan sebuah standar untuk merancang model sebuah sistem.
Dengan menggunakan UML dapat di buat model untuk semua jenis aplikasi piranti lunak, dimana aplikasi tersebut dapat berjalan pada piranti keras, sistem operasi dan
jaringan apapun, serta ditulis dalam bahasa pemrograman apapun. Tetapi karena UML juga menggunakan class dan operation dalam konsep dasarnya, maka ia lebih cocok
untuk penulisan piranti lunak dalam bahasa-bahasa berorientasi objek seperti C++, Java, C atau VB.NET.
Walaupun demikian, UML tetap dapat digunakan untuk modeling aplikasi prosedural dalam VB atau C. Seperti bahasa-bahasa lainnya, UML mendefinisikan notasi
dan syntaxsemantik. Notasi UML merupakan sekumpulan bentuk khusus untuk menggambarkan berbagai diagram piranti lunak. Setiap bentuk memiliki makna tertentu,
dan UML
syntax mendefinisikan
bagaimana bentuk-bentuk
tersebut dapat
dikombinasikan. Notasi UML terutama diturunkan dari 3 notasi yang telah ada sebelumnya: Grady Booch OOD Object-Oriented Design, Jim Rumbaugh OMT Object
Modeling Technique, dan Ivar Jacobson OOSE Object-Oriented Software Engineering.
Konsep Dasar UML
Dari berbagai penjelasan tentang konsep dasar UML dapat di rangkum menjadi sebuah skema yang di gambarkan pada Gambar 2.7 berikut ini.
31
Gambar 2.8 Konsep dasar UML Seperti tercantum dalam gambar 2.8 di atas UML mendefinisikan diagram-diagram
sebagai berikut:
1. Use Case diagram
Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Yang ditekankan adalah “apa” yang diperbuat sistem, dan bukan “bagaimana”.
Sebuah use case merepresentasikan sebuah interaksi antara aktor dengan sistem. Use case merupakan sebuah pekerjaan tertentu, misalnya login ke sistem, meng-create sebuah
32 daftar belanja, dan sebagainya. Seorangsebuah aktor adalah sebuah entitas manusia atau
mesin yang berinteraksi dengan sistem untuk melakukan pekerjaan-pekerjaan tertentu. Sebuah use case dapat meng-include fungsionalitas use case lain sebagai bagian dari
proses dalam dirinya. Secara umum diasumsikan bahwa use case yang di-include akan dipanggil setiap kali use case yang meng-include dieksekusi secara normal.
Sebuah use case dapat di-include oleh lebih dari satu use case lain, sehingga duplikasi fungsionalitas dapat dihindari dengan cara menarik keluar fungsionalitas yang
common. Sebuah use case juga dapat meng-extend use case lain dengan behaviour-nya sendiri. Sementara hubungan generalisasi antar use case menunjukkan bahwa use case
yang satu merupakan spesialisasi dari yang lain. Penggambaran Use case diagram dapat di lihat dalam gambar 2.9 di bawah ini.
Gambar 2.9 Contoh Use Case diagram
33
2. Class diagram
Class adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi objek. Class
menggambarkan keadaan atributproperti suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut metodafungsi. Class diagram menggambarkan
struktur dan deskripsi class, package dan objek beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi, dan lain-lain. Class memiliki tiga area pokok :
1. Nama dan stereotype 2. Atribut
3. Metoda Atribut dan metoda dapat memiliki salah satu sifat berikut :
a Private, tidak dapat dipanggil dari luar class yang bersangkutan
b Protected, hanya dapat dipanggil oleh class yang bersangkutan dan anak-anak
yang mewarisinya c
Public, dapat dipanggil oleh siapa saja Class dapat merupakan implementasi dari sebuah interface, yaitu class abstrak
yang hanya memiliki metoda. Interface tidak dapat langsung diinstansiasikan, tetapi harus diimplementasikan dahulu menjadi sebuah class. Dengan demikian interface
mendukung resolusi metoda pada saat run-time.
Hubungan Antar Class
1. Asosiasi, yaitu hubungan statis antar class. Umumnya menggambarkan class yang
memiliki atribut berupa class lain, atau class yang harus mengetahui eksistensi class lain. Panah navigability menunjukkan arah query antar class.
34 2.
Agregasi, yaitu hubungan yang menyatakan bagian “terdiri atas..”. 3.
Pewarisan, yaitu hubungan hirarkis antar class. Class dapat diturunkan dari class lain dan mewarisi semua atribut dan metoda class asalnya dan menambahkan
fungsionalitas baru, sehingga ia disebut anak dari class yang diwarisinya. Kebalikan dari pewarisan adalah generalisasi.
4. Hubungan dinamis, yaitu rangkaian pesan message yang di-passing dari satu
class kepada class lain. Hubungan dinamis dapat digambarkan dengan menggunakan sequence diagram yang akan dijelaskan kemudian.
Penggambaran Class diagram dapat di lihat pada gambar 2.10 di bawah ini.
Gambar 2.10 Contoh Class diagram
3. Statechart diagram
Statechart diagram menggambarkan transisi dan perubahan keadaan dari satu state ke state lainnya suatu objek pada sistem sebagai akibat dari stimuli yang diterima.
Pada umumnya statechart diagram menggambarkan class tertentu satu class dapat memiliki lebih dari satu statechart diagram. Dalam UML, state digambarkan berbentuk
35 segiempat dengan sudut membulat dan memiliki nama sesuai kondisinya saat itu. Transisi
antar state umumnya memiliki kondisi guard yang merupakan syarat terjadinya transisi yang bersangkutan, dituliskan dalam kurung siku. Action yang dilakukan sebagai akibat
dari event tertentu dituliskan dengan diawali garis miring. Titik awal dan akhir digambarkan berbentuk lingkaran berwarna penuh dan berwarna setengah. Bisa di lihat
dalam gambar 2.11 di bawah ini.
Gambar 2.11 Contoh Statechart diagram
4. Activity diagram
Activity diagrams menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin
terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi. Activity diagram merupakan
state diagram khusus, di mana sebagian besar state adalah action dan sebagian besar
36 transisi di-trigger oleh selesainya state sebelumnya internal processing. Oleh karena itu
activity diagram tidak menggambarkan behaviour internal sebuah sistem dan interaksi antar subsistem secara eksak, tetapi lebih menggambarkan proses-proses dan jalur-jalur
aktivitas dari level atas secara umum. Sebuah aktivitas dapat direalisasikan oleh satu use case atau lebih. Aktivitas
menggambarkan proses yang berjalan, sementara use case menggambarkan bagaimana aktor menggunakan sistem untuk melakukan aktivitas. Decision digunakan untuk
menggambarkan behaviour pada kondisi tertentu. Untuk mengilustrasikan proses-proses paralel fork dan join digunakan titik sinkronisasi yang dapat berupa titik, garis
horizontal atau vertikal. Activity diagram dapat dibagi menjadi beberapa object swimlane untuk menggambarkan objek mana yang bertanggung jawab untuk aktivitas tertentu.
Contoh Activity diagram tanpa swimlane dapat di lihat pada gambar 2.12 berikut ini
Gambar 2.12 Contoh Activity diagram
37
5. Sequence diagram
Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem termasuk pengguna, display, dan sebagainya berupa message yang digambarkan
terhadap waktu. Sequence diagram terdiri atar dimensi vertikal waktu dan dimensi horizontal objek-objek yang terkait. Sequence diagram biasa digunakan untuk
menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai respons dari sebuah event untuk menghasilkan output tertentu. Di awali dari apa yang
men-trigger aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output apa yang dihasilkan.
Masing-masing objek, termasuk aktor, memiliki lifeline vertikal. Message digambarkan sebagai garis berpanah dari satu objek ke objek lainnya. Adapun contoh
dari sequence diagram dapat di lihat pada gambar 2.13 di bawah ini.
Gambar 2.13 Contoh Sequence diagram
38
6. Collaboration diagram
Collaboration diagram juga menggambarkan interaksi antar objek seperti sequence diagram, tetapi lebih menekankan pada peran masing-masing objek dan bukan
pada waktu penyampaian message. Setiap message memiliki sequence number, di mana message dari level tertinggi memiliki nomor 1. Messages dari level yang sama memiliki
prefiks yang sama. Contoh gambar dari Collaboration Diagram dapat di lihat pada gambar 2.14 di bawah ini.
Gambar 2.14 Contoh Collaboration diagram
Selain dari pada 6 diagram tersebut di atas terdapat juga Component diagram dan
Deployment diagram yang menggambarkan hubungan antar komponen piranti perangkat lunak dan menggambarkan detail bagaimana dan di mana komponen tersebut di proses.
Bab III ANALISIS DAN PERANCANGAN SISTEM
3.1 Analisis Sistem
Pada tahap ini dilakukan analisis terhadap sistem yang akan di buat, tanpa memperhatikan apakah sistem tersebut menggunakan teknologi informasi atau
tidak. Analisis sistem merupakan penguraian sistem utuh ke dalam bagian-bagian komponennya untuk mengidentifikasikan dan mengevaluasi permasalahan-
permasalahan dan hambatan-hambatan yang terjadi dan kebutuhan-kebutuhan yang diharapkan sehingga dapat diusulkan perbaikan-perbaikannya.
Dalam membangun sebuah sistem, di perlukan sebuah analisis terlebih dahulu karena tanpa menganalisis sistem yang ada maka aplikasi tidak bisa di
bangun. Dalam menganalisis sistem secara Object Oriented yang nantinya di bangun aplikasi berorientasi objek, di perlukan pendefinisian kasus dari sistem
tersebut. Berikut adalah hasil analisis dari sistem manual yang ada dengan menggunakan metode UML Unified Modeling Language.
3.2.1 Use Case Text
Use case text menceritakan suatu urutan interaksi antara satu atau lebih actor dan system, serta menceritakan jalannya aliran sebuah data dan system yang
semuanya itu diceritakan dalam bentuk cerita narasi.
Aktor utama : User
Aktor pembantu : Admin
37
38
Skenario:
1. Login ke Sistem
a Admin Login ke Server yang berbentuk web aplication
1. Admin mengisikan user id dan Password ke Aplikasi web
2. Kemudian User Id dan Password di verifikasi, jika login
berhasil maka akan masuk ke dalam Menu utama aplikasi web yang ada di komputer server.
3. Admin dapat melakukan semua proses yang di panggil dari
webservice tanpa batas. Batasan:
a. Admin mempunyai hak akses penuh terhadap database
bisa edit, delet maupun input data b.
Admin berhak menolak data baru yang masuk jika di rasa tidak memenuhi persyaratan dengan menghapus
data yang diinputkan. b
User Menggunakan aplikasi Mobile 1.
User menjalankan program yang terdapat di dalam PPC 2003 alam kasus ini Emulator
2. Lalu User masuk ke Menu utama aplikasi mobile.
2. Proses di Menu Utama
a User Akses ke sistem lewat aplikasi Mobile
1. Setelah user masuk ke Form Menu Utama di mana terdapat tiga
menu item yang bisa di pilih, yaitu:
39
a Menu Anak Asuh
Dalam menu Anak Asuh terdapat dua item pilihan yaitu
Lihat Anak Asuh dan Keluar. Jika user pilih Lihat Anak
Asuh maka akan menuju Form Data Anak Asuh. Di dalam
form Lihat Anak Asuh ada tombol untuk menampilkan data
anak asuh. Dengan mengklick tombol ini user bisa melihat data anak asuh. Selain itu juga terdapat tombol cari yang bisa
mencari data anak asuh berdasarkan no induk anak asuh b
Menu User
Dalam Menu User terdapat dua item pilihan yaitu POP Program Orang Tua Peduli yang di sebut Donatur, dan
Penyalur dimana fasilitas ini digunakan untuk user yang ingin
mengikuti program Orang tua peduli sebagai donatur dan menjadi penyalur.
c About
Dalam Menu About berisi tentang apa Itu Yayasan Sekar
Galih dan Tentang Pembuat Aplikasi.
3.2 Analisis Sistem Aplikasi Pocket PC