Pemodulan Encapsulation Penurunan Inheritance Analisis Sistem

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