BAB 2 TINJAUAN PUSTAKA Software...

30
6 BAB 2 TINJAUAN PUSTAKA 2.1 Software Engineering 2.1.1 Definisi Menurut Sommerville dalam bukunya yang berjudul “Software Engineering 9th Edition [2011:7] ”, Software engineering adalah disiplin teknik yang berkaitan dengan semua aspek produksi perangkat lunak dari tahap awal spesifikasi sistem sampai pemeliharaan sistem setelah sistem itu digunakan. Menurut Pressman dalam bukunya Software Engineering A Pracitioner's Approach 7th Edition (2010:39)”, Waterfall Model, kadang- kadang disebut klasik life cycle, menunjukkan sebuah sistematika yang berurutan untuk pengembangan perangkat lunak yang diawali dengan spesifikasi persyaratan yang dibutuhkan oleh customer dan kemajuan melalui perencanaan, pemodelan, konstruksi, dan penyebaran, yang berpuncak pada dukungan yang berkelanjutan dari perangkat lunak yang telah selesai (lihat gambar 2.1). Tahapan Waterfall Model : 1 Communication Pada tahap ini akan dilakukan analisa masalah yang ada dan tujuan yang harus dicapai. Selain itu dilakukan juga requirements gathering, dimana user akan diberikan kuisioner yang hasilnya akan dijadikan sebagai requirement. 2 Planning Pada tahap ini akan dilakukan estimasi mengenai kebutuhan apa saja yang diperlukan untuk membuat sistem. Selain itu, membuat jadwal proses pengerjaan.

Transcript of BAB 2 TINJAUAN PUSTAKA Software...

6

BAB 2

TINJAUAN PUSTAKA

2.1 Software Engineering

2.1.1 Definisi

Menurut Sommerville dalam bukunya yang berjudul “Software

Engineering 9th Edition [2011:7]”, Software engineering adalah disiplin teknik

yang berkaitan dengan semua aspek produksi perangkat lunak dari tahap awal

spesifikasi sistem sampai pemeliharaan sistem setelah sistem itu digunakan.

Menurut Pressman dalam bukunya “Software Engineering A

Pracitioner's Approach 7th Edition (2010:39)”, Waterfall Model, kadang-

kadang disebut klasik life cycle, menunjukkan sebuah sistematika yang

berurutan untuk pengembangan perangkat lunak yang diawali dengan

spesifikasi persyaratan yang dibutuhkan oleh customer dan kemajuan melalui

perencanaan, pemodelan, konstruksi, dan penyebaran, yang berpuncak pada

dukungan yang berkelanjutan dari perangkat lunak yang telah selesai (lihat

gambar 2.1).

Tahapan Waterfall Model :

1 Communication

Pada tahap ini akan dilakukan analisa masalah yang ada dan

tujuan yang harus dicapai. Selain itu dilakukan juga requirements

gathering, dimana user akan diberikan kuisioner yang hasilnya

akan dijadikan sebagai requirement.

2 Planning

Pada tahap ini akan dilakukan estimasi mengenai kebutuhan

apa saja yang diperlukan untuk membuat sistem. Selain itu,

membuat jadwal proses pengerjaan.

7

3. Modeling

Tahap ini perancang menerjemahkan kebutuhan sistem

kedalam representasi untuk menilai kualitas sebelum berlanjut ke

tahapan selanjutnya. Tahapan ini lebih difokuskan pada atribut

program, seperti struktur data, arsitektur perangkat lunak, dan

detail prosedur.

4. Construction

Tahap ini merupakan tahap dimana coding dimulai. Setelah itu

dilakukan pengetesan / pengujian terhadap sistem yang sudah

dibuat.

5. Deployment

Pada tahapan ini dilakukan pengiriman yang artinya program

yang telah selesai di sebar kepada masyarakat luas. Di tahap ini

juga dilakukan pemeliharaan, perbaikan, dan pengembangan agar

sistem tersebut tetap dapat berjalan secara optimal. Urutan proses

lebih jelasnya dapat dilihat pada gambar 2.1.

Gambar 2.1 Tahapan Waterfall Model

8

2.2 Database

Menurut Connoly & Begg (2005: 15), database merupakan suatu

koleksi dari data yang memiliki relasi atau hubungan. Database didesain untuk

memenuhi informasi yang dibutuhkan oleh suatu organisasi.

2.2.1 Database Management System (DBMS)

Menurut Conolly & Begg (2005: 16), DBMS merupakan sistem

software yang dapat memungkinkan user untuk mendefinisikan,

membuat, memelihara dan mengontrol akses terhadap database.

DBMS menyediakan fasilitas-fasilitas berikut ini :

1) Data Definition Language (DDL)

Memungkinkan user untuk menspesifikasi tipe data, struktur dan

constraint data yang akan disimpan ke dalam database.

2) Data Manipulation Language (DML)

Memungkinkan user untuk insert, update, delete dan menerima

data dari database. Menggunakan suatu query language. Query

language yang paling umum digunakan yaitu Structured Query

Language (SQL).

3) Menyediakan akses kontrol terhadap database. Misalnya :

1. Sistem Keamanan

Mencegah user yang tidak diberi kuasa untuk mengakses

database.

2. Integritas Sistem

Memelihara konsistensi data yang disimpan.

3. Sistem Kontrol Persetujuan

Memungkinkan shared access database.

Menurut Indrajani (2008: 12), komponen-komponen DBMS

dibedakan menjadi 5 yaitu (lihat gambar 2.2) :

1) Perangkat Keras (Hardware),

Contoh : Personal Computer (PC), notebook, jaringan komputer

dan lain-lain.

9

2) Perangkat Lunak (Software).

Contoh :

a) Software untuk sistem operasi komputer (Windows XP, Unix,

Linux dan lain-lain).

b) Software untuk database (Microsoft SQL 2005, Microsoft

SqlServer, Oracle, MySQL, dan lain-lain).

c) Software untuk pemrograman (Java.Net 2005, Visual Basic,

C, C++ dan lain-lain).

3) Data

Merupakan komponen terpenting karena data merupakan

penghubung antara komputer dengan manusia.

4) Prosedur / Procedurs

Merupakan instruksi dan aturan yang menentukan perancangan dan

penggunaan database dimana user sistem dan pengelola database

memerlukan dokumentasi ini untuk menjalankan dan menggunakan

sistem.

5) Orang / People

a) Administrator :

1. Data Administrator (DA)

Bertanggung jawab untuk manajemen sumber daya data

yang mencakup perancanaan database, pengembangan,

standar pemeliharaan, kebijakan, prosedur dan desain

database secara konseptual.

2. Database Administration (DBA)

Bertanggung jawab untuk realisasi fisik database yang

mencakup desain fisik database, implementasi, keamanan,

integritas pengendalian, backup dan restore, pemeliharaan

sistem operasional dan memastikan dapat dipakai dengan

baik.

b) Desainer :

1. Desainer database logika

Mengidentifikasikan data antara lain entity dan atribut, dan

memahami proses bisnisnya.

2. Desainer database fisik

10

Merealisasikan desain database, misalnya memetakan

desain database logika ke dalam tabel, pemilihan metode

akses agar kinerjanya baik dan merancang beberapa

ukuran keamanan yang diperlukan oleh data.

c) Application developer atau programmer

Mengembangkan program-program aplikasi yang diperlukan

dalam manajemen database.

d) End User

Semua orang yang terlibat langsung dalam penggunaan

database. Misalnya, pemilik sistem (enterprise), manager,

supervisor, operator pelanggan dan sebagainya.

Gambar 2.2 Lingkungan DBMS

2.3 Internet

Mengacu pada pendapat Ramadhan (2005:1), Internet adalah singkatan

dari Interconnected Network. Internet merupakan sebuah sistem komunikasi

yang mampu menghubungkan jaringan-jaringan koputer diseluruh dunia.

Berbagai jenis komputer dengan spesifikasi yang berbeda - beda dapat saling

berkomunikasi melalui internet. Beberapa bentuk jaringan yang berbeda - beda

dapat saling bertukar informasi dan data melalui internet menggunkan

seperangkat aturan yang disebut protokol TCP/IP.

2.4 Web Application

Dari sudut pandang teknis, web adalah lingkungan yang sangat

diprogram yang memungkinkan kustomisasi massal melalui penyebaran

langsung dari berbagai macam dan beragam aplikasi, untuk jutaan pengguna

global. Dua komponen penting dari sebuah situs web modern adalah browser

11

web yang fleksibel dan aplikasi web, keduanya tersedia untuk segala-galanya

tidak ada biaya (http://www.acunetix.com/websitesecurity/web-applications/).

2.4.1 Sistem Arsitektur

Sistem Arsitektur adalah disiplin generik untuk menangani objek (yang

ada atau yang akan dibuat) disebut "sistem", dengan cara yang mendukung

penalaran tentang sifat struktur benda tersebut

(http://www.lix.polytechnique.fr/~golden/systems_architecture.html).

Sistem Arsitektur adalah respon terhadap kesulitan konseptual dan praktis dari

deskripsi dan desain sistem yang kompleks

(http://www.lix.polytechnique.fr/~golden/systems_architecture.html).

2.4.2 Perangkat Lunak

Perangkat lunak adalah istilah umum untuk koleksi terorganisir data

komputer dan instruksi, sering dibagi menjadi dua kategori utama: perangkat

lunak sistem yang menyediakan fungsi dasar non-spesifik tugas komputer, dan

perangkat lunak aplikasi yang digunakan oleh pengguna untuk menyelesaikan

tugas tertentu (http://www.openprojects.org/software-definition.htm).

2.4.2.1 Language

2.4.2.1.1 HTML

Menurut Harris(2011:11-12), HTML adalah singkatan

dari Hyper Text Markup Language. HTML adalah bahasa

yang digunakan untuk mendeskripsikan struktur dari

sebuah halaman web. Sebuah halaman web terdiri dari

HTML Markup Tags dan teks biasa. HTML Markup Tags

adalah kumpulan teks special yang dikelilingi oleh kurung

siku (<>). HTML Tags tidak akan ditampilkan di halaman

web karena HTML Tags hanya berisi perintah kepada

browser. HTML Tags biasanya ada sepasang, yang diawal

12

berfungsi sebagai tags pembuka dan yang diakhir

berfungsi sebagai tags penutup, contohnya <body> dan

</body>. Pada contoh tersebut yang berfungsi sebagai tags

pembuka adalah <body>, sedangkan yang berfungsi

sebagai tags penutup adalah </body>. Tags penutup dapat

dengan mudah dibedakan karena ada tanda miringnya (/).

2.4.2.1.2 CSS

Menurut Harris(2011:11), CSS adalah singkatan dari

Cascading Style Sheets. CSS adalah sebuah bahasa yang

berfungsi untuk mengatur tampilan dari elemen-elemen

yang ada di dalam satu atau lebih halaman web. Ada tiga

cara untuk menyisipkan CSS ke dalam sebuah dokumen

HTML atau halaman web, yaitu dengan External Style,

Page level style dan Local Style External Style idealnya

digunakan saat kita ingin merubah tampilan pada banyak

halaman web. Dengan External Style, kita bisa merubah

seluruh tampilan website hanya dengan menambah,

menghapus, atau merubah isi dari sebuah File saja. File

tersebut harus disimpan dengan ekstensi .css. Untuk

menggunakan External Style, kita harus menggunakan tags

<link> yang disisipkan pada bagian head di halaman web

kita.

2.4.2.1.3 SQL

Menurut Harris(2011:637-638), SQL adalah singkatan

dari Structured Query Language. SQL adalah bahasa baku

yang digunakan untuk mengakses dan memanipulasi data

yang terdapat di dalam database. Dengan SQL kita bisa

menambah, merubah, dan menghapus data yang terdapat di

dalam database. SQL juga memungkinkan kita untuk

membuat database baru dan menghapus database yang

13

sudah ada. Umumnya SQL terdiri dari 3 komponen utama,

yaitu Data Defenition Language (DDL), Data Query

Language (DQL) dan Data Manipulation Language

(DML)

Data Defenition Language (DDL) dalah bagian dari

bahasa SQL yang membantu kita untuk membuat dan

memelihara database. Selain itu DDL juga bisa untuk

membangun database dan memasukkan data ke dalam

database. Ada 3 perintah umum yang digunakan dalam

DDL, yaitu CREATE, DROP, dan ALTER.

CREATE berfungsi untuk membuat tabel dan database.

Contoh penggunaan CREATE pada database:

CREATE DATABASE Pegawai;

CREATE TABLE Info_Pegawai{

ALTER TABLE Info_Pegawai

CHANGE Jenis_Kelamin Sex VARCHAR(1);

ALTER TABLE Info_Pegawai

ADD alamat VARCHAR(50);

ALTER TABLE Info_Pegawai

ADD tempat_lahir VARCHAR(50)

AFTER alamat;

ALTER TABLE Info_Pegawai

DROP alamat;

Data Query Language (DQL) adalah bagian dari

bahasa SQL yang membantu kita untuk menarik keluar

14

data yang ada di dalam database dan menampilkannya

agar bisa dibaca oleh pengguna di halaman web. Perintah

umum yang digunakan dalam DQL adalah SELECT.

Contoh penggunaan

SELECT pada database :

SELECT * FROM Info_Pegawai;

SELECT * FROM Info_Pegawai

WHERE Nama = ‘Adi Pratama’;

Data Manipulation Language (DML) Adalah bagian

dari bahasa SQL yang membantu kita untuk memanipulasi

data yang ada di dalam database (menambah, merubah,

dan menghapus data). Ada 3 perintah umum yang

digunakan dalam DML, yaitu INSERT, UPDATE, dan

DELETE.

INSERT berfungsi untuk memasukkan data ke dalam

sebuah tabel. Contoh penggunaan INSERT pada database :

INSERT INTO Info_Pegawai VALUES (‘1’, ‘Adi

Pratama’, ‘12345’, ‘P’, ‘Jakarta’, ‘Surabaya’);

UPDATE berfungsi untuk merubah data yang ada di dalam

sebuah tabel. Contoh penggunaan UPDATE pada database

:

UPDATE Info_Pegawai SET Nama = ‘Adi Pratama’

15

WHERE Nip = ‘1’;

DELETE berfungsi untuk menghapus data yang ada di

dalam sebuah tabel. Contoh penggunaan DELETE pada

database :

DELETE FROM Info_Pegawai WHERE Nip = ‘1’;

2.4.2.1.4 PHP

PHP seperti yang dikenal saat ini sebenarnya adalah

penerus produk bernama PHP / FI . Dibuat pada tahun

1994 oleh Rasmus Lerdorf, inkarnasi pertama dari PHP

adalah satu set sederhana Common Gateway Interface

(CGI) binari yang ditulis dalam bahasa pemrograman C.

Awalnya digunakan untuk melacak kunjungan ke resume

online, ia bernama suite script "Personal Home Page

Tools, "lebih sering dirujuk sebagai" PHP Tools". Seiring

waktu, lebih banyak fungsi yang diinginkan, dan Rasmus

menulis ulang PHP Tools, menghasilkan implementasi

yang jauh lebih besar dan lebih kaya. Model baru ini

mampu berinteraksi dengan database dan banyak lagi,

memberikan kerangka di mana pengguna dapat

mengembangkan aplikasi web dinamis sederhana seperti

guest book. Pada bulan Juni 1995, Rasmus merilis kode

sumber untuk PHP Tools untuk masyarakat, yang

memungkinkan pengembang untuk menggunakannya

dengan yang mereka lihat cocok. Hal ini juga diizinkan

dan mendorong pengguna untuk memberikan perbaikan

pada bug dalam kode, dan secara umum meningkatkan

kinerjanya

(http://www.php.net/manual/en/history.php.php).

16

2.4.2.1.4 Codeigniter

CodeIgniter adalah sebuah Application Development

Framework - toolkit - bagi orang-orang yang membangun

situs web menggunakan PHP. Tujuannya adalah untuk

memungkinkan untuk mengembangkan proyek-proyek

jauh lebih cepat dari yang bisa dibandingkan sedang

menulis kode dari awal, dengan menyediakan satu set

perpustakaan yang kaya untuk tugas-tugas yang biasa

diperlukan, serta antarmuka yang sederhana dan struktur

logis untuk mengakses perpustakaan tersebut. Codeigniter

memungkinkan untuk fokus pada proyek yang ada dengan

meminimalkan jumlah kode yang dibutuhkan untuk tugas

yang diberikan (http://www.phpframeworks.com/php-

frameworks/index.php?id=9).

Tak lama setelah pemrograman ditemukan ,

seseorang melihat bahwa pemrograman itu melibatkan

banyak operasi berulang-ulang . Dan tak lama setelah itu,

seseorang bernama Alan Turing di Bletchley Park

memutuskan untuk memodularisasi kode, sehingga hanya

harus menulis potongan tertentu sekali, dan setelah itu

dapat digunakan kembali. Program PHP digunakan untuk

menulis potongan yang terpisah dari kode dalam fungsi,

dan kemudian menyimpan fungsi-fungsi tersebut di dalam

file. Pada satu tingkat, sebuah framework hanya : potongan

– potongan kode, disimpan dalam file terpisah, yang

menyederhanakan coding yang operasinya berulang

(Upton, 2007: 12).

2.4.2.1.5 Sistem Operasi

Sebuah sistem operasi (kadang-kadang disingkat "OS")

adalah program yang, setelah awalnya dimuat ke komputer

dengan program boot, mengelola semua program lain di

17

komputer. Program lainnya disebut aplikasi atau program

aplikasi. Program aplikasi menggunakan sistem operasi

dengan membuat permintaan untuk layanan melalui

antarmuka program aplikasi didefinisikan (API). Selain itu,

pengguna dapat berinteraksi secara langsung dengan

sistem operasi melalui antarmuka pengguna seperti bahasa

perintah atau antarmuka pengguna grafis

(GUI)(http://searchciomidmarket.techtarget.com/definition

/operating-system).

2.4.2.2 Platforms

Hampir setiap aplikasi saat ini bergantung pada

perangkat lunak lain: sistem operasi, perangkat lunak

manajemen database, bahkan perangkat lunak yang berjalan di

awan publik. Apapun yang dilakukan dan di mana pun itu

berjalan, semua perangkat lunak ini bersama-sama terdiri dari

platform aplikasi (Chappell, 2011:2).

Dalam komputer, platform adalah sistem komputer

yang mendasari program aplikasi dapat berjalan. Pada

komputer pribadi, Windows 2000 dan Mac OS X adalah

contoh dua platform yang berbeda. Pada server perusahaan

atau mainframe, IBM S/390 adalah contoh dari platform

(http://searchservervirtualization.techtarget.com/definition/plat

form).

2.4.2.3 Software

2.4.2.3.1 Notepad++

Notepad++ adalah source code editor gratis dan

Notepad++ mendukung beberapa bahasa pemrograman.

18

Berjalan di lingkungan MS Windows, penggunaannya

diatur oleh GPL License.

Berdasarkan pada komponen editor yang kuat Scintilla,

Notepad++ ditulis dalam C++ dan murni menggunakan

Win32 API dan STL yang menjamin kecepatan eksekusi

lebih tinggi dan ukuran program yang lebih kecil. Dengan

mengoptimalkan sebagai rutinitas sebanyak mungkin tanpa

kehilangan keramahan pengguna, Notepad++ berusaha

untuk mengurangi emisi karbon dioksida dunia. Bila

menggunakan daya CPU yang sedikit, PC dapat bekerja

lebih ringan dan mengurangi konsumsi daya, sehingg

menghasilkan lingkungan yang lebih hijau. (http://notepad-

plus-plus.org/)

2.4.2.3.2 Microsoft Visio

Menurut Helmers dalam bukunya yang berjudul

“Microsoft Visio 2013 Step by Step [2013:3]”, Microsoft

Visio adalah aplikasi utama untuk membuat semua

diagram bisnis, mulai dari flowchart, network diagram,

dan organization charts, untuk membuat denah dan

brainstorming diagram.

Microsoft 2013 melanjutkan kegunaan dari kebiasaan

user interface, atau dikenal sebagai keterkaitan, hal itu

telah diperkenalkan pada Visio 2010.

Terlepas dari apa yang mungkin terpikirkan dari

hubungannya dengan aplikasi Microsoft Office lainnya,

dengan Visio rasanya seperti di rumah, terutama karena

tujuan dari keterkaitan user interface gaya presentasi

visual dari kelompok yang terkait fungsi, dan Visio

termasuk didalamnya, pertama dan terutama, sebuah

produk visual. ()

19

2.4.2.3.3 Apache

Apache HTTP Server adalah server HTTP open source

untuk sistem operasi modern termasuk UNIX, Microsoft

Windows, Mac OS / X dan Netware. Tujuan dari proyek ini

adalah untuk menyediakan aman, efisien dan dapat diperluas

server yang menyediakan layanan HTTP mengamati standar

HTTP saat ini. Apache telah menjadi web server yang paling

populer di Internet sejak April 1996.

(http://projects.apache.org/projects/http_server.html)

2.4.2.3.4 XAMPP

XAMPP adalah perangkat lunak untuk membangun

sebuah instalasi yang mudah distribusi bagi pengembang

untuk masuk ke dunia Apache. Untuk membuatnya mudah

untuk pengembang XAMPP dikonfigurasi dengan semua fitur

diaktifkan. (http://www.apachefriends.org/en/xampp.html)

2.5 Human Interface

Mengacu kepada Shneiderman (2010 : 88), delapan aturan emas dalam

perancangan antarmuka adalah :

1. Mempertahankan Konsistensi

Urutan tindakan yang konsisten dibutuhkan dalam situasi yang sama.

Selain itu konsistensi juga diperlukan dalam penggunaan istilah-

istilah yang serupa, menu-menu, layar bantuan, warna, rancangan,

huruf kapital, jenis huruf dan sebagainya.

2. Melayani Universal Usability

Mengenali kebutuhan orang yang berbeda-beda dan merancang

untuk fleksibilitas serta memfasilitasi transformasi dari konten.

Perbedaan pemula-ahli, rentang umur, ketidakmampuan dan setiap

20

keragaman teknologi memperkaya spektrum kebutuhan yang akan

digunakan dalam perancangan.

3. Memberikan umpan balik yang informatif

Pada setiap actioni yang dilakukan user, sistem harus memberikan

umpan balik. Respon dapat disederhanakan untuk aksi yang kecil

dan sering dilakukan, begitu juga sebaliknya untuk action yang besar

dan jarang dilakukan, respon sebaiknya lebih substansial.

4. Perancangan dialog untuk menunjukkan penutupan / akhir

Urutan aksi seharusnya diatur menjadi kelompok dengan sebuah

awalan, pertengahan dan akhir. Umpan balik informatif pada saat

penyelesaian sekelompok aksi memberikan kepuasan terhadap user

terhadap penyelesaian, perasaan lega dan sinyal untuk berhenti

memikirkan kemungkinan-kemungkinan dari pikiran mereka dan

sebuah sinyal untuk mempersiapkan sekelompok aksi berikutnya.

5. Pencegahan Kesalahan

Perancangan sistem sedapat mungkin harus memungkinka user

terhindar dari kesalahan yang serius. Interface (antarmuka)

sebaiknya mendeteksi kesalahan dan memberikan instruksi yang

sederhana, konstruktif dan spesifik untuk pemulihan jika user

membuat kesalahan. Action yang menyebabkan terjadinya kesalahan

seharusnya tidak mengubah keadaan dari sistem atau antarmuka

dapat memberikan instruksi untuk mengembalikan keadaan sistem.

6. Mengizinkan pembalikkan aksi yang mudah

Sedapat mungkin, aksi dapat dibatalkan atau di balikkan. Fitur ini

dapat mengurangi rasa khawatir yang dialami user karena segala

kesalahan dapat dibalikkan (undo) serta mendorong eksplorasi dari

fitur yang belum diketahui.

7. Mendukung pusat kendali internal

User yang berpengalaman menginginkan suatu perasaan bahwa

mereka yang memiliki kendali dari antarmuka, dan antarmuka

menanggapi segala aksi yang dilakukan oleh user.

8. Mengurangi beban ingatan jangka pendek

Keterbatasan otak manusia dalam menangkap informasi, khususnya

dalam jangka pendek membututuhkan sistem yang menampilkan

21

informasi secara sederhana, konsolidasi penampilan halaman yang

lebih dari satu atau banyak, pengurangan frekuensi pergerakan

window dan pelatihan yang cukup dialokasikan untuk kode,

mnemonic dan urutan aksi.

2.6 Kepegawaian

Belakangan ini mungkin kita semua pernah mendengar kata

administrasi atau manajemen kepegawaian dalam kehidupan sehari-hari. Akan

tetapi kebanyakan dari kita tidak tahu akan arti dan makna administrasi

kepegawaian tersebut sehingga tidak tahu fungsi dari administrasi kepegawaian

itu sendiri. Padahal hal ini sangat penting dalam mengelola suatu organisasi

khususnya perusahaan, sehingga organisasi tersebut bisa sukses.

Tidak seperti administrasi perkantoran, perbekalan, pemasaran, atau

yang lainnya, manajemen/administrasi kepegawaian merupaka cabang ilmu

administrasi yang paling menentukan bagi kehidupan suatu organisasi. Sebab,

obyek material administasi kepegawaian pada hakikatnya adalah manusia yang

sekaligus juga obyek atau tujuan kegiatan dari organisasi atau perusahaan itu

sendiri.

Manajemen kepegawaian atau Administrasi kepegawaian ini mencakup

banyak hal penting, mulai dari proses penerimaan tenaga kerja, pembinaan

kerja, produktivitas kerja, pemutusan hubungan kerja sampai yang terakhir

yaitu pensiun. Kerena sangat kompleknya cakupan dari administrasi

kepegawaian ini maka di atas telah disebutkan bahwa administrasi

kepegawaian merupaka cabang ilmu administrasi yang paling menentukan bagi

kehidupan suatu organisasi.

2.7 Big Data Challenges

Entitas ekonomi tidak hanya telah dikembangkan selama bertahun-

tahun namun metode yang lebih kompleks memungkinkan mereka untuk

melihat evolusi pasar, posisi mereka di pasar, efisiensi dalam menawarkan

jasa dan / atau produk mereka dll. Untuk mampu mencapai itu, volume data

yang besar diperlukan dalam rangka untuk menampungnya sehingga dapat

22

menghasilkan wawasan berharga. Setiap tahun data yang dikirimkan melalui

internet tumbuh secara eksponensial. Di akhir tahun 2016, Cisco

memperkirakan bahwa lalu lintas data global tahunan akan mencapai 6,6

zettabytes. Tantangannya tidak hanya untuk "mempercepat" koneksi internet,

teapi juga untuk mengembangkan sistem perangkat lunak yang akan mampu

menangani permintaan data yang besar dalam waktu yang optimal (Adrian,

2013 : 1).

Membangun solusi yang layak untuk data yang besar dan kompleks

merupakan sebuah tantangan perusahaan di bidang ini (Database/Big Data)

untuk terus belajar dan menerapkan cara-cara baru untuk mengatasinya. Salah

satu masalah terbesar tentang Big Data adalah tingginya biaya infrastruktur.

Perangkat keras peralatan ini sangat mahal untuk sebagian besar perusahaan,

bahkan jika solusi tantangan Cloud 40 Big Data tersedia. Setiap sistem Big

data membutuhkan kekuatan pemrosesan yang besar dan stabil dan konfigurasi

jaringan yang kompleks yang dibuat oleh ahlinya. Selain hardware

infrastruktur, solusi perangkat lunak cenderung memiliki biaya yang tinggi jika

penerima tidak memilih untuk menggunakan perangkat lunak open source.

Bahkan jika mereka memilih open source, untuk mengkonfigurasinya masih

tetap dibutuhkan spesialis yang memiliki keterampilan untuk melakukan itu.

Kelemahan dari open source adalah bahwa pemeliharaan dan dukungan tidak

disediakan seperti kasus perangkat lunak berbayar. Jadi, semua itu yang

diperlukan untuk mempertahankan solusi Big Data agar dapat bekerja dengan

baik, dalam banyak kasus, di luar tim pemeliharaan. Solusi perangkat lunak

dibatasi oleh kemampuan hardware. Hardware hanya bisa secepat teknologi

yang tersedia sekarang. Sebuah solusi perangkat lunak hanya mengirim tugas

yang sesuai dengan yang di pesan untuk diproses. Arsitektur perangkat lunak

mencoba untuk meningkatkan kurangnya kecepatan pemrosesan dengan

memilih dan memesan permintaan, sehingga proses dapat dioptimalkan untuk

mencapai kinerja yang terbaik. Untuk mensortir data, sehingga Informasi yang

berharga akan diekstrak untuk digunakan lebih lanjut, dibutuhkan keterampilan

analisis manusia. Sebuah program komputer hanya dapat melakukan apa yang

diprogram untuk melakukan, tidak bisa melihat daerah abu-abu dan tidak bisa

belajar atau beradaptasi dengan informasi jenis baru kecuali diprogram untuk

23

menanganinya. Oleh karena itu, kemampuan manusia digunakan untuk

mengurutkan data dengan seperangkat alat yang mempercepat proses. Semua

ini hanya akan meningkatkan waktu yang hasilnya akan ditampilkan dan begitu

juga dengan analisis hasil, dalam rangka untuk mengevaluasi posisi saat ini

atau untuk memprediksi akankah menurunkan penerima manfaat waktu untuk

mengambil langkah-langkah atau rencana dengan baik (Adrian, 2013 : 9).

2.8 A Social Theory of Internet Uses Based on Consumption Scale and Linkage

Needs

Kami berkontribusi pada keilmuan pada ketidakadilan digital dan

kegunaan Internet dengan memeriksa hubungan yang tidak pernah dipelajari

antara kelas sosial dan praktek internet, khususnya menjelaskan mengapa

perbedaan masih ada dan digunakan dan akan terus ada karena perbedaan di

klasemen sosial individu. Kami memajukan teori sosial dari penggunaan

Internet yang mengintegrasikan konsep skala kebutuhan konsumsi dan

keterkaitan dengan teori Bourdieu dan dengan metode interdependensi

analisis. Penjelasan mengenai perbedaan pola dalam penggunaan internet

dengan melakukan observasi poin ke alasan struktural berdasarkan teknologi,

sosial, dan informasi keterkaitan kebutuhan yang berkaitan dengan status

sosial individu. Dengan kata lain memiliki akses internet dan kemampuan

teknologi saja tidak cukup. Selama perbedaan kebutuhan hubungan sosial dan

informasi bertahan karena perbedaan status sosial, kesenjangan digital akan

tetap. Akhirnya. teori sosial internet digunakan dan diuraikan disini agar

mampu menjelaskan temuan - temuan empiris dan juga jawaban akan

masalah-masalah sosial kritis yang ada pada zaman ini, seperti apakah

kesenjangan digital akan menjadi lebih kecil atau lebih luas di masa depan

(Sintas, Filimon, Alvarez, 2012 : 17).

24

2.9 Pemodelan Arsitektur Teknologi Informasi Berbasis Cloud Computing

untuk Institusi Perguruan Tinggi di Indonesia

Teknologi cloud computing merupakan teknologi dimana sebagian

besar proses dan komputasi terletak di jaringan internet sehingga

memungkinkan pengguna dapat mengakses layanan yang diperlukan dari

manapun dan kapan pun. Menurut data dari Direktorat Jenderal Pendidikan

Tinggi (DIKTI), saat ini di Indonesia terdapat lebih dari 3.000 perguruan tinggi

baik swasta maupun negeri. Secara umum, seluruh perguruan tinggi tersebut

memiliki kesamaan proses bisnis dan kebutuhan sistem informasi. Namun

dalam kenyataannya setiap perguruan tinggi membangun arsitektur dan

kebutuhan sistem informasinya secara sendiri-sendiri. Hal tersebut

menimbulkan beberapa permasalahan yaitu terjadi redundancy sistem

informasi, tidak ada standardisasi struktur data, tidak terjadi konsolidasi data

antara sistem informasi yang satu dengan yang lainnya dan inconsistency

pengembangan sistem informasi. Beberapa permasalahan tersebut menjadi

dasar pemikiran untuk merancang suatu model arsitektur teknologi informasi

menggunakan konsep cloud computing. Berdasarkan hasil analisis terhadap

kondisi perguruan tinggi di Indonesia dan menggunakan framework yang telah

dipilih, dihasilkan suatu model arsitektur teknologi informasi berbasis cloud

computing yang sesuai dengan kondisi dan kebutuhan perguruan tinggi di

Indonesia. Arsitektur teknologi informasi tersebut terdiri dari arsitektur bisnis,

arsitektur data, arsitektur aplikasi dan arsitektur teknologi. Penelitian

diharapkan dapat memberikan kontribusi bagi perguruan tinggi di Indonesia

terutama sebagai acuan dalam merancang arsitektur teknologi informasi

(Solichin, Hasibuan, 2012 : 1).

2.10 UML

2.10.1 Definisi

Menurut Whitten dan Bentley dalam bukunya yang berjudul “System

Analysis and Design Methods 7th [2007:371]”, Unified Modeling

Language (UML) adalah pemodelan yang digunakan untuk

menggambarkan sebuah sistem piranti lunak yang terkait dengan objek.

25

2.10.2 Use Case Diagram

Menurut Whitten dan Bentley dalam bukunya yang berjudul

“System Analysis and Design Methods 7th [2007:248]”, Use Case

Diagram adalah sebuah diagram yang menggambarkan interaksi antara

sistem, external system, dan pengguna. Diagram ini memberikan

informasi mengenai siapa saja yang akan menggunakan sistem tersebut

dan bagaimana cara menggunakannya.

Gambar 2.3 Contoh Use Case Diagram

Hubungan-hubungan pada use case diagram:

a. Asosiasi

Asosiasi menggambarkan adanya interaksi antara use case

dengan aktor. Asosiasi digambarkan dengan simbol garis

yang bisa mempunyai anak panah atau tanpa anak panah.

Asosiasi dengan anak panah yang berasal dari aktor

26

menunjuk ke use case menandakan bahwa aktor inisiator

use case tersebut. Asosiasi tanpa anak panah menandakan

interaksi antara use case dengan aktor penerima.

Gambar 2.4 Contoh Asosiasi pada Use Case Diagram

b. Extends

Extends digunakan ketika fungsi use case terdiri dari

beberapa tahap yang sulit sehingga mudah dimengerti.

Extends akan menghasilkan use case baru yang mewakili

fungsi dari use case awal.

Gambar 2.5 Contoh Extends pada Use Case Diagram

27

c. Includes/uses

Includes digunakan ketika use case melakukan beberapa

langkah yang sama yang menjadi sebuah entitas baru

dengan sebutan use case abstrak sehingga mengurangi

redundansi dalam use case diagram.

Gambar 2.6 Contoh Includes pada Use Case Diagram

d. Depends on

Depends On digunakan untuk menggambarkan hubungan

use case dimana suatu use case tidak dapat dilakukan

apabila use case yang lain belum dilakukan.

Gambar 2.7 Contoh Depends on pada Use Case Diagram

28

e. Inheritance

Inheritance digunakan untuk menggambarkan hubungan

dua atau lebih aktor dalam satu sistem dengan sebuah aktor

abstrak untuk menyederhanakan diagram karena aktor

abstrak memiliki langkah yang dimiliki aktor lain.

Gambar 2.8 Contoh Inheritance Pada Use Case Diagram

2.10.4 Activity Diagram

Menurut Whitten dan Bentley dalam bukunya yang berjudul “System

Analysis and Design Methods 7th [2007:382]”, Activity diagram adalah

sebuah diagram yang menggambarkan aliran yang berurutan process use case

atau bussinness process. Selain itu, activity diagram dapat juga digunakan

untuk memodelkan logika dengan sistem.

29

Berikut adalah notasi-notasi pada Activity Diagram:

30

Gambar 2.9 Notasi pada Activity Diagram

Gambar 2.10 Contoh Activity Diagram

31

2.10.5 Sequnce Diagram

Menurut Whitten dan Bentley dalam bukunya yang berjudul “System

Analysis and Design Methods 7th [2007:392]”, Sequence diagram adalah

sebuah diagram menggambarkan interaksi antara setiap objek melalui pesan

dalam eksekusi dari sebuah use case atau operasi. Sistem pada sequence

diagram membantu untuk mengidentifikasi pesan-pesan tingkat tinggi yang

masuk dan keluar dari sistem. Kemudian pesan-pesan tersebut akan menjadi

tanggung jawab dari setiap objek yang akan memenuhi tanggung jawab dan

berkomunikasi dengan objek lainnya.

Gambar 2.11 Sequence diagram

Beberapa notasi yang terdapat pada sistem sequence diagram adalah:

a. Actor, berupa aktor yang memulai use case, ditunjukkan dengan

simbol use case aktor.

b. System, berupa kotak yang menunjukkan bahwa sistem sedang

berjalan, ditandai dengan notasi titik dua (:) pada awal nama

sistem.

c. Lifelines, berupa garis menurun yang putus-putus dari simbol

aktor dan sistem.

32

d. Activation bars, berupa balok yang terletak pada lifelines, yang

menunjukkan periode waktu ketika terjadi interaksi secara aktif.

e. Input messages, berupa anak panah mendatar dari aktor menuju

sistem yang menunjukkan sistem pesan masuk ke sistem, di mana

2.10.6 Class Diagram

Menurut Whitten dan Bentley dalam bukunya yang berjudul “System

Analysis and Design Methods 7th [2007:248]”, Class Diagram adalah

sebuah diagram yang menggambarkan tentang objek-objek bernama kelas

yang menyusun suatu sistem dan juga hubungan antar kelas-kelas tersebut

Gambar 2.12 Class Diagram

Terdapat tiga bagian pada suatu class, yakni :

1. Nama kelas

Nama kelas terdapat di bagian pertama class yang

merepresentasikan nama dari class tersebut.

2. Atribut kelas

Atribut kelas terdapat di bagian tengah class yang

merepresentasikan tipe data yang dimiliki.

33

3. Operasi

Operasi terdapat di bagian bawah class yang

merepresentasikan kegiatan-kegiatan yang akan dilakukan

oleh class tersebut.

Adapun notasi-notasi yang terdapat pada class diagram,

seperti :

1. Visibility

Visibility digunakan untuk menentukan apakah atribut atau

operasi dari sebuah kelas dapat digunakan oleh kelas yang

lain.

Visibility Simbol Deskripsi

Private - Hanya dapat hanya dapat digunakan

oleh kelas yang mendefinisikan

Protected # Dapat digunakan oleh kelas yang

mendefinisikannya dan turunan dari

kelas tersebut

Public + Dapat digunakan oleh semua kelas

yang berhubungan

Gambar 2.13 Deskripsi Simbol Visibility

2. Multiplicity

Multiplicity digunakan untuk menentukan banyaknya kelas

yang berhubungan dengan kelas yang dimaksud.

34

Multiplicity Deskripsi

0…1 Nol atau satu

1 Satu

0…* Nol atau lebih

1…* Satu atau lebih

Gambar 2.14 Deskripsi Simbol Multiplicity

3. Generalisasi

Generalisasi digunakan untuk merepresentasikan

inheritance dalam class diagram dengan menggambarkan

hubungannya melalui superclass dan subclass. Superclass

adalah bentuk umum dari sebuah subclass, dan subclass

adalah bentuk spesifik dari sebuah superclass. Subclass

memiliki semua properti yang dimiliki oleh superclass.

Gambar 2.15 Contoh Notasi Pada Class Diagram

35

4. Asosiasi

Asosiasi digunakan untuk menggambarkan adanya

hubungan antar kelas dengan memberikan keterangan

relasi dan multiplicity. Hubungan asosiasi dibedakan

menjadi dua jenis, yaitu:

a. Uni-directional

Hubungan Uni-directional merupakan hubungan

dimana dua kelas saling terhubung tetapi hanya salah

satu yang memiliki peran dalam hubungan tesebut.

b. Bi-directional

Hubungan Bi-directional merupakan hubungan

dimana dua kelas saling terhubung dan keduanya

memiliki peran dalam hubungan tesebut.

5. Agregasi

Agregasi digunakan untuk menggambarkan hubungan

dimana sebuah kelas merupakan bagian dari kelas lain,

tetapi bukan merepresentasikan inheritance.

6. Komposisi

Komposisi merupakan bentuk lain dari agregasi tetapi

hubungan antar kelas komposisi lebih erat dibandingkan

agregasi karena kelas A yang merupakan bagian dari kelas

B tidak akan ada jika kelas B tidak ada.