PENGEMBANGAN PERANGKAT LUNAK PEMBUAT DISTRIBUSI FOSIL MOLUSKA DALAM KONTEKS STRATIGRAFI
LAPORAN TUGAS AKHIR
Disusun sebagai syarat kelulusan tingkat sarjana
oleh : Nama : Pandu Pradana / 13502010
SEKOLAH TEKNIK ELEKTRO DAN INFORMATIKA INSTITUT TEKNOLOGI BANDUNG 2008
LEMBAR PENGESAHAN Program Studi Sarjana Informatika
PENGEMBANGAN PERANGKAT LUNAK PEMBUAT DISTRIBUSI FOSIL MOLUSKA DALAM KONTEKS STRATIGRAFI
Tugas Akhir Program Studi Sarjana Informatika ITB
Oleh Nama : Pandu Pradana / NIM 13502010
Telah disetujui dan disahkan sebagai laporan Tugas Akhir di Bandung, pada tanggal 27 Juni 2008
Pembimbing
Dra. Christine Suryadi, M.T. NIP. 130676866
Dr. Aswan, S.T., M.T. NIP. 132137923
ii
RINGKASAN Pada Tugas Akhir ini, telah dikembangkan sebuah plug-in dari suatu perangkat lunak yang dapat membuat laporan distribusi fosil moluska. Plug-in ini merupakan bagian dari sebuah kakas analisa bernama Paleontological Stratigraphic Interval Construction and Analysis Tool (PSICAT). Selain dari plug-in ini, Tugas Akhir ini juga menghasilkan sebuah aplikasi front-end yang diberi nama “F-DiSC”. Tujuan dibuatnya Tugas Akhir ini adalah untuk membantu pengguna dalam proses pembuatan laporan distribusi fosil moluska dari suatu penelitian fosil moluska, sehingga dapat dilakukan secara otomatis. Aplikasi front-end yang dibangun berfungsi sebagai sebuah antarmuka bagi pengguna untuk melakukan proses pemasukan data fosil moluska hasil penelitian ke dalam basis data. Sedangkan plug-in perangkat lunak “PSICAT” yang dibuat pada Tugas Akhir ini berfungsi untuk mengolah data fosil moluska hasil keluaran aplikasi front-end dan menggambarkan distribusi fosilnya dengan format tertentu melalui perangkat lunak “PSICAT”. Fungsionalitas yang diberikan “F-DiSC” mencakup manajemen data moluska, manajemen data fosil moluska, proses export data ke suatu file eksternal, proses import data dari file eksternal, dan juga export data distribusi fosil ke file eksternal untuk diolah oleh plug-in pada perangkat lunak “PSICAT”. Sedangkan fungsionalitas dari plug-in untuk perangkat lunak “PSICAT” mencakup proses import data dari file output “F-DiSC” ke “PSICAT”, melakukan pemodelan data, dan melakukan penggambaran distribusi fosil moluska pada “PSICAT”. “F-DiSC” dan “PSICAT” merupakan aplikasi berbasis desktop yang dikembangkan dengan bahasa pemrograman Java. Untuk membantu pengembangan “F-DiSC” digunakan NetBeans sebagai Java IDE, sedangkan karena “PSICAT” dikembangkan menggunakan Eclipse sebagai Java IDE, maka plug-in yang dibuat juga dikembangkan dengan menggunakan Eclipse. Karena “F-DiSC” berfungsi sebagai antar muka bagi pengguna untuk melakukan proses pemasukan data ke dalam basis data, maka DBMS MySQL digunakan untuk memenuhi fungsionalitas ini. Berdasarkan hasil pengujian, “F-DiSC” dan plug-in “PSICAT” yang dikembangkan telah memenuhi semua spesifikasi kebutuhan yang telah ditetapkan dan berjalan sesuai skenario yang direncanakan. Kedua hasil Tugas Akhir ini masih dapat dikembangkan antara lain dengan penambahan fungsi manajemen pengguna pada “F-DiSC” dan pengolahan data secara multi-threading, sedangkan plug-in untuk “PSICAT” dapat dikembangkan untuk mengolah data secara langsung dari basis data dan pembuatan plug-in baru untuk mengolah data distribusi fosil menjadi informasi yang lain sesuai kebutuhan pengguna. Kata kunci: laporan distribusi fosil, PSICAT, plug-in, F-DiSC
iii
KATA PENGANTAR Puji syukur Penulis ucapkan kepada Tuhan Yesus Kristus karena penyertaan dan bimbinganNya kepada Penulis selama mengerjakan Tugas Akhir ini sehingga Penulis dapat menyelesaikan Tugas Akhir dengan baik. Tugas akhir dan laporannya disusun sebagai syarat kelulusan tingkat sarjana Sekolah Teknik Elektro dan Informatika ITB.
Pada kesempatan ini, Penulis juga ingin menyampaikan ucapan terima kasih kepada pihakpihak yang telah memberikan bantuan dan bimbingan selama pengerjaan pelaksanaan Tugas Akhir dan penyusunan laporan Tugas Akhir. Ucapan terima kasih Penulis ucapkan kepada: 1. Kedua orang tua serta seluruh anggota keluarga Penulis yang selalu memberikan dukungan moriil bagi Penulis. 2. Ibu Dra. Christine Suryadi, M.T. selaku dosen mata kuliah Tugas Akhir dan pembimbing pertama yang telah membimbing dan memberikan masukan selama pelaksanaan Tugas Akhir. 3. Bapak Dr. Aswan, S.T., M.T. selaku dosen pembimbing kedua yang telah membimbing dan memberikan masukan selama pelaksanaan Tugas Akhir khususnya mengenai bidang Geologi. 4. Ibu Yani Widyani, S.T., M.T. selaku dosen penguji pada presentasi proposal, prasidang Tugas Akhir, dan sidang Tugas Akhir. 5. Bapak Adi Mulyanto, S.T., M.T. selaku dosen penguji pada seminar dan sidang Tugas Akhir. 6. Mr. Joshua A. Reed sebagai pengembang PSICAT, atas ijin, bimbingan dan bantuannya dalam pengerjaan Tugas Akhir yang berhubungan dengan PSICAT. 7. Bapak Ade, Bapak Rasidi serta pegawai tata usaha Program Studi Teknik Informatika ITB. 8. Ruben Juliarto, Budi Santosa, Bapak Tan Andry S., dan Nistria Harsolumakso atas dukungan dan bantuan selama Penulis melaksanakan Tugas Akhir. 9. Teman-teman Informatika ITB dan PSM ITB yang telah memberikan semangat dan dorongan moriil selama Penulis mengerjakan Tugas Akhir. 10. Semua pihak yang telah membantu Penulis yang tidak dapat disebutkan satu per satu.
Akhir kata, Penulis menyadari masih terdapat kekurangan dalam laporan Tugas Akhir ini. Untuk itu, Penulis mengharapkan kritik dan saran dari pembaca. Terima kasih. Bandung, Juni 2008 Penulis
iv
DAFTAR ISI LEMBAR PENGESAHAN.....................................................………………………ii RINGKASAN ............................................................................................................. iii KATA PENGANTAR.................................................................................................iv DAFTAR ISI.................................................................................................................v DAFTAR GAMBAR..................................................................................................vii DAFTAR TABEL .................................................................................................... viii DAFTAR ALGORITMA ...........................................................................................ix DAFTAR ISTILAH .....................................................................................................x DAFTAR SIMBOL.....................................................................................................xi BAB I PENDAHULUAN..........................................................................................I-1 1.1 1.2 1.3 1.4 1.5 1.6
Latar Belakang.......................................................................................................................... I-1 Rumusan Masalah..................................................................................................................... I-2 Tujuan ....................................................................................................................................... I-2 Batasan Masalah ....................................................................................................................... I-3 Metodologi................................................................................................................................ I-3 Sistematika Pembahasan .......................................................................................................... I-4
BAB II DASAR TEORI ......................................................................................... II-1 2.1 Stratigrafi .................................................................................................................................II-1 2.2 Sistem dan Rekayasa Sistem ...................................................................................................II-3 2.3 Rekayasa Perangkat Lunak .....................................................................................................II-5 2.4 Arsitektur Perangkat Lunak ....................................................................................................II-7 2.5 Object Oriented Paradigm ......................................................................................................II-8 2.6 Unified Process......................................................................................................................II-10 2.6.1 Workflow........................................................................................................................II-11 2.6.2 Phase..............................................................................................................................II-13 2.7 Standard Widget Toolkit (SWT) ...........................................................................................II-14 2.8 Graphical Editing Framework (GEF)...................................................................................II-16 2.8.1 GEF (org.eclipse.gef)........................................................................................II-16 2.8.1.1 Model .........................................................................................................................II-17 2.8.1.2 View (Figures/Treeitems)..........................................................................................II-18 2.8.1.3 Controller (EditPart).................................................................................................II-18 2.8.2 Draw2D (org.eclipse.draw2d)..........................................................................II-18
BAB III DESKRIPSI UMUM PERANGKAT LUNAK.....................................III-1 3.1 Front-end Application (F-DiSC)........................................................................................... III-2 3.1.1 Analisis Input................................................................................................................. III-2 3.1.2 Analisis Proses............................................................................................................... III-3 3.1.3 Analisis Output.............................................................................................................. III-4 3.2 PSICAT.................................................................................................................................. III-4 3.3 PSICAT plug-in..................................................................................................................... III-5 3.3.1 Analisis Input................................................................................................................. III-5 3.3.2 Analisis Proses............................................................................................................... III-5 3.3.2.1 Pemodelan Data......................................................................................................... III-5 3.3.2.2 Penggambaran Model................................................................................................ III-6 3.3.3 Analisis Output.............................................................................................................. III-7 3.4 Metodologi Pembangunan..................................................................................................... III-8
BAB IV ANALISIS DAN PERANCANGAN PERANGKAT LUNAK ............ IV-1 4.1 Analisis .................................................................................................................................. IV-1 4.1.1 Fitur-fitur Perangkat Lunak........................................................................................... IV-1 4.1.2 Spesifikasi Kebutuhan Perangkat Lunak ...................................................................... IV-1
v
4.1.3 Batasan Perangkat Lunak .............................................................................................. IV-2 4.1.4 Pemodelan Perangkat Lunak......................................................................................... IV-3 4.1.4.1 Definisi Aktor............................................................................................................ IV-3 4.1.4.2 Definisi Use Case...................................................................................................... IV-3 4.1.4.3 Pemodelan Fungsionalitas......................................................................................... IV-4 4.1.4.4 Pemodelan Interaksi Elemen..................................................................................... IV-5 4.1.4.5 Pemodelan Kelas Potensial ....................................................................................... IV-5 4.2 Perancangan........................................................................................................................... IV-6 4.2.1 Batasan Perancangan..................................................................................................... IV-6 4.2.2 Identifikasi Kelas Perancangan ..................................................................................... IV-7 4.2.3 Perancangan Antarmuka ............................................................................................... IV-7 4.2.3.1 Prototipe Antarmuka Mollusc Data Administrator .................................................. IV-9 4.2.3.2 Prototipe Antarmuka Fossil Data Administrator ..................................................... IV-9 4.2.3.3 Prototipe Antarmuka Common User......................................................................... IV-9 4.2.4 Deployment Diagram .................................................................................................. IV-10 4.2.5 Rencana Pengujian ...................................................................................................... IV-10 4.2.6 Tujuan Pengujian......................................................................................................... IV-11
BAB V IMPLEMENTASI DAN PENGUJIAN.....................................................V-1 5.1 Implementasi........................................................................................................................... V-1 5.1.1 Lingkungan Perangkat Keras ......................................................................................... V-1 5.1.2 Lingkungan Perangkat Lunak ........................................................................................ V-1 5.1.3 Batasan Implementasi..................................................................................................... V-1 5.1.4 Tahapan Implementasi ................................................................................................... V-2 5.1.5 Hasil Implementasi Kelas............................................................................................... V-2 5.1.5.1 Hasil Implementasi Kelas Aplikasi ”F-DiSC” .......................................................... V-2 5.1.5.2 Hasil Implementasi Kelas Plug-in PSICAT .............................................................. V-3 5.2 Pengujian ................................................................................................................................ V-4 5.2.1 Lingkungan Pengujian.................................................................................................... V-4 5.2.2 Hasil dan Evaluasi Pengujian......................................................................................... V-4
BAB VI PENUTUP ................................................................................................ VI-1 6.1 6.2
Kesimpulan ............................................................................................................................ VI-1 Saran ...................................................................................................................................... VI-2
DAFTAR REFERENSI ..............................................................................................xi LAMPIRAN ACUAN TEKNIS ................................................................................xii LAMPIRAN NOTULENSI PERTEMUAN .......................................................... xiii
vi
DAFTAR GAMBAR Gambar II-1 Simbol Lithology................................................................................................................II-3 Gambar II-2 System Engineering Hierarchy...........................................................................................II-4 Gambar II-3 Software Engineering Layer...............................................................................................II-5 Gambar II-4 Model Arsitektur Data Processing System ........................................................................II-8 Gambar II-5 Model Arsitektur Transaction Processing Application.....................................................II-8 Gambar II-6 Hubungan antara Phase dan Workflow pada Unified Process ........................................II-10 Gambar II-7 Arsitektur Eclipse .............................................................................................................II-14 Gambar II-8 Layering dari Komponen Penyusun GEF ........................................................................II-16 Gambar II-9 High Level View dari GEF (org.eclipse.gef) .......................................................II-17 Gambar II-10 Hubungan Model-View-Controller ................................................................................II-18 Gambar II-11 Ilustrasi tentang Figure...................................................................................................II-18 Gambar II-12 Figure dan Hasil Gambar Figure...................................................................................II-19 Gambar II-13 High Level View dari Draw2d ........................................................................................II-20 Gambar III-1 Posisi Perangkat Lunak pada Sistem .............................................................................. III-2 Gambar III-2 Model Arsitektur ............................................................................................................. III-2 Gambar III-3 Struktur Tabel Moluska dan Fosil Moluska serta Keterhubungannya........................... III-3 Gambar III-4 Arsitektur PSICAT.......................................................................................................... III-5 Gambar III-5 Gambar Pemodelan Data................................................................................................. III-6 Gambar III-6 Tampilan Distribusi Fosil Moluska ................................................................................ III-8 Gambar III-7 Kolom Stratigrafi/Penampang Batuan ............................................................................ III-9 Gambar III-8 Frekuensi Kemunculan Fosil Moluska dalam Lapisan Batuan.................................... III-10 Gambar III-9 Penggambaran Informasi Lain (Interpretasi Lanjutan dari Urutan Stratigrafi) ........... III-10 Gambar III-10 Keseluruhan Siklus Batuan ......................................................................................... III-11 Gambar IV-1 Diagram Use Case Mollusc Data Administrator ........................................................... IV-5 Gambar IV-2 Rancangan Tampilan Perangkat Lunak.......................................................................... IV-7 Gambar IV-3 Antarmuka Mollusc Data Administrator........................................................................ IV-9 Gambar IV-4 Antarmuka Fossil Data Administrator......................................................................... IV-10 Gambar IV-5 Antarmuka Common User ............................................................................................ IV-10 Gambar IV-6 Deployment Diagram Perangkat Lunak ....................................................................... IV-11
vii
DAFTAR TABEL Tabel III-1 Deliverables dari Setiap Fase Unified Process .................................................................. III-9 Tabel IV-1 Fitur Aplikasi “F-DiSC” ..................................................................................................... IV-1 Tabel IV-2 Fitur Plug-in PSICAT ......................................................................................................... IV-1 Tabel IV-3 Spesifikasi Kebutuhan Fungsional Perangkat Lunak......................................................... IV-2 Tabel IV-4 Kebutuhan Fungsional Plug-in PSICAT............................................................................ IV-2 Tabel IV-5 Spesifikasi Kebutuhan Non-Fungsional Perangkat Lunak ................................................ IV-2 Tabel IV-6 Definisi Aktor Aplikasi “F-DiSC” ..................................................................................... IV-3 Tabel IV-7 Definisi Aktor PSICAT ...................................................................................................... IV-3 Tabel IV-8 Definisi Use Case Aplikasi “F-DiSC”................................................................................ IV-3 Tabel IV-9 Definisi Use Case Plug-in PSICAT.................................................................................... IV-4 Tabel IV-10 Identifikasi Kelas Analisis tiap Paket Aplikasi ”F-DiSC”............................................... IV-5 Tabel IV-11 Identifikasi Kelas Analisis tiap Paket Plug-in PSICAT................................................... IV-6 Tabel IV-12 Paket dan Kelas Perancangan Aplikasi ”F-DiSC”........................................................... IV-7 Tabel IV-13 Paket dan Kelas Perancangan Plug-in PSICAT ............................................................... IV-8 Tabel V-1 Daftar Implementasi Antarmuka “F-DiSC” ......................................................................... V-2 Tabel V-2 Daftar Implementasi Komponen “F-DiSC” ......................................................................... V-2 Tabel V-3 Daftar Implementasi Antarmuka Plug-in PSICAT .............................................................. V-3 Tabel V-4 Daftar Implementasi Komponen Plug-in PSICAT............................................................... V-3 Tabel V-5 Spesifikasi Lingkungan Perangkat Lunak Pengujian........................................................... V-4 Tabel V-6 Hasil dan Evaluasi Pengujian Skenario Use Case “F-DiSC” .............................................. V-4 Tabel V-7 Hasil dan Evaluasi Pengujian Skenario Use Case Plug-in PSICAT.................................... V-5
viii
DAFTAR ALGORITMA Algoritma II-1 Kode Program HelloWorld.java dengan Menggunakan SWT ....................................II-16 Algoritma II-2 Kode Program PersonEditPart.java dengan Menggunakan GEF ................................II-20
ix
DAFTAR ISTILAH Distribusi fosil Penyebaran fosil yang ditemukan dalam satu lapisan batuan. Eclipse Eclipse merupakan sebuah open source software framework yang berbentuk Integrated Development Environment (IDE) untuk pengembang bahasa pemrograman Java. Eclipse terdiri dari Java Development Tools (JDT) dan Eclipse Compiler for Java (ECJ). Namun, pengguna dapat mengembangkan kemampuan Eclipse dengan mengembangkan modul plug-in untuk Eclipse. Fosil Fosil (berasal dari bahasa Latin yaitu “fossus”) merupakan peninggalan dari makhluk hidup di masa lampau yang terkubur pada batuan sedimen atau bahan organik lain sehingga terjaga keadaannya sampai saat ini (telah membatu/mineralized). GEF (Graphical Editing Framework) Suatu library untuk memudahkan pembuatan suatu editor/tampilan grafik yang interaktif pada kakas pengembangan Eclipse Kolom Stratigrafi/Stratigraphic section Representasi grafik dari urutan unit batuan. Laporan distribusi fosil/report Gambar hasil olahan data distribusi fosil dan kolom Stratigrafi tempat fosil tersebut ditemukan dalam satu siklus batuan. Moluska Moluska adalah nama umum dari filum hewan yang memiliki tubuh lunak (berasal dari bahasa Latin “mollus” yang artinya lunak), biasanya memiliki rangka luar/cangkang yang keras. Paleontology/Palaeontology Ilmu yang mempelajari kehidupan masa lampau melalui fosil (fossil evidence). Plug-in Sebuah plug-in (plugin, addin, add-in, addon, atau add-on) merupakan sebuah program komputer yang berinteraksi dengan host application untuk menyediakan sebuah fungsi spesifik yang bersifat on demand. Proyek/project Penelitian fosil Moluska. PSICAT (Paleontological Stratigraphic Interval Construction and Analysis Tool) Merupakan sebuah perangkat lunak untuk mendeskripsikan core diagram yang juga dapat menyimpan data yang terdapat pada diagram tersebut. Deskripsi core diagram adalah dokumentasi utama dari cylindrical rock samples sebagai hasil dari scientific drilling. Stratigrafi/Stratigraphy Cabang ilmu Geologi yang mempelajari lapisan batuan dan proses terbentuknya. Umumnya digunakan dalam mempelajari batuan sedimen dan lapisan batuan vulkanik.
x
DAFTAR SIMBOL No. 1.
Simbol
Keterangan
Melambangkan suatu proses dalam sistem.
2.
Melambangkan data yang disimpan dalam basis data pada suatu sistem.
3.
Melambangkan berkas file yang disimpan/dihasilkan pada suatu sistem.
4.
Melambangkan use case pada sebuah diagram yang menggambarkan fungsionalitas tertentu.
5.
Melambangkan aktor/pengguna dari suatu perangkat lunak.
xi