• Tidak ada hasil yang ditemukan

BAB 2 TINJAUAN PUSTAKA

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB 2 TINJAUAN PUSTAKA"

Copied!
17
0
0

Teks penuh

(1)

5

Pada bab ini dibahas teori-teori yang diperlukan dalam pembuatan Aplikasi Form Import barang berbasis Android pada SINOKOR MERCHANT MARINE CO., LTD. dengan Socket Programming.

2.1 Teori Yang Berkaitan Dengan Software Engineering

2.1.1 Waterfall

Waterfall model atau juga yang dikenal dengan sebutan classic life cycle merupakan salah satu model proses dalam pembuatan suatu program aplikasi. Model ini disebut dengan waterfall karena tahap demi tahap yang dilalui harus menunggu tahap sebelumnya selesai dan berjalan berurutan.(pressman dan maxim,2014 : 42).

Sedangkan menurut Sommerville(2010: 30-31) model proses pengembangan perangkat lunak waterfall merupakan plan-driven process atau pada prinsipnya pengembangan harus membuat rencana dan jadwal pekerjaan sebelum melakukan pekerjaan. Model proses waterfall memiliki tahapan-tahapan sebagai berikut:

1. Requirement Analysis and Definition

Pada tahap ini dilakukan proses pengumpulan kebutuhan secara lengkap kemudian dilakukan analisis dan didefinisikan secara rinci dan disajikan sebagai sistem spesifikasi.

2. System and Software Design

Pada tahap ini dilakukan proses desain sistem dengan mengalokasikan requirement perangkat keras maupun perangkat lunak dengan membentuk sistem arsitektur secara keseluruhan.

Software desain melibatkan proses identifikasi dasar abstraksi

sistem perangkat lunak dan hubungannya.

(2)

3. Implementation and Unit Testing

Pada tahap ini desain perangkat lunak direalisasikan sebagai program. Program yang telah direalisasi diuji dengan cara memverifkasi apakah setiap unit memenuhi spesifikasi awalnya.

4. Integration and System Testing

Pada tahap ini program yang telah diuji dipastikan sudah memenuhi software requirement. Apabila telah terpenuhi, sistem perangkat lunak didistributorkan kepada user.

5. Operation and Maintenance

Pada tahap ini dilakukan pengoprasian program dan dilakukan pemeliharaan seperti perubahan karena adaptasi dengan situasi sebenarnya.

2.1.2 Unifield Modelling Languange

Unifield Modelling Languange atau yang bisa disebut UML ini adalah suatu gambaran yang digunakan untuk menganalisa, menentukan, dan sistem desain suatu perangkat lunak. (Whitten & Bentley, 2007:371).

UML berfungsi sebagai (blue print) cetak biru karena sangat lengkap

dan detail. Dengan cetak biru ini maka akan diketahui informasi secara

detail tentang coding program atau bahkan membaca program dan

menginterpretasikan kembali ke dalam bentuk diagram. UML memiliki

tujuan untuk dapat membangun suatu model dari suatu sistem dengan

meningkatkan suatu kompleksitas sistem, visualisasi, dan pemodelan

yang dapat memungkinkan user atau pengguna dari sistem tersebut dapat

memahami sistem secara keseluruhan. UML memiliki berbagai jenis

diagram-diagram yang dapat memberikan suatu gambaran tertentu dari

suatu sistem.

(3)

Terdapat jenis-jenis diagram didalam perancangan UML, antara lain:

2.1.2.1 Use Case Diagram

Use Case Diagram ini menggambarkan siapa saja yang dapat berinteraksi dengan sistem. Use Case Diagram ini digunakan untuk mengidentifikasi siapa yang berinteraksi dengan sistem dan apa yang harus dilakukan sistem. Elemen- elemen dari Use Case Diagram itu terdiri dari:

Tabel 2.1 Simbol dari use case diagram

No Simbol Gambar Keterangan

1 Actor Actor adalah seseorang yang

berinteraksi dengan sistem dan dapat berupa manusia maupun sistem.

Gambar Actor ini digambarkan dengan stickman yang akan dipresentasikan sebagai seseorang atau sesuatu yang akan berinteraksi langsung dengan sistem.

2 Use Case Fungsionalitas dari suatu sistem yang mengekspresikan tujuan dari suatu sistem yang harus dicapai. Diberikan nama sesuai dengan tujuan untuk tercapainya kerja sistem.

3 Association

Relattionship Asisosiasi adalah hubungan antara actors dan sebuah use case dimana interaksi terjadi antara mereka. Garis tanpa tanda panah itu merupakan interaksi anatara use case dengan external server atau bisa juga dengan receiver actor.

4 Generalisasi

Relationship Hubungan antara actors dan sebuah use case dimana interaksi terjadi antara mereka. Garis dengan tanda panah menjelaskan use case tersebut dilakukan oleh actor.

5 Extends Extends dapat digunakan pada saat use

case memiliki beberapa tahapan.

Tahapan tersebut akan dapat menghasilkan use case yang disebut juga dengan extension use case.

Tahapan memiliki tahap selanjutnya

yang harus diselesaikan.

(4)

6 Include Include digunakaan saat dua atau lebih dari use case dari suatu sistem yang melakukan tahapan fungsionalitas yang sama. Gabungan dari use case ini disebut juga dengan abstract use case.

7 Depends On Depends On adalah relasi yang

menggambarkan dari suatu use case yang tidak bisa dilaksanakan sampai use case yang lainnya dilaksanakan.

8 Inheritance Depends On adalah relasi yang

menggambarkan dari suatu use case yang tidak bisa dilaksanakan sampai use case yang lainnya dilaksanakan.

9 Subsystem Cakupan dari suatu sistem yang

dijalankan didalam use case.

• Berikut ini adalah salah satu contoh dari use case diagram suatu sistem tertentu:

Gambar 2.1 Use Case Diagram

(Whitten & Bentley, 2007:246)

(5)

2.1.2.2 Use Case Narrative

Use case narratives adalah dokumentasi secara high level (tingkat tinggi atau secara luas) untuk memahami kejadian dan tingkatan pada sistem. Setiap use case harus diperluas untuk memasukkan aliran khusus dari kejadian dan aliran alternatifnya. Aliran khusus use case dari kejadian adalah deskripsi langkah demi langkah yang dimulai dari seorang actor yang memulai proses dan berlanjut sampai akhir kejadian. Aliran alternative mendokumentasi jalur bercabang dari use case (Whitten & Bentley, 2007: 256).

2.1.2.3 Class Diagram

Class Diagram ini digunakan untuk menggambarkan suatu struktur dari sebuah sistem. Objek adalah suatu contoh dari sebuah class yang dapat dibuat, dimodifikasi, maupun dihapus selama sistem berjalan. Sebuah objek dapat mencangkup nilai- nilai dari atribut yang kaitannya dengan objek yang lain (Whitten & Bentley, 2007: 400). Class Diagram memiliki tiga aspek pokok, yaitu:

Tabel 2.2 Class diagram

No Simbol Gambar Keterangan

1 Nama atau Object Instance

Merupakan nama dari suatu class yang digunakan sebagai pembeda dari suatu objek tertentu.

2 Atribute Merupakan property atau data yang

berada pada class tersebut.

3 Behavior Merupakan fungsi atau operasi yang

dimiliki pada class tersebut.

(6)

• Visibility

Dalam class diagram, suatu objek memiliki hak akses terhadap atribute dan behavior yang disebut visibility. Ada tiga jenis visibility, yaitu(Whitten & Bentley, 2007: 650):

Tabel 2.3 Visibility

No Simbol Gambar Keterangan

1 Public + Atribute atau behavior dapat dipanggil oleh semua class yang berhubungan.

2 Private - Atribute atau behavior digunakan oleh class itu sendiri dan tidak dapat dipanggil oleh class lain.

3 Protected # Atribute atau behavior digunakan oleh class itu sendiri dan class turunannya (child).

• Multiplicity

Antar class dalam class diagram memiliki hubungan yang dilengkapi dengan multiplicity, yaiut jumlah minimal dan maksimal suatu objek class yang berhungungan dengan objek class lainnya, terdiri dari (Whitten &

Bentley, 2007: 377):

Tabel 2.4 Multiplicity

No Gambar Keterangan

1 Dari 0 sampai 1 atau minimum 0 maximum 1

2 Dari 1 sampai 1 atau minimum 1 maximum 1

3 Dari 0 sampai banyak atau minimum 0 maximum sampai ke-n

4 Dari 1 sampai banyak atau minimum 1 maximum sampai ke-n

(7)

• Relaintionships

Semua class pada class diagram saling berhubungan.

Hubungan antar class terbagi menjadi beberapa jenis, yaitu:

Tabel 2.5 Relationship

No Simbol Gambar Keterangan

1 Asosiasi Hubungan statis antar satu class dengan

class lainnya. Umumnya

menggambarkan class yang memiliki atribut berupa class lain, atau class yang harus mengetahui eksistensi class lain.

2 Agregasi Merupakan gabungan “bagian dari” atau

“terdiri dari”. Hubungan digunakan ketika satu kelas (whole part) dibuat dari beberapa kelas lainnya.

3 Komposit Komposit merupakan hubungan suatu

bagian dari class dengan whole class dimana siklus hidup part class sangat bergantung dengan whole class sehinggga bila instance dari whole class dihapus maka instance dari whole class juga terhapus.

4 Inheritance Metode atau atribut dari suatu class tertentu diturunkan kembali oleh class lain yang juga disebut inheritance atau mewariskan. Class asal atau parent atau superclass dapat mewariskan atribut dan

metode yang menambahkan

fungsionalitas baru ke class yang

diwariskan tersebut yang sering disebut

sebagai child atau subclass.

(8)

Berikut adalah contoh dari class diagram yang diambil dari buku Whitten & Bentley, 2007 halaman 406:

Gambar 2.2 Class Diagram

(Whitten & Bentley, 2007:406)

(9)

2.1.2.4 Activity Diagram

Activity diagram adalah sebuah diagram yang digunakan untuk menggambarkan sebuah alur dari sebuah proses ,langkah-langkah dari use case, atau logika dari sebuah karakteristik objek(method)(Whitten & Bentley.2007:390).

Notasi yang digunakan dalam activity diagram adalah:

Tabel 2.6 Activity Diagram

No Simbol Gambar Keterangan

1 Start Initial node adalah sebuah lingkaran yang solid menandakan awal dimulainya proses 2 Action Action menandakan angkah persatuan. Alur

dari banyak action membangun total aktifitas yang terdapat pada diagram.

3 Flow Tanda panah dari diagram adalah gerak maju dari actions. kebanyakan alur tidak perlu kata untuk mengidentifikasi kecuali keluar dari decisions

4 Decision Bentuk wajik dengan satu alur masuk dan dua atau lebih alur keluar dan alur yang keluar menandakan kondisi.

5 Fork Sebuah bar hitam dengan satu alur masuk dua atau lebih alur keluar. Actions yang berjalan pararel dibawah fork terjadi di berbagai urutan maupun bersamaan.

6 Join Sebuah bar hitam dengan dua atau lebih alur masuk dan satu alur keluar, menandakan akhir dari proses pararel. Semua actions yang masuk ke join harus terselesaikan sebelum pemrosesan berlanjut.

7 Stop Akhir dari proses digambarkan dengan sebuah

lingkaran solid didalam bingkai lingkaran

(10)

Berikut contoh dari activity diagram yang diambil dari buku Whitten and Bentley,2007 halaman 393.

Gambar 2.3 Activity Diagram

(Whitten and Bentley,2007:393)

(11)

2.1.3 Lima (5) Faktor Manusia Terukur

Demi tercapainya tujuan dari IMK, maka perancangan interface sebaiknya tidak lupa untuk mengikutsertakan evaluasi terhadap lima (5) faktor terukur dari manusia sebagai berikut (Shneiderman & Plaisant, 2010, pp32-33):

1. Waktu Untuk Belajar

Ukuran berapa lama seorang user untuk mempelajari fungsi-fungsi di dalam sebuah aplikasi hingga pada akhirnya dapat menggunakan dengan baik.

2. Kecepatan Performa

Ukuran berapa lama suatu fungsi atau serangkaian tugas di dalam aplikasi tersebut dilakukan.

3. Tingkat Error Yang Dilakukan Pengguna

Ukuran berapa banyak dan jenis error yang dilakukan oleh user di dalam melakukan serangkaian tugas.

2. Daya Ingat Pengguna

Ukuran berapa lama user mempertahankan ingatan dan pengetahuannya setelah beberapa jam, hari, atau bahkan minggu.

3. Kepuasan Subjektif

Ukuran seberapa puas user atas berbagai aspek dari

suatu sistem.

(12)

2.2 Socket Programming

Socket adalah suatu mekanisme dari komunikasi yang dimana data terjadi pertukaran data anatara 2 buah program yang dapat saling terhubung. Socket programing ini berawal dari system UNIX BSD versi 4.2

UNIX BSD versi 4.1 pada akhir 1981.

Socket ini harus berjalan antara client dan server yang dimana client tersebut merequest suatu data ke server yang nantinya server akan menindaklanjuti sebuah request dari client tersebut yang nantinya akan di proses oleh server dari request tersebut dengan output yang sama dengan request tersebut.

Socket merupakan fasilitas IPC (Inter Proses Communication) untuk aplikasi jaringan. Agar suatu socket dapat berkomunikasi dengan socket lainnya, maka socket butuh diberi suatu alamat unik sebagai identifikasi. Alamat socket terdiri atas Alamat IP dan Nomer Port. Contoh alamat socket adalah 192.168.21.27:

1234, dimana nomer 1234 adalah nomor portnya.

Di antara client dan server tersebut harus memiliki beberapa langkah agar

client dan server tersebut bisa saling terhubung satu sama lain, berikut langkah-

langkah yang harus di jalankan oleh client dan server :

(13)

Gambar 2.4 Socket Programming

Berikut adalah penjelasannnya :

a. Server : Socket - Bind - Listen - Accept - Write/Read – Close

• Socket

Membuat Socket yang dapat membuka suatu koneksi yang dapat terhusung dengan client.

• Bind

Mengikat socket pada suatu alamat tertentu seperti mengikatnya pada alamat IP Address dan Port .

• Listen

Menunggu koneksi yang datang dari client, server akan

terus menunggu hingga ada client yang terhubung dengan

server.

(14)

• Accept

Menerima koneksi yang telah masuk dari client.

• Read

Membaca pesan atau data-data datang yang dikirimkan oleh client ke server.

• Close

Menutup koneksi dengan client jika suatu tugas telah selesai dijalankan.

b. Client : Socket - Connect - Write/Read – Close

• Socket

Membuat Socket yang dapat membuka suatu koneksi yang dapat terhubung dengan server.

• Connect

Mengkoneksikan suatu jaringan yang berasal dari client yang akan diterima oleh server.

• Write

Menulis atau mengirim pesan dan data-data yang dikirmkan ke server.

• Close

Menutup koneksi dengan server jika suatu tugas telah

selesai dijalankan.

(15)

2.2.1 TCP

Menurut Jim Kurose dan Keith Ross (2010, pp 160) “TCP is Connection oriented and provides a reliable byte-stream channel through which data flows between to end system”. Socket yang menggunakan TCP memerlukan pertukaran data dua arah yang valid, maka dari itu TCP disebut connection oriented. TCP dapat menangani data yang hilang, rusak, terpecah, ataupun terduplikasi.

2.2.2 UDP

Menurut Jim Kurose dan Keith Ross (2010, pp 160-161)

”UDP is connectionless and send independent packets of data from one end system to the other, without any guarantees about delivery.”.

UDP tidak memerlukan proses koneksi terlebih dahulu untuk dapat mengirimkan data, paket-paket data yang dikirimkan UDP bisa jadi melalui rute yang berbeda-beda, sehingga hasil yang diterima bisa jadi tidak berurutan, maka dari itu UDP disebut connectionless. Aplikasi socket yang menggunakan UDP lebih memprioritaskan pada pengumpulan data

.

2.3 Aplikasi Mobile

Penggunaan perangkat mobile terus meningkat. Perangkat mobile seperti

smartphone dan tablet telah menjadi sesuatu yang biasa di masyarakat. Hal yang

menarik dalam penggunaan perangkat mobile itu sendiri adalah terdapatnya

aplikasi mobile. Menurut Gahran (2011) aplikasi mobile sendiri adalah software

yang dapat dijalankan pada perangkat genggam seperti tablet, e-reader, dan

smartphone.

(16)

2.3.1 Sistem Operasi Mobile

Berdasarkan pendapat Beal (2010) sistem operasi pada perangkat mobile memiliki peran penting agar aplikasi-aplikasi yang berada dalam perangkat yang dapat saling berkomunikasi atau bertukar data yang bekerja pada processor kecil yang ada di gadget. Sebuah perangkat mobile yang tidak memiliki sistem operasi akan menyebabkan aplikasi- aplikasinya tidak berjalan dengan baik.

Shelly dan Vermaat (2011, pp. 21) menjelaskan bahwa,

“Smarthphone adalah sebuah sebuah telepon yang dapat terhubung ke internet yang biasanya juga menyediakan fungsi-fungsi untuk mengatur informasi personal seperti kalendar, buku perjanjian, buku alamat, kalkulator, dan sebuah catatan.”

Suatu perangkat mobile dapat disebut smartphone jika dapat menjalankan sebuah sistem operasi (Fling, B., 2009, pp. 22). Berikut merupakan sistem operasi yang biasanya terdapat pada smartphone:

a. Windows Mobile

Windows Mobile adalah sistem operasi mobile yang beroperasi pada platform perangkat Windows Mobile.

b. IOS

IOS adalah sistem operasi keluaran dari Apple yang digunakan dalam semua lini gadgetnya yaitu, Iphone, Ipad, & Ipod.

c. Android

Android adalah salah satu dari sistem operasi open source yang terkenal di kalangan masyarakat. Desain dari sistem operasi Android bisa disesuaikan dengan operator dan produsen perangkat mobile yang ingin menggunakan.

d. Blackberry

Blackberry merupakan sistem operasi besutan RIM yang

populer pada tahun 2008 dengan aplikasi chat Blackberry

Messenger.

(17)

2.4 Fact Finding

Untuk mengumpulkan informasi, terdapat berbagai macam teknik yang disebut fact-finding techniques. Menurut Connolly dan Begg(2010, p.344) berikut ini adalah contoh fact-finding techniques :

a. Pemeriksaan Dokumen

Mengumpulkan informasi dengan memeriksa dokumen – dokumen yang memiliki informasi yang mendukung dalam proses pembuatan sistem database.

b. Interview

Merupakan teknik yang paling umum digunakan untuk mengumpulkan data. Teknik ini dijalankan dengan cara bertatap muka dengan orang – orang yang memliki interaksi langsung terhadap system dan mencari tahu fakta yang berguna, mengidentifikasi kebutuhan, dan mengumpulkan ide dan opini.

c. Observasi

Observasi merupakan teknik fact-finding paling efektif untuk mengerti sebuah sistem. Teknik ini memungkinkan untuk kita untuk melihat secara langsung aktifitas sebuah sistem dan mempelajarinya.

d. Penelitian

Merupakan teknik yang berguna untuk meneliti sebuah aplikasi atau permasalahan yang serupa. Pertukaran jurnal, referensi buku, dan internet adalah sumber informasi yang baik dan dapat memberikan informasi yang berguna bagaimana cara menyelesaikan sebuah pemasalah yang sama.

e. Kuesioner

Kuesioner merupakan dokumen dengan tujuan khusus

yang digunakan untuk mendapatkan fakta dari permasalahan. Dengan

banyaknya informasi yang didapat, maka peneliti akan membuat

sebuah kesimpulan secara umum tentang apa yang dihasilkan.

Referensi

Dokumen terkait

Berdasarkan hasil analisis dari penelitian yang dilakukan, maka dapat disimpulkan bahwa work family conflict berpengaruh negatif terhadap kepuasan kerja pada karyawan

Gambar 10 adalah tampilan daftar referensi, terdiri dari background berwarna putih, text bertuliskan daftar referensi di atas, text berwarnabiru sebagai isi dari tentang

Tujuannya adalah untuk meningkatkan pemahaman manajemen an investasi baru dan melakukan analisa investasi mana yang lebih penting untuk memungkinkan manajemen

Perilaku merokok pada remaja saat ini sudah tidak tabu lagi, dimanapun tempat tidak sulit menjumpai anak remaja dengan kebiasaaan merokok.Orang tua mempunyai pengaruh

1. Secara simultan seluruh variabel harga spot emas periode sebelumnya, indeks dolar AS, indeks saham AS, suku bunga AS, dan IHK/CPI AS berpengaruh signifikan terhadap

Dan jika kita berkeliling di negara-negara Islam yang lain, maka kita pun akan menemukan bentuk acara dan waktu yang berbeda-beda dalam acara Maulid Nabi Muhammad shallallâhu

Mahasiswa dapat memahami Pengertian Ushul Fiqh, Fiqh dan bisa membedakan anatar fiqh dengan ushul fih serta memahami metode pembelajaran fiqh dalam islam.. Menyimak

Data primer dalam penelitian ini adalah isi teks cerbung Ngonceki Impen karya Sri Sugiyanto berdasarkan unsur-unsur struktural yang meliputi fakta- fakta