30
9 BAB 2 LANDASAN TEORI 1 2.1 Proyek Menurut jurnal Petr Rehacek (2014:289) tentang Standar ISO 21500 dan Panduan Project Management Body of Knowledge (PMBoK ® ) untuk Manajemen Proyek, proyek merupakan kumpulan proses unik yang terdiri dari kegiatan-kegiatan yang terkoordinasi dan terkendali dengan tanggal awal dan akhir untuk mencapai tujuan tertentu. Definisi ini berbeda dengan pengertian terakhir dari panduan PMBoK ® yang menyatakan bahwa proyek merupakan aktivitas yang memiliki tujuan untuk menghasilkan kiriman (deliverables). 2.2 Model Manajemen Menurut jurnal Gilles Garel (2013:664) tentang Sejarah Model Proyek Manajemen, proyek merupakan bagian dari aktivitas manusia yang terorganisir, baik dalam bangunan yang didirikan untuk memuja dewa, pertahanan, infrastruktur dan lain-lain. Jika mengamati praktek dari proyek sebelumnya, maka akan ditemukan “sesuatu” yang selalu didokumentasikan sebelum memulai pengerjaan. Proyek selalu menjadi obyek pengamatan dalam sejarah teknik dan rekayasa, menjadi inovasi pemikiran dan sejarah perusahaan. Pada abad ke-20 manajemen proyek dipisahkan dari bentuk-bentuk kegiatan untuk dapat diidentifikasi, disorot dan digeneralisasi kedalam bentuk tersendiri, dan kini telah menjadi model manajemen. Artikel mengenai manajer proyek dipublikasi oleh Harvard Business Review oleh Paul Gaddis (1959) yang menjelaskan bahwa manajer proyek adalah seseorang yang bertanggung jawab untuk mengintegrasikan kontribusi dari departeman yang berbeda untuk meningkatkan efisiensi pengembangan. 2.3 Manajemen Proyek Menurut jurnal Petr Rehacek (2014:289) tentang Standar ISO 21500 dan Panduan PMBoK ® untuk Manajemen Proyek, terdapat beberapa analisis perbandingan antara ISO 21500 dan Panduan PMBoK ® . ISO 21500

BAB 2 LANDASAN TEORI 1 (PMBoK - library.binus.ac.id fileManajemen, proyek merupakan bagian dari aktivitas manusia yang terorganisir, baik dalam bangunan yang didirikan untuk memuja

  • Upload
    vannhan

  • View
    217

  • Download
    0

Embed Size (px)

Citation preview

9

BAB 2

LANDASAN TEORI

1

2.1 Proyek

Menurut jurnal Petr Rehacek (2014:289) tentang Standar ISO 21500

dan Panduan Project Management Body of Knowledge (PMBoK®) untuk

Manajemen Proyek, proyek merupakan kumpulan proses unik yang terdiri dari

kegiatan-kegiatan yang terkoordinasi dan terkendali dengan tanggal awal dan

akhir untuk mencapai tujuan tertentu. Definisi ini berbeda dengan pengertian

terakhir dari panduan PMBoK® yang menyatakan bahwa proyek merupakan

aktivitas yang memiliki tujuan untuk menghasilkan kiriman (deliverables).

2.2 Model Manajemen

Menurut jurnal Gilles Garel (2013:664) tentang Sejarah Model Proyek

Manajemen, proyek merupakan bagian dari aktivitas manusia yang terorganisir,

baik dalam bangunan yang didirikan untuk memuja dewa, pertahanan,

infrastruktur dan lain-lain. Jika mengamati praktek dari proyek sebelumnya,

maka akan ditemukan “sesuatu” yang selalu didokumentasikan sebelum

memulai pengerjaan. Proyek selalu menjadi obyek pengamatan dalam sejarah

teknik dan rekayasa, menjadi inovasi pemikiran dan sejarah perusahaan. Pada

abad ke-20 manajemen proyek dipisahkan dari bentuk-bentuk kegiatan untuk

dapat diidentifikasi, disorot dan digeneralisasi kedalam bentuk tersendiri, dan

kini telah menjadi model manajemen. Artikel mengenai manajer proyek

dipublikasi oleh Harvard Business Review oleh Paul Gaddis (1959) yang

menjelaskan bahwa manajer proyek adalah seseorang yang bertanggung jawab

untuk mengintegrasikan kontribusi dari departeman yang berbeda untuk

meningkatkan efisiensi pengembangan.

2.3 Manajemen Proyek

Menurut jurnal Petr Rehacek (2014:289) tentang Standar ISO 21500

dan Panduan PMBoK® untuk Manajemen Proyek, terdapat beberapa analisis

perbandingan antara ISO 21500 dan Panduan PMBoK®. ISO 21500

10

memberikan deskripsi tingkat tinggi dari konsep dan proses yang dianggap

membentuk praktek yang baik dalam manajemen proyek.

2.3.1 Grup Proses Manajemen Proyek

Proses proyek dibagi ke dalam lima grup proses. Perbandingan

antara ISO 21500 dengan Panduan PMBoK® dapat dilihat pada tabel 2.1

di bawah ini:

Tabel 1.1 Perbandingan Grup Proses ISO 21500 dan Panduan

PMBoK® (Sumber: Petr Rehacek, 2014:289)

ISO 21500 PMBoK® Guide

Initiating Initiating

Planning Planning

Implementing Executing

Controlling Monitoring and Controlling

Closing Closing

Perbedaan pada keduanya hanya pada penamaan, standar proses

tidak terlalu banyak berubah.

2.3.2 Grup Subjek

Knowledge areas pada Panduan PMBoK® telah diubah namanya

menjadi subjek (subjects) pada ISO 21500. Perbandingan keduanya

dapat dilihat pada tabel 2.2 di bawah ini:

Tabel 1.2 Perbandingan Subjek ISO 21500 dan Knowledge areas

Panduan PMBoK® (Sumber: Petr Rehacek, 2014:290)

ISO 21500 – Subjek PMBoK® Guide – Knowledge Areas

Integration Integration

Stakeholder X

Scope Scope

Resource Human Resources

11

Time Time

Cost Cost

Risk Risk

Quality Quality

Procurement Procurement

Communication Communication

Dari perbandingan diatas, dapat dilihat bahwa ISO 21500 dibuat

berdasarkan Panduan PMBoK®. ISO 21500 menambahkan Stakeholder

pada subjek. Knowledge area Human Resources diganti menjadi subjek

Resource dengan tujuan dapat mencakup sumber daya manusia dan

sumber daya proyek lainnya. Perbedaan utama dari kedua standar diatas

adalah dimana ISO 21500 tidak menyediakan deskripsi alat dan teknik.

Deskripsi pada ISO 21500 terdiri dari deskripsi umum dan tabel yang

berisi input dan output utama.

2.4 Analisa Sistem dan Perancangan Sistem

Dalam mengembangkan aplikasi, akan dibutuhkan analisis-analisis

mengenai sistem serta dibutuhkannya perancangan dalam membangun aplikasi

yang baik.

2.4.1 Pengertian Analisa Sistem

Menurut Whitten & Bentley (2007:160), analisis sistem

merupakan sebuah teknik problem-solving yang membagi sebuah

sistem ke dalam beberapa bagian komponennya sendiri yang bertujuan

untuk mempelajari sebagaimana baik bagian-bagian dari komponen

tersebut melakukan pekerjaan dan berinteraksi untuk mencapai tujuan

mereka.

Analisis sistem diawali dari permasalahan bisnis pada system

owners dan system users. Oleh karena itu, analisis tentang knowledge,

process dan communications harus berdasarkan perspektif system

owners dan system users.

12

Menurut Whitten & Bentley (2007:161-167), terdapat lima

pendekatan pemecahan masalah pada analisis sistem:

1. Pendekatan Analisis Model-Driven

Analisis model-driven adalah pendekatan pemecahan masalah yang

menekankan gambaran model sistem untuk dokumentasi dan

validasi sistem. Pada akhirnya, model sistem menjadi blueprint

untuk merancang dan membangun sistem yang lebih baik. Terdapat

tiga pendekatan model-driven yang populer dan sering digunakan:

a. Traditional Approaches

Berbagai pendekatan tradisional untuk analisis sistem dan desain

dikembangkan mulai tahun 1970-an. Salah satu pendekatan

formal yang pertama, yang masih banyak digunakan saat ini,

adalah structured analysis. Structured analysis berfokus pada

aliran data yang melalui proses bisnis dan perangkat lunak

b. Information Engineering (IE)

Information Engineering berfokus pada struktur data yang

tersimpan dalam suatu sistem bukan pada proses.

c. Object-Oriented Approach

Pendekatan object-oriented tidak melihat sistem informasi

sebagai data ataupun proses, tetapi merupakan suatu kumpulan

obyek yang merupakan rangkuman dari data dan proses.

2. Pendekatan Analisis Accelerated Systems

Discovery Prototyping dan Rapid Architected Development (RAD)

merupakan contoh dari pendekatan analisis accelerated systems

yang menekankan pembangunan prototype agar dapat mempercepat

proses identifikasi persyaratan bisnis dan user untuk sistem baru.

3. Metode Requirements Discovery

Baik pendekatan analisis model-driven maupun accelerated systems

mempunyai tujuan yang sama yaitu menggambarkan kebutuhan

user pada sistem baru, baik digambarkan menggunakan model

maupun prototype. Menggali kebutuhan (requirements) tergantung

pada kemampuan analis untuk menemukan masalah (problem) dan

kesempatan (opportunities) yang ada pada sistem sekarang.

Requirements discovery disini merupakan sebuah proses yang

13

digunakan sistem analis untuk mengindentifikasi masalah pada

sistem dan menentukan solusinya berdasarkan dengan kebutuhan

user.

4. Metode Business Process Redesign

Business process re-design (BPR) adalah metode analisis sistem

dengan tujuan untuk mengganti atau meningkatkan fundamental

dari proses bisnis dan organisasi. Pada proyek BPR, proses bisnis

akan dianalisis untuk menentukan bagian proses yang akan

dieliminasi atau dirampingkan. Metode BPR merupakan metode

yang sangat cocok untuk diterapkan pada proses bisnis yang

mengalami perubahan.

5. FAST Systems Analysis Strategies

Seperti kebanyakan metodologi pada umumnya, metodologi

FASTtidak menggunakan pendekatan tunggal pada analisis sistem.

Metodologi FAST mengintegrasikan semua pendekatan menjadi

sebuah kumpulan metode agile. Metode agile merupakan integrasi

dari berbagai pendekatan sistem analisis dan desain untuk

menemukan solusi yang tepat untuk menyelesaikan masalah.

2.4.2 Pengertian Perancangan Sistem

Menurut Whitten & Bentley (2007:160), perancangan sistem

merupakan perancangan yang dilakukan dalam menciptakan solusi yang

mendetil dan spesifik berbasis komputer. Perancangan sistem dapat

disebut juga dengan desain fisikal. Sistem analis ditugaskan untuk

mencari permasalahan bisnis, sedangkan sistem desain berfokus pada

teknikal atau implementasi sistem.

2.5 Rekayasa Perangkat Lunak

Dalam era teknologi saat ini, semua orang berharap untuk dapat

mengembangkan aplikasi-aplikasi yang bagus, dengan tujuan yang bermacam-

macam. Untuk pengembangan ini, secara praktis mereka harus mengerti

terlebih dahulu apa saja hal yang diperlukan, tentu saja rekayasa piranti lunak

ini berkaitan dengan pengembangan aplikasi.

14

2.5.1 Definisi Rekayasa Perangkat Lunak

Menurut Pressman & Maxim (2015:14), rekayasa piranti lunak

meliputi sebuah proses, sebuah koleksi dari metode-metode (praktek)

dan berbagai alat yang mengijinkan profesional-profesional untuk

membangun perangkat lunak komputer yang berkualitas tinggi

2.5.2 Model Proses Perangkat Lunak

Menurut Pressman & Maxim (2015:40), model proses

menyediakan sebuah road map yang spesifik untuk cara kerja rekayasa

piranti lunak. Model proses ini mendefinisikan alur dari seluruh

aktivitas, aksi dan pekerjaan, tingkat iterasi, produk, dan organisasi dari

pekerjaan yang harus diselesaikan.

1. Model Waterfall

Menurut Pressman & Maxim (2015:42), model waterfall disebut

juga sebagai classic life cycle, menganjurkan sebuah sistematik,

pendekatan sekuensial untuk pengembangan piranti lunak yang

dimulai dengan spesifikasi dari kebutuhan pelanggan dan proses-

proses melalui perencanaan, pemodelan, konstruksi, dan peluncuran,

memuncak pada bantuan yang sedang berjalan dari penyelesaian

suatu piranti lunak. Tahap-tahap dalam model waterfall antara lain:

a. Komunikasi

Pada tahap ini, tim melakukan pengumupulan data-data yang

berguna demi kepentingan proyek, lalu menginisiasi pembuatan

proyek.

b. Perencanaan

Pada tahap perencanaan, tim memperkirakan setiap detil yang

dibutuhkan dalam pembuatan proyek, penjadwalan dan

pelacakan terhadap proses yang sedang berjalan.

c. Pemodelan

Pada tahap ini, dilakukan analisa dan pemodelan, berikut

pembuatan desain, sesuai dengan kebutuhan proyek.

d. Konstruksi

15

Di tahap berikut ini, tim melakukan konstruksi pembuatan kode-

kode guna membangun proyek, serta melakukan percobaan pada

prototipe proyek.

e. Peluncuran

Pada tahap ini, dilaksanakannya penyampaian produk pada

pelanggan, menyediakan bantuan kepada para pengguna, dan

pengumpulan umpan balik demi memperbaiki dan memperbagus

produk terkait.

2.6 Unified Modeling Language (UML)

Menurut Whitten & Bentley (2007:371), UML adalah sebuah set

pemodelan konvensi yang digunakan untuk menspesifikasikan atau

mendeskripsikan suatu sistem perangkat lunak dalam hal obyek. Berikut adalah

penjelasan mengenai komponen-komponen UML:

2.6.1 Use Case Diagram

Menurut Whitten & Bentley (2007:246), use case diagram

adalah sebuah diagram yang menggambarkan interaksi antar sistem dan

pengguna. Dengan kata lain, diagram ini mendeskripsikan secara grafis,

siapa yang akan menggunakan sistem dan bagaimana cara yang

diekspektasikan pengguna untuk berinteraksi dengan sistem. Berikut

adalah contoh use case diagram:

Gambar 1.1 Use Case Diagram (Sumber: Whitten & Bentley,

2007:246)

Menurut Whitten & Bentley (2007:246-247), simbol-simbol

yang digunakan dalam pembuatan use case diagram yaitu:

16

1. Use case

Use case mendeskripsikan fungsi sistem dari perspektif pengguna

eksternal dan dengan cara dan terminologi yang mereka mengerti.

Use case direpresentasikan secara grafis dengan elips horizontal

beserta nama dari use case yang terdapat di bawah, atas atau di

dalam elips.

Gambar 1.2 Use case

2. Actors

Actors merupakan apapun yang dibutuhkan untuk berinteraksi

dengan sistem dan melakukan pertukaran informasi guna mencapai

sebuah tujuan yang diinginkan.

Gambar 1.3 Actor

Berikut adalah beberapa hal penting yang perlu untuk

diketahui, Actors memiliki empat tipe utama yaitu:

a. Primary business actor

Pemegang kepentingan yang mendapatkan keuntungan utama

dari hasil eksekusi dari use case dengan mendapatkan sesuatu

yang dapat diukur atau bernilai.

b. Primary system actor

Pemegang kepentingan yang berinteraksi langsung dengan

sistem untuk menginisiasi proses bisnis atau sistem.

c. External server actor

Pemegang kepentingan yang bertugas untuk menanggapi

permintaan dari use case.

d. External receiver actor

17

Pemegang kepentingan yang tidak merupakan aktor utama tetapi

mendapatkan sesuatu yang berharga atau bernilai dari use case.

3. Relationships

Menurut Whitten & Bentley (2007:248-250), relationships

digambarkan sebagai sebuah garis diantara dua atau lebih simbol

pada use case diagram. Makna dari relationships dapat berbeda-

beda, tergantung bagaimana garis itu digambarkan dan tipe simbol

apa yang dihubungkan. Berikut ini adalah penjelasan mengenai

beberapa relasi yang terdapat pada use case diagram:

a. Associations

Associations adalah sebuah hubungan interaksi yang terjadi

antara aktor dan use case.

b. Extends

Extends adalah hasil ekstrak dari use case yang telah

disederhanakan dari use case kompleks sebelumnya agar dapat

dimengerti dengan lebih mudah.

c. Uses (or include)

Uses or include adalah relasi antara abstract use case dan use

case yang menggunakannya. Abstract use case adalah sebuah

use case yang mengurangi redundansi antara dua atau lebih use

case dengan cara menggabungkan langkah-langkah yang

ditemukan pada cases.

d. Depends on

Depends on adalah sebuah relasi antar use case yang

mengindikasikan satu use case tidak dapat dikerjakan sebelum

use case sebelumnya telah dikerjakan.

e. Inheritance

Inheritance pada use case adalah sebuah relasi antara aktor

dibuat untuk menyederhanakan penggambaran ketika sebuah

aktor abstrak mewarisi peran dari banyak aktor aslinya.

2.6.2 Use Case Narrative

Menurut Whitten & Bentley (2007:246), use case narrative

adalah sebuah deskripsi tekstual dari business event dan bagaimana user

18

akan berinteraksi dengan sistem untuk menyelesaikan tugas. Contoh use

case narrative:

Gambar 1.4 Use Case Narrative (Sumber: Whitten & Bentley,

2007:257)

19

Menurut Whitten & Bentley (2007:257), notasi-notasi pada use

case narrative yang dideskripsikan pada event, antara lain:

1. Author

Nama dari individual yang berkontribusi untuk menuliskan use case

dan yang menyediakan sebuah kontak poin untuk siapapun

membutuhkan informasi tambahan mengenai use case.

2. Date

Tanggal yang menampilkan kapan use case terakhir kali

dimodifikasi.

3. Version

Menunjukkan versi dari use case yang masih berlaku untuk

digunakan pada saat ini.

4. Use case name

Nama daripada use case harus merepresentasikan tujuan dari use

case yang sedang dicoba untuk diselesaikan.

5. Use case type

Dalam mengerjakan use case modelling, use case kebutuhan bisnis,

yang mana berfokus pada visi dan tujuan stretegis dari beberapa

pemegang saham, dikonstruksi pada urutan pertama.

6. Use case ID

Sebuah tanda pengenal yang secara unik digunakan untuk

mengidentifikasi use case.

7. Priority

Prioritas mengomunikasikan kepentingan dari sebuah use case

dalam artian tinggi, sedang, atau rendah.

8. Source

Sumber yang menjelaskan entitas sebagai pemicu kreasi atau

pembuatan dari sebuah use case.

9. Primary business actor

Aktor bisnis primer merupakan pemegang saham yang memiliki

keuntungan utama dari eksekusi use case dengan menerima sesuatu

yang berharga atau bernilai.

10. Other participating actors

20

Aktor lain yang berpartisipasi dalam use case untuk menyelesaikan

tujuannya, yang mencakup aktor penginisiasi, aktor pemfasilitasi,

aktor pemberi/penerima, dan aktor sekunder.

11. Interested stakeholder(s)

Seorang pemegang saham merupakan siapapun yang memiliki

kuasa pada pengembangan dan operasi dari sebuah sistem piranti

lunak.

12. Description

Sebuah deskripsi rangkuman pendek, yang terdiri atas sekumpulan

kalimat, yang menguraikan tujuan dari use case dan aktivitasnya.

2.6.3 Activity Diagram

Menurut Whitten & Bentley (2007:390), activity diagram adalah

sebuah diagram yang dapat digunakan untuk menggambarkan alur dari

sebuah proses bisnis, langkah-langkah dari sebuah use case, atau logika

dari sebuah perilaku obyek (metode). Contoh activity diagram:

21

Gambar 1.5 Activity Diagram (Sumber: Whitten & Bentley,

2007:392)

Menurut Whitten & Bentley (2007:391), berikut ini adalah

ilustrasi dari notasi-notasi yang paling umum digunakan dalam

pembuatan activity diagram:

1. Initial node

Lingkaran padat hitam yang merepresentasikan awal dimulainya

sebuah proses.

Gambar 1.6 Initial node

22

2. Actions

Persegi panjang bersudut lingkaran yang merepresentasikan langkah

individual dan kegiatan yang sedang berjalan.

Gambar 1.7 Actions

3. Flow

Panah pada diagram mengindikasikan pergerakan dari action.

Gambar 1.8 Flow

4. Decision

Sebuah proses berbentuk diamond yang menggambarkan flow yang

masuk dan keluar, mengindikasikan kondisi yang terjadi, dimana

terbaginya flow menjadi beberapa jalur karena adanya aksi yang

berbeda.

Gambar 1.9 Decision

5. Merge

Sebuah proses berbentuk diamond yang menggambarkan flow yang

masuk dan keluar. Flow yang masuk mengindikasikan kondisi yang

terjadi, dimana flow bergabung menjadi satu jalur, dikarenakan flow

ini memiliki kondisi yang sama.

Gambar 1.10 Merge

23

6. Fork

Sebuah bar hitam dengan satu flow masuk dan dua atau lebih flow

keluar, dimana flow yang keluar ini mengindikasikan aksi-aksi yang

akan berjalan secara paralel.

Gambar 1.11 Fork

7. Join

Sebuah bar hitam dengan dua atau lebih flow masuk dan satu flow

keluar, mencatatkan akhir dari proses yang beriringan. Semua aksi

yang masuk ke dalam join harus selesai terlebih dahulu sebelum

prosesnya dilanjutkan.

Gambar 1.12 Join

8. Activity final

Lingkaran padat didalam sebuah lingkaran berongga

merepresentasikan akhir dari sebuah proses.

Gambar 1.13 Activity final

9. Subactivity indicator

Sebuah simbol yang mengindikasikan bahwa aksiini telah terpecah

dari activity diagram yang lain. Hal ini membantu agar activity

diagram tidak menjadi terlalu kompleks.

24

Gambar 1.14 Subactivity indicator

10. Connector

Sebuah huruf di dalam sebuah lingkaran yang memberikan alat

untuk mengatur kompleksitas. Sebuah flow yang datang ke sebuah

konektor, melompat menuju flow yang keluar dari sebuah konektor

dengan huruf yang sesuai.

Gambar 1.15 Connector

11. Swimlane

Swimlane adalah partisi-partisi yang mengelompokkan dan

menunjukkan aksi-aksi yang dilakukan oleh sebuah class atau aktor

yang spesifik pada activity diagram.

Gambar 1.16 Swimlane

2.6.4 Sequence Diagram

Menurut Whitten & Bentley (2007:394), system sequence

diagram adalah sebuah diagram yang menggambarkan interaksi antara

aktor dan sistem untuk sebuah skenario usecase. Contoh sequence

diagram:

A

25

Gambar 1.17 Sequence Diagram (Sumber:Whitten & Bentley,

2007:662)

Menurut Whitten & Bentley (2007:394-395), berikut ini adalah

beberapa ilustrasi dari notasi-notasi yang digunakan dalam pembuatan

system sequence diagram:

1. Actor

Aktor yang menginisiasi use case, ditampilkan dengan simbol aktor

yang sama pada use case.

Gambar 1.18 Actor

2. System

Kotak yang mengindikasikan sistem sebagai sebuah “Black Box”

atau sebagai keseluruhan. Colon (:) merupakan notasi standar untuk

mengindikasikan instansi sistem.

Gambar 1.19 System

26

3. Lifelines

Garis vertikal dan putus-putus yang memanjang ke bawah dari

simbol aktor dan sistem, garis ini mengindikasikan proses

kehidupan dari suatu sequence.

Gambar 1.20 Lifelines

4. Activation bars

Bars yang ditetapkan sesuai dengan lifelines mengindikasikan

periode waktu ketika partisipan sedang aktif dalam sebuah interaksi

antar sistem maupun aktor.

Gambar 1.21 Activation bars

5. Input messages

Panah horizontal yang mengarah dari aktor menuju sistem

mengindikasikan pesan-pesan yang dimasukkan.

Gambar 1.22 Input messages

6. Output messages

Panah horizontal dari sistem menuju aktor yang ditampilkan dengan

garis putus-putus. Mengindikasikan pesan yang masuk.

Gambar 1.23 Output messages

7. Receiver actor

Aktor lain atau sistem eksternal yang mendapatkan pesan dari

sistem, dapat dimasukkan ke dalam kategori receiver atau sebagai

penerima pesan.

27

Gambar 1.24 Receiver actor

8. Frame

Sebuah kotak yang berisikan satu atau lebih pesan bertujuan untuk

membagi fragmen atau sebuah bagian dari sequence.

Gambar 1.25 Frame

2.6.5 Class Diagram

Menurut Whitten & Bentley (2007:400), Class diagram adalah

sebuah gambaran grafik dari sebuah struktur obyek sistem statis,

menunjukkan kelas-kelas obyek yang mana sistem itu terdiri dari

hubungan antara obyek-obyek kelas. Contoh class diagram:

Gambar 1.26 Class Diagram (Sumber: Whitten & Bentley,

2007:406)

Menurut Whitten & Bentley (2007:372), berikut adalah elemen-

elemen dasar daripada class diagram:

1. Object

Sesuatu yang dapat dilihat, disentuh, ataupun dirasakan dan dimana

pengguna menyimpan data dan mengasosiasikan behavior.

28

2. Attribute

Data yang merepresentasikan karakteristik-karakteristik yang terkait

dengan sebuah obyek.

3. Object Instance

Setiap hal yang spesifik yang dapat berupa, orang, tempat, barang,

ataupun event, berikut nilai-nilai untuk atribut dari obyek tersebut.

4. Behavior

Sekumpulan dari sesuatu hal yang dapat dilakukan oleh obyek dan

dapat berkorespondensi ke fungsi-fungsi yang memiliki aksi atas

sebuah data obyek.

5. Encapsulation

Pengemasan dari sekelompok hal-hal ataupun barang-barang

menjadi satu kesatuan yang utuh.

Menurut Whitten & Bentley (2007:650), atribut dan metode-

metode yang dapat diakses oleh kelas lain dalam suatu class diagram,

didefinisikan oleh visibility. Visibility adalah sebuah tingkatan akses

yang dimiliki oleh sebuah obyek eksternal untuk sebuah atribut atau

metode. Visibility dibagi menjadi tiga tingkatan, yaitu:

1. Public

Tingkatan public mengijinkan sebuah atribut kelas untuk diakses

pihak mana saja dan metode kelas untuk dapat dipanggil oleh kelas

mana saja, dinotasikan dengan simbol “+”.

2. Protected

Tingkatan protected mengijinkan atribut dan metode untuk

dipanggil dan diakses oleh suatu kelas, dimana atribut/metode ini

merupakan sebuah subclasses dari kelas, dinotasikan dengan simbol

“#”.

3. Private

Tingkatan private dimana atribut dan metodenya hanya dapat

diakses dan dipanggil oleh kelas yang telah ditentukan, dinotasikan

dengan simbol “-“.

Menurut Whitten & Bentley (2007:400-401), berikut adalah

hubungan-hubungan yang paling umum terjadi pada suatu obyek kelas:

1. Associations

29

Asosiasi merupakan sebuah hubungan yang terjadi diantara obyek-

obyek kelas. Asosiasi antar obyek-obyek kelas ini perlu diketahui

untuk dapat mengidentifikasi multiplicity.

2. Multiplicity

Multiplisitas merupakan konsep yang mengatur mengenai angka

minimum dan maksimum aksi dari sebuah obyek kelas yang

behubungan.

3. Generalization

Konsep generalisasi menggabungkan atribut-atribut serta metode-

metode yang banyak memiliki kesamaan, menjadi satu kelas

tersendiri, yang disebut supertype.

4. Specialization

Konsep spesialisasi menggabungkan atribut-atribut beserta metode-

metode yang unik terhadap suatu obyek, tetapi yang masi mewarisi

atribut dan metode yang ada pada kelas supertype, kelas ini disebut

dengan subtype.

5. Aggregation

Agregasi merupakan sebuah hubungan unik yang terjadi dimana

satu obyek merupakan bagian dari obyek lain.

Menurut Whitten & Bentley (2007:378), pada UML 2.0, notasi dari

agregasi tidak lagi digunakan, karena pada hubungan komposisi

terdapat beberapa perbedaan-perbedaan yang telah terdefinisikan

secara jelas dan lebih banyak digunakan pada programming,

sedangkan agregasi tidak terdefinisikan dengan pasti dan jelas.

Karena hal tersebut, beberapa pengguna mempertimbangkan bahwa

agregasi tidak lagi bermakna dalam programming.

6. Composition

Komposisi merupakan sebuah hubungan dimana satu kesatuan

obyek memiliki hak penuh atas bagian-bagiannya (menambah atau

menghapus suatu obyek kelas).

Menurut Whitten & Bentley (2007:650), dalam pembuatan class

diagram, dibutuhkan sebuah hubungan yang lebih mendalam antar

obyek-obyek kelas agar dapat menentukan komponen-komponen dari

30

piranti lunak dengan lebih spesifik dan akurat sehingga pembuatan

diagram dapat lebih detil. Hubungan tersebut adalah:

1. Dependency Relationships

Sebuah dependency relationships dibutuhkan untuk pemodelan

asosiasi antara dua kelas yang saling mengandalkan di dalam dua

instansi:

a. Pertama, untuk mengindikasikan kapan sebuah perubahan

terjadi dalam suatu kelas, yang dapat mempengaruhi kelas lain.

b. Kedua, untuk mengindikasikan asosiasi antara sebuah kelas

yang bersifat tetap dengan kelas yang bersifat sementara.

2. Navigability

Navigability didefinisikan pada asosiasi-asosiasi sebagai notasi

untuk mengindikasikan perpindahan pesan-pesan antar kelas yang

saling berhubungan. Navigability ini dapat dibedakan menjadi dua

jenis, yaitu:

a. Uni-directional

Uni-directional merupakan sebuah hubungan antar kelas yang

terjadi secara satu arah. Uni-directional dilimitasi menjadi satu

arah dikarenakan adanya suatu tujuan khusus antar kelas yang

berhubungan. Uni-directional dinotasikan dengan sebuah tanda

panah yang mengarah dari sumber menuju target.

b. Bi-directional

Bi-directional merupakan sebuah hubungan antar kelas yang

terjadi secara dua arah. Pada dasarnya asosiasi-asosiasi antara

kelas telah didefinisikan sebagai bi-directional (dua arah), yang

berartikan bahwa salah satu dari tipe kelas dapat melakukan

navigasi (pengiriman pesan) kepada kelas-kelas lain yang

memiliki tipe berbeda.

2.7 Interaksi Manusia dan Komputer

2.7.1 Pengertian Interaksi Manusia dan Komputer

Menurut Shneiderman dan Plainsant (2010: 22), interaksi

manusia dan computer merupakan ilmu yang mempelajari

31

2.7.2 Eight Golden Rules

Menurut Shneiderman dan Plaisant (2010: 88-89), ada delapan

aturan emas yang dapat diaplikasikan dalam perancangan user

interface, yaitu:

1. Strive for consistency

Banyak bentuk dari konsistensi yang harus diperhatikan dalam

merancang user interface. Beberapa diantaranya adalah harus

memiliki konsistensi dalam urutan aksi di situasi yang serupa,

memiliki menu, warna, layout dan font yang sama.

2. Cater to universal usability

User interface harus dapat menjawab kebutuhan dari user yang

berbeda-beda. Contohnya dengan menambahkan fitur explanation

untuk novice user dan menambahkan fitur shortcut untuk expert

user.

3. Offer informative feedback

Untuk setiap aksi yang dilakukan diharapkan adanya suatu umpan

balik bagi user. Respon yang diberikan tergantung dari aksi yang

dilakukan oleh user.

4. Design dialog to yield closure

Urutan suatu aksi haruslah diorganisasi berdasarkan kelompok

tertentu dari awal, tengah dan akhir. Umpan balik yang informatif

pada akhir suatu aksi kepada user akan memberikan kepuasan

kepada user bahwa aksi yang mereka lakukan telah berhasil dengan

baik dan menjadi pertanda untuk melakukan aksi selanjutnya.

5. Prevent errors

Perancangan suatu sistem haruslah dibuat sedemikian rupa sehingga

user tidak melakukan kesalahan. Jika user melakukan kesalahan

maka sistem seharusnya dapat mendeteksi dan

menawarkan.recovery yang sederhana, konstruktif dan spesifik.

6. Permit easy reversal of actions

Setiap aksi haruslah dirancang sedemikian rupa, sehingga user dapat

kembali ke keadaan sebelum aksi dijalankan. Hal ini dapat membuat

user lebih berani untuk mengeksplorasi sistem yang dibuat dan

memilih options yang tidak familiar.

32

7. Support internal locus of control

User yang berpengalaman biasanya memiliki keyakinan bahwa

mereka bertanggung jawab terhadap sistem dan sistem akan

memberikan respon terhadap aksi yang mereka lakukan. Respon

yang mengejutkan, urutan yang aneh dalam memasukkan data dan

kesulitan dalam memperoleh informasi yang diperlukan serta

ketidakmampuan dalam mendapatkan hasil sesuai aksi tertentu akan

menimbulkan kekacauan dan keraguan bagi user.

8. Reduce short term memory load

Keterbatasan manusia dalam mengelola memori jangka pendek

membuat user membutuhkan suatu tampilan yang sederhana,

pengaturan dalam multipage, pergerakan window yang sesedikit

mungkin serta waktu training yang cukup dan optimal.

2.8 Fact-Finding Techniques

Menurut Whitten & Bentley (2007:212), Fact-Finding adalah proses

formal dari penelitian, pertemuan, wawancara, kuisioner, pengambilan sampel,

dan teknik-teknik lainnya untuk mengumpulkan informasi mengenai

permasalahan sistem, kebutuhan-kebutuhan dan preferensi.

Menurut Whitten & Bentley (2007:215), berikut ini adalah tujuh teknik

Fact-Finding yang umumnya digunakan:

1. Sampel dari dokumentasi

Teknik pengambilan sampel ini dilakukan dengan cara mengumpulkan

dokumen-dokumen sampel yang repre sentatif, form-form dan arsip-

arsip sesuai dengan kebutuhan.

2. Penelitian

Teknik ini dilakukan dengan mengunjungi perusahaan yang memiliki

masalah sejenis dan meminta persetujuan mereka untuk bisa mendapatkan

informasi untuk mengatasinya, dapat juga dengan melakukan pencarian

jurnal terkait.

3. Observasi

Teknik ini dilakukan dengan cara berpartisipasi langsung ataupun

mengamati seseorang yang tengah beraktivitas untuk mempelajari

sistem dan cara kerjanya.

33

4. Kuisioner

Teknik ini menggunakan sebuah dokumen yang mengijinkan analis untuk

mengumpulkan informasi dan pendapat dari para responden.

5. Wawancara

Teknik ini mengumpulkan informasi dari individual melalui interaksi

langsung, tanya jawab antara analis dan narasumbernya.

6. Prototipe

Teknik ini dilakukan dengan membangun sebuah model kerja dengan skala

kecil yang dapat merepresentasikan kebutuhan-kebutuhan pengguna

tersebut.

7. Perencanaan Kebutuhan Bersama

Teknik yang mana prosesnya membutuhkan sebuah pertemuan grup

yang terstruktur untuk melakukan analisa permasalahan dan

mendefinisikan kebutuhannya.

2.9 Hypertext Markup Language (HTML)

Menurut Robin Nixon (2014:1), Hypertext Markup Language (HTML)

adalah sebuah bahasa penulisan yang diciptakan oleh Berners Lee untuk

menampilkan halaman dari sebuah web browser. HTML disimpan dengan tipe

file .htm atau .html.

2.10 Model-View-Controller (MVC)

Menurut Martin Mugisha (2014:29-32), Model-View-Controller

merupakan pola arsitektur yang digunakan untuk mengimplementasikan user

interface. Perangkat lunak dibagi menjadi tiga bagian (Model, View dan

Controller) yang saling terhubung.

34

Gambar 1.27 Interaksi komponen MVC (Sumber: Martin Mugisha,

2014:29-32)

Berikut ini merupakan detail interaksi antara komponen dalam pola

perancangan MVC:

8. Controller

a. Controller terlibat dalam perubahan state model.

b. Controller mendapatkan input dari mouse dan keyboard dari user dan

mengarahkan model dan view untuk berubah sesuai kebutuhan.

c. Controller menginterpretasikan interaksi dari view dan

menerjemahkannya ke dalam aksi yang dilakukan oleh model.

d. Controller juga bertanggung jawab untuk menampilkan view yang

sesuai untuk user yang sesuai.

9. Model

a. Model merupakan objek yang merepresentasikan suatu aktifitas ataupun

tabel database.

b. Model mengelola behavior dan juga data dari aplikasi perangkat lunak.

c. Model menerima permintaan untuk mendapatkan informasi dan

merespon instruksi untuk mengubah state.

d. Model menampilkan data aplikasi beserta rule yang mengatur akses

untuk memperbarui data.

10. View

a. View merupakan representasi visual dari model state.

b. View menerjemahkan isi model dengan mengakses data dari model dan

menentukan cara untuk menampilkan data.

35

c. View mengatur representasi output grafis dan tekstual dari aplikasi

perangkat lunak.

2.11 Hypertext Preprocessor (PHP)

Menurut Robin Nixon (2014:45-50), PHP adalah bahasa yang

digunakan untuk membuat server memproduksi hasil-hasil yang dinamis yang

berpotensial berbeda-beda setiap sebuah browser membuka halaman baru.

Secara umum, dokumen PHP diakhiri dengan ekstensi .php. Ketika sebuah web

server menemukan ekstensi ini pada sebuah file, web server secara otomatis

akan memindahkannya ke prosesor PHP.

2.12 Yii 2.0

Menurut Jeff Reifman (2014), Yii merupakan framework PHP gratis

dan open-source yang memiliki fitur untuk mendukung rapid development.

Fitur-fitur yang terdapat dalam framework Yii adalah:

1. Model-View-Controller Architecture

2. Database Access Objects (DAO) and Active Record

3. Form input, Validation, and Ajax support.

4. Yii’s code generation tool, Gii

5. Extensions

6. Error handling, logging, and testing.

2.13 MySQL

Menurut Robin Nixon (2014:171-179), MyStructured Query Language

(MySQL) adalah sebuah sistem manajemen basis data yang paling populer

untuk web servers.

MySQL dikembangkan pada pertengahan tahun 1990, yang sekarang

merupakan teknologi yang paling banyak digunakan oleh tujuan internet yang

paling sering dikunjungi hari ini. Sebuah basis data MySQL, memiliki satu atau

lebih tabel, yang mana setiap tabelnya berisikan arsip-arsip atau baris. Dalam

deretan ini terdapat berbagai macam kolom yang berisikan data itu sendiri.

Contoh tabel 2.3 dan perintah MySQL sederhana:

36

Tabel 1.3 Contoh Tabel Sederhana (Sumber: Robin Nixon,

2014:162)

Author Title Type Year

Mark Twain The Adventures of Tom

Sawyer

Fiction 1876

Jane Austen Pride and Prejudice Fiction 1811

Charles Darwin The Origin of Species Non-Fiction 1856

Charles Dickens The Old Curiosity Shop Fiction 1841

William Shakespeare Romeo and Juliet Play 1594

SELECT title FROM publications WHERE author = ‘William Shakespeare’

Istilah-istilah yang penting untuk diingat dalam pembuatan basis data

adalah:

1. Database merupakan wadah keseluruhan yang memuat kumpulan data

MySQL.

2. Table merupakan sub wadah dalam basis data yang memuat data

sebenarnya.

3. Row merupakan sebuah catatan tunggal dalam sebuah tabel yang memuat

beberapa konten.

4. Column merupakan nama dari konten pada sebuah baris.

2.14 Javascript

Menurut Robin Nixon (2014:323-324), JavaScript adalah sebuah

bahasa pemrograman client-side scripting yang keseluruhannya berjalan di

dalam web browser. JavaScript membawa fungsionalitas yang dinamis pada

websites.

Setiap kali sebuah halaman baru muncul secara tiba-tiba pada browser

(yang sering sekali kita sebut dengan sebutan pop-up), atau ketika kita melihat

beragam teks yang baru, warna, maupun sebuah gambar yang muncul di

halaman, atau mengambil sebuah obyek pada halaman dan kemudian

memindahkannya ke lokasi baru, semua hal tersebut dilakukan oleh JavaScript.

Penggunaan JavaScript itu sendiri, dengan cara menempatkan awalan <script>

dan akhiran </script> di antara label HTML dan tanpa menggunakan

semicolon (;).

37

2.15 Cascading Style Sheet (CSS)

Menurut Robin Nixon (2014:423), Cascading Style Sheet (CSS),

mengaplikasikan tampilan-tampilan pada halaman web untuk membuatnya

terlihat sebagaimana yang diinginkan.

Robin Nixon (2014:428-429), menjelaskan ada beberapa macam

tampilan CSS yang berbeda dalam penggunaannya, dimulai dari tampilan

default yang telah disediakan oleh browser, melalui inline, sampai ke tampilan

eksternal.

Gaya tampilan-tampilan tersebut adalah:

1. Default styles: tampilan dasar yang diberikan oleh web browser pada

halaman web yang tidak memiliki CSS pada pembuatannya.

2. User styles: tampilan yang dibuat langsung oleh pengguna, yang kemudian

diimplementasikan ke dalam web browser.

3. External style sheet: tampilan yang dibuat pada lembar pemrograman yang

terpisah demi memproduksi tampilan berbeda untuk tujuan yang berbeda

juga, seperti menampilkan web pada umumnya di browser komputer atau

laptop, dan untuk ditampilkan pada sebuah mobile browser dengan layar

yang lebih kecil, untuk percetakan dan lainnya.

4. Internal styles: tampilan yang dibuat didalam tags <style>…. </style> dan

yang mana lebih diutamakan untuk digunakan dari semua gaya tampilan

yang ada.

5. Inline styles: tampilan yang dibuat dan ditujukan langsung kepada sebuah

elemen. Gaya tampilan ini merupakan gaya yang paling utama dari segala

jenis tampilan yang digunakan.

2.16 Rich Pictures

Menurut Gammack, Hobbs & Pigott (2011:120), Rich pictures adalah

sebuah teknik fleksibel untuk pembuatan diagram situasi permasalahan dan

menimbulkan pengetahuan serta perilaku. Idenya yaitu untuk mengekspresikan

dan merepresentasikan situasi dimana sebuah permasalahan itu dirasakan dan

pada akhirnya sebuah sistem informasi dapat menjadi relevan pada situasi

tersebut.

38

Rich pictures memiliki fitur-fitur sebagai berikut: Aspek struktural,

Proses dan alur, dan Kepentingan.

Gambar 1.28 Rich Pictures (Sumber: Gammack, Hobbs &

Pigott,2011:121)

2.17 Data Dictionary

Menurut Connoly & Begg (2015:63), data dictionary merupakan

pendeskripsian sifat dari database yang menyediakan data independence. Data

dictionary menjelaskan kegunaan atribut di setiap entity.