BAB II
LANDASAN TEORI 2.1 Telaah Literatur
Beberapa telaah literatur yang berhubungan dengan rancang bangun sistem pendukung keputusan pemilihan smartwatch menggunkana metode Simple Additive Weighting yaitu:
2.1.1. Sistem Pendukung Keputusan
Sistem Pendukung Keputusan (SPK) atau Decision Support System (DSS) adalah sebuah sistem yang mampu memberikan kemampuan pemecahan masalah maupun kemampuan pengkomunikasian untuk masalah dengan kondisi semi terstruktur dan tak terstruktur. Sistem ini digunakan untuk membantu pengambilan keputusan dalam situasi semi terstruktur dan situasi yang tidak terstruktur, dimana tak seorangpun tahu secara pasti bagaimana keputusan seharusnya dibuat (Turban, 2001).
Sistem Pendukung Keputusan (SPK) terdiri dari beberapa tahapan yaitu:
1. Fase Inteligensi
Intelegensi dalam pengambilan keputusan meliputi scanning lingkungan, secara intermitten ataupun terus-menerus. Inteligensi mencakup berbagai aktivitas yang menekankan identifikasi situasi atau peluang-peluang masalah.
2. Fase Desain
Fase Desain meliputi penemuan atau mengembangkan dan menganalisis tindakan yang mungkin untuk dilakukan.
3. Fase Pilihan
Pilihan merupakan tindakan pengambilan keputusan yang kritis.
Fase pilihan adalah fase di mana dibuat suatu keputusan yang nyata dan diambil suatu komitmen untuk mengikuti suatu tindakan tertentu.
4. Fase Implementasi
Implementasi berarti membuat suatu solusi yang direkomendasikan untuk bisa bekerja.
Sistem Pendukung Keputusan (SPK) juga memiliki berbagai komponen yaitu:
1. Data Management
Termasuk database, yang mengandung data yang relevan untuk berbagai situasi dan diatur oleh software yang disebut Database Management System (DBMS).
2. Model Management
Melibatkan model finansial, statistikal, management science, atau berbagai model kualitatif lainnya, sehingga dapat memberikan ke sistem suatu kemampuan analitis, dan manajement software yang dibutuhkan.
3. Communication
User dapat berkomunikasi dan memberikan perintah pada Sistem Pendukung Keputusan (SPK) melalui subsistem ini. Yang berarti menyediakan antarmuka.
4. Knowledge Management
Subsistem Optional ini dapat mendukung subsistem lain atau bertindak sebagai komponen yang berdiri sendiri.
2.1.2 Model Sistem Pengambil Keputusan
Menurut Davis dalam Hartono (2013:120), terdapat dua model sistem pengambilan keputusan, yaitu model sistem tertutup dan model sistem terbuka (Frieyadie, 2016).
A Model Sistem Tertutup
Asumsi bahwa suatu keputusan dapat diambil tanpa adanya campur tangan dari lingkungan sistem, karena sistem pengambilan keputusan yang tidak dipengaruhi oleh lingkungan merupakan landasan model sistem tertutup. Dengan ini, sistem pengambilan keputusan dianggap (Frieyadie, 2016):
1. Menanggapi permasalahan dengan segala konsekuensinya dengan mengetahui semua alternatif tindakan yang ada.
2. Mempunyai metode yang dapat menyusun alternatif-alternatif sesuai prioritasnya.
3. Mampu memilih atau menetapkan alternatif yang paling menguntungkan.
B Model Sistem Terbuka
Asumsi bahwa sistem pengambilan keputusan dan lingkungan sistem memiliki hubungan yang saling berpengaruh merpupakan landasan model sistem terbuka. Lingkungan berpengaruh terhadap sistem pengambilan keputusan, keputusan yang nantinya diambil akan menimbulkan efek terhadap lingkungan dan sebaliknya. Dengan ini, sistem pengambilan keputusan dianggap (Frieyadie, 2016):
1. Dalam menangani permasalahan dengan segala konsekuensinya, sistem hanya mengetahui sebagian saja dari alternatif yang ada.
2. Dalam menangani permasalahan yang ada sistem hanya dapat menyediakan sejumlah alternatif yang baik, tetapi tidak dapat memilih atau menetapkan alternatif yang paling menguntungkan.
3. Hanya sekedar meminta pemilihan dengan alternatif terbaik yang nantinya dilakukan oleh pihak diluar sistem sesuai aspirasinya.
2.2 Multi-Attribute Decision Making (MADM)
Multi-Attribute Decision Making (MADM) merupakan metode yang digunakan untuk mencari alternatif terbaik dari sejumlah alternatif dengan kriteria
tertentu. Metode MADM mengacu pada penyaringan, memprioritaskan, memberi peringkat, atau memilih serangkaian alternatif yang biasanya dibawah atribut independent, tidak sepadan, atau bertentangan. Tahapan MADM bisa diekspresikan sebagai berikut (Adriyendi, 2015):
1. Menentukan alternatif A = {!!, !", ……, !#}
2. Menentukan kriteria yang dijadikan patokan dalam penentuan pengambilan keputusan C = {"!, "", ……,"$}
3. Pada setiap kriteria akan ditentukan rating kecocokan dari setiap alternatif.
4. Menentukan atribut dari 2 kategori utama, yaitu cost attributes dan benefit attributes.
5. Setiap kriteria diberikan nilai bobot preferinsi atau tingkat kepentingan (W). W = {#!, #", #%, ……., #$}
6. Membuat matriks keputusan berdasarkan kriteria ("$), kemudian melakukan normalisasi matriks berdasarkan persamaan yang disesuaikan dengan jenis atribut (cost attributes dan benefit attributes) sehingga diperoleh matriks ternomalisasi R.
2.3 Metode Simple Additive Weighting (SAW)
Metode Simple Additive Weighting (SAW) dikenal dengan istilah metode penjumlahan terbobot. Konsep dasarnya adalah mencari penjumlahan terbobot dari rating inerja pada saat alternative di semua atribut. Metode SAW membutuhkan proses normalisasi matriks keputusan (X) ke suatu skala yang dapat diperbandingkan dengan semua rating alternative yang ada (Raharja, 2020).
Formula untuk melakukan normalisasi tersebut adalah:
$#$ =
⎩⎪
⎨
⎪⎧ *#$
+,- *#$
/
→ Jika j adalah ,99$/:;9< keuntungan (:<C<D/9) +/C *#$
*/#$ → Jika j adalah ,99$/:;9< biaya (HIJ9)
⎭⎪
⎬
⎪⎫
(2.1)
Keterangan:
$#$ = Nilai rating kinerja ternormalisasi
*#$ = Nilai atribut yang dimiliki dari setiap kriteria Max *#$ = Nilai terbesar dari setiap kriteria
Min *#$ = Nilai terkecil dari setiap kriteria Benefit = Jika nilai terbesar adalah terbaik Cost = Jika nilai terkecil adalah terbaik
Dimana $#$ adalah rating kinerja ternormalisasi dari alternatif !# pada atribut "$ : i = 1, 2, …., m dan j = 1, 2, ….., n. Nilai Preferensi untuk setiap alternative (N#) diberikan sebagai berikut:
N# = O P$$#$
&
$'! (2.2)
Keterangan:
N# = Ranking untuk setiap alternatif
## = Nilai bobot dari setiap kriteria
$#$ = Nilai rating kinerja ternormalisasi
Nilai N# lebih besar mengindikasikan bahwa alternative !# lebih terpilih
(Kusumadewi,2006).
2.4 Smartwatch
Smartwatch merupakan perangkat pintar yang biasanya terhubung dengan Smartphone untuk menjalankan beberapa fungsi disamping fungsinya sebagai jam tangan. Smartwatch dirancang untuk jaringan dan mengintegrasikan dengan perangkat pribadi lainnya melalu Wi-Fi dan teknologi Bluetooth. Melalui Smartwatch user dapat mengakses berita, cuaca, olahraga, telepon, pesan dan bahkan pada versi Smartwatch terbaru user dapat mengetahui informasi kesehatan badannya (Centipedia, 2019).
2.5 End-User Computing Satisfaction (EUCS)
End-user Computing Satisfaction (EUCS) merupakan salah satu metode yang dapat digunakan untuk mengetahui keberhasilan dari suatu implementasi sistem informasi. EUCS adalah konseptualisasi sikap efektif aplikasi computer khusus oleh seseorang yang berinteraksi dengan aplikasi secara langsung (SIP, 2016).
EUCS dapat digunakan untuk mengevaluasi efektivitas desain and aktivitas- aktivitas dalam implementasi sistem. Terdapat lima faktor yang menyusun EUCS, antara lain: content, accuracy, format, ease of use, dan timeliness (Doll dan Torkzadeh, 1988).
Doll dan Torkzadeh membuat model pertanyaan untuk mengukur tingkat kepuasan user yang telah diuji validitas dan keandalannya. Tingkat keandalannya secara konsisten berada diatas 0.90. Tingkat korelasi antarpertanyaan secara
konsisten lebih tinggi (lebih besar dari 0.5). Model pertanyaan yang dijabarkan sebagai berikut (Doll dan Torkzadeh, 1988).
1. Apakah konten informasi memenuhi kebutuhan user?
2. Apakah sistem menyediakan informasi yang dibutuhkan dengan tepat?
3. Apakah sistem menyediakan informasi yang memadai?
4. Apakah sistem menyediakan informasi yang akurat?
5. Apakah user merasa puas dengan akurasi sistem?
6. Apakah sistem memiliki tampilan yang memudahkan penggunaan sistem?
7. Apakah hasil informasi data smartwatch yang dikeluarkan sistem dalam format yang sesuai?
8. Apakah sistem user friendly?
9. Apakah sistem mudah digunakan dan memiliki fungsi sesuai kebutuhan?
10. Apakah sistem menyediakan informasi yang dibutuhkan dalam waktu yang tidak lama?
11. Apakah sistem memberikan informasi yang terkini?
Berdasarkan lima faktor penyusun EUCS, pertanyaan kesatu sampai ketiga tergolong ke dalam faktor content, pertanyaan keempat dan kelima tergolong ke dalam faktor accuracy, pertanyaan keenam dan ketujuh tergolong ke dalam faktor format, pertanyaan kesembilan dan kesepuluh tergolong ke dalam faktor ease of use dan pertanyaan kesepuluh dan kesebelas tergolong ke dalam faktor timeliness (Doll
dan Torkzadeh, 1988).
2.6 Framework Angular
Framework merupakan suatu fondasi dengan tingkat kerumitan yang dapat ditentukan dan dapat diperluas oleh si pemrogram dengan menggunakan kode mereka sendiri termasuk kompiler, juru bahasa, atau API. Secara umum, framework dapat menyediakan lingkungan yang memfasilitasi jenis pemrograman tertentu untuk proyek pengembangan software. Struktur berlapis yang menunjukkan program apa yang dapat atau harus dibangun dan bagaimana framework akan saling terkait merupakan framework dalam pemrograman. Beberapa framework pada sistem komputer juga termasuk program aktual, dapat menentukan interface pemrograman, atau menawarkan alat pemrograman untuk menggunakan kerangka kerja. Digunakan untuk sekumpulan fungsi dalam suatu sistem dan bagaimana semuanya saling terkait juga termasuk dalam penggunaan framework. Framework juga dapat diartikan sebagai suatu lapisan-lapisan sistem operasi dan juga lapisan- lapisan suatu subsistem aplikasi, bagaimana komunikasi harus distandarisasi pada beberapa tingkat jaringan dan seterusnya. Framework umumnya lebih komprehensif dibandingkan protokol dan lebih bersifat perspektif daripada struktur.(Andy, 2020)
Angular merupakan salah satu framework yang digunakan untuk mengembangkan frontend yang dapat digunakan untuk membangun suatu aplikasi web modern dengan arsitektur Single Page Applications (SPA). Angular dikembangkan oleh perusahaan teknologi Google dan bersifat open source.
Framework ini sendiri telah mengalami perkembangan dari versi pertamanya yaitu
Angular 1 atau dikenal dengan AngularJS hingga Angular versi 10 yang merupakan versi terakhirnya. Angular versi 2 keatas merupakan pengembangan dari AngularJS yang benar-benar berbeda.
Perbedaan Angular versi 2 keatas ini terdapat pada penggunaan bahasa pemrogramannya yang dimana AngularJS menggunakan javascript sedangkan Angular menggunakan typescript. Typescript merupakan bahasa pemrograman berbasis javascript dengan menggunakan konsep Object-Oriented Programming (OOP) yang dikembangkan oleh tim Microsoft. Typescript dapat digunakan menyelesaikan masalah kompleksitas pembuatan aplikasi berskala besar menggunakan javascript. Hal tersebut didukung dengan adanya class, module, dan interface yang menambah fleksibilitas dalam mengambangan aplikasi menjadi lebih sederhana.(Johan, 2020).
Arsitektur Framework Angular terdiri dari:
1. Angular Component
Angular component merupakan block pembangunan pada projek angular yang memuat konten dari aplikasi/website. Component merupakan kelas yang berinteraksi dengan file html. Sebuah aplikasi yang menggunakan Angular pada umunya tersusun dari beberapa component. Component terdiri dari file html, css/stylesheet, dan typescript yang saling berhubungan. Logika pada sebuah component nantinya akan ditampung didalam file typescript yang menjadi kelas component.
2. Angular Module
Framework Angular bersifat modular dan memiliki sistem modularitas yang bernama ngModule. Module di angular berfungsi
untuk mengendalikan library untuk digunakan pada projek atau pada component tertentu. Module dapat menjadi tempat untuk mengelompokkan component, directive, pipe, dan service yang terkait dengan aplikasi tersebut. Module juga berfungsi sebagai penghubung antar component.
3. Template
Terdapat dua hal penting pada Angular yaitu input dan output. Input dari template berupa sebuah property dari komponen maupun fungsi yang dapat memberikan nilai balikan, sedangkan string yang nantinya masuk ke nilai attribute, property, maupun html ialah output. Bahasa valid yang digunakan oleh template angular ialah HTML. Template syntax pada angular dibagi menjadi 2 macam yaitu:
- Template Expression
Template Expression didefinisikan menggunakan tanda {{}} berfungsi untuk memberikan nilai pada sebuah property.
Contoh: img src=”{{image}}”
- Interpolasi
Memiliki tanda yang sama dengan Template Expression yaitu {{}} yang berfungsi untuk mengembalikan string pada tampilan.
Contoh: {{title}}
4. Directive
Directive berfungsi untuk menampilkan template berdasarkan nilai
yaitu:
- Component Directive
Berkaitan dengan penentuan template HTML yang nantinya akan diproses dan digunakan.
Contoh: saw.component.ts.
- Structural Directive
Berkaitan dengan manipulasi elemen html.
Contoh: ngIf dan ngFor.
- Attribute Directive
Directive yang berfungsi untuk mengubah tampilan pada elemen HTML.
5. Data Binding
Framework Angular memungkinkan user untuk menjadi perantara antara logika pada kelas component dengan elemen HTML. Data Binding dibagi menjadi 2 macam jenis yaitu:
- Event Binding
Event Binding yang berfungsi untuk mengontrol suatu event terhadap suatu elemen HTML.
Contoh: onClick($event.target.value) - Property Binding
Property Binding berfungsi untuk menjadi perantara data dari kelas component ke suatu elemen HTML.
Contoh: id=”{{myId}}”
6. Metadata
Mendekorasi suatu kelas sehingga dapat melakukan konfigurasi perilaku yang diharapkan dari suatu kelas tersebut merupakan fungsi dari metadata. Menginformasikan bahwa suatu komponen merupakan bagian dari komponennya yang memberikan fungsionalitas kelas komponen terkait seperti selector, templateUrl, styleUrls, dan sebagainya merupakan fungsi dari anotasi
@Component pada metadata.
7. Service dan Depedency Injection
Framework Angular menyediakan sebuah kelas khusus bernama service yang dapat berfungsi untuk mengolah data maupun logika yang tidak berkaitan dengan component tertentu serta dapat digunakan secara global.
Penggunaan dependency injection kelas service dapat dilakukan dengan mendeklarasikan service tersebut pada sebuah constructor kelas component.
8. Routing
Routing pada Framework Angular merupakan bagian dari ngModule yang menyediakan layanan yang memfasilitasi penentuan navigasi antar component dengan menyusun route berdasarkan path dan component yang berjalan pada path tersebut.
2.7 Firebase
Salah satu layanan dari Google yang memudahkan para app developer dalam mengembangkan aplikasi mereka ialah Firebase. Firebase termasuk kedalam kategori BAAS (Backend As A Service).(Guntoro, 2020).
Terdapat fitur pada Firebase yang dapat digunakan untuk pengembangan aplikasi Android, iOS, Web, dan lainnya. Beberapa fitur yang dapat digunakan untuk pembuatan aplikasi saat menggunakan Firebase:
1. Authentication
Authentication berfungsi untuk mengetahui identitas user sehingga nantinya aplikasi dapat menyimpan data user dengan aman di-cloud dan memberikan experience personal yang sama disetiap perangkat user.
2. Hosting
Firebase Hosting merupakan layanan hosting yang terkelola sepenuhnya untuk konten statis dan dinamsi, serta layanan mikro.
Layanan hosting didukung dengan adanya penyimpanan SSD dan CDN (jaringan penayangan konten) secara global.
3. Cloud Storage
Cloud Storage berfungsi untuk para pengembang aplikasi yang ingin menyimpan dan menampilkan konten buatan user seperti image dan video.
4. Realtime Database
Database yang dihost di-cloud. Data nantinya akan disimpan sebagai JSON lalu disinkronisasi secara realtime ke setiap client yang sudah terhubung.