REKAYASA GUI UNTUK REMASTERING
DISTRO UBUNTU BERBASIS APLIKASI CUSTOMIZER
Skripsi
Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Informatika
Program Studi Teknik Informatika
Oleh : Kevin 085314067
PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA YOGYAKARTA
2012
GUI REENGINEERING FOR UBUNTU REMASTERING BASED ON CUSTOMIZER APPLICATION
A Thesis
Presented as Partial Fulfillment of the Requirements to Obtain Sarjana Komputer Degree
in Informatics Engineering
By : Kevin 085314067
INFORMATICS ENGINEERING STUDY PROGRAM DEPARTMENT OF INFORMATICS ENGINEERING
FACULTY SCIENCE AND TECHNOLOGY SANATA DHARMA UNIVERSITY
YOGYAKARTA 2012
PERNYATAAN KEASLIAN
Saya menyatakan dengan sesungguhnya bahwa skripsi yang saya tulis ini tidak memuat karya atau bagian karya orang lain terkecuali yang sudah tertulis didalam kutipan daftar pustaka, sebagaimana layaknya sebuah karya ilmiah.
Yogyakarta, 12 Desember 2012 Penulis
Kevin
HALAMAN PERSEMBAHAN
Skripsi ini saya persembahkan untuk :
KELUARGA TERCINTA
Papa saya yang telah menghadap Bapa di Surga, untuk Mama tercinta yang senantiasa membesarkan saya sampai saya bisa menyelesaikan studi, untuk Kakak
saya Michael, Nelly, Theo, dan juga keluarga yang selalu mendukung dan memberi semangat untuk tetap teguh menyelesaikan tugas akhir ini.
LASKAR IT 2008
Terima kasih atas support dan ejekan yang membuat saya terus dipacu untuk semangat dan tidak mau menyerah dalam pembuatan tugas akhir ini.
SANATA DHARMA OPEN SOURCE
Terima kasih sebesar besarnya untuk teman teman SaOS yang telah berpartisipasi dalam pembuatan tugas akhir saya ini hingga selesai.
KPLI YOGYAKARTA
Terima kasih kepada teman teman KPLI Jogja yang telah membantu dalam pengisian kuisoner Tugas Akhir saya sehingga saya dapat menyelesaikannya.
Salam Open Source
PERSETUJUAN PUBLIKASI
Yang bertanda tangan dibawah ini, saya mahasiswa Universitas Sanata Dharma :
Nama : Kevin NIM : 085314067
Demi mengembangkan ilmu pengetahuan, saya memberikan kepada Perpustakaan Universitas Sanata Dharma karya ilmiah saya yang berjudul :
REKAYASA GUI UNTUK REMASTERING DISTRO UBUNTU BERBASIS APLIKASI CUSTOMIZER
Beserta perangkat yang diperlukan (bila ada). Dengan demikian, saya memberikan kepada Unviversitas Sanata Dharma hak untuk menyimpan, megnalihkan kedalam bentuk media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikannya secara terbatas, dan pempublikasikannya diinternet atau media lain untuk kepentingan akademis tanpa perlu ijin dari saya maupun memberi rolayti kepada saya selama tetap mencantumkan nama saya sebagai penulis.
Demikian pernyataan ini saya buat dengan sebenarnya. Pada tanggal : 12 Desember 2012
Yang menyatakan
Kevin
ABSTRAK
Ubuntu merupakan distro GNU/Linux yang populer. Ubuntu populer karena kemudahannya sehingga memiliki banyak turunan. Untuk membuat suatu distro turunan ubuntu dibutuhkan proses remastering. Untuk memudahkan proses remastering dibutuhkan alat bantu, salah satunya aplikasi Customizer.
Customizer dirasa masih terlalu sulit untuk pengguna yang baru mengenal sistem operasi terbuka dibuktikan dengan analisa menggunakan aturan perancangan oleh Shneiderman. Berdasarkan analisa tersebut dibuatlah aplikasi SadharOSRemake yang merupakan hasil modifikasi aplikasi Customizer.
Apikasi SadharOSRemake dibuat dengan memperbaiki beberapa kekurangan pada aplikasi Customizer serta menambahkan beberapa fitur untuk memudahkan proses remastering distro Ubuntu. Aplikasi SadharOSRemake juga dibuat sesuai dengan aturan perancangan antarmuka dari Shneiderman, sehingga memudahkan pengguna yang baru mengenal sistem operasi terbuka.
ABSTRACT
Ubuntu is a one of popular GNU/Linux distro. Ubuntu is popular because of its simplicity so it has many derivatives. To make an Ubuntu derivative distro needed remastering process. To facilitate the process of remastering the tools needed, one Customizer application .
Custmoizer it is still too difficult for users who are new to the open operating system is evidenced by an analysis using the design rules by Shneiderman. Based on the analysis made SadharOSRemake application which is a modification of the Customizer application.
SadharOSRemake application made by fixing some deficiencies in the Custmoizer application and added some features to ease the process of remastering the Ubuntu distro. SadharOSRemake application also made in accordance with the rules of interface design by Shneiderman, making it easier for users who are new to the open operating system.
KATA PENGANTAR
Puji dan syukur kepada Tuhan Yesus Kristus atas segala berkat dan karunia-Nya, sehingga penulis dapat menyelesaikan tugas akhir yang berjudul “Rekayasa GUI untuk Remastering Distro Ubuntu berbasis Aplikasi Customizer” ini dengan baik.
Penulis menyadari bahwa selama proses penelitian dan penyusunan laporan tugas akhir ini, banyak pihak yang telah memberikan bantuan baik berupa dukungan, perhatian, semangat, kritik dan saran yang sangat penulis butuhkan, sehingga pada kesempatan ini penulis ingin mengucapkan terima kasih yang sebesar-besarnya, antara lain kepada :
1. Bapak Iwan Binanto, S.Si., M.Cs. selaku dosen pembimbing tuga akhir, atas kesabarannya dalam membimbing penulis, meluangkan waktunya, memberikan dukungan, motivasi, serta saran yang sangat membantu penulis.
2. Bapak Puspaningtyas Sanjoyo Adi, S.T,. M.T. dan Bapak Henricus Agung Hernawan S.T., M.Kom. selaku dosen penguji yang telah memberikan saran dan masukan yang berguna dalam tugas akhir ini.
3. Bapakku Stephanus Sudjono Kristanto dan Ibuku Tjioe Khie Shen serta kakak aku Michael, Theresia Nelly, Theodorus Sularno atas doa, semangat, dukungan baik moril maupun finansial serta kasih yang begitu besar yang selalu ada untukku.
4. Teman teman Laskar IT 2008 yang selalu kompak mendukung serta memberi dukungan sampai aku menyelesaikan tugas akhir ini.
5. Teman teman komunitas Sanata Dharma Open Source yang menjadi sumber inspirasi tugas akhir ini.
6. Teman teman komunitas Open Source se-Yogyakarta yang telah memberi dukungan sehingga aku bisa menyelesaikan hingga akhir. 7. Semua pihak yang telah membantu dan mendukung baik secara
langsung dan tidak langsung, penulis mengucapkan banyak terima kasih.
Penulis menyadari bahwa masih banyak kekurangan dalam penyusunan tugas akhir ini. Saran dan kritik sangat diharapkan untuk perbaikan yang akan datang. Akhir kata, semoga tulisan ini dapat bermanfaat bagi kemajuan dan perkembangan ilmu pengetahuan.
Yogyakarta, 12 Desember 2012
Kevin
DAFTAR ISI
1.5.2 Pengembangan Sistem ...3
1.5.2.1 Envision...3
2.4.2 Memodifikasi pengaturan dari distro Ubuntu...8
2.4.3 Membersihkan file sementara...8
2.4.4 Membuat file ISO...8
2.5 Customizer...8
2.6 Gambas...9
2.7 Shell...11
2.7.1 Bourne Shell (sh)...11
2.7.2 C Shell (csh)...11
2.7.3 Korn Shell (ksh)...11
2.7.4 Bourne Again Shell (bash)...12
2.8 Perancangan Tampilan Antarmuka (User Interface)...12
2.8.1 Mengenali perbedaan berdasarkan jenis-jenis pemakai...12
2.8.2 Menggunakan 8 aturan emas perancangan antarmuka...13
2.8.2.1 Strive for consistency...13
2.8.2.2 Cater to universal usability...13
2.8.2.3 Offer informative feedback...13
2.8.2.4 Desain dialogs to yield closure...13
2.8.2.5 Prevent errors...13
2.8.2.6 Premit easy reversal of actions...14
2.8.2.7 Support internal locus of control...14
2.8.2.8 Reduce short term memory...14
2.8.3 Mencegah Kesalahan ...14
2.9 LUCID ...14
3.1 Envision ( Gambaran umum sistem )...18
3.2 Discovery ( Analisa Sistem )...19
3.2.1 Berdasarkan Jenis Pemakai...19
3.2.2 Berdasarkan 8 aturan emas perancangan antarmuka...19
3.2.3 Berdasarkan Pencegahan Kesalahan...20
3.3 Design Foundation...20
3.3.1 Diagram Use Case...20
3.3.1.1 Use Case Utama...20
3.3.1.2 Menu Main...21
3.3.2 Narasi use Case...23
3.3.3 Flowchart...33
3.3.4 Rancangan Tampilan Aplikasi...34
...36
3.3.5 Gambaran Tata Letak Aplikasi...36
3.4 Design Detail...37
BAB 4 IMPLEMENTASI...42
4.1 Spesifikasi Minimum Sistem...42
4.1.1 Perangkat Keras...42
4.1.2 Perangkat Lunak...42
4.2 Build...43
4.2.1 Implementasi Antarmuka Utama...43
4.2.2 Implementasi Antarmuka Menu...44
4.2.2.1 Menu Main...44
4.2.2.2 Menu Tampilan...44
4.2.2.3 Menu Tambahan...45
4.2.2.4 Menu Bantuan...46
4.2.3 Implementasi Antarmuka Form Menu...47
4.2.3.1 Form Menu Pengaturan...47
4.2.3.2 Form Menu Icon...47
4.2.3.3 Form Logo...51
4.2.4 Implementasi Antarmuka Form Tambahan...57
4.2.4.1 Form Jaringan...57
4.2.4.2 Form Basis Data...59
4.2.4.3 Form Komputasi...61
4.2.4.4 Form Multimedia...62
4.2.4.5 Form Desain Grafis...64
4.2.4.6 Form Pemrograman...66
4.2.5 Implementasi Antarmuka Pesan eror...69
BAB 5 ANALISA HASIL...71
5.1 Pengujian Black Box...71
5.1.1 Tabel Pengujian halaman utama...72
5.1.2 Tabel Pengujian halaman pengaturan...73
5.1.3 Table pengujian halaman Icon...73
5.1.4 Tabel pengujian halaman tema...73
5.1.5 Tabel pengujian halaman logo...74
5.1.6 Tabel pengujian halaman wallpaper...74
5.1.7 Tabel pengujian halaman Pembuat...75
5.1.8 Tabel pengujian halaman lisensi...75
5.1.9 Tabel pengujian halaman Tentang...75
5.1.10 Tabel pengujian halaman jaringan...75
5.1.11 Tabel pengujian halaman basis data...76
5.1.12 Tabel pengujian halaman komputasi...76
5.1.13 Tabel pengujian halaman desain...76
5.1.14 Tabel pengujian halaman multimedia...76
5.1.15 tabel pengujian halaman pemrograman...77
5.2 Pengujian kuisoner...77
5.2.1 pengujian validitas dan reliabilitas...78
5.2.1.1 Memodifikasi Kuisoner...78
5.2.1.2 Uji Instrumen...79
5.2.1.3 Uji Validitas...80
5.2.1.4 Uji reliabilitas...81
5.2.1.5 Hasil uji validitas dan reliabilitas...85
5.2.2 Data hasil sampel responden...86
5.2.3 Interpretasi Skor...90
5.3 Analisa Berdasarkan 3 Prinsip Perancangan...92
5.3.1 Berdasarkan Jenis Pemakai...93
5.3.2 Berdasarkan 8 aturan emas perancangan antarmuka...93
5.3.3 Berdasarkan Pencegahan Kesalahan...93
5.4 Kelebihan sistem...94
5.5 Kekurangan sistem...94
BAB 6 KESIMPULAN...95
6.1 Kesimpulan...95
6.2 Saran...95
DAFTAR PUSTAKA...96
LAMPIRAN KUISONER...98
PENGUJIAN BLACKBOK...130
DAFTAR TABEL
Table 2.1: Tabel Kategori Skala Likert...16
Table 3.1: Use Case Akses Root...23
Table 3.2: Use Case Tampilkan Pengaturan...23
Table 3.3: Use Case Keluar Dari Program...24
Table 3.4: Use Case Edit Icon...24
Table 3.5: Use Case Edit Logo...25
Table 3.6: Use Case Edit Tema...25
Table 3.7: Use Case Edit Wallpaper...26
Table 3.8: Use Case Edit Source.list...26
Table 3.9: Use Case Jalankan Terminal...27
Table 3.10: Use Case Tampilkan Pembuat...27
Table 3.11: Use Case Tampilkan Lisensi...28
Table 3.12: Use Case Tampilkan Tentang...28
Table 3.13: Use Case Jaringan...29
Table 3.14: Use Case Basis Data...29
Table 3.15: Use Case Komputasi...30
Table 3.16: Use Case Multimedia...30
Table 3.17: Use Case Desain Grafis...31
Table 3.18: Use Case Pilih File ISO...31
Table 3.19: Use Case Buat Ulang ISO...32
Table 3.20: Use Case Jalankan Emulator...32
Table 3.21: Use Case Bersihkan Direktori Kerja...33
Table 5.1: Tabel Pengujian Halaman Utama...72
Table 5.2: Tabel Pengujian Halaman Pengaturan...73
Table 5.3: Tabel Pengujian Halaman Icon...73
Table 5.4: Tabel Pengujian Halaman Tema...74
Table 5.5: Tabel Pengujian Halaman Logo...74
Table 5.6: Tabel Pengujian Halaman Wallpaper...75
Table 5.7: Tabel Pengujian Halaman Pembuat...75
Table 5.8: Tabel Pengujian Halaman Lisensi...75
Table 5.9: Tabel Pengujian Halaman Tentang...75
Table 5.10: Tabel Pengujian Halaman Jaringan...75
Table 5.11: Tabel Pengujian Halaman Basis Data...76
Table 5.12: Tabel Pengujian Halaman Komputasi...76
Table 5.13: Tabel Pengujian Halaman Desain...76
Table 5.14: Tabel Pengujian Halaman Multimedia...77
Table 5.15: Tabel Pengujian Halaman Pemrograman...77
Table 5.16: Tabel Profil Responden...87
Table 5.17: Tabel hasil kuisoner Perceived of Userfulness...88
Table 5.18: Tabel hasil kuisoner Perceived ease of use ...89
Table 5.19: Tabel Kategori Skala Likert...90
Table 5.20: Tabel total responden berdasarkan nilai Perceived of Usefulness ...90
Table 5.21: Tabel total seluruh responden Perceived of Usefulness ...91
Table 5.22: Tabel total responden berdasarkan nilai Perceived ease of use ...92
Table 5.23: Tabel total seluruh responden Perceived ease of use ...92
DAFTAR GAMBAR
Gambar 2.1: Contoh Form Interface pada Gambas...10
Gambar 2.2: Contoh Properties pada Gambas...10
Gambar 2.3: Contoh Koding di Gambas...10
Gambar 3.1: Use Case Utama...20
Gambar 3.2: Use Case Menu Main...21
Gambar 3.3: Use Case Menu Tambahan...21
Gambar 3.4: Use Case Menu Tampilan...21
Gambar 3.5: Use Case Menu Bantuan...22
Gambar 3.6: Use Case Tombol Fungsi...22
Gambar 3.7: Use Case Pilih Aplikasi...22
Gambar 3.8: Flowchart...33
Gambar 3.9: Rancangan Utama Aplikasi...34
Gambar 3.10: Rancangan Form List Aplikasi (Jaringan, basis data, komputasi, multimedia, desain grafis dan pemrograman)...34
Gambar 3.11: Rancangan Menu Main...34
Gambar 3.12: Rancangan Menu Tambahan...34
Gambar 3.13: Rancangan Menu Tampilan...34
Gambar 3.14: Rancangan Menu Bantuan...34
Gambar 3.15: Rancangan Form Lisensi...35
Gambar 3.16: Rancangan Form Pembuat...35
Gambar 3.17: Rancangan Form Tentang...35
Gambar 3.18: Rancangan Form Pengaturan...35
Gambar 3.19: Rancangan Form Icon...35
Gambar 3.20: Rancangan Form Wallpaper...36
Gambar 3.21: Rancangan Form Logo...36
Gambar 3.22: Rancangan Form Tema...36
Gambar 3.23: Tata Letak SadharOS Remake...36
Gambar 3.24: Rancangan Antarmuka Utama...37
Gambar 3.25: Rancangan Antarmuka Menu Main...37
Gambar 3.26: Rancangan Antarmuka Menu Tampilan...38
Gambar 3.27: Rancangan Antarmuka Menu Tambahan...38
Gambar 3.28: Rancangan Antarmuka Menu Bantuan...38
Gambar 3.29: Rancangan Form Pengaturan...38
Gambar 3.30: Rancangan Form Icon...39
Gambar 3.31: Rancangan Form Logo...39
Gambar 3.32: Rancangan Form Tema...39
Gambar 3.33: Rancangan Form Wallpaper...40
Gambar 3.34: Rancangan Form Pembuat...40
Gambar 3.35: Rancangan Form Lisensi...40
Gambar 3.36: Rancangan Form Tentang...41
Gambar 3.37: Rancangan Form Jaringan...41
Gambar 3.38: Rancangan Form Komputasi...41
Gambar 3.39: Rancangan Form Basisdata...41
Gambar 3.40: Rancangan Form Multimedia...41
Gambar 3.41: Rancangan Form Desain Grafis...41
Gambar 3.42: Rancangan Form Pemrograman...41
Gambar 4.1: Implementasi Antarmuka Utama...43
Gambar 4.2: Implementasi Antarmuka Menu Main...44
Gambar 4.3: Implementasi Antarmuka Menu Tampilan...45
Gambar 4.4: Implementasi Antarmuka Menu Tambahan...45
Gambar 4.5: Implementasi Antarmuka Menu Bantuan...46
Gambar 4.6: Implementasi Form Pengaturan...47
Gambar 4.7: Implementasi Form Icon...48
Gambar 4.8: Implementasi Form Logo...51
Gambar 4.9: Implementasi Form Tema...52
Gambar 4.10: Implementasi Form Wallpaper...55
Gambar 4.11: Implementasi Form Pembuat...56
Gambar 4.12: Implementasi Form Lisensi...56
Gambar 4.13: Implementasi Form Tentang...57
Gambar 4.14: Implementasi Form Jaringan...58
Gambar 4.15: Implementasi Form Basisdata...60
Gambar 4.16: Implementasi Form Komputasi...61
Gambar 4.17: Implementasi Form Multimedia...63
Gambar 4.18: Implementasi Form Desain Grafis...65
Gambar 4.19: Implementasi Form Pemrograman...67
Gambar 4.20: Pesan Error 1...69
Gambar 4.21: Pesan Error 2...69
Gambar 4.22: Pesan Error 3...69
Gambar 4.23: Pesan Error 4...70
Gambar 4.24: Pesan Error 5...70
Gambar 5.1: Hasil Uji Responden Variabel Percivied of Usefulness...79
Gambar 5.2: Hasil Uji Responden Variabel Perceived Ease of Use...80
Gambar 5.3: Korelasi Uji Responden Variabel Percivied of Usefulness...80
Gambar 5.4: Korelasi Uji Responden Variabel Perceived Ease of Use...81
Gambar 5.5: Pengelompokan nomor ganjil Perceived of Usefulness...81
Gambar 5.6: Pengelompokan nomor genap Perceived of Usefulness...82
Gambar 5.7: Total masing masing pengelompokan Perceived of Usefulness...82
Gambar 5.8: Hasil korelasi dari total pengelompokan Perceived of Usefulness...83
Gambar 5.9: Pengelompokan nomor ganjil Perceived ease of use...83
Gambar 5.10: Pengelompokan nomor genap Perceived ease of use...84
Gambar 5.11: Total masing masing pengelompokan Perceived ease of use...84
Gambar 5.12: Hasil korelasi dari total pengelompokan Perceived ease of use...85
BAB 1
PENDAHULUAN
1.1 Latar Belakang
Sistem operasi berbasis terbuka sekarang ini telah berkembang sangat pesat. Hal ini dibuktikan dengan semakin banyaknya variasi sistem operasi terbuka (Distrowatch,2012). Alasan semakin banyaknya variasi sistem operasi terbuka yaitu sistem operasi terbuka dapat dimodifikasi sesuai kebutuhan dibandingkan dengan sistem operasi tertutup karena sumber yang terbuka memungkinkan siapa saja menciptakan sistem operasi sendiri. Untuk mengatur penggunaan sistem operasi terbuka dibuatlah lisensi GNU GPL (General Public License). GNU GPL berisi tentang sistem operasi terbuka, bebas untuk disebarluaskan, bebas untuk di modifikasi tetapi dengan tetap mencantumkan pembuat terdahulu sistem operasi terbuka tersebut. Akibat dari lisensi tersebut banyak sistem operasi terbuka hasil modifikasi dari sistem operasi terbuka lainnya, contohnya GNU/Linux. Sistem operasi hasil modifikasi dari sistem operasi berbasis GNU/Linux dinamakan Distribution atau lebih dikenal distro. Salah satu distro yang terkenal yaitu Ubuntu. Ubuntu merupakan pelopor distro yang memudahkan instalasi serta cara modifikasi berbagai aplikasi didalamnya (Noyes,2008).
GNU/Linux dapat dimodifikasi menggunakan dua cara yaitu LFS dan Remastering. Cara yang paling sering digunakan adalah remastering. Remastering bekerja dengan mengubah tampilan dan aplikasi default dari suatu distro GNU/Linux. Proses remastering dapat dilakukan siapa saja dengan pemahaman cukup mengenai struktur sistem operasi terbuka, sedangkan LFS lebih disarankan untuk tingkat profesional, karena LFS membuat sistem operasi dari awal.
melakukan proses remastering menggunakan antarmuka berbasis grafis atau GUI, sehingga memudahkan pengguna. Sudah ada aplikasi remastering berbasis GUI, yaitu Customizer yang dibuat oleh Ivailo Monev. Tetapi berdasarkan analisa penulis dengan menggunakan aturan perancangan antarmuka Shneiderman (2005) didapat hasil bahwa aplikasi Customizer ditujukan untuk pengguna advance. Customizer juga tidak memenuhi 8 aturan emas perancangan antarmuka serta belum memiliki panduan yang jelas untuk melakukan proses remastering.
Berdasarkan hasil analisa tersebut, peneliti akan mengubah tampilan antarmuka aplikasi Customizer menurut aturan perancangan antarmuka Shneiderman (2005) dan menambahkan beberapa menu agar pengguna awam lebih mudah melakukan proses remastering serta mendapatkan manfaatnya.
1.2 Rumusan Masalah
Bagaimana merekayasa aplikasi Customizer sehingga memudahkan proses remastering dan penambahan aplikasi pada distro Ubuntu.
1.3 Tujuan
Rekayasa antarmuka Customizer untuk memudahkan proses remastering dan penambahan aplikasi distro Ubuntu.
1.4 Batasan Masalah
• Aplikasi remastering ini hanya difokuskan untuk distro Ubuntu dari versi 11.04 sampai dengan versi 12.10
1.5 Medotologi Penelitian
Metode penelitian yang dipakai untuk merekayasa antarmuka Customizer adalah sebagai berikut :
1.5.1 Studi Literatur
Mempelajari teori yang digunakan dalam menyelesaikan Tugas Akhir. 1.5.2 Pengembangan Sistem
Pengembangan sistem menggunakan metode Logical User Centered Interaction Design / LUCID (Kreitzberg,2008). Metode ini menggunakan tahap pengembangan sistem yang berfokus pada pengguna, antara lain sebagai berikut :
1.5.2.1 Envision
Tahap ini merupakan tahap awal yang bertujuan definisikan objek bisnis sistem, mengidentifikasi masalah ,dan mengembangkan dan menemukan visi dari stakeholder.
1.5.2.2 Discovery
Tahap ini merupakan tahap penelitian dan analisa kebutuhan. Pada tahap ini, penulis menganalisa antarmuka aplikasi Customizer menurut 3 prinsip dalam merancang user interface dari buku Designing the User Interface (Shneiderman,2005).
1.5.2.3 Design foundation
Tahap ini memulai konsep perancangan antarmuka secara visual dengan pembuatan kerangka tata letak sistem yang akan dibangun.
1.5.2.4 Design detail
Tahap ini membuat tampilan antarmuka lebih detail lagi sehingga pengembang sistem dapat melakukan pengkodean tanpa banyak melakukan klarifikasi atau perbaikan.
1.5.2.5 Build
menggunakan black box testing. Black box testing merupakan pengujian yang memungkinkan pengembang aplikasi mendapatkan serangkaian kondisi input yang sepenuhnya menggunakan semua persyaratan fungsional untuk suatu program (Pressman, 2005).
1.5.2.6 Release
Merupakan tahap terakhir dari metode LUCID ini. Pada tahap ini aplikasi telah siap untuk digunakan oleh pengguna .
1.5.3 Pengujian
Pengujian akan dilakukan untuk mendapatkan tanggapan dari pengguna tentang aplikasi yang dibuat. Pengujian menggunakan kuisoner milik Fred F Davis (1989).
1.6 Sistematika Penulisan
BAB I PENDAHULUAN
Bab ini berisi latar belakang penulisan tugas akhir, rumusan masalah, metodologi penelitian dan sistematika penulisan. BAB II LANDASAN TEORI
Bab ini menjelaskan tentang teori yang berkaitan dengan judul atau rumusan masalah dari tugas akhir
BAB III ANALISA DAN PERANCANGAN
Bab ini menjelaskan tentang spesifikasi alat yang digunakan dan perancangan desain pengujian
BAB IV IMPELEMNTASI
Bab ini berisi tentang pelaksanaan pengujian dan hasil pengujian BAB V ANALISA HASIL
Bab ini berisi analisa berdasarkan hasil yang telah didapatkan. BAB VI KESIMPULAN
BAB 2
LANDASAN TEORI
2.1 Open Source
Pada awal tahun 1980, dua kelompok yang berbeda membentuk dasar dari gerakan perangkat lunak sumber terbuka saat ini (Gonzalez,2000), yaitu:
Di Timur AS pantai, Richard Stallman, sebelumnya seorang programmer di MIT AI lab, mengundurkan diri, dan meluncurkan Proyek GNU dan Free Software Foundation. Tujuan utama dari proyek GNU adalah membangun sistem operasi bebas, dan Richard memulainya dengan coding beberapa tool pemrograman (compiler, editor, dll). Sebagai dasarnya dibuatlah lisensi GNU General Public License (GPL) didesain bukan hanya untuk menjamin bahwa perangkat lunak yang dihasilkan oleh GNU akan tetap bebas, tetapi untuk mempromosikan produksi perangkat lunak lebih banyak dan lebih bebas. Di sisi filosofis, Richard Stallman juga menulis Manifesto GNU, yang menyatakan bahwa ketersediaan source code dan kebebasan untuk mendistribusikan dan memodifikasi perangkat lunak adalah hak mendasar.
Di AS pantai Barat, Ilmu Komputer Research Group (CSRG) dari Universitas of California di Berkeley telah memperbaiki sistem Unix, dan membangun banyak aplikasi yang cepat menjadi “BSD Unix''. Upaya ini didanai terutama oleh kontrak DARPA, dan komunitas hacker Unix diseluruh dunia membantu dalam penanganan masalah yang muncul, memelihara dan meningkatkan sistem. Tapi di akhir 1980, software akhirnya didistribusikan dibawah lisensi “BSD”, satu dari lisensi open source pertama. Sayangnya, pada waktu itu setiap user dari BSD Unix memerlukan lisensi AT&T Unix, sejak beberapa bagian dari kernel dan utilitas penting beberapa, yang diperlukan untuk sistem yang dapat digunakan, masih proprietary.
GNU/Linux dan BSD sudah cukup stabil. Sejak itu, BSD telah berkembang menjadi keluarga dari sistem operasi berbasis BSD (NetBSD, FreeBSD, dan OpenBSD), sedangkan kernel Linux digunakan dibanyak distribusi GNU/Linux (Slackware, Debian, Red Hat, Suse, Mandrake , dan banyak lagi).
2.2 GNU/Linux
Tahun 1985 Richard Matthew Stallman dengan memegang teguh prinsip Free Software, membentuk Free Software Foundation dan membuat sebuah sistem operasi dinamakan GNU yang memiliki akronim GNU is not Unix. Untuk memperjelas status GNU dan Free Software Foundation, Richard Stallman membuat sebuah lisensi GNU Public License atau disingkat GPL dan dikenal dengan nama Copyleft. Nama Copyleft sebenarnya hanya untuk mengejek lisensi Copyright yang digunakan oleh semua aplikasi pada saat itu.
Tahun 1990 seorang mahasiswa bernama Linux Trovalds menghubungi Profesor Andy Tanenbaum sang pengembang sistem operasi Minix untuk mengembangkan sistem operasi tersebut, tetapi tidak mendapat ijin dari profesor Andy Tanenbaum. Akhirnya Linux Trovalds berupaya membuat sendiri sistem operasi dengan dasar lisensi GPL yang dibuat oleh Richard Stallman. Pada tahun yang sama akhirnya Linux Trovalds berhasil membuat sistem dasar pada sebuah sistem operasi yang dinamakan kernel. Kernel tersebut terkenal sampai sekarang dengan nama Linux. Pada awalnya Linux hanyalah sebuah kernel dan membutuhkan tambahan sistem untuk menjadi sebuah sistem operasi yang utuh, sehingga Richard Stallman setuju untuk menggabungkan Linux dengan GNU dan lahirlah sebuah sistem operasi bernama GNU/Linux (Hasan,2005).
2.3 Ubuntu
bahasa afrika yaitu oŏ’boŏntoō yang berarti kebersamaan. Sekarang ini ubuntu dikekola oleh perusahaan Canonical.ltd dan dikembangkan oleh komunitas ubuntu seluruh dunia.
Ubuntu mulai dikembangkan sejak tahun 2004 dan rilis pertama kali dengan versi 4.10 dan diberi kode Warthy Warthog. Ubuntu rilis setiap 6 bulan sekali yaitu pada bulan april dan bulan oktober. Untuk versi 6.06 merupakan versi khusus karena rilis pada bulan keenam yaitu juni, alasannya adalah versi 6.06 merupakan versi LTS (Long Term Support), yang memiliki dukungan penuh terhadap sistem operasi ubuntu selama 3 tahun. Versi LTS dimulai dari rilis versi 6.06 dan rilis setiap 2 tahun sekali, tetapi mulai dari versi 12.04 ubuntu memberikan dukungan penuh selama 5 tahun.
Ubuntu sekarang ini sudah memiliki dukungan dari banyak komunitas open source sedunia. Disetiap negara pasti saja memiliki komunitas ubuntu untuk mendukung dan promosi ubuntu agar digunakan secara umum. Kemudahan pemakaian dan instalasi menjadi faktor utama ubuntu menjadi populer seperti sekarang ini. Tidak hanya dari komunitas saja, tetapi banyak dari perusahaan besar memberikan dukungan penuh terhadap Ubuntu. (Loo,2012).
2.4 Remastering Ubuntu
Remastering Ubuntu adalah proses modifikasi tampilan serta aplikasi default pada distro Ubuntu. Proses modifikasi atau remastering distro Ubuntu tidaklah terlalu rumit, tetapi terlihat lebih membosankan karena harus dilakukan manual dan hanya menggunakan aplikasi terminal. Tahap proses remastering pada distro ubuntu dibagi menjadi 4 bagian yaitu (Williamson,2012) :
2.4.1 Mengekstrak File
remastering.Setelah itu mengekstrak file filesystem.squash yang berada didirektori /casper. File tersebut berisi direktori root dari distro Ubuntu.
2.4.2 Memodifikasi pengaturan dari distro Ubuntu
Untuk memodifikasi distro Ubuntu yang telah diekstrak tadi, konsol terminal harus dipindahkan terlebih dahulu kedalam direktori yg telah diekstrak. Untuk berpindah konsol kedirektori yang telah diekstrak menggunakan perintah “chroot direktori”, dimana direktori berisi file filesystem.squash yang telah diekstrak tadi. Setelah konsol berpindah baru kita dapat memodifikasi sesuai keinginan. Modifikasi bisa berupa mengubah alamat server repository, mengubah default wallpaper; icon; beserta temanya, dll. 2.4.3 Membersihkan file sementara
Setelah proses modfikasi selesai, sebelum dijadikan file ISO lagi, harus dibersihkan file file sementara yang tidak terpakai. Proses pembersihan bisa menggunakan perintah “aptitude clean” atau dengan menghapus isi dari direktori tmp.
2.4.4 Membuat file ISO
Proses yang terakhir adalah menjadikan kembali menjadi file ISO. Bagian pertama dalam membuat kembali file ISO yaitu membuat kembali file filesystem.squash dengan menggunakan perintah “mksquashfs”. Setelah file filesystem.squash jadi, bagian kedua membuat file ISO distro Ubuntu yang telah dimodifikasi dengan menggunakan perintah “mkisofs”.
2.5 Customizer
• Kustomisasi distro Ubuntu atau variantnya
• Akses cepat ke chroot Terminal, X-nested session, Package Manager dan banyak lagi.
• Dapat menggunakan GUI (Graphical User Interface) atau CLI (Command Line Interface) .
Customizer adalah aplikasi yang sudah lengkap karena dibuat terinspirasi dari banyak aplikasi remastering yang sudah ada. Sebagai perbandingannya UCK (Ubuntu Customize Kit) mengijinkan pengguna untuk melakukan proses remastering secara manual tetapi tidak dapat menampilkan emulator; sedangkan Novo Builder dapat menampilkan emulator tetapi hanya desktop environment GNOME saja; jika Remastersys membutuhkan sistem operasi yang sudah terinstal dan baru dapat melakukan proses remastering pada sistem operasi tersebut.
Customizer membagi file ISO menjadi dua direktori yaitu Filesystem dan ISO. Direktori Filesystem berisi direktori root, sedangkan direktori ISO berisi file lainnya yang terdapat pada file ISO seperti bootloader, README files, dll
2.6 Gambas
Gambas adalah pemrograman berbasis obyek yang mirip seperti Visual Basic. Gambas terinspirasi dari pemograman Java yang sudah terlebih dahulu berbasis obyek. Gambas dibuat oleh Benoit Minisini yang berasal dari Prancis. Ketika kita menyimpan suatu program yang dibuat menggunakan Gambas, akan terbuat tiga buah file dengan ekstensi .project; .class; dan .form. Dan jika di-compile akan menghasilkan file executable .gambas . Gambas memiliki IDE (Integrated Development Environment) sendiri yang jalan diatas platform linux. Untuk basis datanya gambas dapat dikombinasikan dengan beberapa basis data popular yaitu MySQL, PostgreSQL, dan SQLite.(Minisini,2000).
diperhatikan ketika mengembangkan aplikasi GUI proprietary dengan Gambas adalah masalah lisensi. Hal ini disebabkan karena Gambas menggunakan Qt sebagai GUI toolkit, yang mana mengharuskan kita untuk membayar lisensi komersial, apabila kita ingin mengembangkan aplikasi GUI proprietary,
Dasar dalam pembuatan aplikasi menggunakan gambas terdiri dari 3 tahap yaitu buat form interface, kemudian mengatur propertiesnya, dan langkah terakhir menulis koding (Hernandez,2006).
Gambar 2.1: Contoh Form Interface pada Gambas
Properties pada gambas hampir sama dengan bahasa pemrograman yang lain, contohnya seperti pada gambar dibawah ini :
Gambas dalam penulisan kodingnya menggunakan konsep pemrograman dasar, sehingga bisa dikatakan mirip dengan pemrograman Visual Basic.
Gambar 2.2: Contoh Properties pada Gambas
2.7 Shell
Shell adalah program penterjemah perintah yang menjembatani pengguna dengan sistem operasi, umumnya shell menyediakan sebuah tampilan sederhana sebagai user interface, tempat dimana pengguna mengetikkan perintah-perintah yang diinginkan baik berupa perintah internal shell, ataupun perintah eksekusi suatu file progam, selain itu shell memungkinkan pengguna menyusun sekumpulan perintah pada beberapa file untuk dieksekusi sebagai program.
Tidak seperti sistem operasi lain yang hanya menyediakan satu atau 2 shell, sistem operasi GNU/Linux sampai saat ini dilengkapi oleh banyak shell dengan kumpulan perintah yang sangat banyak, sehingga memungkinkan pemakai memilih shell mana yang paling baik untuk membantu menyelesaikan pekerjaannya, atau dapat pula berpindah-pindah dari shell yang satu ke shell yang lain dengan mudah, (Cooper,2012). Beberapa shell yang ada di linux antara lain:
2.7.1 Bourne Shell (sh)
Bourne Shell adalah shell pertama yang tetap digunakan oleh sistem UNIX atau sejenisnya. Bourne Shell merupakan sebuah program kecil dengan banyak fitur . Untuk sementara Bourne Shell bukan merupakan standart shell, tetapi sudah terdapat pada setiap GNU/Linux untuk mendukung kompatibilitas dengan program UNIX.
2.7.2 C Shell (csh)
Sebuah shell yang perintahnya menyerupai pemograman bahasa C, sehingga banyak programmer menjadi bingung untuk membedakannya.
2.7.3 Korn Shell (ksh)
2.7.4 Bourne Again Shell (bash)
Bash adalah sebuah shell, atau interpreter perintah baris, untuk sistem operasi GNU. Namanya merupakan singkatan dari "Bourne-Again SHell", diambil dari nama Stephen Bourne, penulis shell Unix /bin/sh. Bash sangat kompatibel dengan sh dan menyertakan fitur-fitur bermanfaat dari shell Korn (ksh) dan shell C (csh). Bash dapat berisi perintah dasar linux dan bekerja melalui CLI (Command Line Interface).
2.8 Perancangan Tampilan Antarmuka (User Interface)
Menurut Shneiderman dalam bukunya Designing the User Interface (2005, pp. 66-78), ada 3 prinsip dalam merancang user-interface, yaitu :
2.8.1 Mengenali perbedaan berdasarkan jenis-jenis pemakai • Novice (first-time users)
- Konsep tugas dan interface dangkal. - Perancangan:
▪ Batasi jumlah pilihan,
▪ Umpan balik yang informatif,
▪ Manual dan petunjuk online yang efekftif. • Knowledgeable intermittent users
- Konsep tugas stabil.
- Konsep interface luas namun sulit mengingat secara sintaktik.
- Perancangan:
▪ Struktur menu yang rapi, ▪ Konsistensi,
▪ Kejelasan interface yang jelas,
▪ Perlindungan dari bahaya karena eskplorasi fitur. • Expert frequent users
- Perancangan: ▪ Makro, ▪ Shortcuts, ▪ Singkatan, dsb.
2.8.2 Menggunakan 8 aturan emas perancangan antarmuka 2.8.2.1 Strive for consistency
Selalu konsisten dalam penggunaan bentuk dan ukuran font, pemberian warna pada latar belakang dan tulisan, pembuatan layout.
2.8.2.2 Cater to universal usability
Memungkinkan pengguna menggunakan shortcut sesering mungkin. Pengurangan jumlah interaksi melalui fasilitas shortcuts memberikan manfaat bagi pengguna dalam memberikan waktu respon dan waktu tampilan yang cepat.
2.8.2.3 Offer informative feedback
Untuk setiap tindakan yang dilakukan oleh pengguna, harus diberikan umpan balik (feedback). Umpan balik bisa berupa tampilan ataupun suara sehingga pengguna mengetahui bahwa perangkat lunak tersebut memberikan respon.
2.8.2.4 Desain dialogs to yield closure
Urutan dari tindakan harus diatur ke dalam suatu kelompok yang memiliki bagian awal, bagian tengah, dan bagian akhir. Umpan balik yang informatif dalam penyelesaian tindakan-tindakan akan memberikan kepuasan bagi pemakai.
2.8.2.5 Prevent errors
2.8.2.6 Premit easy reversal of actions
Dalam melakukan desain, sebisa mungkin diberikan undo. Hal ini akan memudahkan pengguna jika melakukan kesalahan yang tidak disengaja ketika sedang mengerjakan sesuatu.
2.8.2.7 Support internal locus of control
Sistem harus dirancang supaya pengguna merasa menguasai sistem dan sistem akan memberi respon atas tindakan yang diberikan.
2.8.2.8 Reduce short term memory
Manusia mempunyai keterbatasan dalam mengingat sehingga memerlukan tampilan sederhana, tampilan halaman-halaman dapat digabungkan, dan pergerakan Windows dapat dikurangi.
2.8.3 Mencegah Kesalahan
• Membetulkan perintah. • Melengkapi urutan aksi,
• Membetulkan pasangan yang bersesuaian.
2.9 LUCID
Metode Logical User Centered Interaction Design / LUCID adalah metode yang tahap pengembangan sistemnya berfokus pada pengguna. Metode ini bertujuan untuk membangun sebuah sistem yang dapat dikembangkan selanjutnya oleh pengembang itu sendiri atau oleh orang lain, (Kreitzberg,2008) tahap pengembangannya antara lain sebagai berikut :
2.9.1 Envision
Tahap ini merupakan tahap awal yang bertujuan definisikan objek bisnis sistem, mengidentifikasi masalah, dan mengembangkan serta menemukan visi dari stakeholder.
2.9.2 Discovery
ini bertujuan untuk mempelajari dan menganalisa masalah yang akan diselesaikan oleh sebuah sistem yang akan dibangun.
2.9.3 Design Foundation
Tahap ini memulai konsep perancangan antarmuka secara visual dengan pembuatan kerangka tata letak sistem yang akan dibangun. Tahap ini masih dalam blueprint sistem yang akan dibangun
2.9.4 Design detail
Tahap ini membuat tampilan antarmuka lebih detail lagi sehingga pengembang sistem dapat melakukan pengkodean tanpa banyak melakukan klarifikasi atau perbaikan.
2.9.5 Build
Merupakan tahap implementasi. Pada tahap ini dilakukan juga uji coba menggunakan black box testing. Tahap ini merupakan tahap pengujian sistem sebelum dirilis untuk digunakan oleh pengguna. Pengujian berupa pengujian fungsionalitas dan dilakukan oleh tim penguji atau orang yang memiliki pengetahuan tentang sistem yang dibuat.
2.9.6 Release
Merupakan tahap terakhir dari metode LUCID ini. Pada tahap ini aplikasi telah siap untuk digunakan oleh pengguna. Sistem sudah dapat digunakan oleh pengguna.
2.10 PSPP
Software Foundation,2005)
2.11 Skala Likert
Skala likert dikembangkan oleh Rensis Likert pada tahun 1932. Skala Likert digunakan untuk mengukur sikap, pendapat, dan persepsi seseorang atau sekelompok orang tentang fenomena sosial. Dengan Skala Likert, variabel yang akan diukur dijabarkan menjadi indikator variabel. Kemudian indikator tersebut dijadikan sebagai titik tolak untuk menyusun item-item instrumen yang dapat berupa pertanyaan atau pernyataan. Dalam skala Likert terdapat dua bentuk pernyataan yaitu pernyataan positif yang berfungsi untuk mengukur sikap positif, dan pernyataan negatif yang berfungsi untuk mengukur sikap negatif objek sikap. Pengukuran tersebut menghasilkan sebuah intepretasi nilai dalam persentase yang dicocokan kedalam sebuah kategori. (Bertram,2006)
Untuk penentuan kategori dalam skala likert dapat ditentukan sesuai kondisi kuisoner yang ada. Banyaknya kategori dalam skala likert dimulai dari 3 jenis kategori sampai dengan 7 jenis kategori. Umumnya Skala likert menggunakan 5 kategori penilaian, tabel 5 kategori dapat dilihat dibawah ini :
Interval (%) Kategori
Table 2.1: Tabel Kategori Skala Likert
Untuk intepretasi nilainya, perhitungan dapat dilakukan melalui cara dibawah ini :
1. Cari nilai tertinggi dari pernyataan yang ada melalui rumus : total = nilai_tertinggi x jumlah_pernyataan x jumlah_responden
2. Cari total keseluruhan dari responden yang ada melalui rumus : total responden =
∑
n=1
nilai = besarnya bobot nilai pernyataan
jumlah responden nilai = jumlah responden yang memilih bobot nilai
3. Tentukan persentase nilai dengan rumus :
total responden
total x100
BAB 3
ANALISA DAN PERANCANGAN
Tujuan perancangan sistem adalah untuk memenuhi kebutuhan user mengenai gambaran yang jelas tentang pembuatan dan implementasi dari aplikasi yang dibuat. Perancangan dilakukan berdasarkan metode Logical User Centered Interaction Design / LUCID. Perancangan meliputi 4 kategori yaitu :
1. Envision yang berisi gambaran umum sistem 2. Discovery yang berisi analisa sistem
3. Design Foundation yang berisi diagram Use Case, narasi Use Case, flowchart, rancangan tampilan aplikasi, dan gambaran tata letak aplikasi.
4. Design Detail yang berisi tampilan detail rancangan program.
3.1 Envision ( Gambaran Umum Sistem )
Sistem yang akan dibuat merupakan aplikasi remastering distro Ubuntu dengan antarmuka grafis atau GUI menggunakan script yang telah ada yaitu Customizer dikombinasikan dengan script manual Remastering Ubuntu. Aplikasi ini dinamakan “SadharOS Remake” karena aplikasi ini dapat pula membuat distro SadharOS karena terdapat beberapa bahan dalam pembuatan distro SadharOS seperti tema, icon, dan logo. Script pada Customizer dikombinasikan script manual Remastering Ubuntu merupakan inti dari sistem yang akan dibuat, fungsinya untuk mengolah distro Ubuntu.
telah berisi aplikasi yang telah dipilih tadi.
Aplikasi “SadharOS Remake” ditujukan untuk pengguna yang baru saja mengenal sistem operasi berbasis GNU/Linux, khususnya distro Ubuntu. Tujuan utama aplikasi ini yaitu memudahkan pengguna pemula GNU/Linux memodifikasi distro Ubuntu sesuai kebutuhan pengguna.
3.2 Discovery ( Analisa Sistem )
Analisa dilakukan berdasarkan 3 prinsip dalam merancang user interface dari buku Designing the User Interface (Shneiderman,2005), berikut analisa yang dilakukan oleh peneliti :
3.2.1 Berdasarkan Jenis Pemakai
Aplikasi Customizer untuk proses instalasinya harus mendownload satu folder yang telah di kompres, setelah itu folder yang terkompres tersebut diektrak. Cara untuk menjalankan aplikasi Customizer dengan menggunakan perintah command line pada aplikasi terminal. Cara tersebut hanya dapat dilakukan oleh orang yang sudah terbiasa menggunakan command line. Aplikasi Customizer memiliki beberapa shortcut,tetapi hanya untuk mengakses form tertentu saja seperti pengaturan, informasi pembuat, dan juga informasi lisensi. Informasi yang terdapat pada menu juga kurang dipahami oleh orang awam. Dapat disimpulkan aplikasi Customizer dipakai oleh golongan jenis Expert frequent user.
3.2.2 Berdasarkan 8 Aturan Emas Perancangan Antarmuka
untuk dipahami oleh orang awam. Dapat disimpulkan apliaksi Customizer belum memenuhi seuluruh aspek yang terdapat dalam 8 aturan emas perancangan antarmuka.
3.2.3 Berdasarkan Pencegahan Kesalahan
Aplikasi Customizer sudah memiliki letak urutan menu dan fungsi yang baik, tetapi sayangnya tidak ada informasi atau panduan tata cara penggunaan aplikasi ini secara terstruktur, sehingga mengakibatkan pengguna kebingungan dalam melakukan proses remastering sesuai urutan yang benar. Dapat disimpulkan aplikasi ini tidak memiliki panduan sehingga menyulitkan pengguna yang baru pertama kali memakai aplikasi Customizer.
3.3 Design Foundation
3.3.1 Diagram Use Case 3.3.1.1 Use Case Utama
3.3.1.2 Menu Main
3.3.1.3 Menu Advance
3.3.1.4 Menu Tampilan
Gambar 3.2: Use Case Menu Main
Gambar 3.3: Use Case Menu Tambahan
3.3.1.5 Menu Bantuan
3.3.1.6 Tombol Fungsi
3.3.1.7 Pilih Aplikasi
Gambar 3.5: Use Case Menu Bantuan
Gambar 3.6: Use Case Tombol Fungsi
3.3.2 Narasi Use Case
Nama use case : Akses Root
Aktor : Pengguna
Package :
-Skenario :
Aksi Aktor Reaksi Sistem
Skenario Normal
1. Menampilkan form akses root
2. user menginputkan password kemudian mengklik tombol “OK”
3. Mengautentifikasi password (apakah
sesuai dengan password sebenarnya) 4. sistem menampilkan halaman utama
aplikasi
Table 3.1: Use Case Akses Root
Nama use case : Tampilkan Pengaturan
Aktor : Pengguna
Package : Menu Main
Skenario :
Aksi Aktor Reaksi Sistem
Skenario Normal
1. Menampilkan form pengaturan
2. user mengedit Direktori Kerja, Direktori mount file ISO, dan besarnya RAM untuk emulator kemudian mengklik tombol “Keluar”
3. Menyimpan semua pengaturan
kedalam file konfigurasi
4. sistem menutup form pengaturan
Nama use case : Keluar Dari Program
Aktor : Pengguna
Package : Menu Main
Skenario :
Aksi Aktor Reaksi Sistem
Skenario Normal
1. Sistem menutup aplikasi
Table 3.3: Use Case Keluar Dari Program
Nama use case : Edit Icon
Aktor : Pengguna
Package : Menu Tampilan
Skenario :
Aksi Aktor Reaksi Sistem
Skenario Normal
1. Menampilkan form icon
2. user memilih icon yang akan diinstal
3. Menyimpan semua pengaturan
kedalam file konfigurasi
4. sistem menutup form icon
Table 3.4: Use Case Edit Icon
Nama use case : Edit Logo
Aktor : Pengguna
Package : Menu Tampilan
Aksi Aktor Reaksi Sistem
Skenario Normal
1. Menampilkan form logo
2. user memilih logo yang akan
dimasukan ke sistem operasi
3. Menyimpan semua pengaturan
kedalam file konfigurasi
4. sistem menutup form logo
Table 3.5: Use Case Edit Logo
Nama use case : Edit Tema
Aktor : Pengguna
Package : Menu Tampilan
Skenario :
Aksi Aktor Reaksi Sistem
Skenario Normal
1. Menampilkan form tema
2. user memilih tema yang akan
diinstal
3. Menyimpan semua pengaturan
kedalam file konfigurasi
4. sistem menutup form tema
Table 3.6: Use Case Edit Tema
Nama use case : Edit Wallpaper
Aktor : Pengguna
Package : Menu Tampilan
Aksi Aktor Reaksi Sistem
Skenario Normal
1. Menampilkan form wallpaper
2. user memilih gambar yang akan
djadikan wallpaper
3. Menyimpan semua pengaturan
kedalam file konfigurasi
4. sistem menutup form wallpaper Table 3.7: Use Case Edit Wallpaper
Nama use case : Edit Source.list
Aktor : Pengguna
Package : Menu Tambahan
Skenario :
Aksi Aktor Reaksi Sistem
Skenario Normal
1. Menampilkan teks editor berisi list
source repository
2. user mengedit list source repository
melalui teks editor kemudian mengklik
tombol “Keluar”
3. Menyimpan semua pengaturan
kedalam file konfigurasi
4. sistem menutup form pengaturan
Table 3.8: Use Case Edit Source.list
Nama use case : Jalankan Terminal
Aktor : Pengguna
Package : Menu Tambahan
Aksi Aktor Reaksi Sistem
Skenario Normal
1. Menjalankan aplikasi terminal yang
sudah mengarah ke sistem operasi
yang akan diremastering
2. user mengedit pengaturan sistem
operasi melalui aplikasi terminal dan
mengetik perintah “exit” untuk keluar
dari aplikasi terminal
3. Sistem menyimpan semua
pengaturan kedalam sistem operasi
yang akan diremastering serta menutup
aplikasi terminal
Table 3.9: Use Case Jalankan Terminal
Nama use case : Tampilkan Pembuat
Aktor : Pengguna
Package : Menu Bantuan
Skenario :
Aksi Aktor Reaksi Sistem
Skenario Normal
1. Menampilkan form berisi informasi
pembuat sistem
2. user mengklik tombol “Keluar”
3. sistem menutup form berisi informasi
pembuat sistem
Table 3.10: Use Case Tampilkan Pembuat
Nama use case : Tampilkan Lisensi
Aktor : Pengguna
Package : Menu Bantuan
Aksi Aktor Reaksi Sistem
Skenario Normal
1. Menampilkan form berisi informasi
tentang lisensi sistem 2. user mengklik tombol “Keluar”
3. sistem menutup form berisi informasi
lisensi sistem
Table 3.11: Use Case Tampilkan Lisensi
Nama use case : Tampilkan Tentang
Aktor : Pengguna
Package : Menu Bantuan
Skenario :
Aksi Aktor Reaksi Sistem
Skenario Normal
1. Menampilkan form berisi informasi
seputar sistem (link untuk informasi
lebih lanjut tentnag sistem)
2. user mengklik tombol “Keluar”
3. sistem menutup form berisi informasi
seputar sistem
Table 3.12: Use Case Tampilkan Tentang
Nama use case : Jaringan
Aktor : Pengguna
Package : Pilih Aplikasi
Aksi Aktor Reaksi Sistem
Skenario Normal
1. Menampilkan form berisi pilihan
untuk menginstal aplikasi jaringan 2. user memilih aplikasi jaringan apa
saja yang ingin diinstall kedalam
sistem operasi kemudian mengklik
tombol “Keluar”
3. sistem menutup form berisi pilihan
untuk menginstal aplikasi jaringan
Table 3.13: Use Case Jaringan
Nama use case : Basis Data
Aktor : Pengguna
Package : Pilih Aplikasi
Skenario :
Aksi Aktor Reaksi Sistem
Skenario Normal
1. Menampilkan form berisi pilihan
untuk menginstal aplikasi basis data
2. user memilih aplikasi basis data apa
saja yang ingin diinstall kedalam
sistem operasi kemudian mengklik
tombol “Keluar”
3. sistem menutup form berisi pilihan
untuk menginstal aplikasi basis data
Table 3.14: Use Case Basis Data
Nama use case : Komputasi
Aktor : Pengguna
Package : Pilih Aplikasi
Aksi Aktor Reaksi Sistem
Skenario Normal
1. Menampilkan form berisi pilihan
untuk menginstal aplikasi komputasi 2. user memilih aplikasi komputasi apa
saja yang ingin diinstall kedalam
sistem operasi kemudian mengklik
tombol “Keluar”
3. sistem menutup form berisi pilihan
untuk menginstal aplikasi komputasi
Table 3.15: Use Case Komputasi
Nama use case : Multimedia
Aktor : Pengguna
Package : Pilih Aplikasi
Skenario :
Aksi Aktor Reaksi Sistem
Skenario Normal
1. Menampilkan form berisi pilihan
untuk menginstal aplikasi multimedia
2. user memilih aplikasi multimedia
apa saja yang ingin diinstall kedalam
sistem operasi kemudian mengklik
tombol “Keluar”
3. sistem menutup form berisi pilihan
untuk menginstal aplikasi multimedia
Table 3.16: Use Case Multimedia
Nama use case : Desain Grafis
Aktor : Pengguna
Package : Pilih Aplikasi
Aksi Aktor Reaksi Sistem
Skenario Normal
1. Menampilkan form berisi pilihan
untuk menginstal aplikasi desain grafis 2. user memilih aplikasi desain grafis
apa saja yang ingin diinstall kedalam
sistem operasi kemudian mengklik
tombol “Keluar”
3. sistem menutup form berisi pilihan
untuk menginstal aplikasi desain grafis
Table 3.17: Use Case Desain Grafis
Nama use case : Pilih File ISO
Aktor : Pengguna
Package : Tombol Fungsi
Skenario :
Aksi Aktor Reaksi Sistem
Skenario Normal
1. Menampilkan form untuk memilih
letak file ISO
2. user memilih file ISO kemudian
mengklik tombol “Open”
3. sistem mengekstrak file ISO untuk
diolah
4. sistem mengaktifkan semua tombol
Table 3.18: Use Case Pilih File ISO
Nama use case : Buat Ulang ISO
Aktor : Pengguna
Package : Tombol Fungsi
Aksi Aktor Reaksi Sistem
Skenario Normal
1. Menampilkan aplikasi terminal
2. user memilih aplikasi basis data apa
saja yang ingin diinstall kedalam
sistem operasi kemudian mengklik
tombol “Keluar”
3. sistem menutup form berisi pilihan
untuk menginstall aplikasi basis data
Table 3.19: Use Case Buat Ulang ISO
Nama use case : Jalankan Emulator
Aktor : Pengguna
Package : Tombol Fungsi
Skenario :
Aksi Aktor Reaksi Sistem
Skenario Normal
1. Menampilkan form emulator berisi
sistem operasi yang sudah
diremastering
2. user mencoba sistem operasi yang
telah diremastering kemudian
mematikan emulator
3. sistem menutup form emulator
Table 3.20: Use Case Jalankan Emulator
Nama use case : Bersihkan Direktori Kerja
Aktor : Pengguna
Package : Tombol Fungsi
Aksi Aktor Reaksi Sistem
Skenario Normal
1. Menampilkan aplikasi terminal yang
sedang menampilkan proses
pembersihan direktori kerja
2. sistem menutup aplikasi terminal
Table 3.21: Use Case Bersihkan Direktori Kerja
3.3.3 Flowchart
3.3.4 Rancangan Tampilan Aplikasi
Gambar 3.9: Rancangan Utama Aplikasi
Gambar 3.11: Rancangan Menu Main
Gambar 3.10: Rancangan Form List Aplikasi (Jaringan, basis data, komputasi, multimedia,
desain grafis dan pemrograman) Gambar 3.12: Rancangan Menu
Tambahan
Gambar 3.13: Rancangan Menu Tampilan
Gambar 3.15: Rancangan Form Lisensi
Gambar 3.16: Rancangan Form Pembuat
Gambar 3.19: Rancangan Form Icon Gambar 3.17: Rancangan Form
Tentang
3.3.5 Gambaran Tata Letak Aplikasi
Gambar 3.23: Tata Letak SadharOS Remake Gambar 3.22: Rancangan Form Tema
Gambar 3.21: Rancangan Form Logo
SadharOS Remake dibuat dengan menggabungkan beberapa script dari Customizer dan script manual remastering distro Ubuntu. Script yang diambil dari Customizer yaitu chroot, extract, clean, rebuild, dan qemu. Chroot berfungsi untuk berpindah konsol terminal kedalam sistem operasi yang akan diremastering, extarct berfungsi untuk mengekstrak file ISO, clean berfungsi untuk membersihkan direktori kerja, rebuild berfungsi untuk membuat ulang hasil remastering kedalam file ISO, qemu berfungsi untuk menjalankan emulator dari file ISO yang telah dibuat.
3.4 Design Detail
Design detail merupakan rancangan tampilan aplikasi yang lebih detail lagi. Pada tahap ini tampilan sudah jadi dan tinggal melakukan pengkodean untuk menjalankan fungsinya.
Gambar 3.24: Rancangan Antarmuka Utama
Gambar 3.26: Rancangan Antarmuka Menu Tampilan
Gambar 3.27: Rancangan Antarmuka Menu Tambahan
Gambar 3.28: Rancangan Antarmuka Menu Bantuan
Gambar 3.30: Rancangan Form Icon
Gambar 3.31: Rancangan Form Logo
Gambar 3.33: Rancangan Form Wallpaper
Gambar 3.34: Rancangan Form Pembuat
Gambar 3.37: Rancangan
Form Jaringan Gambar 3.39: Rancangan Form Basisdata Gambar 3.38: Rancangan Form Komputasi
Gambar 3.40: Rancangan Form Multimedia
Gambar 3.41: Rancangan Form Desain Grafis
Gambar 3.42: Rancangan Form Pemrograman Gambar 3.36: Rancangan Form
BAB 4
IMPLEMENTASI
4.1 Spesifikasi Minimum Sistem
4.1.1 Perangkat Keras
Perangkat keras yang dibutuhkan untuk menjalankan aplikasi “SadharOS Remake” adalah sebagai berikut :
• Prosessor Intel Pentium IV atau setara • Hardisk 20GB
• RAM 1GB
4.1.2 Perangkat Lunak
Perangkat lunak yang dibutuhkan untuk menjalankan aplikasi “SadharOS Remake” adalah sebagai berikut :
• Sistem Operasi Ubuntu atau variantnya • coreutils
• bzip2 • qemu
• xserver-xephyr • genisoimage • squashfs-tools • rsync
• imagemagick • sed
• grep • dbus
4.2 Build
Dalam metode LUCID, implementasi antarmuka sudah memasuki tahap build yaitu tahap dimana mulai melakukan pengkodean aplikasi sampai seluruh fungsi jadi.
4.2.1 Implementasi Antarmuka Utama
Berikut tampilan implementasi antarmuka halaman utama pada program.
Listing Program ketika Antarmuka Utama dijalankan :
Gambar 4.1: Implementasi Antarmuka Utama
PUBLIC SUB Form_Open() DIM STATUS AS Variant ME.Center
namaDistro.MaxLength = 16 hostName.MaxLength = 16 userLiveCD.MaxLength = 16
Func.Event_Msg("Periksa jalannya GUI")
IF Exist("/opt/SadharOSRemake/gui_lock") THEN
Message.Warning("GUI sedang berjalan, tutup dan buka lagi!") ME.Close
ELSE
Func.Event_Msg("Mengunci GUI")
TRY File.Save("/opt/SadharOSRemake/gui_lock", "") ENDIF
Check.Conf_File() Check.Existence()
4.2.2 Implementasi Antarmuka Menu 4.2.2.1 Menu Main
Menu main berisi bagian pengaturan dan juga untuk keluar dari program. Menggunakan icon gambar perkakas untuk pengaturan dan icon tombol on/off untuk keluar dari program.
Listing Program ketika Antarmuka Menu Pengaturan diklik :
4.2.2.2 Menu Tampilan
Menu tampilan berfungsi sebagai pengaturan tampilan pada sistem operasi yang akan diremastering. Pengaturannya yaitu icon, logo, dan tema yang akan dijadikan sebagai default tampilan pada sistem operasi yang diremastering.
Gambar 4.2: Implementasi Antarmuka Menu Main
IF Exist(WorkDir & "/FileSystem/") THEN IF Func.Get_Unity() LIKE "3" THEN
Message.Warning("Sistem Operasi yang terdeteksi yaitu Ubuntu 11.04, sehingga menu Logo tidak aktif")
FMain.logoLauncher.Enabled = FALSE ELSE IF Func.Get_Unity() LIKE "0" THEN
Message.Warning("Sistem Operasi yang terdeteksi bukan Ubuntu dengan desktop unity\nsehingga menu Tampilan dinonaktifkan")
tampilan.Enabled = FALSE ENDIF
ENDIF END
PUBLIC SUB pengaturan_Click() FPengaturan.Show
Listing Program ketika Antarmuka Menu Icon diklik :
Listing Program ketika Antarmuka Menu Logo diklik :
Listing Program ketika Antarmuka Menu Tema diklik :
Listing Program ketika Antarmuka Menu Wallpaper diklik :
4.2.2.3 Menu Tambahan
Menu tambahan berfungsi untuk memodifikasi sistem operasi lebih lanjut seperti mengubah sumber server repositori dan masuk ke console terminal.
Gambar 4.4: Implementasi Antarmuka Menu Tambahan
PUBLIC SUB icons_Click() FIcon.Show
END
PUBLIC SUB logoLauncher_Click() FLogo.Show
END
PUBLIC SUB tema_Click() FTema.Show
END
PUBLIC SUB wallpaper_Click() FWallpaper.Show
END
Listing Program ketika Antarmuka Menu Source List dijalankan :
Listing Program ketika Antarmuka Menu Terminal dijalankan :
4.2.2.4 Menu Bantuan
Menu bantuan akan menampilkan informasi yang berkaitan dengan pembuat, lisensi, dan informasi tentang program tersebut.
Listing Program ketika Antarmuka Menu Pembuat dijalankan :
Listing Program ketika Antarmuka Menu Lisensi dijalankan :
Listing Program ketika Antarmuka Menu Tentang dijalankan :
Gambar 4.5: Implementasi Antarmuka Menu Bantuan
PUBLIC SUB terminal_Click()
Func.Debug_Msg("Launching chroot Terminal")
EXEC [Func.Use_Term(), "-e", "/opt/SadharOSRemake/main.sh -c"] WAIT END
PUBLIC SUB source_Click()
Func.Edit_File("/FileSystem/etc/apt/sources.list") END
PUBLIC SUB pembuat_Click() FPembuat.Show
END
PUBLIC SUB Lisensi_Click() FLisensi.Show
END
PUBLIC SUB Tentang_Click() FTentang.Show
4.2.3 Implementasi Antarmuka Form Menu 4.2.3.1 Form Menu Pengaturan
Merupakan halaman yang berfungsi untuk mengatur letak direktori kerja, direktori mounting, dan besarnya RAM virtual yang akan dipakai.
Listing Program ketika Antarmuka Menu Pengaturan dijalankan :
4.2.3.2 Form Menu Icon
Form ini bertujuan untuk memilih icon yang akan diinstal dan dijadikan sebagai default icon pada sistem operasi yang diremastering.
Gambar 4.6: Implementasi Form Pengaturan
PUBLIC SUB Form_Open() ME.Center
ME.Caption = "Pengaturan" Check.Conf_File()
WorkDir.Text = Func.Get_Str("/opt/SadharOSRemake/settings.conf", "WORK_DIR=", "/home")
MountDir.Text = Func.Get_Str("/opt/SadharOSRemake/settings.conf", "MOUNT_DIR=", "/media/ISO")
VirtualMemBox.Text = Func.Get_Str("/opt/SadharOSRemake/settings.conf", "VRAM=", "256")
IF FMain.buatISO.Enabled = TRUE THEN
Message.Warning("Mengganti direktori kerja ditengah \nproses remastering adalah dilarang\noleh karena itu, penggantian direktori kerja\nakan
dinonaktifkan.")
Change_WDir.Enabled = FALSE
Change_WDir.ToolTip = "Penggantian direktori kerja dilarang karena dapat merusak proses remastering!"
Listing Program ketika Antarmuka Menu Icon dijalankan :
Gambar 4.7: Implementasi Form Icon
PUBLIC SUB Form_Open() DIM content_array AS String[] DIM sLine, content AS String ME.Center
ME.Caption = "Icon" 'Mengecek icon
IF Exist(WorkDir & "/FileSystem/usr/share/icons/ubuntu-mono-dark") THEN ubuntuMonoDark.Value = TRUE
ubuntuMonoDark.Enabled = FALSE ENDIF
IF Exist(WorkDir & "/FileSystem/usr/share/icons/faenza-standart") THEN faenza.Value = TRUE
faenza.Enabled = FALSE ENDIF
IF Exist(WorkDir & "/FileSystem/usr/share/icons/clarity-mono-dark") THEN clarityMono.Value = TRUE
clarityMono.Enabled = FALSE ENDIF
IF Exist(WorkDir & "/FileSystem/usr/share/icons/SadharOS") THEN sadharos.Value = TRUE
sadharos.Enabled = FALSE ENDIF
IF Exist(WorkDir & "/FileSystem/usr/share/icons/faenza-humanity") THEN faenzaHumanity.Value = TRUE
faenzaHumanity.Enabled = FALSE ENDIF
IF Exist(WorkDir & "/FileSystem/usr/share/icons/mak-liontaste") THEN makLiontaste.Value = TRUE