8
BAB II DASAR TEORI 2.1 Konsep Dasar Sistem Informasi 2.1.1 Definisi Sistem Sistem adalah setiap kesatuan secara konseptual atau fisik yang terdiri dari bagianbagian yang saling mempengaruhi [L.Ackof, 1997] 2.1.2 Definisi Informasi Pengertian informasi yaitu, data yang telah di proses ke dalam bentuk yang mempunyai arti bagi penerima dan memiliki nilai nyata yang di butuhkan untuk proses pengembilan keputusan saat ini maupun saat mendatang [Gordon B. Davis, 1995] 2.1.3 Definisi Sistem Informasi Berdasarkan definisi sistem dan informasi di atas, sistem informasi merupakan data secara konseptual atau fisik dari bagian yang saling mempengaruhi yang telah di proses ke dalam bentuk yang memiliki arti bagi penerima dan memiliki nilai nyata yang di butuhkan untuk proses pengambilan keputusan saat ini ataupun saat mendatang. Sistem informasi memiliki komponen-komponen pendukung, diantaranya adalah: 1.
Hardware, berupa komputer, laptop, atau perangkat networking.
2.
Software, berupa perintah komputer (sintax) untuk menjalankan sistem.
3.
Brainware, pengguna sistem informasi.
4.
Data, merupakan bahan dasar untuk diproses menjadi informasi.
9
Output
Input Data
Proses
Informasi
Kontrol
Gambar 2.1: Alur Data dalam Sistem Informasi Berikut ini merupakan penjelasan dari Gambar 2.1 di atas: a) Data, bahan baku yang akan diproses. b) Proses, menggambarkan data diproses untuk menghasilkan suatu informasi yang berguna bagi pihak tertentu. c) Informasi, merupakan hasil dari data yang sudah diproses biasanya berbentuk laporan. d) Kontrol, sebuah alat kendali untuk memastikan bahwa sistem informasi berjalan dengan baik.
2.2 Siklus Sistem Informasi 2.2.1 Perencanaan Sistem Informasi Perencanaan sistem informasi dibutuhkan untuk menentukan bentuk sistem yang akan dikembangkan, sasaran yang ingin dicapai, waktu pelaksanaan, mempertimbangkan dana yang dibutuhkan. Perencanaan sistem ini juga mencakup perkiraan dari kebutuhan–kebutuhan fisik, tenaga kerja serta dana yang dibutuhkan. Sebelum mambangun sebuah sistem, sebaiknya perlu
dilakukan
analisa
kelayakan
dari sistem tersebut.
Kelayakan yang ditinjau
menyangkut kelayakan operasional, kelayakan teknis, kelayakan ekonomis kelayakan jadwal serta kelayakan hukum.
10
a) Kelayakan Operasional, menilai apakah sistem yang akan dibangun dapat dijalankan jika dikaitkan dengan sumberdaya manusia yang ada, metode pelatihan, pelayanan, perawatan serta efisiensi dan efektivitas dari sistem tersebut. b) Kelayakan Teknis, menilai apakah perangkat keras dan perangkat lunak yang akan dikembangkan tersebut tersedia serta menyangkut hal–hal teknis yang lainnya. c) Kelayakan Ekonomis, menyangkut analisa biaya pembuatan atau pengembangan sistem yang baru serta biaya untuk menjalankan sistem tersebut, juga menyangkut keuntungan materil dari sistem tersebut. d) Kelayakan Jadwal,
menyangkut waktu yang diperlukan untuk membangun atau
mengembangkan sistem yang baru. e) Kelayakan Hukum, menyangkut apakah sistem yang baru tidak bertentangan dengan hukum dan undang–undang serta peraturan–peraturan yang berlaku di wilayah hukum indonesia. 2.2.2 Pengembangan Sistem Informasi Pengembangan
sistem informasi berarti merancang
dan
menerapkan
sistem
informasi dalam sebuah objek penelitian atau memperbarui sistem informasi yang sudah ada. Untuk mengembangkan sistem informasi terdapat beberapa model pengembangan perangkat lunak namun yang akan kita bahas diantaranya adalah waterfall, prototype, dan spiral. 1.
Model pengembangan waterfall Model pengembangan waterfall dimulai dari proses engineering dan diakhiri pada tahapan maintenance. a. Engineering, merupakan perencanaan dari proses pengembangan.
11
b. System Analyst, tahap ini menentukan bentuk sistem, kebutuhan sistem, serta sasaran yang harus dicapai. Selanjutnya adalah c. Design, pada tahap ini terjadi proses perancangan sistem seperti user interface dan sebagainya. d. Coding, penterjemahan bahasa manusia menjadi bahasa pemrograman yang dapat dimengerti komputer agar tercipta sistem yang diharapkan. e. Impementasi, merupakan implementasi dari model pengembangan Waterfall. f.
Testing, pengujian sistem informasi yang telah dibangun.
g. Maintenance, proses perawatan sistem yang telah dibangun. Jika pada tahap ini sistem
belum
memenuhi target
maka
dapat
kembali ke
tahapan-tahapan
sebelumnya. Engineering Analyst
Design
Coding
Implementation
Testing
Maintenance
Gambar 2.2: Model Pengembangan Waterfall
Model pengembangan Waterfall cocok digunakan untuk membuat sistem baru (pada perusahaan yang belum memiliki sistem). Salah satu kelebihannya adalah
12
mampu
membuat
sistem
dengan
tepat
pada
sasaran
dan
harapan.
Namun
membutuhkan waktu yang lama untuk implementasinya.
2.
Model pengembangan prototyping Prototyping merupakan salah satu metode pengembangan perangat lunak yang banyak digunakan. Dengan metode prototyping ini pengembang dan pelanggan dapat saling berinteraksi selama proses pembuatan sistem. Pada umumnya pelanggan hanya mendefinisikan secara umum apa yang dikehendakinya tanpa menyebutkan secara detail output apa saja yang dibutuhkan, pemrosesan dan data-data apa saja yang dibutuhkan. Sebaliknya disisi pengembang kurang memperhatikan efesiensi algoritma, kemampuan
sistem operasi dan interface yang menghubungkan manusia dan
komputer. Untuk mengatasi ketidakserasian antara pelanggan dan pengembang , maka harus dibutuhakan kerjasama yanga baik diantara keduanya sehingga pengembang akan mengetahui
dengan
benar
apa
yang
diinginkan
pelanggan
dengan
tidak
mengesampingkan segi-segi teknis dan pelanggan akan mengetahui proses-proses dalm menyelasaikan sistem yang diinginkan. Dengan demikian akan menghasilkan sistem sesuai dengan jadwal waktu penyelesaian yang telah ditentukan.
13
Tahapan-tahapan dalam Prototyping adalah sebagai berikut:
System Requirement Prototyping
Evaluating
Repairing Gambar 2.3 Metode Pengembangan Prototyping Berikut ini adalah tahapan-tahapan dalam metode pengmebangan perangkat lunak prototyping: 1. Pengumpulan kebutuhan Pelanggan
dan
pengembang
bersama-sama
mendefinisikan
format
seluruh
perangkat lunak, mengidentifikasikan semua kebutuhan, dan garis besar sistem yang akan dibuat. 2. Membangun prototyping Membangun prototype dengan membuat perancangan sementara yang berfokus pada penyajian kepada pelanggan. 3. Evaluasi protoptyping Evaluasi ini dilakukan oleh pelanggan apakah prototyping yang sudah dibangun sudah sesuai dengan keinginann pelanggan. Jika belum sesuai maka langkah 4 (perbaikan) akan diambil.
14
4. Perbaikan Pada tahap ini aplikasi diperbaiki sesuai dengan hasil dari evaluasi setelah selesai diperbaiki, aplikasi kembali di evaluasi lalu diperbaiki lagi selanjutnya dievaluasi lagi hingga aplikasi sesuai dengan tujuan.
3.
Model pengembangan spiral Model spiral adalah penggabungan dari model watefall dan prototype. Tahapantahapan model spiral diantaranya: a.
Customer communication Tahap ini adalah awal dari langkah kerja Spiral. Tahap ini berfungsi untuk mempertemukan
Customer
(user)
untuk
menentukan
dan
menyampaikan
kebutuhan dan keinginan customer kepada software engineer. b.
Planning Setelah custommer communication tahap berikutnya adalah Planning. Tahap ini berfungsi untuk merencanakan proses pengerjaan proyek. Process start dan jadwal pengerjaan software dapat ditentukan dan direncanakan pada tahap ini.
c.
Risk analyst Tahap berikutnya adalah risk analyst. Pada tahap ini didefinisikan segala resiko yang mungkin terjadi dalam proses pengerjaan. Resiko dapat bersumber dari dalam atau dari luar Proyek.
d.
Engineering Pada tahap ini terjadi proses engineering, yakni: Analisis Masalah Design
15
Coding Implementasi e.
Construction and launching Pada tahap ini dilakukan pengujian terhadap software. Jika software telah mengenai target (sesuai keinginan/kebutuhan customer) maka putaran berikutnya adalah maintenance. Jika software belum mengenai target,
putaran berikutnya
untuk perbaikan. f.
Customer evaluation Tahap ini adalah tahap dimana engineer mendapat feedback dari customer. Meskipun software belum memenuhi kebutuhan customer, software sudah dapat digunakan namun masih bentuk prototype.
Model spiral sangat memungkinkan banyak terjadi putaran. Dalam satu putaran harus melewati tahapan Customer communication, planning, risk analyst, engineering, construction and launching, dan customer evaluation. Berikut ini adalah contoh penggunaan model pengembangan spiral: a.
Putaran 0 (Round 0) berupa pengembangan konsep.
b.
Putaran 1 (Round 1) berupa pengembangan software yang baru.
c.
Putaran 2 (Round 2) berupa perbaikan software (jika ditemukan kesalahan atau belum memenuhi kebutuhan/keinginan konsumen, jika sudah mengenai target putaran 2 berupa maintenance).
d.
Putaran 3 (Round 3) adalah untuk perawatan software (maintenance).
16
Gambar 2.4 Model pengembangan spiral
Model ini biasa digunakan untuk proyek besar dan dalam jangka waktu yang panjang (lama). Lebih cocok untuk pengembangan sistem/perangkat lunak skala besar.
Kelebihannya adalah sebagai berikut:
Customer bisa memahami dengan baik software yang sedang/telah dibangun.
Masalah dapat ditemukan dengan cepat.
Mampu menangani permasalahan yang sering terjadi pada proses engineering.
Kekurangannya adalah sebagai berikut: Membutuhkan
waktu
pengerjaan
yang
lama
perencanaan jangka panjang agar program bisa selesai.
sehingga
membutuhkan
17
Memerlukan komponen IT (Software Engineer, Programmer, Project Manager , dll) yang produktif dan kompetitif. Dibutuhkan dana yang besar sebagai akibat dari tiga point sebelumnya. 2.3 Use Case Diagram Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Yang ditekankan adalah “apa” yang diperbuat sistem, dan bukan “bagaimana”. Sebuah use case merepresentasikan sebuah interaksi antara aktor dengan sistem. Use case merupakan sebuah pekerjaan tertentu, misalnya login ke sistem, meng-create sebuah daftar belanja, dan sebagainya. Seorang/sebuah aktor adalah sebuah entitas manusia atau mesin yang berinteraksi dengan sistem untuk melakukan pekerjaan-pekerjaan tertentu. Use case diagram dapat sangat membantu bila kita sedang menyusun requirement sebuah sistem, mengkomunikasikan rancangan dengan klien, dan merancang test case untuk semua feature yang ada pada sistem. Sebuah use case dapat meng-include fungsionalitas use case lain sebagai bagian dari proses dalam dirinya. Secara umum diasumsikan bahwa use case yang di-include akan dipanggil setiap kali use case yang meng-include dieksekusi secara normal. Sebuah use case dapat di-include oleh lebih dari satu use case lain, sehingga duplikasi fungsionalitas dapat dihindari dengan cara menarik keluar fungsionalitas yang common. Sebuah use case juga dapat meng-extend use case lain dengan behaviour-nya sendiri. Sementara hubungan generalisasi antar use case menunjukkan bahwa use case yang satu merupakan spesialisasi dari yang lain.
18
Tabel Simbol dan Keterangan Use Case Diagram Simbol
Keterangan Actor, menunjukkan orang-orang yang terlibat dalam sistem.
Use Case,menunjukkan kegiatan dalam use case diagram.
Relationship,menghubungkan antar objek. Tabel 2.1: Simbol dan Keterangan Use Case Diagram
2.4 Class Diagram Class adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi objek. Class menggambarkan keadaan (atribut/properti) suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut (metoda/fungsi). Class diagram menggambarkan struktur dan deskripsi class, package dan objek beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi, dan lain-lain. Class memiliki tiga area pokok : 1. Nama (dan stereotype) 2. Atribut 3. Metoda
19
Tabel Simbol dan Keterangan Class Diagram Simbol
Keterangan Class, berisi nama kelas, atribut, dan operation.
class +atribute :type -operation ():Return
Generalisation, menghubungkan antar class.
Agregation.
Tabel 2.2: Simbol dan Keterangan Class Diagram
2.5 Activity Diagram Activity diagram menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi. Activity diagram merupakan state diagram khusus, di mana sebagian besar state adalah action dan sebagian besar transisi di-trigger oleh selesainya state sebelumnya (internal processing). Oleh karena itu activity diagram tidak menggambarkan behaviour internal sebuah sistem (dan interaksi antar subsistem) secara eksak, tetapi lebih menggambarkan proses-proses dan jalur-jalur aktivitas dari level atas secara umum. Sebuah aktivitas dapat direalisasikan oleh satu use case atau lebih. Aktivitas menggambarkan proses yang berjalan, sementara use case menggambarkan bagaimana aktor menggunakan sistem untuk melakukan aktivitas.
20
Tabel Simbol dan Keterangan Activity Diagram Simbol
Keterangan Start, menunjukkan awal dari diagram aktifitas. Decision, menunjukkan keputusan dalam diagram aktifitas Transition, menghubungkan antar objek. Activity , pernyataan aktifitas.
End, menunjukkan akhir dari diagram aktifitas. Tabel 2.3: Simbol dan Keterangan Activity Diagram
2.6 Sequence Diagram Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem (termasuk pengguna, display, dan sebagainya) berupa message yang digambarkan terhadap waktu. Sequence diagram terdiri atar dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang terkait). Sequence diagram biasa digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai respons dari sebuah event untuk menghasilkan output tertentu. Diawali dari apa yang men-trigger aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output apa yang dihasilkan. Masing-masing objek, termasuk aktor, memiliki lifeline vertikal. Message digambarkan sebagai garis berpanah dari satu objek ke objek lainnya. Pada fase desain berikutnya, message akan dipetakan menjadi operasi/metoda dari class. Activation bar menunjukkan lamanya eksekusi sebuah proses, biasanya diawali dengan diterimanya sebuah message.
21
2.7 Collaboration Diagram Collaboration diagram juga menggambarkan interaksi antar objek seperti sequence diagram, tetapi lebih menekankan pada peran masing-masing objek dan bukan pada waktu penyampaian message. Setiap message memiliki sequence number, di mana message dari level tertinggi memiliki nomor 1. Messages dari level yang sama memiliki prefiks yang sama. 2.8 Component Diagram Component diagram menggambarkan struktur dan hubungan antar komponen piranti lunak, termasuk ketergantungan (dependency) di antaranya. Komponen piranti lunak adalah modul berisi code, baik berisi source code maupun binary code, baik library maupun executable, baik yang muncul pada compile time, link time, maupun run time. Umumnya komponen terbentuk dari beberapa class dan/atau package, tapi dapat juga dari komponen-komponen yang lebih kecil. Komponen dapat juga berupa
interface, yaitu kumpulan layanan yang disediakan sebuah komponenuntuk
komponen lain. Tabel Simbol dan Keterangan Component Diagram Simbol
Keterangan Paket dalam diagram komponen
Komponen dalam diagram komponen.
Dependency realstionship, relasi ketergantungan dalam diagram komponen. Tabel 2.4: Simbol dan Keterangan Component Diagram
22
2.9 Deployment Diagram Deployment/physical diagram menggambarkan detail bagaimana komponen dideploy dalam infrastruktur sistem, di mana komponen akan terletak (pada mesin, server atau piranti keras apa), bagaimana kemampuan jaringan pada lokasi tersebut, spesifikasi server, dan hal-hal lain yang bersifat fisikal Sebuah node adalah server, workstation, atau piranti keras lain yang digunakan untuk men-deploy komponen dalam lingkungan sebenarnya. Hubungan antar node (misalnya TCP/IP) dan requirement dapat juga didefinisikan dalam diagram ini. Tabel Simbol dan Keterangan Deployment Diagram Simbol
Keterangan Processor, menunjukkan tempat pemrosesan pada deployment diagram. Device, menunjukkan perlengkapan pada deployment diagram.
Connection pada deployment diagram, menunjukkan hubungan antar objek. Tabel 2.5: Simbol dan Keterangan Deployment Diagram 2.10 Basis Data 2.6.1 Definisi Basis Data Basis data didefinisikan sebagai berikut kumpulan data yang saling berhubungan yang disimpan secara bersama dalam media penyimpanan elektronik [Fatansyah,1999]. 2.6.2 Entity Relationship Diagram Entity Relationship Diagram (E-RD) adalah suatu model relasi yang menggunakan susunan data yang disimpan dalam sistem secara abstrak. E-RD merupakan model E-R
23
yang berisi komponen-komponen himpunan entitas dan himpunan relasi yang masingmasing dilengkapi atribut-atribut yang mempersentasikan seluruh fakta dari dunia nyata yang kita tinjau, dan dapat digambarkan dengan lebih sistematis.
Tabel Simbol dan Keterangan Entity Relational Diagram Simbol
Keterangan
Entity, merupakan entity atau entitas yang terdapat dalam sistem.
Relational, menunjukan hubungan antara suatu entitas dengan entitas yang lain.
Atribut yang dimiliki oleh entitas.
Menunjukan link. Tabel 2.6: Simbol dan Keterangan Entity Relational Diagram
Kardinalitas relasi menunjukkan jumlah maksimum entitas yang dapat berelasi dengan entitas pada himpunan entitas yang lain. Bentuk kardinalitas yang terjadi antara dua himpunan entitas :
1. Relasi satu menuju satu (One to One) Setiap anggota entitas pertama hanya bisa dipetakan kesatu elemen dari entitas kedua dan sebaliknya. Contoh: satu siswa mempunyai satu Nim.
24
1
Siswa
1
NIS
Gambar 2.5: ER-D One to One
2. Relasi satu menuju banyak (One to Many / Many to One) Setiap anggota entitas pertama boleh dipetakan pada beberapa elemen dari entitas kedua. Contoh: Satu kelas memiliki banyak siswa. 1
n
kelas
Siswa
Gambar 2.6: ER-D One to Many/Many to One 3. Relasi banyak ke banyak (Many to Many) Beberapa anggota entitas pertama boleh dipetakan lebih dari satu pada elemen entitas kedua dan sebaliknya. Contoh : Pada sistem pengajaran di Sekolah setiap siswa dapat mengambil mata
pelajaran lebih dari satu dan setiap mata pelajaran
dapat diambil oleh lebih dari satu siswa. n Siswa
n Mata Pelajaran
Gambar 2.7: ER-D Many to Many
2.6.3 Perancangan Basis Data Perancangan basis data diperlukan agar tercipta basis data yang dibutuhkan untuk proses penyimpanan data dan manipulasinya (tambah, ubah, dan hapus). Perancangan basis data seringkali diasosiasikan dengan pembuatan model Entity Relasionalship dimana kelompok-kelompok data dan relasi antar kelompok data tersebut diwujudkan dalam bentuk diagram.
25
2.6.4 Perancangan Model Data Perancangan model data ini telah didukung oleh paket-paket program yang ada dalam Database Management Sistem ( DBMS ). Dukungan yang diberikan berupa Data Definition Language ( DDL ) untuk mendefinisikan struktur data, dan Data Manipulation Language ( DML ) untuk pengelolaan data (operator), [Fathansyah, 1999].
2.6.5 Structure Query Language (SQL) Structured Query Language (SQL) merupakan bahasa standar yang digunakan untuk melakukan manipulasi data seperti penyimpanan, perubahan, dan penghapusan data dari suatu tabel lalu atau hanya sekedar menampilkannya kembali dalam format yang mudah dimengerti (query). Sebuah sistem basis data dalam proses manajemennya perlu adanya interaksi dengan pemakai baik tingkat administrator sampai ke tingkat operator. Hal ini biasanya disediakan oleh user-interface yang mana perintah-perintah dari pemakai diterjemahkan langsung menjadi bahasa mesin dan langsung mengakses pada level fisiknya. Konsep ini masih dipakai pada database konvensional seperti DBASE dan Foxpro namun sejak ditemukannya konsep basis data berelasi mulailah era basis data dengan relasi yang ditandai dengan munculya RDBMS karena fleksibilitas dan kemampuannya yang tangguh muncul sebagai sistem database kelas server. Basis data relasional ini mempunyai cara kerja dengan menterjemahkan sebuah perintah yang berbentuk kalimat dalam bahasa tertentu yang kemudian dirubah
menjadi
bahasa mesin dan digunakan mengakses data pada level fisik. Kalimat tersebut secara umum disebut sebagai bahasa database dalam perkembangannya beberapa bahasa database
26
dikembangkan seperti QBE dan SQL namun dalam beberapa tahun terakhir SQL menjadi bahasa standar sebagai bahasa database, [Fathansyah, 1999].
2.6.4.1 Perintah DDL (Data Definition Language) Kelompok perintah yang khusus untuk membentuk struktur database seperti membuat tabel, index, menambah field dan sebagainya. 1.
CREATE TABLE Perintah ini untuk membuat tabel baru dengan mendefinisikan nama field, ukuran field, batasan null value (nilai kosong) dan nilai default dari primary key. Contoh sintak programnya adalah sebgai berikut : CREATE TABLE siswa ( NIM varchar(9) NOT NULL PRIMARY KEY, NAMA_SISWA VARCHAR(25) not null );
2.
DROP TABLE Perintah ini untuk menghilangkan atau menghapus tabel dari database. Jika perintah ini dipanggil, tabel dan semua record-nya akan dihapus dari basis data. Beberapa RDBMS akan memberikan dialog peringatan sebelum perintah dieksekusi hal ini bertujuan untuk menjamin integritas relasi antar tabel dalam basis data tersebut. DROP TABLE SISWA
3.
ALTER TABEL Dalam pembentukan sebuah tabel, tidak menutup kemungkinan akan adanya kesalahan baik dalam field, atau properti field lainnya. Untuk mengubah susunan tabel tersebut dibutuhkan perintah ALTER TABLE. Berikut ini adalah contoh pemanggilan ALTER TABLE:
27
ALTER TABLE
Siswa add KodeKelas varchar(9) not null;
2.6.4.2 Perintah DML (Data Manipulation Language) Kelompok perintah yang khusus untuk melakukan proses manipulasi terhadap record namun tidak dapat mengubah struktur tabel dan databasenya. 1.
INSERT Perintah untuk menyisipkan data atau record baru pada table sintaknya adalah : INSERT INTO Siswa VALUES (‘207700474’,’Afipudin’,’01’); Data baru yang dimasukan tersebut akan mengurut menempati field yang kita sebutkan pada saat mendefinisikan fieldnya, jika memasukan data baru dengan data yang berbeda tipenya, maka SQL akan memberikan pesan Error.
2.
UPDATE Melakukan perubahan data record atau field pada suatu tabel sintak programnya adalah: UPDATE SISWA SET NIS= ‘207700474‘ WHERE NIS = ‘207700000‘
3.
DELETE Perintah ini berfungsi untuk menghapus suatu data record pada table Sintaknya adalah: DELETE FROM SISWA
WHERE NAMA_SISWA =”Afipudin”
28
4.
SELECT Select menerapkan perintah yang sangat penting di SQL karena dengan select kita bisa membuat tabel virtual dari berbagai macam tabel. Select dapat mengimplementasikan konsep relasi untuk memanipulasi data record Sintaknya adalah: SELECT NAMA FROM SISWA WHERE NAMA=’Teten Afipudin’
2.11Rekayasa Perangkat Lunak Perangkat lunak lebih merupakan elemen logika dan bukan merupakan elemen fisik. Ciri yang membedakan perangkat lunak dengan perangkat keras, yaitu:
perangkat
lunak dibangun dan dikembangkan tidak dalam bentuk klasik, perangkat lunak tidak pernah Rusak, dan sebagian besar perangkat lunak dibuat secara custom-built serta tidak dapat dirakit dari komponen yang sudah ada sebelumnya.[Asrul, 2007]. Sebuah komponen perangkat lunak harus didesain dan diimplementasikan sehingga dapat dipakai lagi pada berbagai program yang berbeda. Komponen perangkat lunak dibangun dengan bahasa pemrograman yang memiliki kosakata yang terbatas, sebuah tata bahasa yang dibatasi secara ekspisit, serta aturan-aturan sintaks dan semantic yang dibentuk secara baik.[Asrul, 2007]. Perangkat lunak komputer personal telah berkembang selama decade terakhir. Pengolahan data, multimedia, jaringan atau akses basis data hanya merupakan beberapa saja dari ratusan aplikasi yang ada, [Ian Sommerville, 1989]. Perangkat lunak sendiri memiliki pengertian: a. Perintah (program computer) yang bila dieksekusi memberikan fungsi dan unjuk kerja seperti yang diinginkan.
29
b. Struktur
data
yang
memungkinkan
program
memanipulasi
informasi
secara
proporsional, dan c. Dokumen yang menggambarkan operasi dan kegunaan program, [Haryanto, 2004].
Dengan kata lain perangkat lunak merupakan program komputer, struktur data, dan dokumen yang berhubungan dan berfungsi untuk mempengaruhi metode logis, prosedur, dan kontrol yang dibutuhkan. Rekayasa perangkat lunak adalah sebuah disiplin yang mengintegrasikan proses, metode, dan alat-alat Bantu bagi pengembangan proses perangkat lunak komputer. Untuk menyelesaikan suatu program perangkat lunak dibutuhkan suatu gabungan yang melingkupi lapisan proses, metode, dan alat-alat Bantu. Strategi ini sering diacuhkan sebagai model proses atau paradigma rekayasa perangkat lunak. Model proses untuk rekayasa perangkat lunak dipilih berdasarkan sifat aplikasi dan proyeknya, metode dan alat-alat Bantu dipakai, control, serta penyampaian yang dibutuhkan. Model proses untuk perangkat lunak itu sendiri terdiri dari beberapa model, oleh karena itulah sebagaimana yang disebutkan diatas bahwa model harus dipilih atau disesuaikan dengan perangkat lunak yang akan dibangun. Usaha yang berhubungan dengan RPL (Rekayasa Perangkat Lunak) dapat dikategorikan ke dalam 3 fase umum dengan tanpa mempedulikan area aplikasi, ukuran proyek, atau kompleksitasnya. Fase-fase tersebut adalah sebagai berikut: 1.
Fase definisi (Definition phase), berfokus pada “apa” (What) dimana : pada definisi ini pengembang perangkat lunak harus mendefinisikan informasi apa yang akan diproses, fungsi dan unjuk kerja apa yang dibutuhkan, tingkah laku system seperti apa yang diharapkan, interface apa yang akan dibangun, batasan desain apa yang ada, dan
30
criteria validasi apa yang dibutuhkan untuk mendefinisikan system yang sukses, kebutuhan kunci dari system dan perangkat lunak yang didefinisikan. 2.
Fase pengembangan (Development phase), berfokus pada “bagaimana” (how), yaitu dimana selama masa pembangunan perangkat lunak, teknisi harus mendefinisikan bagaimana data dikontruksikan, bagaimana fungsi-fungsi diimplemantasikan sebuah arsitektur perangkat lunak, bagaimana detail prosedur akan di implementasikan, bagaimana
interface
ditandai
(dikarakterisasi),
bagaimana
rancangan
akan
diterjemaahkan kedalam bahasa pemrograman (atau bahasa non procedural), serta bagaimana pengujian akan dilakukan. 3.
Fase pemeliharaan (Maintenance phase), berfokus pada perubahan (change), yang dihubungkan lingkungan
dengankoreksi perangkat
lunak
kesalahan, berkenbang,
perkembangan yang disebabkan
penyesuaian serta
yang
dibutuhkan
ketika
perubahan
sehubungan
dengan
kebutuhan pelanggan. Ada 4 tipe perubahan yang
terjadi selama masa fase pengembangan, yaitu koreksi, adaptasi, pengembangan, dan pencegahan.
2.12Bahasa Pemrograman dan Coding 2.8.1 Microsoft Visual Basic 6.0 Microsoft visual basic 6.0 adalah suatu bahasa pemrograman visual yang berbasis Pascal. Penggunaannya cukup rumit namun sesuai dengan kualitas perangkat lunak yang dapat diciptakannya. Tak heran jika bahasa pemrograman ini digunakan oleh orang-orang tertentu saja.
31
Microsoft visual basic 6.0 dapat menyelesaikan kasus yang berfokus pada basis data. Bahasa ini mendukung sistem basis data MySQL, SQL Server, Interbase, Oracle, Microsoft Access, dan sebagainya. Fitur-fiturnya mendukung tampilan grafis yang optimal. User interface-nya dapat dirancang sedemikian hingga lebih interaktif dengan user. Dengan demikian perangkat lunak yang dihasilkan lebih menarik dan berdaya jual tinggi. Microsoft visual basic 6.0 juga mendukung Quick Report dan Fast Report sebagai add-in untuk pembuatan laporan. Selain itu dapat dikolaborasikan dengan Inno Setup 5 untuk membuat installer-nya.
2.8.2 Microsoft Access 2003 Microsoft Access 2003 adalah sebuah sistem basis data modern. Dikeluarkan oleh Microsoft sesuai dengan namanya pada tahun 2003. Interfacenya lebih interaktif dengan user. Sangat mudah digunakan karena feature-feature-nya tersedia di toolbar. Dapat mengatasi kasus database relational. Access 2003 berkonsep pada SQL. Access 2003 cocok digunakan untuk aplikasi yang tidak terlalu kompleks dan tidak memerlukan media penyimpanan yang aman. Access 2003 ini tidak cocok digunakan pada aplikasi berskala besar dan membutuhkan tempat penyimpanan yang besar dan kompleks. Meskipun begitu, proses packaging-nya mudah karena dapat menyimpan puluhan tabel dan query dalam satu file database yang bersifat portable dan adaptif terhadap perpindahan atau perubahan data.
32
2.9 Aplikasi Pendukung Lainnya
2.9.1 corelDRAW X4 Graphic suite Perangkat lunak
corelDRAW X4 Graphic suite merupakan perangkat lunak untuk
perancangan grafik, layout halaman, editing foto, dan animasi vector. corelDRAW X4 Graphic suite merupakan program yang dirancang khusus untuk mendesain objek gambar agar kelihatan menarik dan mengandung nilai seni tersendiri. Feature yang baru dan merupakan penyempurnaan dari corelDRAW X4 Graphic suite antara lain dukungan simbol baru, penyederhanaan roughen dan smudge, peralatan 3point ellips rectangle dan kurva, life effect, penyempurnaan dukungan SVG dan tersedianya peralatan polyline sehingga memberikan kemudahan bagi pemakai. Feature dukungan simbol memungkinkan pemakai untuk merekam sebuah objek yang disimpan dalam library yang kemudian dapat digunakan pada dokumen lain. Keuntungannya, ukuran file gambar dapat menjadi lebih kecil. Feature yang sangat berguna dan menjadi teknik tercepat dan terefisien bagi desainer grafis dan animator. 2.9.2 Inno Setup 5 Inno Setup 5 merupakan media yang dapat membantu proses packaging perangkat lunak. Installshield dapat membantu proses installasi perangkat lunak sehingga user tidak perlu me-setting perangkat lunak yang akan digunakannya secara manual. Aplikasi ini mampu mengirim/memindahkan source file dan application
dari suatu
program dan database-nya ke suatu direktory yang dituju tanpa memutus settingan database sebelumnya. Sebelum proses installasi, Installshield dapat membuatkan shortcut di desktop, starmenu, atau trayicon. Inno Setup 5 mendaftarkan perangakat lunak pada system operasi sehingga memudahkan proses maintenance perangkat lunak seperti change(update) dan remove(uninstall).