Modul SDLC
Modul SDLC
Modul Pembelajaran
SDLC (System
Development Life
Cycle)
DAFTAR ISI
1
BAB I
SISTEM INFORMASI DAN SDLC
A. Definisi Sistem Informasi
● Mobile
2
● Desktop
SDLC (System Development Life Cycle) adalah teknik untuk mengelola dan
mengendalikan proyek. Berbagai alat, teknik, dan metodologi dibahas, termasuk
pendekatan terstruktur tradisional dan pendekatan berorientasi objek yang lebih
baru. Pengembang sistem harus terbiasa dengan konsep dasar kedua
pendekatan. (Satzinger 2010)
3
1. Concept
2. Implementation
3. Delivery
ilakukan hosting p
Pada tahap delivery d ada server aplikasi a
gar
sistem informasi bisa diakses di internet, biasanya pada tahap ini dilakukan
pengujian terlebihi dahulu supaya bisa dipastikan sistem berjalan dengan
baik.
4. Use
5. Maintenance
4
1. Waterfall
2. Prototype
3. Spiral
4. Scrum
5. RAD (Rapid Application Development)
6. Agile
7. dan lain-lain
5
BAB II
Metodologi Pengembangan Sistem Informasi
Metodologi atau metode pengembangan sistem informasi yang digunakan untuk
suatu aplikasi yang ada di sebuah perusahaan sofware house salah satunya adalah
seperti gambar berikut :
1. Planning
ilakukan kontrak kerja, penentuan harga, penentuan
Pada tahap Planning d
estimasi waktu pengerjaan antara perusahaan dengan client, penentuan tim yang
akan terlibat dalam pembuatan aplikasi. Setelah itu dilakukan proses wawancara
yang meliputi latar belakang, tujuan wawancara, siapa yg diwawancarai, orang yg
diwawancarai, mengatur jadwal wawancara, dan menentukan jenis struktur
pertanyaan.
6
2. Analysis
3. Design
4. Implementation
5. Testing
6. Release
Pada tahap release dilakukan publikasi produk aplikasi yang telah dibuat
kepada client.
7
BAB III
PEMBAHASAN
1. Planning
1. Kontrak Kerja
2. Penentuan Harga
3. Penentuan Estimasi Waktu Pengerjaan
4. Penentuan Tim Pengerjaan
1. P
ra kontraktual
Di dalam tahap ini para pihak sedang saling menjajaki dalam tahapan ini para
pihak sedang saling menjajaki, dalam tahapan ini menjadi negosiasi antara kedua belah
pihak, tawar-menawar, demand dan suply, sampai terjadinya konsensus.
Negosiasi adalah proses untuk mencapai kesepakatan mengenai satu kerja sama
dimana para pihak saling memberikan konsesi satu sama lain.
1. Negosiasi
2. Memorandum of Understending
3. Studi kelayakan
4. Negosiasi (lanjutan)
2. T
ahap Kontraktual
Tahap mulai terjadinya perjanjian sampai pelaksanaan perjanjian selesai. Dalam
tahap ini dilaksanakan pemenuhan syarat sahnya kontrak, pelaksanaan prestasi sampai
berakhirnya kontrak.
1. Penulisan Naskah Awal
2. Perbaikan Naskah
3. Penulisan Naskah Akhir
4. Penandatanganan
3. P
ost Kontraktual
8
9
Berikut ini merupakan tujuan dari penetapan harga yang memiliki sifat ekonomis dan
non ekonomis yaitu :
Hal yang dilakukan agar mampu menarik perhatian konsumen yang menjadi target
pasar, maka perusahaan perlu dan harus melakukan penetapan harga yang rendah.
Dengan harga yang rendah ini, akan menjadi pendorong dalam meningkatkan
permintaan yang datang pesaing.
Hal yang dilakukan dalam menjaga target pasar dari pesaing bisnis maka perlu
suatu teknik yaitu teknik menyesuaikan harga menjadi lebih murah dibandingkan
dengan pesaing. Karena penurunan harga ini akan membuat konsumen tetap setia
dengan produk yang ditawarkan.
Metode PenentuanHarga
Apabila perusahaan menentukan dan menetapkan tujuan yang ingin dicapai maka
selanjutnya adalah menentukan metode penetapan harga. Umumnya metode
penetapan harga terbagi menjadi 3 macam pendekatan yaitu:
Dalam metode penetapan harga ini memiliki faktor yang utama yaitu aspek
penawaran (biaya). Dalam metode ini harga akan ditentukan berdasarkan dengan biaya
produksi dan juga biaya pemasaran produk yang selanjutnya akan ditambah dengan
jumlah-jumlah tertentu untuk dapat menutupi biaya-biaya langsung, biaya overhead,
serta laba.
10
untuk produk yang standar di pasar oligopoli. Untuk menarik perhatian konsumen
perusahaan akan menggunakan strategi harga yang telah dirancang.
Produk Baru
Dalam pengenalan produk baru perlu penetapan strategi harga. Berikut ini merupakan
penetapan harga yang efektif terdapat 2 alterrnatif yaitu:
Harga mengapung adalah memberikan harga yang tinggi agar dapat menutupi
biaya dan sekaligus meghasilkan laba maksimum atau dengan kata lain dalam hal ini
perusahaan mampu meyakinkan pelanggan bahwa produknya memiliki perbedaan
dengan produk sejenis yang dimiliki oleh pesaing.
Harga mengapung disebut juga dengan pendekatang skimming, pendekatan ini sangat
efektif apabila terdapat perbedaan harga atas aspek tertentu dan pesaing relatif sedikit.
Selain itu pendekatan skimming bermanfaat sebagai pembatas atas permintaan suatu
produk sampai perusahaan merasa siap kembali untuk melakukan produksi secara
masal. Pendekatan ini juga dapat meningkatkan nilai produk menjadi sangat prestisius.
2. Harga Penetrasi
11
Harga penetrasi adalah memberikan harga yang rendah agar terciptanya pangsa
pasar dan permintaan, umumnya diterapkan di kondisi pasar yang tidak terfragmentasi
ke dalam aspek berbeda produk dan tersebut tidak mempunyai nilai simbolis yang
tinggi. Harga penetrasi apabila digunakan maka aakan sangat cocok dan efektif untuk
sasarna pasar yang cenderung sensitif terhadap harga.
Strategi penetapan harga suatu produk yang telah beredar ini umumnya tidak
akan lepas atas posisi produk tersebut dalam siklus kehidupan produk, berikut ini
merupakan 3 tingkatan dalam tahapan siklusnya yaitu:
1. Tahap Pertumbuhan
Tahap ini memiliki ciri yaitu penjualan akan meningkat dan disertai dengan
munculnya pesaing. Saat terjadi pertumbuhan yang cepat maka biasanya strategi yang
akan digunakan adalah tetap mempertahankan harga produk atau pasar. Namun
sebaliknya apabila pertumbuhan melambat, maka strategi yang diterapkan adalah
strategi harga agresif atau menurunkan harga agar dapat mendorong penjualan
sekaligus mampu menghadapi persaingan yang semakin ketat.
2. Tahap Kematangan
Tahap kematangan ini mempunyai karakteristik yaitu fleksibilitas harga, hal ini
terjadi karena tahap ini merupakan efektivitas strategi dalam penetapan harga. Pada
umumnya sudah menjadi kewajiban bagi perusahaan menjadi sosok yang responsif
terhadap situasi pasar, konsumen, bahkan pesaing.
3. Tahap Penurunan
Dalam tahap ini umumnya ditandai dengan menurunnya jumlah permintaan yang
secara terus menurus. Selain itu tahap ini merupakan tahap akhir dalam daur hidup
produk yang memiliki dua alternatif langkah utama yaitu:
1. Estimasi Proyek
12
1) Perkirakan ukuran produk pengembangan. Ini biasanya berakhir di salah satu Lines of
Code
(LOC) atau Function Points (FP), tetapi ada unit pengukuran lain yang memungkinkan.
Diskusi tentang
pro & kontra dari masing-masing dibahas dalam beberapa materi yang dirujuk pada akhir
laporan ini.
2) Perkirakan upaya dalam bulan orang atau bulan.
3) Perkirakan jadwal dalam bulan kalender.
4) Perkirakan biaya proyek dalam dolar (atau mata uang lokal)
2. Memperkirakan ukuran
Perkiraan akurat ukuran perangkat lunak yang akan dibangun adalah langkah
pertama menuju perkiraan efektif. Anda sumber informasi mengenai ruang lingkup proyek
harus, sedapat mungkin, dimulai dengan formal deskripsi persyaratan - misalnya,
spesifikasi kebutuhan pelanggan atau permintaan proposal, spesifikasi sistem, spesifikasi
persyaratan perangkat lunak. Jika Anda [memperkirakan] suatu proyek di fase selanjutnya
dari siklus hidup proyek, dokumen desain dapat digunakan untuk memberikan detail
tambahan. Jangan biarkan kurangnya spesifikasi ruang lingkup formal menghentikan
Anda dari melakukan perkiraan proyek awal. Deskripsi verbal atau garis besar papan tulis
terkadang Anda harus memulainya. Bagaimanapun, Anda harus berkomunikasi dengan
tingkat risiko dan ketidakpastian dalam perkiraan untuk semua yang berkepentingan dan
Anda harus memperkirakan kembali proyek secepatnya lebih banyak informasi ruang
lingkup ditentukan.
Dua cara utama Anda dapat memperkirakan ukuran produk adalah:
1) Dengan analogi. Setelah melakukan proyek serupa di masa lalu dan mengetahui
ukurannya, Anda memperkirakan masing-masing bagian utama dari proyek baru sebagai
persentase dari ukuran bagian yang serupa dari proyek sebelumnya. Perkirakan ukuran
total proyek baru dengan menambahkan perkiraan ukuran masing-masing bagian.
Sebuah estimator berpengalaman dapat menghasilkan estimasi ukuran yang cukup baik
dengan analogi jika ukuran akurat nilai tersedia untuk proyek sebelumnya dan jika proyek
baru cukup mirip denganyang sebelumnya.
2) Dengan menghitung fitur produk dan menggunakan pendekatan algoritmik seperti
Function Points untuk dikonversi hitungan menjadi estimasi ukuran. "Fitur produk" tingkat
makro dapat mencakup jumlah subsistem, kelas / modul, metode / fungsi. "Fitur produk"
yang lebih rinci mungkin termasuk jumlah layar, dialog, file, tabel database, laporan,
pesan, dan sebagainya.
13
3. Memperkirakan upaya
Setelah Anda memiliki perkiraan ukuran produk Anda, Anda dapat memperoleh estimasi
upaya. Konversi ini dari ukuran perangkat lunak hingga upaya total proyek hanya dapat
dilakukan jika Anda memiliki pengembangan perangkat lunak yang ditentukan siklus
hidup dan proses pengembangan yang Anda ikuti untuk menentukan, merancang,
mengembangkan, dan menguji perangkat lunak. SEBUAH proyek pengembangan
perangkat lunak melibatkan jauh lebih dari sekadar pengkodean perangkat lunak - pada
kenyataannya, pengkodean sering bagian terkecil dari upaya keseluruhan. Menulis dan
meninjau dokumentasi, mengimplementasikan prototipe, merancang kiriman, dan
meninjau dan menguji kode mengambil porsi yang lebih besar dari keseluruhan proyek
upaya. Perkiraan upaya proyek mengharuskan Anda untuk mengidentifikasi dan
memperkirakan, dan kemudian merangkum semua kegiatan Anda harus melakukan untuk
membangun produk dengan ukuran perkiraan.
Ada dua cara utama untuk memperoleh upaya dari ukuran:
1) Cara terbaik adalah dengan menggunakan data historis organisasi Anda sendiri untuk
menentukan berapa banyak upaya proyek-proyek sebelumnya dari ukuran yang
diperkirakan telah diambil. Ini, tentu saja, mengasumsikan (a) organisasi Anda telah
mendokumentasikan hasil aktual dari proyek sebelumnya, (b) bahwa Anda memiliki
setidaknya satu masa lalu proyek dengan ukuran yang sama (bahkan lebih baik jika Anda
memiliki beberapa proyek dengan ukuran yang sama saat ini diperkuat bahwa Anda
secara konsisten memerlukan tingkat upaya tertentu untuk mengembangkan proyek
dengan ukuran tertentu), dan (c) itu Anda akan mengikuti siklus hidup pengembangan
yang serupa, gunakan metodologi pengembangan yang serupa, gunakan alat serupa, dan
gunakan tim dengan keterampilan dan pengalaman serupa untuk proyek baru.
2) Jika Anda tidak memiliki data historis dari organisasi Anda sendiri karena Anda belum
mulai mengumpulkan belum atau karena proyek baru Anda sangat berbeda dalam satu
atau beberapa aspek utama, Anda dapat menggunakan pendekatan algoritmik yang
matang dan diterima secara umum seperti model COCOMO Barry Boehm atau
Metodologi Putnam untuk mengubah estimasi ukuran menjadi estimasi upaya.
Model-model ini telah diperoleh dengan mempelajari sejumlah besar proyek yang
diselesaikan dari berbagai organisasi untuk dilihat bagaimana ukuran proyek mereka
dipetakan ke dalam upaya total proyek. Model "data industri" ini mungkin tidak sama
seakurat data historis Anda sendiri, tetapi mereka dapat memberi Anda perkiraan upaya
rata-rata yang berguna.
14
4. Perkiraan jadwal
Jadi, setiap perusahaan dapat memiliki spektrum layanan sendiri dan jumlah
anggota tim dapat bervariasi. Misalnya, di SoftwareSeni (dan sebagian besar perusahaan
lain) tim developer terdiri dari: Pakar Analisis Requirements (requirement analyst);
Manajer Proyek (project manager); Desainer Grafis (graphic designer); Desainer UI/UX
(UI/UX designer); Web Developer; Tester Website (quality assurance tester)
15
Pada saat yang sama, memiliki spesialis non-teknis yang dapat membantu
memenuhi target pemasaran digital sangat diperlukan di era global ini. Tim non-teknis ini
terdiri dari: SpesialisSEO (SEO expert); Ahli strategi pemasaran (marketing strategist);
Pakar/penulis konten (content writer).
Baik secara eksplisit atau tidak, seseorang harus melakukan peran analisis
requirement pada sebuah proyek software development. Titel resmi bisa saja pakar
analisis requirement (requirements), analis bisnis, sistem analis, manajer produk, atau
sekadar analis, tetapi seseorang perlu menerjemahkan beberapa perspektif ke spesifikasi
requirement dan berkomunikasi dengan pemangku kepentingan lainnya. Mungkin yang
paling penting, analis membantu menentukan perbedaan antara apa yang client inginkan
dan apa yang benar-benar klien butuhkan.
Tugas utama dari spesialisasi ini adalah untuk memahami visi Anda tentang
proyek, menganalisanya, kemudian menerjemahkan ke dalam spesifikasi teknis yang
komprehensif. Pada gilirannya, spesifikasi tersebut akan digunakan oleh tim website
development untuk mengatur kerangka waktu pengerjaan dan persiapan proyek.
Dengan kata lain, pakar analisis requirement mempersiapkan dasar untuk pengembangan
produk.
16
Untuk memulai, selalu ada manajemen tim proyek. Pekerja teknis adalah sumber
daya kreatif, produktif, dan sangat efektif, tetapi mereka membutuhkan arahan. Sebagian
besar proyek mencakup banyak sumber daya yang sangat khusus seperti developer,
analis, tester website, desainer grafis, dan penulis teknis.
Salah satu fungsi utama dari PM proyek Anda adalah untuk mengkoordinasikan
semua sumber daya dan tugas mereka – untuk memastikan bahwa pekerjaan dilakukan
dalam urutan yang tepat sesuai dengan tenggat waktu (dan uang) yang dialokasikan, serta
memfasilitasi komunikasi antara yang sangat terfokus (tetapi belum tentu memahami
“gambaran besar” proyek itu) dan anggota tim proyek software developer yang lain.
17
Selain itu, manajer proyek berkomunikasi dengan Anda sepanjang waktu. Jadi, jika
Anda memiliki pertanyaan atau ingin membuat beberapa perubahan pada proyek – dialah
orang yang harus Anda hubungi.
Dalam arti tertentu, semua desain visual dimulai dengan desain grafis.
Sederhananya, desain grafis adalah seni untuk memutuskan bagaimana hal-hal harus
dilihat. Desainer Grafis memilih warna dan font, serta mengatur elemen (seperti gambar
dan blok teks) dalam tata letak. Ini dapat terjadi baik online (website dan aplikasi seluler)
maupun dalam materi cetak (iklan majalah, sampul buku, display di toko). Secara historis,
desain grafis terkait dengan media cetak, tetapi tidak adil untuk mendefinisikan dan
membatasi lingkup kerja desainer grafis hanya pada industri tersebut.
Desain grafis, pada intinya, merupakan kombinasi dari problem solving dan
komunikasi visual. Desainer grafis menggunakan warna, gambar, dan tipografi untuk
18
mengkomunikasikan ide atau emosi melalui media cetak, web, dan desain visual. Karena
sebagian besar pekerjaan desain grafis berada di bawah payung “branding”, desainer
tradisional semacam ini mendapat arahan dari tim pemasaran. Meskipun wajar untuk
mengaitkan desain grafis hanya dengan daya tarik estetika website, desainer grafis juga
menargetkan sistem laman yang mengalir lancar. Psikologi dan fungsionalitas selalu
dipertimbangkan selama proses ini.
Gambar statis, bahkan ketika dibuat dan untuk media digital, dianggap desain grafis. Alur
kerja desainer grafis dimulai dari meriset kebutuhan grafis klien. Klien biasanya
memberikan referensi grafis yang diinginkan, atau terkadang menyerahkan sepenuhnya
pada kreativitas desainer. Kemudian desainer grafis mengumpulkan materi/aset berupa
photo stock atau font yang diperlukan sebelum akhirnya mengubahnya menjadi logo,
newsletter, atau ilustrasi.
19
D. Desainer UI/UX
Desain adalah tonggak yang menentukan arah untuk keseluruhan proyek. Anda
akan menemukan setidaknya dua dari berbagai kategori- antarmuka pengguna (User
Interface) dan desain pengalaman pengguna (User Experience).
UX berjalan satu langkah lebih jauh dari desain grafis dengan memulai proses UX
bahkan sebelum pena bertemu kertas atau mouse membuka Adobe Illustrator.
20
ini, desainer menciptakan wireframe yang merupakan penempatan skematis elemen di
website.
Di sinilah bagian desain pengalaman pengguna berakhir dan desainer dapat pindah ke
desain antarmuka.
Sementara UX mencakup semua hal tentang penelitian dan struktur, UI adalah singkatan
dari tampilan visual. Skema warna, font, ikon, dll. Dengan kata lain, perancang
menciptakan prototipe (tampilan akhir website Anda) berdasarkan pada tahap UX dan
menguji kegunaannya. Prototipe bisa interaktif atau statis.
Desain Antarmuka Pengguna secara khusus berkaitan dengan desain elemen interaktif,
dan karena itu eksis hampir secara eksklusif di media digital, seperti pada komputer,
tablet atau smartphone. Elemen interaktif seperti menu drop-down, aspek formulir, elemen
yang dapat diklik, animasi, rancangan tombol adalah semua alat penting untuk desainer UI
di seluruh dunia.
21
Gambar dengan beberapa jenis interaktivitas adalah UI, bahkan ketika mereka
menggabungkan gambar statis.
Steve Jobs pernah berkata “Desain bukan seperti apa dia terlihat, desain adalah cara
kerjanya”. Maksudnya bukan tentang teknologi apa yang dipakai, tetapi cara orang
menggunakan dan berinteraksi dengan sesuatu.
Jadi Anda dapat menyimpulkan bahwa desain UI adalah konsep total dan bagian
kompleks dari teks, gambar, tata letak, animasi, video dan elemen yang dapat didengar,
pola navigasi, kontrol fisik dan/atau virtual, bahkan taktil dan mungkin pengalaman
aromatik – apa pun – untuk terlibat secara aktif dengan pengguna.
22
E. Web Developer
Website development setidaknya memiliki dua komponen- sisi client, juga disebut
Front-End, dan sisi server – juga disebut Back-End. Sebelum membahas lebih lanjut
mengenai peran Front-End dan Back-End developer, mari kita pahami terlebih dahulu
komponen development sisi client (client side) dan sisi server (server side).
Sebagian besar website menggunakan kedua sisi client maupun sisi server. Meskipun ada
hal-hal yang dapat dilakukan oleh keduanya, ada beberapa hal yang hanya dapat
dilakukan di server-side dan begitu pula sebaliknya.
23
Front-End development bagus untuk semua hal yang membutuhkan interaksi pengguna,
contohnya; pembuatan games sederhana. Sedangkan Back-End development digunakan
untuk pekerjaan yang memerlukan data dinamis untuk dimuat, contohnya; sebuah
pemberitahuan yang memberi tahu user bahwa mereka perlu login.
Singkatnya, developer front-end fokus pada bagaimana user menggunakan website dan
apa yang mereka lihat ketika mereka mengakses website tersebut, developer back-end
bekerja pada sistem yang memberikan informasi kepada user.
Berikut ini penjelasan lebih rinci dari peran dan tanggung jawab kedua jenis web
developer:
Developer Front-End
Pekerjaan Front-End mencakup semua yang dapat Anda lihat dan berinteraksi. Bayangkan
tombol registrasi yang tampak seperti pada prototipe yang pernah Anda lihat sebelumnya.
Tetapi kemudian tombol itu aktif di browser, sehingga Anda dapat mengarahkan dan
bahkan mengkliknya. Tombol bereaksi dengan mengubah warna atau menjalankan
animasi tetapi tidak ada hal lain yang terjadi. Hal ini karena front-end seperti ‘kap mobil’
dari website Anda. Untuk membuatnya bekerja, developer harus meletakkan mesin di
sana.
2. C#
3. Java
4. Objective C
5. C/C++
6. Python
Developer Back-End
24
Tugas utama mereka adalah menulis kode dari server-side yang menggerakkan fitur
website. Ada banyak bahasa dan kerangka kerja yang dapat digunakan di bagian ini
(JavaScript, Python, .NET, Ruby, PHP dan sebagainya). Selain itu, mereka bertanggung
jawab atas pembuatan basis data dan sistem manajemen konten.
Tim software developer SoftwareSeni Indonesia terdiri dari developer back-end maupun
front-end yang bekerja dengan spektrum teknologi yang luas termasuk Angular, React.js,
Laravel, Codeigniter, Ruby on Rails, WordPress dan lainnya.
Full-stack Developer
Orang lain berpendapat bahwa full-stack developer adalah bentuk gabungan front-end
developer + back-end developer. Developer ini bukanlah ahli dalam segala hal; mereka
hanya memiliki pengetahuan dan kemampuan fungsional untuk menentukan konsep dan
25
mengubahnya menjadi produk jadi. Setidaknya ini adalah satu dari sekian banyak variasi
full-stack yang berkembang.
Pakar semacam ini membuat proses software development menjadi lebih mudah karena
mereka memahami bagaimana semua bekerja dari berbagai tingkatan dan dapat
mengantisipasi masalah dengan solusi yang sesuai.
Namun, menemukan pakar yang menguasi semua hal sekaligus adalah hal sulit dan
berisiko. Seperti yang pepatah katakan: “Jack of all trades, master of none.”
Hal itu berbahaya dari sudut pandang bisnis, lakukan dengan sembrono dan Anda akan
menemukan diri Anda di situasi yang sulit.
QA atau tester website adalah anggota tim website development yang juga
memiliki peran penting. Dia melindungi produk Anda dari invasi bug dan mengawasi
antarmukanya.
26
developer mengirim setiap versi produk ke QA. Pada gilirannya, mereka memeriksa
apakah itu sesuai dengan persyaratan teknis dan tuntutan khusus dari klien (jika ada).
Ketika bug ditemukan, QA menyusun laporan bug, dan mengirimnya kembali ke
developer yang mengurus bug tersebut. Kemudian melakukan pemeriksaan balik yang
dimaksudkan untuk memastikan masalah benar-benar terpecahkan. Kemudian, QA
membaharui dokumen Project Checklist mendokumentasikan perubahan yang terjadi (jika
ada). QA bekerja untuk proyek hingga peluncuran dan terkadang jauh setelah
pasca-peluncuran.
27
A. WAWANCARA
● Wawancara telah diakui sebagai teknik pengumpulan data atau informasi yang
penting dan banyak dilakukan dalam pengembangan sistem informasi.
● Wawancara adalah suatu percakapan langsung dengan tujuan-tujuan tertentu dengan
menggunakan format tanya jawab yang terencana.
● Wawancara memungkinkan analis sistem mendengar tujuan-tujuan, perasaan,
pendapat dan prosedur-prosedur informal dalam wawancara dengan para pembuat
keputusan organisasional.
Bacalah informasi latar belakang tentang orang yang diwawancarai dan organisasinya
sebanyak mungkin. Materi ini dapat diperoleh dari orang yang bisa Anda hubungi segera
untuk menanyakan tentang Website perusahaan. Laporan tahunan terbaru, laporan
berkala perusahaan, atau publikasi-publikasi lainnya yang dikirim keluar sebagai
penjelasan tentang organisasi kepada publik.
28
Siapkan orang yang akan diwawancarai dengan menelpon mereka atau menulis pesan
e-mail sehingga memungkinkan orang-orang yang akan diwawancarai mempunyai waktu
untuk berpikir. Aturlah waktu untuk
menelpon dan membuat janji pertemuan. Biasanya, wawancara
dijalankan selama 45 menit atau paling lama 1 jam.
29
Struktur-struktur pertanyaan:
a) Struktur Piramid
Contoh:
Struktur ini memulai wawancara dengan pertanyaan-pertanyaan umum dan terbuka, lalu
membatasi respons dengan mengajukan pertanyaan- pertanyaan yang lebih mendetail
dan tertutup.
Contoh:
30
Struktur ini harus dimulai dengan suatu cara khusus, kemudian menentukan hal-hal
yang umum, dan akhirnya mengarah pada kesimpulan yang sangat spesifik.
Contoh:
❖ Sebutkan lima jenis informasi yang dibawa layanan penggunaan website secara
gratis seperti yang Anda gunakan.
❖ Sebutkan kegiatan-kegiatan promosional yang Anda buat fiturnya di website untuk
layanan ini.
❖ Sebutkan nilai-nilai penggunaan komputer bagi Anda sebagai seorang Webmaster.
❖ Sebutkan dua item yang mengejutkan berkaitan dengan perilaku pengguna akhir situs
Anda yang Anda temui lewat layanan ini.
❖ Apakah “cookies” merupakan suatu cara yang lebih baik untuk mengukur
penggunaan tampilan situs ?
3. Pewawancara dapat menilai kebenaran jawaban yang diberikan dari gerak-gerik dan
raut wajah orang yang diwawancarai.
1. Proses wawancara membutuhkan waktu yang lama, sehingga secara relatif mahal
dibandingkan dengan teknik yang lainnya.
2. Keberhasilan hasil wawancara sangat tergantung dari kepandaian pewawancara
untuk melakukan hubungan antar manusia.
31
3. Wawancara tidak selalu tepat untuk kondisi-kondisi tenpat yang tertentu, misalnya
di lokasi-lokasi yang ribut dan ramai.
4. Wawancara sangat menganggu kerja dari orang yang diwawancarai bila waktu yang
dimilikinya sangat terbatas.
JOINT APPLICATION DESIGN (JAD)
Pendekatan altrenatif untuk mewawancarai pengguna satu demi satu disebut JAD, yang
dikembangkan oleh IBM. Latar belakang digunakannya JAD adalah untuk :
JAD memerlukan beberapa keahlian khusus dari penganalisis serta kemampuan dan
komitmen penuh dari pihak organisasi dan pengguna yang menggunakan pendekatan ini.
Dalam situasi-situasi tertentu, JAD dapat menjadi sangat efektif dan dapat dianggap sebagai
alternatif untuk beberapa metode tradisional yang digunakan untuk menganalisis sistem.
Sesi JAD terdiri dari berbagai partisipan:
- Penganalisis
Sedikitnya satu penganalisis harus ada, namun biasanya penganalisis berperan pasif,
tidak seperti wawancara tradisonal dimana penganalis
mengontrol interkasi.
- Pengguna
Delapan sampai dua belas pengguna dapat dipilih dari berbagai tingkatan agar
berpartisipasi dalam sesi JAD. Cobalah memilih pengguna di atas level bagaian
administrasi yang dapat menyatakan informasi apa
yang mereka butuhkan untuk menjalankan pekerjaan mereka serta apa
yang mereka harapkan dari sistem yang baru.
- Pihak eksekutif
Pemimpin sesi tidak harus seorang ahli dalam menganalisis dan mendesain sistem,
melainkan seseorang yang memiliki kemampuan
berkomunikasi yang mengagumkan untuk memfasilitasi interaksi secara
tepat. Pertimbangkan seorang anggota departemen pelatihan yang bertindak sebagai
pemimpin sesi.
- Pengamat
32
Sesi JAD harus pula mencakup satu atau dua pengamat yang dapat berupa penganalisis
atau ahli-ahli teknik dari area fungsional lainnya agar dapat memberi penjelasan teknis
dan saran-saran kepada
kelompok selama sesi berlangsung
- Notulen
Seorang notulen atau penulis dari departemen SI dapat menyertai sesi- sesi JAD dan
bertugas menulis segala sesuatu yang dilakukan. Pastikan
bahwa penulis tersebut menerbitkan rekaman hasil-hasil JAD segera
sesudah kelompok mengadakan pertemuan. Pertimbangkan memilih penulis kedua dari
departemen pengguna.
33
2. Memungkinkan perkembangan yang cepat. Pada wawancara pengguna tidak dapat
dijalankan secara bertahap selama beberapa minggu atau bulan, perkembangan bisa berlanjut
jauh lebih cepat.
Kekurangan JAD:
B. OBSERVASI
34
2. Penganalisis melalui observasi dapat melihat langsung apa yang sedang dikerjakan.
Pekerjaan-pekerjaan yang rumit kadang-kadang sulit untuk dijelaskan dengan
kata-kata. Melalui observasi, penganalisis dapat mengidentifikasikan kegiatan-kegiatan
yang tidak tepat yang telah digambarkan oleh teknik pengumpulan data yang lain.
3. Dengan observasi, penganalisis dapat menggambarkan lingkungan fisik dari
kegiatan-kegiatan, misalnya tata letak fisik perlatan, penerangan, gangguan suara, dsb.
1. Umumnya orang yang diamati merasa terganggu atau tidak nyaman, sehingga akan
melakukan pekerjaanya dengan tidak semestinya.
2. Pekerjaan yang sedang diobservasi mungkin tidak dapat mewakili suatu tingkat
kesulitas pekerjaan tertentu atau kegiatan-kegiatan khusus yang tidak selalu dilakukan.
3. Observasi dapat mengganggu pekerjaan yang sedang dilakukan.
4. Orang yang diamati cenderung melakukan pekerjaannya dengan lebih baik dari biasanya
dan sering menutupi kejelekannya.
Suatu daftar yang berisi dengan pertanyaan-pertanyaan untuk tujuan khusus yang
memungkinkan penganalisis untuk mengumpulkan data mengenai sikap, keyakinan, perilaku
dan karakteristik dari orang-orang utama di dalam organisasi serta pendapat dari responden
yang dipilih.
Kuesioner sangat bermanfaat jika orang-orang di dalam organisasi terpisah saling
berjauhan, yakni orang-orang yang terlibat proyek sistem, sehingga tinjauan secara
keseluruhan diperlukan sebelum merekomendasikan alternatif lainnya
35
2. Kuesioner cenderung tidak fleksibel, artinya pertanyaan yang harus dijawab terbatas
yang dicantumkan di kuesioner saja, tidak dapat dikembangkan lagi sesuai dengan
situasinya.
3. Pengumpulan sampel tidak dapat dilakukan secara bersama-sama dengan daftar
pertanyaan, lain halnya dengan obeservasi yang dapat sekaligus mengumpulkan sampel
Kuesioner yang lengkap sulit untuk dibuat.
Tipe Kuesioner
Ada dua jenis format kuesioner, yaitu Format Bebas (Free Format) dan Format Pasti (Fixed
Format). Dalam suatu kuesioner dapat hanya berbentuk format bebas saja atau format pasti
saja atau gabungan dari keduanya.
Jenis dari pertanyaan-pertanyaan ini dibuat sehingga responden dapat memeriksa (check-off)
jawaban-jawaban yang sesuai.
Mana yang menjadi pemasok dari perangkat keras Anda ?
● Compaq
● Univac
● IBM
● Macintosh
Jenis dari pertanyaan-pertanyaan ini memungkinkan responden untuk menjawab “Ya” atau
“Tidak”.
36
3 = Kurang Setuju
2. Analysis
Analisis Sistem
37
Analisis sistem dapat didefinisikan sebagai penguraian dari suatu sistem informasi
diharapkan.
system (user) sebagai bahan analisis kekurangan dan kebutuhan yang harus
38
39
yaitu :
6. Notepad++
39
7. Xampp.win32.1.6.7
: 100 MB
40
yaitu para pengguna platform android. Dalam menggunakan
yang diperlukan sistem agar sistem dapat berjalan dengan baik serta sesuai
41
antara lain :
kategori sakit.
42
1. Data Obat
43
44
3. Design
Suatu rancangan secara cepat berfokus pada semua representasi semua aspek
perangkat lunak yang akan terlihat oleh para pengguna akhir misalnya perancangan
antarmuka pengguna atau format tampilan. Pemodelan (modeling) adalah proses
merancang piranti perangat lunak sebelum melakukan pengkodean (Pressman 2012).
Traditional versus Object-Oriented Approaches (Satzinger 2010)
Unified Modelling Language (UML) termasuk diagram komunikasi yang dapat
digunakan untuk model interaksi (Sommerville 2011). Pada tahap design akan dilakukan
beberapa perancangan diagram dan database yang sesuai dengan pendekatan yang
digunakan seperti pendekatan prosedural atau object oriented. Pada pendekatan
prosedural diagram yang harus dibuat antara lain :
1) Contex Diagram
2) DFD Fragment
3) Data Flow Definition
4) Proses Description
5) Other Traditional Models
6) ERD (Entity Relationship Diagram)
Namun diagram yang biasa digunakan oleh perusahaan/industri dalam pembuatan
sistem informasi dengan pendekatan prosedural antara lain Data Flow Diagram (DFD) dan
Entity Relationship Diagram (ERD).
45
Simbol - simbol yang ada di Data Flow Diagram antara lain :
46
2. Entity Relationship Diagram (ERD)
Menurut Rosa A.S dan Shalahuddin (2014:50), bahwa pemodelan basis data
yang paling banyak digunakan adalah menggunakan Entity Realtionship Diagram
(ERD). ERD digunakan untuk pemodelan basis data relasional.
47
Adapun diagram yang digunakan dalam pembuatan/perancangan sistem
informasi dengan pendekatan object oriented antara lain :
1) Usecase Diagram
Use case Diagram adalah model UML yang digunakan untuk menampilkan
hubungan antara pengguna dan aktivitas. Use case j uga berguna untuk membuat
diagram yang lebih grafis (Satzinger et al 2012). Adapun fungsi yang ada pada use
case diagram d apat dilihat pada gambar sebagai berikut :
48
Adapun contoh kasus-kasus dalam pembuatan use case diagram antara lain :
Kasus Penggunaan sederhana dengan aktor :
Use Case Diagram with Automation Boundary and Alternate Actor Notation :
49
Semua Kasus Penggunaan yang Melibatkan Pelanggan sebagai Aktor :
Menurut Rosa dan Salahuddin :
● Extend adalah Relasi use case tambahan ke sebuah use case dimana
use case yang ditambahkan dapat berdiri sendiri walau tanpa use case
tambahan itu.
Kalau Extend, misalkan customer mau lihat barang, maka ketika
customer mau melihat barang tidak perlu melewati proses login dan
pesan barang.
● Include adalah Relasi use case tambahan ke sebuah use case dimana
use case yang ditambahkan memerlukan use case ini untuk menjalankan
fungsinya.
Kalau Include, misalkan admin mau isi data barang, maka ketika admin
mau isi data barang harus melewati proses login terlebih dahulu misal
dengan mengisi username dan password.
50
2) Usecase Deskripsi
● Use case deskripsi menyediakan detail prasyarat, postconditions, urutan
kegiatan, dan kondisi pengecualian dalam use case
● Menjelaskan aktor yang berinteraksi dengan sistem komputer langkah demi
langkah untuk melakukan aktivitas bisnis
● Memiliki beberapa skenario untuk kasus penggunaan, masing-masing
contoh kasus penggunaan tertentu
● Three levels of detail : brief, intermediate, and fully developed description
● Banyak analis lebih suka menulis deskripsi naratif kasus penggunaan
daripada menggambar diagram aktivitas
Komponen - komponen yang ada di use case deskripsi :
➔ nama use case / nama skenario
➔ Aktor / pemangku kepentingan
➔ Kasus penggunaan terkait
➔ Prasyarat - set kriteria yang harus benar sebelum memulai use case
➔ Postconditions - set kriteria yang harus benar setelah menyelesaikan use
case
➔ Alur kegiatan (langkah dalam satu atau dua kolom)
➔ Kondisi pengecualian
Adapun contoh use case deskripsi sebagai berikut :
3) System Sequence Diagram
Sequence Diagram merupakan Intraction Diagram yang digunakan untuk
menjelaskan eksekusi sebuah skenario semantik. Sequence Diagram juga
51
digunakan untuk menjelelaskan interaksi antar objek dalam urutan waktu (Booch,
Maksimchuk, Engle, Young, Conallen, & Houston, 2007).
Pada contoh Sequence Diagram diatas, bisa dilihat bahwa yang menjadi Actors
adalah Administrator. Activation boxes biasanya memilik garis yang memberitahu
aktifitas yang terjadi ketika actors atau objects berinteraksi ke object lain.
52
Pada contoh sequence diagram diatas ‘Reservation window’ mengirim pesan
makeReservation() ke ‘HotelChain’. Kemudian ‘HotelChain’ mengirim pesan yang
sama ke ‘Hotel’. Bila ‘Hotel’ punya kamar kosong, maka dibuat ‘Reservation’ dan
‘Confirmation’. Lifeline adalah garis dot (putus-putus) vertikal pada gambar,
menerangkan waktu terjadinya suatu obyek. Setiap panah yang ada adalah
pemanggilan suatu pesan. Panah berasal dari pengirim ke bagian paling atas dari
batang kegiatan (activation bar) dari suatu pesan pada lifeline penerima.
4) Activity Diagram
Activity diagram berupa flow chart yang digunakan untuk memperlihatkan
aliran kerja dari sistem. Acivity diagram menggambarkan berbagai alir aktivitas
dalam sebuah sistem yang sedang dirancang, bagaimana masing-masing berawal,
decision yang mungkin terjadi dan bagaimana mereka berakhir. Adapun
simbol-simbol yang ada pada activity diagram antara lain :
53
Adapun contoh activity diagram dalam kasus sistem informasi absensi :
a. Activity Diagram login pada sistem informasi absensi
b. Activity Diagram tambah data user pada sistem informasi absensi
54
c. Activity Diagram ubah data user pada sistem informasi absensi
d. Activity Diagram hapus data user pada sistem informasi absensi
55
5) State Machine Diagram
State Machine Diagram adalah teknik yang umum digunakan untuk
menggambarkan behaviour sebuah sistem. Hal ini digunakan untuk membantu
analis, perancang dan pengembang untuk memahami perilaku obyek pada sistem.
A. Simbol
Simbol UML untuk state chart diagram adalah segiempat yang tiap
pojoknya dibuat rounded. Titik awalnya menggunakan lingkaran solid
yang diarsir dan diakhiri dengan mata. UML juga memberi pilihan untuk
menambahkan detil ke dalam simbol tersebut dengan membagi 3 area
yaitu nama state, variabel danaktivitas. State variabel seperti timer dan
counter yang kadangkala sangat membantu.
Activity terdiri atas events dan action, tiga hal yang sering
digunakan dalam activity adalah:
1) Entry = Apa yang terjadi ketika sistem masuk ke state
2) Exit = Apa yang terjadi ketika sistem meninggalkan state
3) Do = Apa yang terjadi ketika sistem ada di state
B. State, Event, Transition
Statechart diagram menampilkan state-state yang mungkin dari
sebuah obyek, event yang bisa dideteksi dan respon atas eventevent
tersebut. Secara umum, pendeteksian sebuah event dapat menyebabkan
sebuah obyek bergerak dari satu state ke state yang lain yang disebut
dengan transition. Contoh :
56
Label pada transisi memiliki dua bagian yang dipisahkan dengan garis
miring. Yang pertama adalah nama dari peristiwa yang memicu transisi.
Yang kedua adalah nama dari suatu tindakan yang akan dilakukan setelah
transisi telah dipicu. Properties dari Gambar Diagram sebuah PINTU PUTAR
di atas adalah sebagai berikut:
● Jika pintu putar dalam keadaan terkunci, dan Coin dimasukkan,
maka transisi pintu putar ke Unlocked state, dan tindakan Aktifkan
dilakukan.
● Jika pintu putar dalam keadaan unlocked, setelah berhasi dibuka,
maka transisi pintu putar ke Lock state, dan tindakan Lock dilakukan.
Sebuah state machine diagram mempunyai :
● State (kejadian sesaat) are represented by the values of attributes of
an object
● State digambarkan dengan bentuk Data Kosong
➔ “Black Hole” states is state has transition into it but none out
➔ Miracle states is state has transition out of it but none
➔ Initial state / creation state dengantanda untuk memulai sebuah
state diagram ( in western culture people read from left to right,
top to bottom, starting in the top – left corner
➔ Composite States
◆ Kumpulan dari beberapa state yang yang setidaknya dalam
sebuah region
◆ Orthogonal State, jenis composite state yanglebih dari satu
region
➔ Submachine State
Ø Sejenis composite state yang isinya didefinisikan oleh state
machine lain.
Ø State machine yang berisi submachine state disebut
“containing state machine.
Ø Sebuah state yang dihubungkan dengan machine lainnya.
Ø Dihubungkan ke satu / lebih entry point dan satu / lebih exit
point
57
58
➔ Exit point dilambangkan sebuah lingkaran kecil bersilang yang
ditaruh pada pinggiran state ( bisa juga di dalam atau di luar ),
dan berguna sebagai submachine state.
State Machine Diagram ada 2 jenis
❖ Behavioral State machines
■ Merupakan state machine diagram umumnya
■ Digunakan untuk mendefinisikan perilaku sebuah object
❖ Protocol State Machine
■ Digunakan untuk penggunaan protocol pada sebuah system
■ Dapat didefinisikan ke spesifik Protocol State Machine atau Behavioral
State Machines
■ Didefinisikan sebagai diagram context ( global overview )
■ Notasi yang digunakan sama dengan Behavioral State Machines dengan
penambahan kata ( protocol )
59
One-to-One Relationship Represented with Attributes Containing Object
Identifiers
60
One-to-Many Relationship Between Customer and Order Classes
One-to-Many Relationship Represented with Attributes Containing Object
Identifiers
Many-to-Many Relationship between Employee and Project Classes
61
4. Implementation
A. Konsep Dasar Design Website
Sebuah lukisan yang indah selalu dimulai dari sebuah coretan sederhana di atas
kanvas, tetapi ingat … sebelumnya pelukis pasti sudah mempunyai ide atau paling tidak
dasar style yang akan dipakai untuk melukis. Tanpa ide dasar, berapa kalipun
mencoretkan kuasnya pelukis tidak akan bisa menghasilkan lukisan yang indah
(setidaknya lukisan yang indah bagi orang awam seperti saya dan Anda). Jadi mulailah
dengan KONSEP.
62
Hal ini berarti semua bagiannya harus memainkan peran dalam menyediakan informasi
kepada pengunjung tentang siapa Anda, produk Anda atau layanan Anda.
Jangan membuat website hanya untuk “sekedar” ikut-ikutan, tentukan fungsinya terlebih
dahulu baik untuk (perusahaan) Anda sendiri maupun bagi calon pengunjung website
Anda.
Tidak semua yang Anda tulis akan dibaca oleh pengunjung dan tidak semua pengunjung
akan membaca semuanya. Pada kenyataannya pengunjung hanya membaca sesuatu
yang menarik untuk mereka.
Tahap-tahap apa saja yang harus dilakukan untuk membangun sebuah website? berikut
langkah-langkah persiapan secara umum yang dibagi menjadi lima tahap, diantaranya :
Berdasarkan isi maupun tujuan, suatu website biasanya dapat digolongkan menjadi
seperti berikut :
● website marketing, berfungsi sebagai media presentasi dan pemasaran
● website costumer service, berfungsi sebagai media untuk melayani konsumen.
● website e-Commerce, berfungsi sebagai media transaksi online.
● website informasi / berita, berfungsi sebagai media informasi berita.
● Menentukan isi website
Faktor yang paling penting dalam suatu website adalah isi dari website itu sendiri. Hal
tersebut berkaitan dengan manfaat yang akan diperoleh pengunjung dari sebuah website.
Meskipun suatu website mampunyai sifat terbuka dalam arti sebuah website bebas
dikunjungi oleh semua orang, namun alangkah baiknya apabila dalam pembuatan website
perlu dilakukan gambaran target yang akan dituju oleh sebuah website. Alasan ini lebih
didasarkan pada penggunaan hardware dan aplikasi browser yang berbeda dengan
setiap pengunjung.
Untuk menarik pembaca/pengunjung, Anda bisa mulai dengan beberapa aturan dasar
berikut:
63
● Menentukan struktur website
2. Desain Website
Faktor keindahan desain tampilan dari suatu website merupakan salah satu faktor yang
paling penting dalam menentukan keberhasilan suatu website, selain faktor kecepatan
64
loading. Suatu situs yang baik memiliki suatu kesatuan desain bias dikatakan memiliki
kesamaan tema dalam halaman-halaman webnya. Hal ini penting dalam hal estetika
maupun segi navigasi. Kesamaan desain yang biasanya dipertahankan antara lain
kesamaan jenis font yang digunakan, warna, tombol navigasi (menu) letak menu dan lain
sebagainya.
Untuk membangun suatu website yang baik seorang web designer sebaiknya
memperhatikan prinsip-prinsip yang ada, terlepas ia mempunyai bakat seni atau tidak.
Adapun prinsip-prinsip yang perlu diperhatikan antara lain :
Unik, yang dimaksud dengan unik dalam mendesign suatu website adalah kesadaran
seorang designer untuk tidak meniru atau menggunakan karya orang lain.
Komposisi, untuk memperindah tampilan halaman web, seorang web designer harus
betul-betul memahami komposisi, baik bentuk maupun warna yang akan digunakan dalam
website yang digunakan.
Simple, banyak dari seorang web designer yang memegang prinsip “Keep it smile”. Hal ini
ditujukan agar tampilan website terlihat rapi, bersih dan informatif.
Semiotic, arti semiotic adalah ilmu yang mempelajari tentang tanda-tanda. Dalam hal ini
diharapkan pengunjung dapat dengan mudah dan cepat mengerti ketika melihat tanda
dan gambar yang terlihat dalam gambar yang ada dalam suatu website.
Ergonomic, ergonomic dalam mendesign suatu website adalah kepunyaan yang akan
didapatkan pengunjung dalam membaca dan kecepatan yang bakal diperoleh
pengunjung dalam mencari informasi. Hal-hal yang perlu diperhatikan oleh seorang web
designer untuk mencapai prinsip ini adalah :
● Pemilihan ukuran fonts yang tepat sehingga mudah dibaca
○ Menempatkan link sedemikian rupa sehingga mudah dan cepat untuk diakses dan
yang lebih penting lagi adalah suatu website terlihat lebih informatif.
65
Focus, focus adalah hierarki prioritas dari pesan yang akan disampaikan. Dengan adanya
focus tersebut, diharapkan pengunjung dapat memahami dan menentukan pesan mana
yang lebih dahulu harus dibaca atau dilihat.
Konsistensi, konsistensi adalah pemilihan bentuk atau style yang digunakan pada
elemen-elemen perancangan web dan digunakan pada semua halaman website. Website
yang konsisten akan memberikan identitas tersendiri dan mampu memperlihatkan visi
serta misi dari website tersebut.
Design grafis khususnya dalam halaman-halaman web terdiri dari beberapa elemen
sebagai berikut (Ariesto Hadi Sutopo, 2002) :
4. Konsep Design
Pada intinya konsep mendesain tampilan website sangat berkaitan dengan desain grafis,
dan pada dasarnya mengikut prinsip design grafis secara umum. Oleh karena itu alangkah
baiknya jika dalam mendesain halaman tampilan website juga memperhatikan prinsip
design. Prinsip-prinsip design tesebut adalah :
1. Komunikatif, prinsip komunikatif berhubungan dengan identitas, isi pesan, serta audiens.
2. Estetis, fungsi dari estetis ini adalah memberikan suatu keindahan, sehingga lebih
menarik minat pengunjung untuk lebih menggali informasi yang ditawarkan dari suatu
website.
66
5. Pembuatan Layout
Bermacam-macam langkah yang digunakan untuk membuat layout dari suatu website.
Berikut ini merupakan proses yang secara umum banyak dilakukan dalam pembuatan
layout :
1. Membuat sketsa design
Seorang designer bisa saja menuangkan ide dalam pembuatan interface dengan terlebih
dahulu membuat sketsa diatas kertas. Namun untuk kebanyakan orang, langkah ini
biasanya dilewatkandan langsung pada langkah pembuatan layout design dengan
menggunakan software Photoshop, Balsamiq Mockup dll.
2. Membuat layout design
Banyak software yang dapat digunakan untuk membuat layout. Salah satu diantaranya
adalah Macromedia, proses ini dikerjakan setelah pembuatak sketsa design. Namun
terkadang pembuatan layout merupakan proses pertama kali dikerjakan
3. Membagi gambar menjadi potongan-potongan kecil, proses ini diperlukan untuk
meng-optotimize waktu download
67
4. Membuat animasi, animasi diperlukan untuk menghidupkan atau menjadikan website
lebih interaktif
5. Membuat HTML
Setelah merapikan layout design lengkap dengan tombol, image, teks, script HTML, hal
yang perlu dilakukan adalah membuat layout ke dalam format HTML
B. Pemograman WEB
❖ HTML
Tag Utama
68
<!DOCTYPE html>
<html>
<head>
<title>Belajar HTML</title>
</head>
<body>
<p>Hello World!</p>
</body>
</html>
Modifikasi Teks
69
<h1></h1> Header 1
Header 1
<h2></h2> Header 2 Header 2
<h3></h3> Header 3 Header 3
Font
Links
70
Gambar
Formatting
71
Tabel
72
valign
bgcolor
background
Form
<option> selected
name
value
73
74
❖ Javascript
Javascript adalah bahasa pemograman yang digunakan untuk membuat
interaksi atau menambah fitur web dinamis kedalam sebuah web. Untuk membuat
halaman web, anda tidak harus menggunakan JavaScript. Namun, saat ini
JavaScript hadir dalam hampir setiap halaman web modern. Sehingga JavaScript
adalah salah satu bahasa pemograman web yang wajib di kuasai.
❖ MVC
❖ Framework
75
76
1. Aplikasi: Aplikasi berada pada tingkat ini, bersama dengan aplikasi sistem
inti untuk email, perpesanan SMS, kalender, penjelajahan Internet, atau
kontak.
2. Kerangka Kerja API Java: Semua fitur Android tersedia untuk developer
melalui antarmuka pemograman aplikasi (API) yang ditulis dalam bahasa
77
Java. Anda tidak perlu mengetahui detail semua API untuk mempelajari
cara mengembangkan aplikasi Android, namun Anda bisa mengetahui
selengkapnya tentang API berikut ini, yang berguna untuk membuat
aplikasi :
● Sistem Tampilan digunakan untuk membangun UI aplikasi, termasuk
daftar, tombol, dan menu.
● Pengelola Referensi digunakan untuk mengakses sumber daya
non-kode seperti string, grafik, dan file layout yang dilokalkan.
● Pengelola Notifikasi digunakan untuk menampilkan peringatan khusus
di bilah status.
● Pengelola Aktivitas yang mengelola daur hidup aplikasi.
● Penyedia Materi yang memungkinkan aplikasi untuk mengakses data
dari aplikasi lain.
● Semua API kerangka kerja yang digunakan aplikasi sistem Android.
3. Pustaka dan Waktu Proses Android: Setiap aplikasi berjalan dalam
prosesnya sendiri dan dengan instance Android Runtime sendiri, yang
memungkinkan beberapa mesin sekaligus virtual pada perangkat
bermemori rendah. Android juga menyertakan rangkaian pustaka waktu
proses inti yang menyediakan sebagian besar fungsionalitas bahasa
pemrograman Java, termasuk beberapa fitur bahasa Java 8 yang
digunakan kerangka kerja Java API. Banyak layanan dan komponen sistem
Android inti dibangun dari kode asli yang memerlukan pustaka asli yang
ditulis dalam C dan C++. Pustaka asli tersebut tersedia untuk aplikasi
melalui kerangka kerja Java API.
Android Version :
78
79
JUniversal, RoboVM
● Kotlin
80
● JavaScript + HTML5
Walaupun para pengembang iOS dan android suka bekerja dengan
library dan bahasa asli seperti Swift, Objective-C dan Java untuk membuat
aplikasi seluler, namun ternyata hal itu tidak selalu menjadi pilihan terbaik
dalam hal efisiensi waktu.
81
D. Pemograman Desktop
B. Prinsip Pengujian
Pada saat melakukan pengujian terhadap suatu perangkat lunak ada beberapa
prinsip pengujian yang harus diperhatikan, diantaranya:
1. Semua pengujian harus terlacak kekebutuhan user
2. Pengujian harus direncanakan jauh sebelum pengujian dimulai
3. Pengujian dimulai dari kecil dan mengarah kepada yang besar
4. Pengujian yang sempurna adalah tidak mungkin
5. Agar pengujian berjalan dengan efektif, maka sebaiknya dilakukan oleh pihak
ketiga yang netral
82
Daftar pemeriksaan yang berkaitan dengan kemudahan untuk diuji dari sebuah
perangkat lunak , diantaranya:
1. Operability
● “Lebih baik dia bekerja dan lebih efisien dia diuji”
● Sistem mempunyai sedikit “bug”
● Tidak ada bug yang menghalangi pengujian
2. Observability
● “apa yang anda lihat adalah apa yang anda uji”
● Bedakan output yang dihasilkan oleh masing-masing input
● State sistem dan variabel terlihat selama eksekusi
● Status sistem yang lampau dan variabel
● Semua faktor yang mempengaruhi output dapat dilihat
● Output yang salah mudah diidentifikasi
● Error internal otomatis dideteksi dengan mekanisme pengujian diri dan
secara otomatis dilaporkan
● Kode program bisa diakses
3. Controlability
● Semua output yang mungkin bisa dihasilkan melalui kombinasi beberapa
input
● Semua kode dapat dieksekusi untuk beberapa kombinasi input-State dari
perangkat lunak dan hardware serta variabel dapat dikontrol secara
langsung oleh engineer
● Format input dan ooutput konsisten dan terstruktur -Pengujian bisa
diidentifikasi, diotomatiskan dan diproduksi ulang
4. Decomposability
● Sistem perangkat lunak dibangun dari modul-modul yang berdiri sendiri
● Modul perangkat lunak diuji secara independen
5. Simplicity
● Functional simplicity
● Structural simplicity
83
● Code simplicity
6. Stability
● Perubahan terhadap perangkat lunak jarang, terkendali dan tidak
membatalkan pengujian yang telah ada
● Perangkat lunak bisa merecover dengan baik dari kegagalan
7. Understandability
● Perancangan dipahami dengan baik
● Ketergantungan antara internal, eksternal dan shared komponen
dimengerti dengan baik
● Perubahan terhadap perancangan diberitahukan kepada perancang
lainnya
● Dokumentasi teknik bisa diakses dengan cepat, diorganisasikan dengan
baik, tertentu, rinci dan akurat.
C. Perancangan Kasus Uji
Perancangan untuk pengujian perangkat lunak adalah hal yang sama
menantangnya dengan perancangan awal dari perangkat lunak itu sendiri. Setiap
produk rekayasa perangkat lunak bisa diuji dalam dua cara:
1. Mengetahui cara kerja internal dari produk tersebut (White Box Testing)
2. Mengetahui fungsinya, sehingga pengujian dilakukan dengan
mendemonstrasikan fungsi tersebut bisa berjalan dengan sempurna atau ada
error (Black Box Testing)
84
Sumber : www.ilmukomputer.com
a. Mengurangi pelaksanaan test case untuk mencapai hasil pengujian yang
diinginkan
85
pedoman untuk menetapkan basis set dari jalur eksekusi. Metode ini menjamin
bahwa setiap statement akan dilalui minimal sekali dalam proses pengujian.
kan menguji setiap
Tujuannya adalah meyakinkan bahwa himpunan test case a
ada suatu program paling sedikit satu kali. Titik awal path testing a
path p dalah
suatu program flow graph yang menunjukkan node – node yang menyatakan
keputusan program, misalnya : kondisi if – then – else dan busur yang
menyatakan alur kontrol. Statement yang memiliki kondisi ada pada node – node
dalam flow graph. Path testing menggambarkan alur kontrol di mana setiap
cabang ditunjukkan oleh path yang terpisah sedangkan loop ditunjukkan oleh
arrows looping dan kembali ke loop kondisi node.
Hal pertama yang akan sering dilakukan oleh tester adalah mempelajari dan
memahami kode sumber aplikasi. Karena pengujian White Box melibatkan
pengujian cara kerja suatu aplikasi, tester harus sangat berpengetahuan dalam
bahasa pemrograman yang digunakan dalam aplikasi yang mereka uji. Juga,
orang yang diuji harus sangat menyadari praktik pengkodean aman. Keamanan
sering menjadi salah satu tujuan utama pengujian perangkat lunak. Penguji
harus dapat menemukan masalah keamanan dan mencegah serangan dari
peretas dan pengguna naif yang mungkin menyuntikkan kode berbahaya ke
dalam aplikasi baik secara sadar atau tidak sadar.
86
Untuk menjalankan pernyataan dalam kode di atas, kasus uji WhiteBox akan menjadi
■ A = 1, B = 1
■ A = -1, B = -3
G. Blackbox Testing
87
Sumber : www.ilmukomputer.com
Black-box testing cenderung diaplikasikan selama tahap akhir pengujian. Pengujian black-box
memperhatikan struktur kontrol, sehingga perhatian berfokus pada domain informasi.
Black-box testing testing dirancang untuk dapat menjawab pertanyaan berikut:
88
Klasifikasi black box testing mencakup beberapa pengujian, diantaranya sebagai berikut:
1. Pengujian fungsional (Functional testing)
Pada jenis pengujian ini, perangkat lunak di uji untuk persyaratan fungsional. Pengujian di
lakukan dalam bentuk tertulis untuk memeriksa apakah aplikasi berjalan seperti yang di
harapkan. Walaupun pengujian fungsional sudah sering di lakukan di bagian akhir dari
siklus pengembangan, masing-masing komponen dan proses dapat di uji pada awal
pengembangan, bahkan sebelum sistem berfungsi. Pengujian ini sudah dapat di lakukan
pada seluruh sistem. Pengujian fungsional meliputi seberapa baik sistem melaksanakan
fungsinya, termasuk perintah-perintah pengguna, manipulasi data, pencarian dan proses
bisnis, pengguna layar dan integrasi. Pengujian juga meliputi permukaan yang jelas dari
jenis fungsi-fungsi, serta operasi back end (seperti, keamanan dan bagaimana
meningkatkan sistem).
2. Pengujian tegangan (stress testing)
Pengujian tegangan berkaitan dengan kualitas aplikasi di dalam lingkungan. Idenya
adalah untuk menciptakan sebuah lingkungan yang lebih menuntut aplikasi, tidak seperti
saat aplikasi dijalankan pada beban kerja normal. Pengujian ini adalah yang paling sulit,
cukup kompleks di lakukan, dan memerlukan upaya bersama dari semua tim.
3. Pengujian beban (load testing)
Pada pengujian beban aplikasi akan di uji dengan beban berat atau masukan, seperti
yang terjadi pada pengujian situs web, Untuk mengetahui apakah aplikasi atau situs gagal
atau kinerjannya menurun. Pengujian beban ber oprasi pada tingkat beban standar,
biasanya beban tertinggi akan diberikan ketika sistem dapat menerima dan tetap
berpungsi dengan baik. Perlu di ketahui bahwa pengujian beban tidak bertujuan untuk
merusak sistem dengan banyak hal, namun mencoba untuk menjaga agar sistem selalu
kuat dan berjalan dengan lancar.
4. Pengjian khusus (ad-hoc testing)
Jenis pengujian ini di lakukan tanpa penciptaan rencana pengujian (test plan ) atau kasus
pengujian (test case) . Pengujian kasus membantu dalam menentukan lingkungan dan
durasi dari sebagai pengujian lainnya dan juga membantu para penguji dalam
mempelajari aplikasi sebelum memulai pengujian ini merupakan metode pengujian forma
yang paling sedikit. Salah satu penggunaan terbaik dari pengujian khusus adalah untuk
penemuan. Membaca persyaratan atau sfesikasi (jika ada) jarang memberikan panduan
yang jelas mengenai bagaimana sebuah program benar-benar bertindak bahkan
dokumentasi penggunaan tidak menangkap’’look and feel’’ dari sebuah program.
Pengujian khusus dapat menemukan lubang-lubang dalam pengujian strategi dan dapat
89
mengekspos hubungan di antara sub sistem lain yang tidak jelas. Dengan cara ini,
pengujian khusus berfungsi sebagai alat untuk memeriksa kelengkapan yang anda uji.
5. Pengujian penyelidikan (exploratory testing)
Pengujian penyelidikan mirip dengan pengujian khusus dan dilakukan untuk mempelajari
/ mencari aplikasi. Pengujian penyelidikan perangkat lunak ini merupakan pendekatan
yang menyenangkan untuk pengujian.
6. Pengujian usabilitas (usability testing)
Pengujian ini di sebut juga sebagai pengujian untuk keakraban pengguna (testing for
user-friendliness). Pengujian ini di lakukan jika antarmuka penguna dari aplikasinya
penting dan harus spesifik untuk jenis penguna tertentu. Pengujian usabilitas adalah
proses yang bekerja dengan penguna akhir secara langsung maupun tidak langsung
untuk menilai bagaimana pengguna merasakan paket perangkat lunak dan bagai mereka
berinteraksi dengannya. Proses ini akan membongkar area kesulitan pengguna seperti
halnya area kekuatan. Tujuan dari pengujian usabilitis harus membatasi dan
menghilangkan kesulitan bagi pengguna dan untuk memengaruhi area yang kuat untuk
usabilitas maksimum. Pengujian ini idealnya melibatkan masukan dari pengguna secara
langsung maupun tidak langsung (mengamati prilaku) dan bila memungkikan melibatkan
komputer yang di dukung umpan balik. Komputer yang di dukung umpan balik sering kali
(jika tidak selalu) dihilangkan untuk proses ini. Komputer yang di dukung dengan umpan
balik dapat berperan sebagai pengatur waktu (timer) pada dialog untuk monitoring
(memonitor) berapa lama waktu yang di perlukan pengguna untuk menggunakan dialog
dan alat menghitung (counter) untuk menentukan seberapa sering kondisi tertentu terjadi
antuan pesan, dan lain – lain). Biasanya, proses tersebut
(misalnya, pesan error, b
melibatkan modivikasi sepele (trivial) dari perangkat lunak yang sudah ada, namun dapat
berakibat besar terhadap laba atas investasi. Akhirnya, pengujian usabilitas
mengakibatkan perubahan pada produk yang diberikan sesuai dengan penemuan yang
di buat mengenai kegunaan. Perubahan ini harus secara langsung berkaitan dengan
fungsinya di dunia nyata dengan pengguna pada umumnya. Dokumen ini harus di tulis
semaksimal mungkin untuk mendukung perubahan sehingga mempermudah
penanganan situasi yang sama di masa yang akan datang.
7. Pengujian asap (smoke testing)
Jenis pengujian ini di sebut juga pengujian kenormalan (sanity testing) . Pengujian ini
dilakukan untuk memeriksa apakah aplikasi tersebut sudah siap untuk pengujian yang
lebih besar dan bekerja dengan baik tanpa cela sampai tingkat yang paling diharapkan.
Pada sebuah pengujian baru atau perbaikan peralatan yang terpasang, jika aplikasi
“berasap”, aplikasi tersebut tidak bekerja ! istilah ini juga merujuk langsung kepada
90
pengujian perangkat lunak (software) dasar. Istilah ini awalnya tercipta pada manufaktur
kontainer dan pipa, ketika smoke t elah di perkenalkan untuk menentukan apakah ada
kebocoran. Praktik umum di Microsoft dan beberapa perusahaan perangkat lunak
shrini-wrap lainnya adalah proses “daily build and smoke test”. Setiap file di kompilasi,
dihubungkan, dan digabungkan menjadi sebuah perogram yang dapat di eksekusi setiap
hari, dan program ini kemudian di masukan melalui “pengujian asap ” (smoke test) yang
relatif sederhana untuk memeriksa apakah produk “berasap” ketika produk dijalankan.
8. Pengujian pemulihan (recovery testing)
Pengujian pemulihan (recovery testing ) pada dasarnya dilakukan untuk memeriksa
seberapa cepat dan baiknya aplikasi bisa pulih terhadap semua jenis crash atau
kegagalan hardware, masalah bencana dan lain lain. Jenis atau taraf pemulihan di
tetapkan dalam persyaratan spesifikasi.
9. Pengujian volume (volume testing)
Pengujian volume dilakukan terhadap efisiensi dan aplikasi. Jumlah data yang besar di
proses melalui aplikasi (yang sedang di uji) untuk memeriksa keterbasan ekstrem dari
sistem. Seperti namanya, pengertian volume adalah pengujian sebuah sistem (baik
perangkat keras dan perangkat lunak) untuk serangkaian pengujian dengan volume data
yang di proses adalah subjek dari pengujian, seperti sistem yang mendapat menangkap
tau dapat memperbaharui basis data
sistem pengolahan trasaksi penjualan real-time a
atau pengembalian data (data retrieval) .
91
sangat berarti daripada kombinasi buatan yang anda dapatkan dengan pengujian domain
atau desain pengujian kombinasi.
12. Pengujian regresi (regression testing)
Pengujian ini adalah gaya pengujian yang berfokus pada pengujian ulang (retesting)
setelah ada perubahan. Pada pengujian regresi berorientasi resiko (risk-oriented
regression testing) , daerah yang sama yang sudah di uji, akan kita uji lagi dengan
pengujian yang berbeda (semakin komplek). Usaha dari pengujian ini bertujuan untuk
mengurangi resiko sebagai berikut :
a. Perubahan untuk memperbaiki bug yang gagal
b. Beberapa perubahan memiliki efek samping, tidak memperbaiki bug lama atau
memperkenalkan bug baru.
13. Penerimaan pengguna (user acceptance)
Dalam pengujian ini perangkat lunak akan di serahkan kepada pengguna dan bekerja
seperti yang diharapkan. Pada pengembangan perangkat lunak, user acceptance testing
(UAT), juga di sebut pengujian beta (beta testing) , pengujian aplikasi (application testing),
dan pengujian penggunaan akhir (end user testing) adalah tahapan pengembangan
perangkat lunak ketika perangkat lunak di uji pada “dunia nyata” yang dimaksud oleh
engan membayar relawan
pengguna. UAT dapat dilakukan dengan in-house testing d
atau subjek penguji perangkat lunak atau biasanya mendistribusikan perangkat lunak
secara luas dengan melakukan pengujian versi yang tersedia secara gratis untuk di
unduh melalui web. Pengalaman awal pengguna akan di teruskan kembali kepada para
pengembang yang membuat perubahan sebelum akhirnya melepaskan perangkat lunak
komersial.
14. Pengujian alfa (alpha testing)
Pada pengujian ini akan di undang ke pusat pengembangan dengan maksud pengguna
akan mengunakan aplikasi dan pengembang mencatat setiap masukan atau tindakan
yang di lakukan oleh pengguna. Semua jenis perilaku yang tidak normal atau tidak sesuai
dari sistem di catat dan di koreksi oleh pengembang.
15. Pengujian beta (beta testing)
Pada tahap penguian ini perangkat lunak di distribusikan sebagai sebuah versi beta
dengan pengguna yang menguji di situs mereka. Kesalahan atau cacat akan di laporkan
kepada pengembang. Pengujina beta ini dilakukan setelah pengujian alfa. Versi beta ini di
rilis untuk pengguna yang terbatas di luar perusahaan. Perangkat lunak di lepaskan ke
kelompok masyarakat agar dapat memastikan bahwa perangkat lunak tersebut memiliki
beberapa kesalahan atau bug.
92
Berikut adalah langkah-langkah umum yang diikuti untuk melakukan semua jenis Pengujian
Kotak Hitam.
Perbandingan Pengujian Kotak Hitam dan Kotak Putih:
Pengujian Black Box Pengujian White Box
fokus utama pengujian black box White Box Testing (Unit Testing)
adalah pada validasi persyaratan memvalidasi struktur internal dan kerja
fungsional Anda. kode perangkat lunak Anda
Pengujian black box memberikan Untuk melakukan White Box Testing,
abstraksi dari kode dan berfokus pengetahuan tentang bahasa
pada upaya pengujian pada perilaku pemrograman yang mendasarinya
sistem perangkat lunak. sangat penting. Sistem perangkat lunak
saat ini menggunakan berbagai bahasa
dan teknologi pemrograman dan tidak
mungkin untuk mengetahui semuanya.
93
Kode Uji : A-001 Tgl Uji: 1 Agustus 2019 Penguji: Guruputra
Nama Aplikasi : SIMKA
Nama Kasus Uji : Pengujian form login admin
94
6. Release
95
Daftar Pustaka
Upton D. 2007. Codeigniter for Rapid PHP Application Development. Mumbai : Packt
Publishing.
Satzinger JW, Jackson RB, Burd SD. 2012. Systems Analysis and Design in a Changing
World, 5th ed. Boston : Cengage Learning.
Andre. 2017. Belajar HTML Dasar Part 1 : Pengertian HTML. Diambil dari:
Andre. 2013. Tutorial Belajar CSS Part 1: Pengertian CSS, Apa yang dimaksud dengan
https://www.duniailkom.com/tutorial-belajar-css-part-1-pengertian-css-apa-yang-di
Andre. 2014. Tutorial Belajar Javascript Dasar Untuk Pemula. Diambil dari :
https://www.duniailkom.com/tutorial-belajar-javascript-dasar-untuk-pemula/. (20
Agustus 2019)
Astamal, Rio. 2006. Mastering Kode HTML Edisi Kedua. Surabaya : Rahasia Web Master.
https://google-developer-training.github.io/android-developer-fundamentals-cours
96
Rosa A.S dan M.Shalahudin .2014. Rekayasa Perangkat Lunak (Terstruktur dan
Berorientasi. Objek). Bandung: Informatika.
Booch, Maksimchuk, Engel, Young, Conallen, & Houston, 2007. Pengertian Sequence
Diagram dan Contohnya. Diambil dari :
https://ilmuakuntansi.co.id/pengertian-sequence-diagram-dan-contohnya/ (20
Agustus 2019)
Ichsanti. 2019. Penetapan Harga (Tujuan, Metode, dan Strategi). Diambil dari :
https://www.akuntansilengkap.com/ekonomi/penetapan-harga-tujuan-metode-dan-
strategi/. (20 Agustus 2019)
Alfa. 2011. Tahapan Penyusunan Kontrak. Diambil dari :
https://alfanaikkelas.wordpress.com/2011/01/07/tahapan-penyusunan-kontrak/. (20
Agustus 2019)
Peters, Kathleen. 2019. Software Project Estimation. Diambil dari :
https://courses.cs.washington.edu/courses/cse403/07sp/assignments/estimationb
asics.pdf. (20 Agustus 2019)
Bussiness, Dev. 2018. Website Development: Berbagai Peran & Proses Dalam Proyek IT.
Diambil dari : https://www.softwareseni.co.id/software-developer-indonesia/. (20
Agustus 2019)
Putri, Kemala. 2018. 3 Bahasa Pemrograman Terbaik untuk Pengembangan Aplikasi
Android. Diambil dari :
https://teknologi.id/insight/bahasa-pemrograman-untuk-pengembangan-aplikasi-an
droid/ . (21 Agustus 2019)
97
98