• Tidak ada hasil yang ditemukan

BAB 2 LANDASAN TEORI

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB 2 LANDASAN TEORI"

Copied!
29
0
0

Teks penuh

(1)

7

LANDASAN TEORI

2.1Rekayasa Piranti Lunak

Menurut Pressman (2010:13-14), rekayasa piranti lunak adalah teknologi berlapis yang memiliki fondasi yang disebut dengan process layer yang terdiri dari tools, methods, process, dan quality focus. Process pada rekayasa piranti lunak akan membentuk dasar untuk pengendalian manajemen proyek software dan menetapkan konteks dimana metode teknis yang diterapkan, produk kerja (dokumen,data, laporan, dan lain sebagainya) diproduksi, menentukan milestone, menjamin kualitas dan perubahan terjadi dengan baik. Method pada rekaya piranti lunak menyediakan teknis cara membangun software, sementara tools pada rekayasa piranti lunak menyediakan bantuan otomatis untuk process dan method.

Gambar 2.1 Gambar Software Engineering Layer (Pressman, 2010:14)

2.1.1 Kategori Software

Menurut Pressman (2010:7), software dibedakan atas tujuh kategori, yaitu:

a. System Software

Kumpulan dari program-program yang ditulis untuk melayani program lainnya.

b. Application Software

Program yang berdiri sendiri dan menyelesaikan kebutuhan bisnis yang spesifik.

(2)

c. Engineering / Scientific Software

Software yang telah digolongkan oleh algoritma “number-crunching”. Aplikasi ini digunakan dalam bidang astronomi hingga volcanology, dari bidang biologi molekul hingga manufaktur otomatis.

d. Embedded Software

Software yang berada dalam sebuah produk atau sistem dan digunakan untuk mengimplementasikan dan mengendalikan fitur dan fungsi untuk kebutuhan pengguna dan untuk sistem itu sendiri.

e. Product-line Software

Software yang dirancang dengan tujuan menyediakan kemampuan spesifik untuk digunakan oleh berbagai macam customer.

f. Web Application

Kumpulan dari file hypertext yang menampilkan informasi menggunakan teks dan grafik yang terbatas. Namun, ketika Web 2.0 muncul, WebApps berkembang ke dalam lingkungan yang lebih kompleks dengan berintegrasi terhadap database perusahaan dan business application. g. Artificial intelligent Software

Artificial intelligent software dibuat menggunakan algoritma non-numerical untuk menyelesaikan masalah yang komplek yang tidak dapat dilakukan oleh perhitungan atau analisis langsung.

2.2Agile Development

Menurut Pressman (2010:67), agile development adalah pengembangan yang bersifat agile yaitu dapat merespon dengan tepat terhadap suatu perubahan. Perubahan adalah segala hal yang berkaitan dengan software development. Perubahan ketika sebuah software dibuat, perubahan terhadap anggota tim, perubahan karena teknologi yang baru, segala perubahan yang mungkin memberikan suatu dampak terhadap produk yang dibuat, atau terhadap proyek yang membuat produk tersebut. Agility sendiri lebih dari sebuah respon yang efektif terhadap suatu perubahan. Agility menyadari bahwa tahap perencanaan adalah dunia yang tidak pasti yang memiliki batasan dan sebuah rencana proyek harus bersifat fleksibel.

(3)

Proses model agile terdiri dari Extreme Programming (XP), Adaptive Software Development (ASD), Dynamic System Development Method, Scrum, Agile Modeling.

2.2.1Extreme Programming (XP)

Menurut Pressman (2010:72-73), Extreme Programming diperkenalkan oleh Kent Beck pada akhir tahun 1980an. Kent Beck menyatakan ada lima nilai yang menjadi dasar untuk setiap pekerjaan yang dilakukan sebagai bagian dari XP, yaitu komunikasi, kesederhanaan, umpan balik, keberanian, dan rasa hormat.Untuk bisa mencapai komunikasi yang efektif antara software engineer dan stakeholder (misalnya untuk membangun fitur yang diperlukan dan fungsi untuk software), XP menekankan secara dekat, namun informal (secara lisan) kolaborasi antara customer dengan developer.

Untuk bisa mencapai kesederhanaan, XP memberikan batasan kepada untuk merancang hanya untuk kepentingan mendesak, daripada memikirkan kebutuhan masa depan. Umpan balik berasal dari tiga sumber, yaitu:

1. Software yang diimplementasikan.

2. Customer.

3. Tim Software.

Untuk keberanian, pada dasarnya banyak tim software yang berargumen tentang “melakukan perancangan untuk kemudian hari” karena dapat menghemat usaha untuk jangka waktu yang lebih lama. Namun sebagai tim menggunakan XP harus memiliki keberanian untuk merancang apa yang saat ini, dengan pertimbangan bahwa kebutuhan masa depan akan mengalami perubahan drastis.Dengan mengikuti nilai-nilai tersebut, akan tercipta rasa hormat dalam setiap anggota tim, antara stakeholder, dan secara tidak langsung dengan software itu sendiri.

(4)

Gambar 2.2 Gambar Proses Extreme Programming (Pressman, 2010:74)

Menurut Pressman (2010:73-77), XP menggunakan konsep pendekatan yang berorientasi objek dan memiliki empat kerangka kegiatan, yaitu :

1. Planning

Kegiatan Perencanaan dimulai dengan mengumpulkan requirement yang memungkinkan para anggota teknis tim XP memahami konteks bisnis untuk software dan untuk mendapatkan pandangan luas untuk output yang diperlukan dan fitur utama fungsinya. Hal ini akan mengarah ke penciptaan satu set “cerita” (biasa disebut juga cerita user) yang mendeskripsikan ouput yang dibutuhkan, fitur, dan fungsi dari software yang akan dibuat. Setiap cerita ditulis oleh customer dan ditempatkan pada kartu indeks dan memberikan skala prioritas berdasarkan pada keseluruhan nilai bisnis dari fungsi fitur tersebut. Jika cerita tersebut dianggap membutuhkan waktu lebih dari tiga minggu, customer diminta untuk membagi cerita tersebut menjadi cerita yang lebih kecil lagi dan perhitungan nilai serta biaya akan terjadi lagi. Penting untuk diingat bahwa cerita baru dapat ditulis setiap saat. Customer dan developer bekerja bersama untuk menentukan bagaimana mengelompokkan cerita untuk dikembangkan oleh tim XP. Saat komitmen dasar (kesepakatan mengenai cerita yang akan dimasukkan, tangga pengiriman,dan lain sebagainya) telah dibuat, tim XP akan

(5)

mengurutkan cerita yang akan dikembangkan dengan menggunakan salah satu dari tiga cara berikut:

1. Semua cerita akan langsung dilaksanakan segera (dalam waktu beberapa minggu).

2. Cerita dengan prioritas tertinggi akan dilaksanakan terlebih dulu. 3. Cerita paling berisiko akan dilaksanakan terlebih dahulu.

Setelah proyek pertama diselesaikan, tim XP menghitung kecepatan proyek untuk digunakan sebagai :

a. Estimasi tanggal pengiriman dan jadwal penyelesaian berikutnya b. Menentukan terjadinya komitmen yang berlebih untuk semua cerita

dalam keseluruhan pengembangan proyek. Jika hal ini terjadi maka akan dilakukan perubahan terhadap isi komitmen atau mengubah jadwal pengiriman akhir.

Selama proses pengembangan berlangsung, customer dapat menambah cerita, mengubah nilai cerita yang sudah ada, membagi cerita, atau menghapusnya. Kemudia tim XP mempertimbangkan kembali semuanya dan membuat rencana yang sesuai.

2. Design

Desain pada XP mengikuti prinsip KIS (“Keep It Simple”). Desain yang sederhana selalu lebih dipilih dibandingkan dengan desain yang kompleks. Desain untuk fungsi tambahan (karena developer merasa akan diminta nanti) tidak disarankan. XP menerapkan penggunaan CRC (Class-Responsibility-Card) sebagai mekanisme yang efektif untuk memikirkan mengenai software dalam konteks berorientasi objek. CRC akan mengidentifikasi dan mengorganisasikan class berorientasi objek yang sesuai dengan peningkatan software. Jika terjadi masalah dalam pembuatan desain cerita, XP merekomendasikan suatu solusi yang disebut “Spike Solution”. Spike solution adalah pembuatan segera suatu prototype operasional dari sebagian desain yang mengalami masalah.

(6)

3. Coding

Setelah cerita selesai dikembangkan dan desain kerja awal selesai, tim XP tidak segera melanjutkan ketahap coding, melainkan mengembangkan serangkaian tes unit yang akan dijalankan pada setiap cerita yang akan dibuat. Saat unit tes telah dibuat, developer akan lebih fokus kepada apa yang harus dibuat untuk melewati tes tersebut. Tidak ada sesuatu yang berlebihan yang ditambahkan (prinsip KIS). Saat kode selesai dibuat, kode dapat diuji segera, sehingga dapat memberikan umpan balik segera kepada developer. XP merekomendasikan konsep “Pair Programming” yaitu dua orang bekerja bersama dalam pembuatan kode untuk cerita. Hal ini memberikan kesempatan pada pemecahan masalah secara langsung dan membuat developer lebih fokus kepada masalah yang sedang ditanganinya. Pada dasarnya pada pair programming, kedua developer memiliki peran yang berbeda yaitu untuk memikirkan mengenai detail coding pada desain, dan untuk memastikan bahwa coding yang dibuat sudah sesuai standar dan melewati tes unit. Pair programming memiliki “continuous integration” yang merupakan strategi untuk menghindari kompatibilitas dan menghadapi masalah dan menyediakan “smoke testing” untuk membantu menemukan error lebih awal. Menurut Pressman (2010:463), smoke testing adalah tes yang biasa digunakan ketika pengembangan software. Smoke testing dirancang untuk mekanisme proyek dengan waktu yang kritis, memungkinkan tim software melakukan penilaian proyek lebih sering. Dalam proses coding juga terdapat proses refactoring yaitu proses mengubah sistem software yang dilakukan dengan tujuan untuk meningkatkan struktur internal desain (atau sumber code) tanpa mengubah fungsi eksternal atau behaviour-nya. Ketika software di refactor, tampilan yang ada akan diperiksa untuk redudanscy, bagian tampilan yang tidak digunakan, algoritma yang tidak efisien atau tidak diperlukan, dan kesalahan tampilan lain yang dapat diperbaiki untuk menghasilkan tampilan yang lebih baik (Pressman, 2010: 229)

(7)

4. Testing

Tes penerimaan pada XP, atau biasa disebut juga tes customer, dilakukan oleh customer dan berfokus pada keseluruhan sistem yang terlihat dan dapat ditinjau oleh customer.

2.3Interaksi Manusia Komputer (IMK)

Menurut Ben Shneiderman (2010:4-5), interaksi manusia komputer adalah disiplin ilmu yang mempelajari hubungan antara manusia dan komputer yang meliputi perancangan, evaluasi, dan implementasi antarmuka pengguna komputer agar mudah digunakan oleh manusia.

2.3.1 Eight Golden Rules

Dalam perancangan antarmuka harus memperhatikan aturan-aturan yang terangkum dalam 8 (delapan) golden rules (Shneiderman dan Plaisant, 2010:88), yaitu :

1. Berusaha untuk konsisten

Hal ini sangat penting bagi antarmuka user agar user tidak mengalami kesulitan dalam mencari sebuah informasi. Oleh karena itu, tampilan layar harus dibuat konsisten antara yang satu dengan yang lainnya.

2. Melayani usability universal

Hal ini dimaksudkan agar pembuat aplikasi dapat mengenali kebutuhan pengguna yang beragam dan desain yang bersifat plasticity, serta memfasilitasi transformasi dari konten. Dalam sistem juga dapat ditambahkan fitur bagi pemula, seperti penjelasan, dan fitur untuk para ahli, seperti shortcut dan aksi timbal balik yang lebih cepat sehingga dapat memperkaya desain antarmuka dan meningkatkan persepsi kualitas sistem. 3. Memberikan umpan balik yang informatif

User melakukan aksi harus ada umpan balik agar user terarah dan tidak tersesat dalam pencarian informasi.

(8)

4. Merancang dialog yang memberikan penutupan

Berinteraksi dengan Komputer sama halnya seperti saat berdialog. Aksi yang berurutan harus diorganisasi dan memiliki awal, tengah, dan akhir. User perlu mengetahui kapan aksi tersebut berakhir. Umpan balik yang informatif pada saat sekumpulan aksi telah dilakukan akan memberikan kepuasan bagi user, serta mengindikasikan bahwa user boleh melakukan aksi selanjutnya.

5. Pencegahan kesalahan

Desain sebuah sistem harus memungkinkan user untuk menghindari kesalahan yang serius. Sebagai contoh, membuat menu yang tidak bisa diakses menjadi berwarna abu-abu. Jika user melakukan kesalahan, antarmuka harus dapat mendeteksi kesalahan tersebut dan menawarkan instruksi yang sederhana dan spesifik untuk pemulihan.

6. Memungkinkan pembalikan aksi yang mudah

User dapat kembali pada aksi yang telah dilakukan sebelumnya jika terdapat kesalahan, sehingga user berani memilih menu yang tidak umum.

7. Mendukung pusat kendali internal

Kepuasan user akan tinggi jika user merasakan bahwa dia telahmemegang kendali, sedangkan kepuasan user akan rendah jika komputer yang memegang kendali.

8. Mengurangi beban ingatan jangka pendek

Ingatan jangka pendek manusia sangat terbatas. Oleh karena itu harus dilakukan hal-hal yang memungkinkan user tidak perlu mengingat apa pun. Sebagai contoh, daripada meminta user untuk mengetik nama file yang akan diterima, lebih baik apabila sistem dibuat agar terdapat tombol attach file sehingga user tinggal menekan tombol tersebut untuk mengambil file.

(9)

2.3.2Lima Faktor Manusia Terukur

Menurut Ben Shneiderman (2010:14) untuk membuat suatu user interface yang memenuhi tujuan yang mengagumkan atau user interface bersifat efisien, efektif dan memuaskan ada beberapa faktor pengukur yang dijadikan sebagai evaluasi, yaitu :

1. Waktu untuk belajar

Lamanya waktu yang digunakan user untuk mempelajari dan memakai actions yang akan digunakan untuk tugas yang berhubungan.

2. Kecepatan kinerja

Lamanya waktu yang dibutuhkan user untuk menyelesaikan sebuah tugas.

3. Tingkat Kesalahan Yang Dibuat User

Tingkatan banyaknya kesalahan yang dilakukan oleh user dan jenis kesalahan apa yang dilakukan oleh user. Pengendalian kesalahan merupakan komponen yang kritis dalam user interface. 4. Daya Ingat

Bagaimana user dapat mempertahankan daya ingat mereka mengenai interface setelah jangka waktu tertentu. Frekuensi penggunaan interface akan meningkatkan daya ingat.

5. Tingkat Kepuasan

Tingkat kepuasan user akan beberapa aspek interface yang dapat diketahui dengan melakukan kuesioner dan interview.

2.4HyperText Markup Language (HTML)

Menurut Tanenbaum dan Wetherall (2011:663), HTML memungkinkan pengguna untuk menghasilkan halaman web yang memiliki teks, grafik, video, dan lain sebagainya. Bahasa Markup memiliki perintah eksplisit. Contohnya pada HTML, terdapat perintah dengan tag <b> untuk memulai Bold Mode dan tag </b> untuk mengakhiri Bold Mode.

(10)

2.5Javascript

Menurut Tanenbaum dan Wetherall (2011:676), JavaScript merupakan bahasa level tinggi yang ideal untuk mendesain halaman web yang interaktif, karena JavaScript memiliki fitur seperti membuat pop up dialog, menyimpan hasil string ke dalam suatu variable hanya dengan menggunakan satu baris kode program.

2.6 JQuery

Menurut Benedtti (2011:5), JQuery adalah JavaScript Library yang spesialisainya merubah dokumen pada halaman web saat bekerja. jQuery library menyediakan tujuan umum pemisah layer pada beberapa web scripting.

2.7Active Server Pages.NET (ASP.NET)

ASP.NET adalah platform web yang menyediakan semua layanan yang dibutuhkan user untuk membangun aplikasi web berbasis server ASP.NET dibangun diatas .NET framework sehingga semua fitur framework tersedia untuk aplikasi ASP.NET. Aplikasi yang dibuat user dapat ditulis dengan bahasa pemrograman apapun termasuk Visual Basic dan C#. (Microsoft, 2015)

2.8C#

C# (C Sharp) adalah bahasa pemrograman modern dan tingkat tinggi (high-level) yang memiliki tujuan umum untuk membangun aplikasi menggunakan visual studio dan .NET Framewrok. C# dirancang untuk menjadi sederhana, kuat, type-safe, dan berorientasi objek. (Microsoft, 2015)

2.9SQL Server 2008

Menurut Leiter (2008:3), SQL Server 2008 diperkenalkan olah Microsoft pada Agustus 2008. SQL Server 2008 sangat dikenal sebagai Relational Database Management System (RDBMS). Namun tidak hanya itu saja, SQL Server 2008 lebih akurat dapat digambarkan juga sebagai Data Enterprise Platform yang dibangun di

(11)

atas banyak fitur yang pertama kali didirikan di SQL Server 2005. Sementara itu, SQL Server 2008 juga memperluas penawaran untuk menyertakan perbaikan dan penambahan. Karena dikenal dengan peran sebagai RDBMS tradisional, SQL Server 2008 juga menyediakan kemampuan reporting, analisis data yang kuat, dan data mining. SQL Server 2008 juga mempunyai fitur-fitur yang mendukung aplikasi data yang berbeda, data-driven event notification, dan masih banyak lagi.

2.10 .NET framework

NET Framework adalah teknologi yang mendukung pembangunan dan menjalankan generasi berikutnya dari aplikasi dan layanan XML Web. .NET framework terdiri dari runtime bahasa umum dan class library .NET framework. Dapat dibayangkan runtime berperan sebagai agen yang melakukan manage terhadap code pada waktu eksekusi, menyediakan layanan inti seperti manajemen memori, manajemen thread, dan melakukan remoting, sementara meningkatkan keamanan dan ketahanan dari akurasi code. Sedangkan class library .NET framework adalah koleksi yang berorientasi objek yang dapat digunakan kembali dan dapat digunakan untuk mengembangkan aplikasi mulai dari tradisional command-line atau aplikasi Graphical User Interface (GUI) hingga aplikasi berbasis pada inovasi terbaru yang disediakan oleh ASP.NET, seperti WebForms dan XML WebServices. (Microsoft, 2015).

2.11 Internet

Menurut Tanenbaum dan Wetherall (2011:55), internet adalah kumpulan besar jaringan yang berbeda yang menggunakan protocol umum tertentu dan menyediakan jasa umum tertentu.

2.12 Database

Menurut Connoly dan Begg (2010:15), basis data adalah suatu kumpulan logikal data yang saling berhubungan dan deskripsi dari data tersebut dirancang untuk memenuhi kebutuhan informasi suatu organisasi.

(12)

2.13 Database Management System (DBMS)

Menurut Connoly dan Begg (2010:16), DBMS adalah sistem perangkat lunak yang memungkinkan pengguna mendefinisikan, membuat, menjaga dan melakukan akses kontrol ke database.

DBMS menyediakan beberapa fasilitas, seperti :

a. Memungkinkan pengguna mendefinisikan database melalui DDL (Data Definition Language).

b. Memungkinkan pengguna memasukkan data, melakukan perubahan data, dan menghapus data melalui DML (Data Manipulation Language).

c. Menyediakan akses kontrol ke database, seperti menyediakan keamanan sistem, sistem terintegritas, sistem kontrol yang terkonkurensi, pemulihan sistem kontrol, dan katalog yang dapat diakses oleh pengguna.

Menurut Connoly dan Begg (2010:50), DBMS memiliki fungsi sebagai berikut:

a. Menyimpan, mengambil, dan mengubah data. b. Katalog yang dapat diakses oleh pengguna. c. Membantu transaksi.

d. Menyediakan layanan kontrol konkurensi. e. Menyediakan layanan recovery.

f. Menyediakan layanan otoritas.

g. Menyediakan bantuan dalam komunikasi data. h. Memberikan layanan terintegritas.

i. Memberikan layanan untuk mempromosikan data independencce. j. Menyediakan layanan utilitas.

2.14 Unifiend Modeling Languange (UML)

Menurut Whitten dan Bentley (2007:163), rangkaian lengkap alat pemodelan untuk pendekatan berorientasi obyek. UML tidak menentukan metode untuk pengembangan sistem. UML hanya sebuah notasi yang diterima secara luas sebagai standar dalam object modelling (Whitten dan Bentley, 2007:371)

(13)

2.14.1 Class Diagram

Menurut Whitten dan Bentley (2007:400), class diagram adalah penggambaran grafis suatu struktur objek dari sistem yang bersifat statis, menunjukkan objek class dari komposisi sistem tersebut dan juga hubungan antara objek class tersebut. Menurut Whitten dan Bentley (2007:648-651), class diagram memiliki 3 area pokok, yaitu : 1. Nama class

Nama dari class 2. Atribut class

Atribut class adalah kelas objek yang berisi informasi mengenai proses bisnis dan penerapan analysis class. 3. Metode class

Metode class adalah logika software yang dieksekusi dalam menanggapi suatu pesan.

Gambar 2.3 Area Pokok Class Diagram

2.14.1.1 Visibility

Menurut Whitten dan Bentley (2010:675), visibility adalah cara mendefinisikan atribut atau method yang diakses oleh objek lain. Dalam atribut dan metode pada class bisa memiliki salah satu sifat (visibility) berikut :

1. Private

Tidak dapat dipanggil dari luar class yang bersangkutan. Memiliki tanda ( - ) di depan nama variabel.

< Nama Class > - < Atribut Class >

(14)

2. Protected

Hanya dapat dipanggil oleh class yang bersangkutan dan anak-anak dari class tersebut yang mewarisinya. Memiliki tanda ( # ) di depan nama variabel.

3. Public

Dapat dipanggil siapa saja. Memiliki tanda ( + ) di depan nama variabel.

2.14.1.2 Multiplicity

Menurut Whitten dan Bentley (2007:378), Multiplicity adalah jumlah minimum dan jumlah maksimum kejadian satu kelas objek untuk satu kejadian dari kelas objek yang terkait. Multiplicity terdiri dari:

(15)

Tabel 2.1 Tabel berbagai macam notasi multiplicity disertai contohnya (Whitten dan Bentley, 2007:377)

2.14.1.3 Relationship

Menurut Whitten dan Bentley (2007:376), dalam class diagram terdapat beberapa jenis hubungan (relationship) antar class, yaitu:

1. Association Relationship

Secara konseptual, tidak ada obyek yang terisolasi. Suatu object class akan berinteraksi dengan object class lain dalam suatu lingkungan sistem. Garis yang menunjukkan relationship antar object class dalam UML disebut juga sebagai Association. Association relationship terdiri dari : a.Bidirectional

(16)

Association relationship bidirectional adalah association relationship yang dapat diartikan secara dua arah. Dalam association relationship bidirectional, setiap class yang berhubungan dapat saling mengakses data satu sama lain.

Gambar 2.4 Gambar Association Relationship Bidirectional (Whitten dan Bentley, 2007:377)

b. Unidirectional

Association relationship unidirectional adalah association relationship yang terjadi ketika terdapat hubungan antara dua class, namun hanya satu class saja yang dapat melakukan akses, sedangkan class yang satunya tidak dapat melakukan akses balik ke class tersebut.

Gambar 2.5 Gambar Association Relationship Unidirectional (Whitten dan Bentley, 2010:650)

2. Aggregation Relationship

Hubungan dimana sebuah class yang lebih besar memiliki satu atau lebih bagian class. Sebaliknya, bagian kecil dari suatu class merupakan bagian dari class yang lebih besar. Aggregation Relationship memiliki notasi diamond putih.

(17)

Gambar 2.6 Gambar Aggregation Relationship (Whitten dan Bentley, 2007:379)

3. Composition Relationship

Hubungan dimana sebuah class yang lebih besar (“whole”) bertanggungjawab atas penciptaan dan penghancuran class kecil (“part”)yang merupakan bagian darinya. Jika class besar dihancurkan, maka class kecil yang merupakan bagian dari class besar tersebut akan hancur pula. Dinotasikan dengan solid diamond.

(18)

Gambar 2.7 Gambar Composition Relationship (Whitten dan Bentley, 2007:379)

(19)

Gambar 2.8 Gambar Class Diagram (Whitten dan Bentley, 2007:406)

2.14.2 Use Case Diagram

Menurut Whitten dan Bentley (2007:246), Use Case Diagram adalah diagram yang menggambarkan interaksi antara sistem dan sistem eksternal dan user. Dengan kata lain, use case diagram mendeskripsikan siapa yang akan menggunakan sistem dan dengan cara apa user mengharapkan dapat berinteraksi dengan sistem.

(20)

Menurut Whitten dan Bentley (2007:246-248), use case diagram terdiri dari:

a. Use Case

Use Case mendeskripsikan fungsi sistem dari perspektif eksternal user dengan cara dan terminologi yang diketahui oleh user (Whitten dan Bently, 2007:246).

Gambar 2.9 Simbol Use Case

(Whitten dan Bentley, 2007:246)

b. Actor

Menurut Whitten dan Bently (2007:247), actor adalah apapun yang dapat berinterinteraksi dengan sistem untuk bertukar informasi. Actor tidak harus selalu manusia.

Actor dikelompokkan dalam 4 tipe, yaitu:

1. Primary Business Actor

Primary Business Actor adalah stakeholder yang

mendapat keuntungan dari menjalankan use case yang ada dengan menerima sesuatu yang dapat diukur atau diobservasi nilainya.

2. Primary System Actor

Primary System Actor adalah stakeholder yang secara langsung berhadapan dengan sistem untuk memulai suatu business event atau system event.

3. External Server Actor

External Server Actor adalah stakeholder yang memberikan tanggapan untuk permintaan dari use case.

(21)

External Receiver Actor adalah stakeholder yang bukan termasuk aktor utama, namun mendapatkan suatu nilai yang dapat diukur dari suatu use case.

Gambar 2.10 Simbol Actor (Whitten dan Bentley, 2007:247)

c. System Boundary

Menurut Whitten dan Bentley (2007:319), system boundary adalah lingkungan sistem informasi termasuk eksternal agent yang membentuk batas dari suatu sistem dan menentukan tempat untuk sistem interface dengan lingkungannya.

System

Gambar 2.11 Gambar system boundary pada use case System Boundary

(22)

d. Relationship

Menurut Whitten dan Bentley (2007:248),

relationship digambarkan sebagai garis antara dua

simbol pada use case diagram. Relationship pada use case dibedakan menjadi :

1. Association Relationship

Hubungan antara actor dengan use case, dimana interaksi terjadi diantara mereka.

Gambar 2.12 Gambar Association Relationship pada Use Case Diagram (Whitten dan Bentley, 2007:248)

2. Extend Relationship

Hubungan antara extension use case dengan use case yang melakukan extension tersebut.

Gambar 2.13 Gambar Extension Use Case (Whitten dan Bentley, 2007:249)

(23)

3. Uses Relationship

Hubungan antara abstract use case dengan use case yang menggunakannya.

Gambar 2.14 Gambar Abstract Use Case (Whitten dan Bentley, 2007:249)

4. Depends On Relationship

Hubungan yang menyatakan bahwa sebuah use case tidak dapat dilakukan sebelum use case yang lainnya selesai dilakukan.

(24)

Gambar 2.15 Gambar Depends On Relationship (Whitten dan Bentley, 2007:250)

5. Inheritance Relationship

Hubungan antara actor yang diciptakan untuk menyederhanakan gambar ketika sebuah actor abstrak mewarisi peran dari berbagai actor yang asli.

Gambar 2.16 Gambar Inheritance Relationship (Whitten dan Bentley, 2007:251)

(25)

Gambar 2.17 Use Case Diagram (Whitten dan Bentley, 2007:246)

2.14.3 Use Case Narrative

Menurut Whitten dan Bentley (2007:246), use case narrative adalah deskripsi textual dari suatu business event dan bagaimana user berinteraksi dengan sistem untuk menyelesaikan suatu tugas.

2.14.4 Sequence Diagram

Menurut Whitten dan Bentley (2007:394), sequance diagram adalah diagram yang menggambarkan interaksi antara actor dengan sistem dalam skenario use case. Berdasarkan Whitten dan Bentley (2007:394-395), sequance diagram memilik beberapa notasi :

a. Actor

Actor yang menginisiasi use case ditunjukkan dengan simbol actor use case.

(26)

Gambar 2.18 Gambar Actor pada Sequence Diagram (Whitten dan Bentley, 2007:395)

b. Objek

Kotak yangmenunjukkan sistem sebagai “kotak hitam” atau secara keseluruhan. Tanda baca (:) adalah notasi standar sequence diagram untuk menunjukkan instance yang sedang berjalan dalam sistem.

Gambar 2.19 Gambar objek pada Sequence Diagram (Whitten dan Bentley, 2007:395)

c. Lifelines

Garis vertikal putus-putus memanjang ke bawah dari actor dan simbol sistem yang menunjukkan urutan kehidupan (life of the sequence).

(27)

d. Activation Bars

Activation Bars adalah bar yang berada pada lifelines yang menunjukkan lama periode ketika peserta aktif berinteraksi.

Gambar 2.21 Gambar Activation Bars pada Sequence Diagram

e. Input Messages

Input Messages adalah panah horizontal dari actor ke sistem yang menunjukkan input pesan

Gambar 2.22 Gambar Input Messages pada Sequence Diagram

f. Output Messages

Output Messages adalah panah horizontal dari sistem ke actor.

Gambar 2.23 Gambar Output Messages pada Sequence Diagram

Messages

(28)

g. Self Call

Self Call adalah obyek yang dapat memanggil method-nya sendiri.

Gambar 2.24 Gambar self call pada Sequence Diagram

h. Frame

Frame adalah kotak yang dapat melampirkan satu atau lebih pesan untuk memecah sequance.

Gambar 2.25 Gambar Frame pada Sequence Diagram

Gambar 2.26 Gambar Sequence Diagram dengan penambahan destructor (Whitten dan Bentley, 2007:659)

(29)

2.15 Entity Relationship Diagram (ERD)

Menurut Whitten dan Bentley (2007:271), ERD adalah model data yang menggunakan beberapa notasi untuk menggambarkan data dalam hal entitas dan hubungan yang dijelaskan oleh data tersebut. ERD terdiri dari beberapa bagian, yaitu :

1. Entitas

Sebuah class dari orang, tempat, objek, peristiwa, atau konsep yang dianggap perlu untuk menangkap dan menyimpan data.

2. Atribut

Deskriptif properti atau karakteristik entitas.

3. Key

Atribut atau kelompok atribut, yang mengasumsikan nilai yang unik untuk setiap entitas. Biasa disebut juga identifier.

4. Relationships

Hubungan bisnis alami antara satu atau lebih entitas.

5. Cardinality

Jumlah minimum dan maksimum kejadian dari satu entitas yang mungkin berhubungan dengan entitas lainnya.

6. Degree

Gambar

Gambar  2.1 Gambar Software Engineering Layer (Pressman, 2010:14)
Gambar 2.2  Gambar Proses Extreme Programming (Pressman, 2010:74)
Tabel 2.1 Tabel berbagai macam notasi multiplicity disertai  contohnya (Whitten dan Bentley, 2007:377)
Gambar 2.4 Gambar Association Relationship Bidirectional  (Whitten dan Bentley, 2007:377)
+7

Referensi

Dokumen terkait

Menurut penelitian Tam dan El-Azhar (2020), akibat daripada penularan wabak Covid-19 telah mengakibatkan lebih 421 juta orang pelajar di seluruh dunia terjejas

Rekomendasi yang dapat diberikan terhadap Lokasi 50 sebenarnya lebih memerlukan penanganan prasarana sarana dan peningkatan kualitas kondisi bangunan. Lokasi 50

(3) Dalam hal Penghasil, Pengumpul, Pemanfaat, Pengangkut, Pengolah, dan Penimbun limbah B3 tidak melakukan penanggulangan pencemaran dan/atau kerusakan lingkungan

Sebaliknya individu yang memiliki tingkat pe- ngetahuan tentang agama yang rendah akan melakukan perilaku seks bebas tanpa berpikir panjang terlebih dahulu sehingga

 Hindari kata-kata absolut seperti, selalu, tidak pernah, dan semua pada pilihan jawaban, dan hindari pula istilah yang tidak jelas (meragukan) seperti biasanya atau sering..

Pelubangan dinding saluran untuk pengukuran garis

Hasil penelitian menunjukkan bahwa hasil nilai korelasi hasil ρ : 0,652, dengan tingkat signifikasi 0,000 berarti terdapat hubungan antara minat masuk jurusan