BAB II LANDASAN TEORI 2.1 Penerimaan Siswa Baru Sekolah

advertisement
BAB II
LANDASAN TEORI
2.1 Penerimaan Siswa Baru Sekolah Menengah Atas
2.1.1 Sekolah Menengah Atas
Sekolah menengah atas (SMA) merupakan lanjutan dari jenjang pendidikan
dasar.
Dalam Undang-undang Nomor 20 tahun 2003 tentang Sistem Pendidikan
Nasional pasal 18 diatur tentang pendidikan menengah yaitu:
1.
Pendidikan menengah merupakan lanjutan pendidikan dasar.
2.
Pendidikan menengah terdiri atas pendidikan menengah umum dan
pendidikan menengah kejuruan.
3.
Pendidikan menengah berbentuk sekolah menengah atas (SMA), madrasah
aliyah (MA), sekolah menengah kejuruan (SMK), dan madrasah aliyah
kejuruan (MAK), atau bentuk lain yang sederajat.
4.
Ketentuan mengenai pendidikan menengah sebagaimana dimaksud pada
ayat (1), ayat (2), dan ayat (3) diatur lebih lanjut dengan peraturan
pemerintah.
2.1.2 Penerimaan Siswa Baru
Penerimaan siswa baru adalah proses pendaftaran, penyeleksian, siswa dari
sekolah lama untuk menjadi siswa baru di satu sekolah dengan beberapa
persyaratan yang telah ditentukan oleh sekolah. Penerimaan siswa baru
merupakan salah satu kewajiban pihak sekolah dan Dinas Pendidikan setiap tahun
ajaran baru.
2.1.3 Ujian Online
Sistem Ujian Online atau juga bisa disbut dengan ujian informasi online
yang berbasis web ataupun media elekronik untuk interfacenya.
8
9
2.2
Rekayasa Perangkat Lunak
2.2.1 Pengertian
Rekayasa perangkat lunak atau yang disebut dengan istilah Software
Engineering (SE) yaitu bidang profesi yang mendalami cara-cara pengembangan
sebuah perangkat lunak termasuk pembuatan ,pemeliharaan, manajemen
organisasi pengembangan perangkat lunak dan sebagainya.
Perangkat lunak (software) adalah program komputer yang terasosiasi
dengan dokumentasi perangkat lunak seperti dokumentasi kebutuhan, model
desain, dan cara penggunaan (user manual). Sebuah perangkat lunak juga disebut
dengan sistem perangkat lunak. Sistem berate kumpulan komponen yang saling
terkait dan mempunyai satu tujuan yang ingin dicapai. User atau pengguna
perangkat lunak adalah orang yang memiliki kepentingan untuk memakai atau
menggunakan perangkat lunak untuk memudahkan pekerjaannya.
Karakter perangkat lunek adalah sebagai berikut :
1.
Perangkat lunak dibangun dengan rekayasa (software engineering) bukan
diproduksi secara manufaktur atau pabrikan.
2.
Perangkat lunak tidak pernah using (wear out) karena kecacatan dalam
perangkat lunak dapat diperbaiki.
3.
Barang produksi pabrikan biasanya komponen barunya akan terus
diproduksi, sedangkan perangkat lunak biasanya terus diperbaiki seiring
bertambahnya kebutuhan.
Aplikasi dari perangkat lunak adalah sebagai berikut :
1. Perangkat lunak sstem (system software)
Kumpulan program dalam hal ini program yang satu ditulis untuk memenuhi
kebutuhan program lainnya.Perangkat lunak waktu nyata (real-time software)
Merupakan prangkat lunak yang memonitor, menganalisi, mengontrol
sesuatu secara waktu nyata (real-time).
2.
Perangkat lunak bisnis (business software)
Merupakan perangkat lunak pengelola informasi bisnis (seperti akuntansi,
penjualan, pembayaran, penyimpanan).
10
2.2.2 Metodologi Rekayasa Perangkat Lunak
Rekayasa perangkat lunak pada dasarnya menekankan pada tahapantahapan
pengembangansuatu
perangkat
lunak
yaitu
:
Analisi,
Desain,
Implementasi, Testing dan Maintenance. Pada tahap yang lebih luas Rekayasa
Perangkat Lunak Mengacupada Manajemen Proyek Pengembangan Perangkat
Lunakitu sendiri dengan tetap memperhatikan tahapan-tahapan pengembangan
sebelimnya.
Dalam pengembangannya perangkat lunak mempunyai berbagai model
yaitu model waterfall (model konvesional sebagai model terdahulu yang
dikembangkan dank arena model waterfall hamper sama dengan siklus hidup
pengembangan sistem.
2.2.2.1 Model Waterfall
Nama model ini sebenarnya adalah “Linear Sequential Model”. Model ini
sering juga disebut “classic life cycle” atau model waterfall. Model ini melakukan
pendekatan secara sistematis dan urut mulai dari level kebutuhan sistem lalu
menuju ketahap analisi, desain, coding, testing/verification, dan maintenance.
Disebut dengan waterfall karena tahap demi tahap yang dilalui harus menunggu
selesainya tahap sebelumnya dan berjalan berurutan.
11
Gambar 2.1 Model Waterfall
Gambar diatas merupakan tahapan umum dari model proses ini.
Dibawah ini adalah penjelasan dari tahap-tahap yang dilakukan di dalam
model ini :
1.
Tahapan Rekayasa Sistem
Pada tahap ini sangat menekankan pada masalah kebutuhan
pengguna pada tingkatan sistem dengan menentukan konsep sistem
besreta antarmuka yang menghubungkannya dengan lingkungan
sekitar. Hasilnya berupa spesifikasi sistem.
2.
Tahapan Analisis
Pada tahap ini dilakukan pengumpulan kebutuhan elemen-elemen
di tingkat perangkat lunak. Dengan analisis harus dapat ditentukan
domain-domain data atau informasi, fungsi, proses atau prosedur yang
diperlukan beserta unjuk kerjanya, dan antarmuka. Hasilnya berupa
spesifikasi kebutuhan perangkat lunak.
3.
Tahapan Perancangan
Pada tahap perancangan kebutuhan-kebutuhan perangkat lunak
yang dihasilkan pada tahap analisis, ditransformasikan ke dalam
bentuk artsitektur perangkat lunak yang memiliki karakteristik mudah
dimengerti dan tidak sulit untuk diterapkan.
12
4.
Tahapan Pemrograman
Tahap ini melakukan penerapan hasil rancangan kedalam baris-baris kode
program yang dapat dimengerti oleh komputer.
5.
Tahap pngujian
Setelah perangkat lunak selesai diterapkan, pengujian dapat segera dimulai.
Pengujian terlebuh dahulu dilakukan pada setiap modul. Jika tidak ada
masalah, modul tersebut akan diintegrasikan hingga membentuk perangkat
lunak secara utuh. Kemudian dilakukan pengujian tingkat perangkat lunak
yang memfokuskan pada masalah-masalah logikainternal, fungsi internal,
potensi masalah yang mungkin terjadi dan pemeriksaan hasil apakah sudah
sesuai dengan permintaan.
6.
Tahapan Pengoperasian dan Pemeliharaan
Dalam masa operasional sehari-hari, suatu perangkat lunak mungkin saja
mengalami kesalahan atau kegagalan dalam menjalankan fungsi-fungsinya.
Atau, pemilik bisa saja meminta peningkatan kemampuan perangkat lunak
pada pengembangnya. Dengan demikian, kedua factor ini menyebabkan
perlunya perangkat lunak dipelihara dari waktu ke waktu. Biasanya ini
merupakan tahapan yang panjang dari perangkat lunak.
2.3 HTML
HTML ( Hypertext Markup Language) merupan sebuah protocol yang
digunakan untuk membuat format suatu dokumen website yang mampu dibaca
dalam browser dari berbagai platform komputer. Salah satu keunggulan HTML
adalah hyperlink yang memungkinkan berpindah dari satu halaman ke halaman
lain dalam satu site atau diluat site. HTML berupa kode-kode tag yang
mengintruksikan browser untuk menghasilkan tampilan sesuai dengan yang
diinginkan. Sebyah file yang merupakan file HTML dapat dibuka menggunakan
browser web seperti Mozilla Firefox atau Microsoft Internet Explorer.
Ada dua cara untuk membuat sebuah web dengan HTML editor atau
dengan editor teks biasa (misalnya notepad). Untuk latihan atau mencoba materi
sebaiknya menggunakan notepad, setelah itu pada bagian mendekati akhir dapat
menggunakan editor HTML.
13
2.4
XAMPP
2.4.1 Pengertian
XAMPP adalah tool yang menyediakan paket perangkat lunak
kedalam satu buah paket. Dengan menginstal XAMPP tidak perlu lagi
menginstal dan mengkonfigurasi web server Apache, PHP dan MySQL
secara manual. XAMPP akan menginstal dan mengkonfigurasi secara
otomatis. Fungsi XAMPP yaitu sebagai server berdiri sendiri (localhost),
terdiri dari program Apache, http server, MySQL, database, dan
penterjemah bahasa yang ditulis dengan bahasa pemrograman PHP dan Perl.
XAMPP merupakan singkatan dari X (X=Cross Platform), Apache,
MySQL, PHP dan Perl. Program ini tersedia dalam lisensi GNU (General
Public License) dan gratis.
2.4.2
Apache
Web server merupakan software yang memberikan layanan web. Web
server menggunakan protocol yang disebut dengan HTTP ( HyperText
Transfer Protocol). Di dunia open source memiliki banyak sekali pilihan,
tergantung dengan keperluan anda. Salah satu web server yang terkenal dan
menjadi standar de facto setiap distribusi linux yaitu Apache. Apache adalah
nama web server yang dibuat berbasiskan kode sumber dan ide-ide yang ada
pada web server keluhurnya, yaitu web server NCSA.
Meurut Firdaus (2007 : 5 ) Web server merupakan sebuah bentuk server
yang khusus digunakan untuk menyimpan halaman website atau home page.
Apache merupakan turunan dari web server yang dikeluarkan oleh NCSA
yaitu NSCA HTTPd sekitar tahun 1995-an. Pada dasarnya, Apache adalah
“APatCHy” (patch) dan pengganti dari NCSA HTTPd.
Adapun pertimbangan dalam memilih apache sebagai berikut :
1.
Apache termasuk dalam kategori free software (software gratis).
2.
Instalasinya sangat mudah.
3.
Mampu beroperasi pada banyak platform sistem operasi seperti Linux,
Windows dan lain-lain.
14
Apache merupakan web server yang bersifat open source dan memiliki
performance yang sangat bagus, flexsibel dan mendukung berbagai macam
platformsistem operasi.
2.4.3 MySQL
MySQL adalah sebuah program database server yang mampu menerima dan
mengirimkan datanya dengan sangat cepat, multi user serta menggunakan perintah
standar SQL (Structured Query Language). (Nugroho, 2005, h.1).
Menurut Firdaus (2007 : 12) MySQL atau yang biasa dibaca “mai-se-kuel”
adalah sebuah program pembuat database yang bersifat open source, yang artinya
siapa saja boleh menggunakannya.
MySQL merupakan salah satu software database (basis data) opensource
yang dikembangkan sebuah komunitas bernama MySQL AB dengan tujuan
membantu user utuk menyimpan data dalam table-tabel. Table terdiri atas field
(kolom) yang mengkelompokan data-data berdasarkan kategori tertentu, seperti
nama, alamat, nomor telepon, dan sebagainya.
MySQL pertama kali dirintis oleh seorang programmer database bernama
Michael Widenuius. Mysql juga merupakan program yang dapat mengakses suatu
database MySQL yang berposisi sebagai client. MySQL termasuk jenis RDBMS
(Relational Database Management System), itulah sebabnya isi seperti table, baris
dan kolom, digunakan dalam MySQL. Disini kita menggunakan MySQL sebagai
SQL server karena berbagai kelebihannya yaitu :
1.
Source MySQL dapat diperoleh dengan mudah dan gratis.
2.
Sintaknya lebih mudah dipahami dan tidak rumit.
3.
Pengaksesan database dapat dilakukan dengan mudah.
Keunggulan MySQL :
1.
Mysql merupakan program yang multi-threaded, sehingga dapat dipasang
pada server yang memiliki multi-CPU.
2.
Didukung program-program umum seperti C, C++, Java, Perl, PHP, Python,
TCL, APIs dls.
15
3.
Bekerja pada berbagai platform. (tersedia berbagai versi untuk berbagai
sistem operasi).
4.
Memiliki jenis kolom yang cukup banyak sehingga memudahkan
konfigurasi sistem database.
5.
Memiliki sistem security yang cukup baik dengan verifikasi host.
6.
Mendukung ODBC untuk sistem operasi Microsoft Windows.
7.
Mendukung record yang memiliki kolom dengan panjang tetap atau panjang
bervariasi, dan masih banyak keunggulan lainnya.
8.
MySQL merupakan software yang free, dan bisa di download di
www.mysql.com sedangkan softwaredatabse lainnya seperti ORACLE
merupakan software yang harus dibeli.
9.
MySQL dan PHP saling terintegrasi. Maksudnya yaitu pembuatan database
dengan menggunakan sintak PHP dapat dibuat. Sedangkan input yang
dimasukkan melalui aplikasi web yang menggunakan script server-side
seperti PHP dapat langsung dimasukkan ke database MySQL yang ada di
server dan tentunya web tersebut berada disebuah web server.
Kekurangan MySQL :
1.
Data yang ditangani belum besar
2.
Untuk koneksi ke dalam bahasa pemrograman visual seperti VB, Delphi,
dan Foxpro. MySQL kurang support. Karena koneksi ini menyebabkan field
yang dibaca harus sesuai dengan koneksi dari program visual tersebut, hal
ini yang mengakibatkan MySQL jarang dipakai kedalam program visual
Bahasa yang digunakan di database (SQL) dibedakan menjadi 3 (tiga)
macam yaitu DDL (Data Definition Language), DML (Data Manipulation
Language), DCL (Data Control Language).
DDL (Data Definition Language) merupakan sebuah metode query yang
berguna untuk mendefinisikan data pada sebuah database. DDL antara lain yaitu :
16
CREATE : untuk membuat table
DROP
: untuk menghapus table
ALTER : untuk melakukan perubahan struktur table yang sudah ada seperti
menambah dan menghapus field, rename nama table, mengganti tipe data.
DML (Data Manipulation Language) merupaan sebuah metode query yang
hanya bisa terjadi setelah DDL yang digunakan untuk manipulasi data-data. DML
antara lain yaitu :
INSERT : untuk memasukkan data ke dalam table
UPDATE : untuk memperbarui data dalam table
DELETE : untuk menghapus baris dalam table
DCL (Data Control Language) merupakan sebuah metode query untuk
memberikan
otoritas
hak
mengakses
database,
mengalokasikan
space,
pendefinisian space, dan penggunaan database. DCL antara lain yaitu :
GRANT
: untuk mengizinkan user utuk mengakses database
REVOKE GRANT : untuk membatalkan hak ases user
COMMIT
: untuk menetapkan penyimpanan database
ROLLBACK
: untuk membatalkan penyimpanan database
2.5
PHP
2.5.1 Pengertian
PHP merupakan bahasa pemrograman yang dijalankan melalui halaman
web, umumnya digunakan untuk mengolah informasi di internet. PHP adalah
singkatan dari Hypertext Preprocessor yaitu bahasa pemrograman web server-side
yang bersifat open source, PHP merupakan script yang terintegrasi dengan HTML
dan berada pada server (server side HTML embedded scripting). PHP adalah
script yang digunakan untuk membuat halaman website yang dinamis. Dinamis
berarti halaman yang ditampilkan dibuat saat halaman itu diminta oleh client.
Mekanisme ini menyebabkan informasi yang diterima client selalu yang terbaru
atau up to date. Semua script PHP dieksekusi pada server dimana script tersebut
dijalankan.
17
Menurut Firdaus (2007 : 18) PHP (Hypertext Preprocessor) merupakan
bahasa yang hanya dapat berjalan pada server yang hasilnya dapat ditampilkan
pada cient. Dalam mengeksekusi kode PHP pada sisi server (disebut server side)
berbeda dengan mesin maya Java yang mengeksekusi program pada sisi klien
(client side). Proses eksekusi kode PHP yang disisipkan pada halaman HTML.
Menurut Sutarman (2003 : 9) PHP merupakan akronim dari PHP :
Hypertext Prepocessor adalah bahasa pemrograman script berbasis web yang
paling banyak dipakai pada saat ini. PHP banyak dipakai untuk memrogram situr
web yang dinamis, walaupun tidak tertutup kemungkinan digunakan untuk
pemakai lain.
Untuk menjalankan sistem PHP dibutuhkan 3 (tiga) komponen yaitu :
1.
Web server, karena PHP termasuk behasa pemrograman server side.
2.
Program PHP, program yang memproses script PHP.
3.
Database server, yang berfungsi untuk mengelola database.
PHP juga dapat dilihat sebagai pilihan lain dari ASP.NET/C#/VB.NET
Microsoft, ColdFusion Macromedia, JSP/Java Sum Microsystems, dan CGI/Perl.
Contoh aplikasi lain yang lebih kompleks berupa CMS yang dibagun
menggunakan PHP adalah Mambo, Joomla!, Postnuke, Xaraya, dan lain-lain.
Beberapa kelebihan PHP dari bahasa pemrograman web, antara lain yaitu :
1.
Bahasa pemrograman PHP adalah sebuah bahasa script yang tidak
melakukan sebuah kompilasi dalam penggunaannya.
2.
Web Server yang mendukung PHP dapat ditemukan dimana-mana dari
mulai IIS sampai dengan Apache, dengan konfigurasi yang relative mudah.
3.
Dalam isi pengembangan lebih mudah, karena banyaknya milis-milis dan
developer yang siap membantu dalam pengembangan.
4.
Dalam isi pemahaman, PHP adalah bahasa scripting yang paling mudah
karena mempunyai refrensi yang banyak.
18
5.
PHP adalah bahasa open soure yang dapat digunakan diberbagai mesin
(Linux, Unix, Macintosh, Windows) dan dapat dijalankan secara runtime
melalui console serta juga dapat menjalan perintah-perintah sistem.
Selain kelebihan PHP, PHP juga mempunyai kekurangan. Namun masalah
kekurangannya sangat sedikit diantaranya yaitu :
1.
PHP tidak mengenal Package.
2.
Jika tidak di encoding, maka kode PHP dapat dibaca semua orang dan unuk
mengecodingnya dibutuhkan tool dari Zend yang mahal sekali biayanya.
3.
PHP memiliki kelemahan keamanan. Jadi programmer harus jeli dan
berhati-hati dalam melakukan pemrograman dan konfigurasi PHP.
Table 2.1 Tipe Data PHP
Type Data PHP
1.
Integer
2.
Doble
3.
Boolean
4.
String
5.
Object
6.
Array
7.
Null
8.
Nill
9.
Resource
19
2.6
Web
WWW (World Wide Web) atau biasa disebut dengan web merupakan
salah satu sumber daya internet yang berkembang pesat. Saat ini, informasi web
didistribusikan melalui pendekatan hyperlink, yang memungkinkan suatu teks,
gambar, ataupun objek yang lain menjadi acuan untuk membuka halamanhalaman web yang lain. Dengan pendekatan hyperlink ini, seseorang dapat
memperoleh informasi dengan meloncat dari suatu halaman ke halaman lain.
Halaman-halaman yang diaksespun dapat tersebar di berbagai mesin dan bahkan
di berbagai negara (Kadir, 2008, h.2).
2.7
JavaScript
JavaScript adalah bahasa pemograman web yang bersifat Client Side
Programming Language. Client Side Programming Language adalah tipe bahasa
pemograman yang pemrosesannya dilakukan oleh client. Aplikasi client yang
dimaksud merujuk kepada web browser seperti Google Chrome dan Mozilla
Firefox.
Jenis
bahasa
pemograman
Client
Side
berbeda
dengan
bahasa
pemograman Server Side seperti PHP, dimana untuk server side seluruh kode
program dijalankan di sisi server.
Untuk menjalankan JavaScript, kita hanya membutuhkan aplikasi text
editor, dan web browser. JavaScript memiliki fitur: high-level programming
language, client-side, loosely tiped, dan berorientasi objek.
2.8
Notepad++
Notepad++ adalah program aplikasi pengembang yang berguna untuk
mengedit teks dan skrip kode pemrograman.
Perangkat lunak komputer ini
memiliki kelebihan pada peningkatan kemampuan sebuah program text editor,
lebih dari sekedar program Notepad bawaan Windows. Notepad++ bisa mengenal
tag dan kode dalam berbagai bahasa pemrograman. Fitur pencarian tingkat lanjut
dan pengeditan teks yang tersedia juga cukup ampuh, sangat membantu tugas
seorang programmer atau developer dalam menyelesaikan skrip kode programnya.
20
Program Notepad++ banyak diaplikasikan dan digunakan oleh kalangan
pengguna komputer di bidang pemrograman aplikasi desktop dan web.
Basis Data
2.9
Basis Data adalah kumpulan data yang disimpan secara sistematis di dalam
komputer dan dapat diolah atau dimanipulasi menggunakan perangkat lunak
(program aplikasi) untuk menghasilkan informasi. Pendefinisian basis data
meliputi spesifikasi berupa tipe data, struktur, dan juga batasan-batasan data yang
akan disimpan. Basis data merupakan aspek yang sangat penting dalam sistem
informasi dimana basis data merupakan gudang penyimpanan data yang akan
diolah lebih lanjut. Basis data menjadi penting karena dapat menghidari duplikasi
data, hubungan antar data yang tidak jelas, organisasi data, dan juga update yang
rumit.
Proses memasukkan dan mengambil data ke dan dari media penyimpanan
data memerlukan perangkat lunak yang disebut dengan sistem manajemen basis
data (database management system | DBMS). DBMS merupakan sistem perangkat
lunak yang memungkinkan user untuk memelihara, mengontrol, dan mengakses
data secara praktis dan efisien. Dengan kata lain semua akses ke basis data akan
ditangani oleh DBMS. Ada beberapa fungsi yang harus ditangani DBMS yaitu
mengolah pendefinisian data, dapat menangani permintaan pemakai untuk
mengakses data, memeriksa sekuriti dan integriti data yang didefinisikan oleh
DBA (Database Administrator), menangani kegagalan dalam pengaksesan data
yang disebabkan oleh kerusakan sistem maupun disk, dan menangani unjuk kerja
semua fungsi secara efisien.
Tujuan utama dari DBMS adalah untuk memberikan tinjauan abstrak data
kepada user (pengguna). Jadi sistem menyembunyikan informasi tentang
bagaimana data disimpan, dipelihara, dan tetap dapat diambil (akses) secara
efisien. Pertimbangan efisien di sini adalah bagaimana merancang struktur data
yang kompleks tetapi masih tetap bisa digunakan oleh pengguna awam tanpa
mengetahui kompleksitas strukturnya.
21
Pembagian database menurut jenisnya:
1. Basis data flat-file. Basis data flat-file ideal untuk data berukuran kecil dan
dapat dirubah dengan mudah. Pada dasarnya, mereka tersusun dari
sekumpulan string dalam satu atau lebih file yang dapat diurai untuk
mendapatkan informasi yang disimpan. Basis data flat-file baik digunakan
untuk menyimpan daftar atau data yang sederhana dan dalam jumlah kecil.
Basis data flat-file akan menjadi sangat rumit apabila digunakan untuk
menyimpan data dengan struktur kompleks walaupun dimungkinkan pula
untuk menyimpan data semacam itu. Salah satu masalah menggunakan
basis data jenis ini adalah rentan pada korupsi data karena tidak adanya
penguncian yang melekat ketika data digunakan atau dimodifikasi.
2. Basis data relasional. Basis data ini mempunyai struktur yang lebih logis
terkait cara penyimpanan. Kata "relasional" berasal dari kenyataan bahwa
tabel-tabel yang berada di basis data dapat dihubungkan satu dengan
lainnya. Basis data relasional menggunakan sekumpulan tabel dua dimensi
yang masing-masing tabel tersusun atas baris (tupel) dan kolom (atribut).
Untuk membuat hubungan antara dua atau lebih tabel, digunakan key
(atribut kunci) yaitu primary key di salah satu tabel dan foreign key di
tabel yang lain. Saat ini, basis data relasional menjadi pilihan karena
keunggulannya. Beberapa kelemahan yang mungkin dirasakan untuk basis
data jenis ini adalah implementasi yang lebih sulit untuk data dalam
jumlah besar dengan tingkat kompleksitasnya yang tinggi dan proses
pencarian informasi yang lebih lambat karena perlu menghubungkan tabeltabel terlebih dahulu apabila datanya tersebar di beberapa tabel.
2.10 UML
2.10.1 Pengertian
UML (Unified Modeling Language) adalah sebuah bahasa yang berdasarkan
grafik/gambar untuk memvisualisasi, menspesifikasikan, membangun, dan
22
pendokumentasian dari sebuah sistem pengembangan software berbasis OO
(Object-Oriented).
Flower (2005:1) UML (Unified Modeling Language) adalah sebuah
“bahasa” yang telah menjadi standar dalam industry untuk virtualisasi, merancang
dan mendokumentasikan sistem piranti lunak. UML menawarkan sebuah standar
untuk merancang model sebuah sistem.
UML ditemukan pertama kali oleh Grady Booch, Ivar Jacobson dan Jumes
Rumbugh pada tahun 1990-an. Mereka berdua memadukan dan mengadopsi ideide serta kemampuan tambahan dari masing-masing metodenya dan berusaha
membuat metodologi terpadu. UML merupakan alat bantu yang sangat baik di
dunia pengembangan perancangan sistem berorientasi objek. Hal ini dikarenakan
UML
menyediakan
bahasa
pemodelan
visual
yang
memungkinkan
pengembang/perancangan sistem untuk membuat rencana/prototype mereka
dalam bentuk buku, mudah dimengerti serta dilengkapi dengan mekanisme yang
efektif untuk berbagi dan mengkomunikasikan rancangan mereka dengan yang
lain.
UML hanya berfungsi untuk melakukan pemodelan. Jadi penggunaan UML
tidak terbatas pada metodologi tertentu, meskipun pada kenyataannya UML
paling banyak digunakan pada metodologi berorientasi objek. Dengan
menggunakan UML dapat membuat model untuk semua jenis aplikasi piranti
lunak, dimana aplikasi tersebut dapat berjalan pada piranti keras, sistem operasi
apapun, serta ditulis dalam bahasa pemrograman apapun.
Seperti bahasa-bahasa lainnya, UML mendefinisikan notasi dan syntax atau
semantic. Notasi UML merupakan sekumpulan khusus untuk menggambarkan
berbagai diagram priranti lunak setiap bentuk memiliki makna tertentu, dan syntax
UML mendefinisikan bagaimana bentuk-bentuk tersebut dapat dikombinasikan.
UML akan digunakan pada tahap analisa dan desain. Desain yang dihasilkan
berupa diagram-diagram UML yang akan diterjemahkan menjadi kode program
pada tahap implementasi.
23
Tabel 2.2 Jenis Diagram UML
No
1.
Diagram
Class
Kegunaan
Class,
fitur
dan
Kategori
hubungan-
hubungan
2.
Object
Contoh konfigurasi dari contoh- Structure
contoh
3.
Component
Struktur dan koneksi komponen
4.
Composite
Dekomposisi runtime pada class
Diagrams
Structure
5.
Package
Struktur hirarki compile-time
6.
Deployment
Pemindahan artefak ke node
7.
Activity
Behavior procedural dan parallel
8.
Use case
Bagaimana pengguna berinteraksi
dengan sebuah sistem
9.
State Machine
Behavior
Bagaimana event mengubah objek Diagrams
selama aktif
10. Interaction
Overview
11. Sequence
Campuran sequence dan activity
diagram
Interaksi anatar objek; penekanan
pada sequence
Interaction
12. Communication Inteaksi antar objek; penekanan Diagram
pada jalur
13. Timing
Interaksi antar objek penekanan
pada timing
2.10.2 Use Case Diagram
Use case adalah abstraksi dari interaksi antara system dan actor. Use case
bekerja dengan cara mendeskripsikan tipe interaksi antara user sebuah system
dengan sistemnya sendiri melalui sebuah cerita bagaimana sebuah system
dipakai. Use case merupakan konstruksi untuk mendeskripsikan bagaimana
system akan terlihat di mata user. Sedangkan use case diagram memfasilitasi
komunikasi diantara analis dan pengguna serta antara analis dan client.
24
Use case mendeskripsikan sebuah interaksi antara satu atau lebih actor
dengan sistem yang akan dibuat. Secara kasar, use case digunakan untuk
mengetahui fungsi apa saja yang ada didalam sebuah sistem informasi dan siapa
saja yang berhak menggunakan fungsi-fungsi itu.
Tabel 2.3 Notasi Use Case Diagram
Notasi
Nama
Keterangan
Simbol
Digunakan
Aktor
untuk
menggambarkan
pelaku atau pengguna. Pelaku ini
meliputi manusia atau sistem komputer
atau subsistem lain yang memiliki
metode untukmelakukan sesuatu.
Digunakan
Use Case
untuk
menggambarkan
spesifikasi pekerjaan (job specification)
dan
deskripsi
pekerjaan
(job
description), serta keterkaitan antar
pekerjaan (job).
Aliran
Digunakan
untuk
menggambarkan
Proses
hubungan antara use case dengan use
case lainnya.
Sistem
Digunakan
untuk
Boundry
batas suatu sistem.
menggambarkan
2.10.3 Activity Diagram
Pada dasarnya diagram Activity sering digunakan oleh flowchart. Diagram
ini berhubungan dengan diagram Statechart. Diagram Statechart berfokus
pada obyek yang dalam suatu proses (atau proses menjadi suatu obyek), diagram
Activity berfokus pada aktifitas-aktifitas yang terjadi yang terkait dalam suatu
25
proses tunggal. Jadi dengan kata lain, diagram ini menunjukkan bagaimana
aktifitas-aktifitas tersebut bergantung satu sama lain.
Activity diagram juga sangat berguna ketika kita ingin menggambarkan
perilaku/menjelaskan bagaimana perilaku dari berbagai use case berinteraksi.
Table 2.4 Notasi Diagram Aktifitas
Notasi
Nama Simbol
Keterangan
Initial State
Titik awal
Final State
Titik akhir
State
Aktifitas
Decision
Pilihan
untuk
mengambil
keputusan
Fork
Digunakan
untuk
menunjukan
kegiatan yang dilakukan paralen
atau
menggabungkan
kegiatan
parallel menjadi satu
2.10.4 `Definisi Object dan Diagram Class
Object adalah gambaran dari entity, baik dunia nyata atau konsep dengan
batasan-batasan dan pengertian yang tepat. Objek bisa mewakili sesuatu yang
nyata seperti komputer,mobil atau dapat berupa konsep seperti proses kimia,
transaksi bank, permintaan pembelian, dll. Setiap objek dalam sistem memiliki
tiga karakteristik yaitu State(Status), Behaviour(Sifat) dan Indentity(identitas).
Class adalah deskripsi
sekelompok objek dari property(atribut), sifat
(operasi), relasi antar objek dan sematik yang umum. Class merupakan template
untuk membentuk objek. Setiap objek merupakan contoh dari beberapa class dan
objeck tidak dapat menjadi contoh lebih dari satu class.
Penamaan Class menggunakan kata benda tunggal yang merupakan abstraksi yang
terbaik.
26
Pada UML Class digambarkan dengan segi empat yang dibagi. Bagian atas
merupakan nama dari class. Bagian yang tengah merupakan struktur dari
class(atribut) dan bagian bawah merupakan sifat dari class(operasi).
Download