• Tidak ada hasil yang ditemukan

BAB II LANDASAN TEORI

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB II LANDASAN TEORI"

Copied!
15
0
0

Teks penuh

(1)

BAB II

LANDASAN TEORI

2.1 Rekayasa Perangkat Lunak

RPL (Rekayasa Perangkat Lunak) adalah suatu disiplin ilmu yang mempelajari semua aspek produksi dalam suatu proses perancangan suatu perangkat lunak / sistem dengan tujuan untuk dapat menghasilkan suatu perangkat lunak / sistem dengan cara yang efektif dan efisien dari segi biaya, waktu, dan tenaga. Pada dasarnya rekayasa perangkat lunak lebih memfokuskanpada tahapan-tahapan pengembangan suatu perangkat lunak yakni : Analisis, Desain, Implementasi, Pengujian, Pemeliharaan, dan Dokumentasi.(Sommerville, 2003) 2.2 Tahap Pengembangan Sistem

Pada perancangan aplikasi ini penulis menggunakan metode waterfall "waterfall modeling”. Karena metode tersebut merupakan metode yang merujuk kearah pendekatan yang sistematis dan sekuensial melalui tahap-tahap yang ada pada SDLC untuk membangun sebuah aplikasi perangkat lunak.

2.3 Metode System Development Life Cycle (SDLC)

Mengutip dari buku Software Engineering : Seventh Edition karangan Roger S. Pressman yang diterbitkan oleh McGraw-hill, pengertian dari SDLC adalah :

"System Development Life Cycle atau siklus hidup pengembangan sistem adalah proses perancangan sistem serta metodologi yang digunakan untuk mengembangkan sistem-sistem tersebut."

Dalam penelitian skripsi ini, penulis menggunakan proses Waterfall Model sebagai pola pengembangan sistem. Definisi yang diartikan oleh Roger S. Pressman dalam bukunya Software Engineering : Seventh Edition dijelaskan bahwa :

"Waterfall Model sebuah proses perancangan yang secara berurutan dan sering digunakan dalam proses pengembangan perangkat lunak."

(2)

2.3.1. Waterfall Model

Menurut Pressman (2010, p39) Waterfall Model adalah model klasik yang bersifat sistematis, berurutan dalam membangun software. Berikut ini gambaran dari Waterfall Model.

Fase-fase dalam Waterfall Model menurut Referensi Pressman :

Gambar 2.1Waterfall Model (Sumber : Pressman, 2010, p39)

Berikut adalah gambar pengembangan perangkat lunak berurutan/ linear :

a. Communication

Langkah ini merupakan analisis terhadap kebutuhan software, dan tahap untuk mengadakan pengumpulan data dengan melakukan pertemuan dengan customer, maupun mengumpulkan data-data tambahan baik yang ada di jurnal, artikel, maupun dari internet.

b. Planning

Proses planning merupakan lanjutan dari proses communication (analysis requirement). Tahapan ini akan menghasilkan dokumen user requirement atau bisa dikatakan sebagai data yang berhubungan dengan keinginan user dalam pembuatan software, termasuk rencana yang akan dilakukan.

c. Modeling

Proses modeling ini akan menerjemahkan syarat kebutuhan ke sebuah perancangan software yang dapat diperkirakan sebelum dibuat coding. Proses ini berfokus pada rancangan struktur data, arsitektur software, representasi interface, dan detail (algoritma) prosedural. Tahapan ini akan menghasilkan dokumen yang disebut software requirement.

(3)

d. Construction

Construction merupakan proses membuat kode. Coding atau pengkodean merupakan penerjemahan desain dalam bahasa yang bisa dikenali oleh komputer. Programmer akan menerjemahkan transaksi yang diminta oleh user. Tahapan inilah yang merupakan tahapan secara nyata dalam mengerjakan suatu software, artinya penggunaan komputer akan dimaksimalkan dalam tahapan ini. Setelah pengkodean selesai maka akan dilakukan testing terhadap sistem yang telah dibuat tadi. Tujuan testing adalah menemukan kesalahan-kesalahan terhadap sistem tersebut untuk kemudian bisa diperbaiki.

e. Deployment

Tahapan ini bisa dikatakan final dalam pembuatan sebuah software atau sistem. Setelah melakukan analisis, desain dan pengkodean maka sistem yang sudah jadi akan digunakan oleh user. Kemudian software yang telah dibuat harus dilakukan pemeliharaan secara berkala.

2.3.2 Keuntungan Dan Kekurangan Metode Waterfall

Keuntungan yang didapat dengan menggunakan teknik waterfall ini adalah sebagai berikut :

a. Proses menjadi teratur.

b. Estimasi proses menjadi lebih baik.

Selain itu, teknik waterfall juga memiliki kekurangan, kekurangannya adalah sebagai berikut :

a. Sifatnya kaku, sehingga susah melakukan perubahan ditengah proses. b. Jadwal menjadi lebih tak menentu.

2.4 Blackbox

Pengujian menggunakan sekumpulan aktifitas validasi, dengan pendekatan Black Box Testing. Menurut Shalahuddin dan Rosa (2011), Black Box Testing adalah menguji perangkat lunak dari segi spesifikasi fungsional tanpa menguji desain dan kode program. pengujian dimaksudkan untuk mengetahui apakah fungsi-fungsi, masukan, dan keluaran dari perangkat lunak sesuai dengan

(4)

spesifikasi yang dibutuhkan. Pengujian kotak hitam dilakukan dengan membuat kasus uji yang bersifat mencoba semua fungsi dengan memakai perangkat lunak apakah sesuai dengan spesifikasi yang dibutuhkan. Kasus uji yang dibuat untuk melakukan pengujian Black Box Testing harus dibuat dengan kasus benar dan kasus salah.

Menurut Pressman (2010), Black Box Testing juga disebut pengujian tingkah laku, memusat pada kebutuhan fungsional perangkat lunak. Teknik pengujian Black Box memungkinkan memperoleh serangkaian kondisi masukan yang sepenuhnya menggunakan semua persyaratan fungsional untuk suatu program. beberapa jenis kesalahan yang dapat diidentifikasi adalah fungsi tidak benar atau hilang, kesalahan antar muka, kesalahan pada struktur data (pengaksesan basis data), kesalahan performasi, kesalahan inisialisasi dan akhir program.

2.5 Unified Modelling Language (UML)

Unified Modelling Language (UML) adalah sebuah “bahasa” yang telah menjadi standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem perangkat lunak. (Yasin verdi, 2012) Dengan menggunakan UML kita dapat membuat 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.

2.5.1 Diagram Use Case

Use case atau diagram atau diagram use case merupakan pemodelan untuk sistem informasi yang akan dibuat. Use case mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan sistem informasi yang akan dibuat. Syarat penamaan use case adalah nama didefinisikan sesimpel mungkin dan dapat dipahami. Ada dua hal utama pada use case yaitu pendefinisian apa yang disebut aktor dan use case. Aktor merupakan orang, proses, atau sistem lain yang berinteraksi dengan sistem informasi yang akan dibuat di luar sistem informasi yang akan dibuat itu sendiri, jadi walaupun simbol dari aktor adalah gambar orang, tapi aktor belum tentu merupakan orang.

(5)

Use case merupakan fungsionalitas yang disediakan sistem sebagai unit-unit yang saling bertukar pesan antar unit-unit atau aktor. (Dennis, 2010) Berikut adalah simbol-simbol yang ada pada diagram use case:

Tabel 2.1Simbol diagram use case menurut (Dennis, 2010)

No Simbol Nama Keterangan

1 Actor

 Aktor adalah orang atau sistem yang berasal dari manfaat dan eksternal untuk subjek.

 Digambarkan sebagai salah satu tongkat (default) atau jika aktor non-manusia yang terlibat, sebagai persegi panjang dengan aktor <<>> di dalamnya (alternatif).

2 Use Case

 Merupakan bagian utama dari fungsi sistem. Dapat

memperpanjang kasus penggunaan lain.

 Dapat mencakup use case lain. Apakah ditempatkan di dalam batas sistem. Apakah label dengan frase kata kerja-kata benda deskriptif.

Lanjutan Tabel 2.1

3 Generalizatio

n

 Merupakan kasus penggunaan khusus ke yang lebih umum.  Memiliki panah yang diambil dari

kasus penggunaan khusus untuk kasus penggunaan dasar.

4 Include

 Merupakan dimasukkannya fungsi satu kasus penggunaan dalam yang lain.

 Memiliki panah yang diambil dari kasus penggunaan dasar untuk kasus penggunaan digunakan

(6)

5 Extend

 Merupakan perpanjangan dari kasus penggunaan untuk

memasukkan perilaku opsional.  Memiliki panah yang diambil dari

kasus penggunaan ekstensi untuk kasus penggunaan dasar.

6 Association

Relationship

Link aktor dengan use case dengan yang berinteraksi.

7 Subject

Boundary

 Termasuk nama subjek di dalam atau di atas.

 Merupakan lingkup subjek, misalnya, sistem atau individu proses bisnis.

2.5.2 Diagram Activity

Digunakan untuk model perilaku dalam independent proses bisnis benda .Dalam banyak hal, diagram aktivitas dapat dipandang sebagai diagram aliran data yang canggih yang digunakan dalam hubungannya dengan analysis terstruktur. Namun, tidak seperti aliran data diagram, diagram aktivitas termasuk notasi yang membahas pemodelan paralel , kegiatan bersamaan dan proses.(Dennis, 2010) Tabel 2.2 Simbol diagram activity menurut (Dennis, 2010)

No Simbol Nama Keterangan

1 Activity

Merupakan sebuah gambaran aktivitas yang terjadi.

2 Initial Node

Merupakan tanda awal dari sebuah aktivitas. 3 Final-Activity Node Merupakan tanda berakhirnya sebuah aktivitas.

(7)

4

Control Flow Menunjukkan urutan eksekusi.

6 Swinlane

Memisahkan organisasi yang bertanggung jawab terhadap aktifitas yang terjadi.

7 Merge Node

Membawa kembali jalur keputusan bersama yang berbeda yang dibuat dengan menggunakan keputusan simpul. 8

Decision Node

Pilihan untuk mrngambil keputusan.

9 Flow Final

Aliran akhir.

2.5.3 Diagram Sequence

Diagram sequence menggambarkan kelakuan objek pada use case dengan mendeskripsikan waktu hidup objek dan message yang dikirimkan dan diterima antar objek. Oleh karena itu untuk menggambar diagram sequence maka harus diketahui objek-objek yang terlibat dalam sebuah use case beserta metode-metode yang dimiliki kelas yang diinstansiasi menjadi objek itu. Banyaknya diagram sequence yang harus digambar adalah minimal sebanyak pendefinisian use case yang memiliki proses sendiri atau yang penting semua use case yang didefinisikan maka diagram sequence yang harus dibuat juga semakin banyak. (Dennis, 2010) Berikut simbol yang ada pada diagramsequence :

(8)

Tabel 2.3 Simbol diagram sequence (Dennis, 2010)

No Simbol Nama Keterangan

1 Actor

Orang atau sistem yang berasal dari manfaat dan eksternal ke sistem yang berpartisipasi secara berurutan dengan mengirim atau menerima pesan.

2 Object

Berpartisipasi secara berurutan dengan mengirim atau menerima pesan yang ditempatkan diatas diagram.

3

Execcution Occurrence

Menyatakan objek dalam keadaan aktif dan berinteraksi pesan.

4 Message Pesan yang mengambarkan komunikasi

yang terjadi antar objek

5 Self

Message

Pesan yang dikirim untuk diri sendiri secara langsung.

6 Lifeline

Menyatakan kehidupan suatu objek

7 Return

Message

Pesan yang dikirim untuk diri sendiri

2.6 Android

Menurut Mulyadi, (2010) android merupakan subset perangkat lunak untuk perangkat mobile yang meliputi sistem operasi, middleware dan aplikasi inti yang di release oleh google. sedangkan android SDK (Software development kit) menyediakan tools dan api yang diperlukan untuk mengembangkan aplikasi pada platform android dengan menggunakan bahasa pemrograman Java.

Pada dasarnya Android adalah sebuah nama untuk sistem operasi pada suatu gadget pada komputer tablet, smartphone, dan telepon celluler. Sistem yang

(9)

digunakan berbasis Linux. Penggunaan gadget pastilah tidak asing lagi dengan sistem operasi yang dikembangkan oleh Google Inc. Ini.

Simbol atau logo Android berbentuk robot dengan dua antena dikepalanya, ini melambangkan bahwa Android merupakan simbolisasi dari sistem operasi kelas atas untuk gadget dan smartphone. Dari awal peluncurannya pada tahun 2007, Android sudah beberapa kali melakukan pembaharuan versinya. Versi pada Android memiliki nama yang unik (kebanyakan dari nama makanan).

2.7 Phonegap

PhoneGap adalah sebuah kerangka kerja (framework open source) yang dipakai untuk membuat aplikasi cross-platform mobile dengan HTML, CSS, dan JavaScript. PhoneGap menjadi suatu solusi yang ideal untuk seorang web developer yang tertarik dalam pembuatan aplikasi di smartphone.

PhoneGap juga merupakan solusi ideal bagi mereka yang tertarik untuk membuat sebuah aplikasi yang dapat berjalan pada beberapa perangkat smartphone dengan basis kode yang sama. Artinya, cukup hanya dengan satu kali koding saja, kita bisa membuat aplikasi untuk smartphone iPhone, Android, Blackberry, Symbian dan Palm. Jadi, dengan PhoneGap kita bisa menghemat waktu dalam membuat aplikasi untuk beberapa smartphone sekaligus.

2.7.1 Cara Kerja PhoneGap

PhoneGap SDK menyediakan sebuah API, yaitu sebuah lapisan abstrak yang menyediakan pengembang dengan akses ke fitur hardware dan platform tertentu. PhoneGap menjelaskan bahwa dengan kode yang sama dapat digunakan pada sejumlah platform mobile dengan sedikit perubahan koding ataupun tidak, yang membuat aplikasi kita dapat dipakai untuk kalangan pengguna yang lebihluas.Fitur hardware yang didukung oleh PhoneGap API:

(10)

Gambar 2.4 Fitur Phonegap API pada setiap device (www.phonegap.com) 2.8 Jquery Mobile

Menurut Camded dan Matthews (2012, p1) jQury Mobile Merupakan User Interface Framework yang menggunakan jQuery sebagai bagian utama untuk pemrogramannya. Tidak seperti framework lainnya, jQuery Mobile fokus pada HTML dan CSS dengan cara merubahnya menjadi halaman yang mobile friendly dan memungkinkan pengguna untuk berinteraksi.

Menurut Camden dan Matthews (2012, p4) jQuery Mobile hanya fokus dalam User Interface sebuah aplikasi, bukan programming-nya, hal ini dibuat agar user merasakan tampilan yang sama walaupun menggunakan mobile operating system yang berbeda. Untuk memperoleh tampilan yang sama pada setiap mobile operating system jQuery Mobile membuat CSS sendiri.

jQuery Mobile memiliki berbagai method yang disediakan untuk memudahkan para pengembang dalam mengembangkan halaman mobile.

Method yang disediakan oleh jQuery Mobile bergantung kepada kehadiran library jQuery, sehingga untuk menggunakan jQuery Mobile dibutuhkan jQuery.

(11)

Apa yang dapat jQuery Mobile lakukan?

 jQuery Mobile memudahkan pengembangan user-interface untuk mobile web apps.

 The interface configuration is markup-driven, yang berarti Anda dapat membuat seluruh aplikasi antarmuka dasar dalam HTML, tanpa perlu menulis satu baris JavaScript.

 Menyediakan serangkaian custom events baru, mendeteksi events mobile device,touchscreen seperti tap, tap-and-hold, swipe, danorientation change (i.e. rotating the device).

 Memastikan bahwa user-interface bekerja pada web browser.

 Menggunakan theme untuk memudahkan untuk costumized tampilan aplikasi anda.

(jquerymobile.com) 2.9 Jquery SlickQuiz

Menurut Julie Cameron (2014:2) SlickQuiz merupakan Plugin jQuery yang diciptakan untuk membuat suatu kuis atau pertanyaan-pertanyaan soal yang bersifat dinamis. Berikut ini adalah fitur dari Plugin Jquery SlickQuiz :

 Pertanyaan dapat memiliki respon benar satu atau beberapa.  Jawaban memiliki pesan respon benar dan pesan respon salah.  Dapat pula ditampilkan benar dan salah di akhir kuis.

 Memiliki hasil akhir nilai.

 Perubahan kuis dapat disimpan ke draft.  Dapat mengacak pertanyaan dan jawaban.

 Pesan respon salah dan benar dapat disesuaikan apabila ingin ditampilkan atau tidak.

 Memuat sejumlah pertanyaan yang lebih besar.  Mencegah mengirimkan pertanyaan tanpa jawaban.  Memungkinkan beberapa kuis pada halaman yang sama.

(12)

2.10 HTML5

Menurut R.H. Sianipar (2015:3)HTML5adalah sebuah markup untuk menstrukturkan dan menampilkan isi dari halaman web. HTML (yang pertama kali diciptakan pada tahun 1990 dan versi keempatnya, HTML4, pada tahun 1997) dan hingga bulan Juni 2011 tetap dalam proses pengembangan. Tujuan utama pengembangan HTML5 adalah untuk memperbaiki teknologi HTML agar mendukung teknologi multimedia terbaru, mudah dibaca oleh manusia dan juga mudah dimengerti oleh mesin.

HTML5 merupakan salah satu karya World Wide Web Consortium, W3C untuk mendefinisikan sebuah bahasa markup tunggal yang dapat ditulis dengan cara HTML ataupun XHTML. HTML5 merupakan jawaban atas pengembangan HTML 4.01 dan XHTML 1.1 yang selama ini berjalan terpisah, dan diimplementasikan secara berbeda-beda oleh banyak perangkat lunak pembuat web.

2.11 Eclipse

Eclipse adalah sebuah IDE (Integrated Development Environment) untuk mengembangkan perangkat lunak dan dapat dijalankan di semua platform (platform-independent). Berikut ini adalah sifat dari Eclipse:

Multi-platform: Target sistem operasi Eclipse adalah Microsoft Windows, Linux, Solaris, AIX, HP-UX dan Mac OS X.

Mulit-language: Eclipse dikembangkan dengan bahasa pemrograman Java, akan tetapi Eclipse mendukung pengembangan aplikasi berbasis bahasa pemrograman lainnya, seperti C/C++, Cobol, Python, Perl, PHP, dan lain sebagainya.

Multi-role: Selain sebagai IDE untuk pengembangan aplikasi, Eclipse pun bisa digunakan untuk aktivitas dalam siklus pengembangan perangkat lunak, seperti dokumentasi, test perangkat lunak, pengembangan web, dan lain sebagainya.

Eclipse pada saat ini merupakan salah satu IDE favorit dikarenakan gratis dan open source, yang berarti setiap orang boleh melihat kode pemrograman perangkat lunak ini. Selain itu, kelebihan dari Eclipse yang membuatnya populer adalah kemampuannya untuk dapat dikembangkan oleh pengguna dengan komponen yang dinamakan plug-in. (www.eclipse.org)

(13)

2.12 API (Application Programming Interface)

Menurut Bayu Setiawan (2013:1) API (Application Programming Interface) adalah sekumpulan perintah, fungsi, komponen, dan protokol yang disediakan oleh sistem operasi ataupun bahasa pemrograman tertentu yang dapat digunakan oleh programmer saat membangun perangkat lunak.

Dalam API terdapat fungsi-fungsi atau perintah-perintah untuk menggantikan bahasa yang digunakan dalam system calls dengan bahasa yang lebih terstruktur dan mudah dimengerti oleh programmer.

Keuntungan menggunakan API: 1. Probabilitas

API dapat digunakan untuk bahasa pemrograman ataupun untuk sistem operasi mana saja asalkan paket-paket API sudah terpasang.

2. Lebih Mudah Dimengerti

API menggunakan bahasa yang lebih terstruktur dan mudah dimengerti daripada bahasa system call. Hal ini sangat penting dalam hal editing dan pengembangan.

3. Mudah Dikembangkan

Dengan adanya API, memudahkan programmer untuk mengembangkan suatu system.

2.13 Android SDK

Menurut Kriswanto (2013:1) AndroidSDK adalah tools API (Aplication Programming Interface) yang digunakan untuk mulai mengembangkan aplikasi

pada platform Android menggunakan bahasa pemrograman Java. Android

merupakan subset perangkat lunak untuk ponsel yang meliputi sistem operasi,

middleware dan aplikasi kunci yang di release oleh Google. Saat ini disediakan

android SDK (Software Development Kit) sebagai alat bantu dan API untuk mulai

mengembangkan aplikasi pada platform Android menggunakan bahasa

(14)

kesempatan untuk membuat aplikasi yang kita butuhkan yang bukan merupakan aplikasi bawaan smartphone. Beberapa fitur android yang paling penting adalah :

Framework aplikasi yang mendukung penggantian komponen dan reusable.

 Mesin Virtual Dalvik dioptimalkan untuk perangkat mobile.  Integrated browser berdasarkan engine open source webkit.

Grafis yang dioptimalkan dan didukung oleh libraries grafis 2D, grafis 3D

berdasarkan spesifikasi openGL ES 1.0 (Opsional Akselerasi Hardware).  SQLite untuk penyimpanan data.

Media Support yang mendukung audio, video,dangambar (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF), GSM Telephony (tergantung hardware).

Bluetooth, EDGE, 3G, WiFi (tergantung dari fiturhardware).

 Kamera, GPS, kompas dan Accelerator (tergantung dari fiturhardware).  Lingkungan development yang lengkap dan kaya, termasuk perangkat

emulator, tools untuk debuging, profil dan kinerja memori, dan plugin

(15)

Gambar

Gambar 2.1Waterfall Model (Sumber : Pressman, 2010, p39)
Tabel 2.1Simbol diagram use case menurut (Dennis, 2010)
Tabel 2.2 Simbol diagram activity menurut (Dennis, 2010)
Diagram sequence menggambarkan kelakuan objek pada use case dengan  mendeskripsikan waktu  hidup objek dan  message  yang dikirimkan dan  diterima  antar  objek
+3

Referensi

Dokumen terkait

Selanjutnya dibentuk persamaan diferensial linear nonhomogen orde n yang koefisiennya melibatkan koefisien matriks yang sudah dibentuk dan diselesaikan dengan metode

Hasil penelitian memberikan bahwa varietas memberikan pengaruh yang nyata terhadap parameter Tinggi Tanaman dan pemberian pupuk NPKMg memberikan pengaruh yang

pembiayaan sebagaimana dimaksud dalam Pasal 5, wajib menyampaikan laporan kemajuan pemanfaatan mesin dan/atau peralatan setiap 6 (enam) bulan sekali kepada

Abstrak : Kapal general cargo mengangkut muatan dalam berbagai sifat dan cara pengapalan di kapal sehingga setelah selesai membongkar muatan akan meninggalkan sampah muatan,

Sistem information retrieval (IR) system adalah system yang digunakan untuk menemukan kembali (retrieve) informasi-informasi yang relevan terhadap kebutuhan pengguna dari

Dari latar belakang masalah tersebut, peneliti tertarik meneliti iklan sampo Rejoice versi Citra Kirana dan sampo Sunsilk versi Carla Rizki untuk mengetahui

Terdapat lima kompetensi yang harus dimiliki oleh seorang kepala sekolah yaitu: kompetensi kepribadian, kompetensi manajerial, kompetensi kewirausahaan, kompetensi

[r]