BAB II LANDASAN TEORI 2.1 Prototype Prototyping merupakan

advertisement
BAB II
LANDASAN TEORI
2.1
Prototype
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.
Sering terjadi seorang 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 yang 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
system
yang
diinginkan.
Dengan
demikian
akan
menghasilkan sistem sesuai dengan jadwal waktu penyelesaian yang telah
ditentukan.
Kunci agar model prototype ini berhasil dengan baik adalah dengan
mendefinisikan aturan-aturan main pada saat awal, yaitu pelanggan dan
pengembang harus setuju bahwa prototype dibangun untuk mendefinisikan
kebutuhan. Prototype akan dihilangkan sebagian atau seluruhnya dan perangkat
lunak aktual aktual direkayasa dengan kualitas dan implementasi yang sudah
ditentukan.
Keunggulan prototyping adalah:
1. Adanya komunikasi yang baik antara pengembang dan pelanggan.
2. Pengembang dapat bekerja lebih baik dalam menentukan kebutuhan
pelanggan.
3. Pelanggan berperan aktif dalam pengembangan system.
4. Lebih menghemat waktu dalam pengembangan system.
5. Penerapan menjadi lebih mudah karena pemakai mengetahui apa yang
diharapkannya.
Kelemahan prototyping adalah :
1. Pelanggan kadang tidak melihat atau menyadari bahwa perangkat lunak
yang ada belum mencantumkan kualitas perangkat lunak secara
keseluruhan dan juga belum memikirkan kemampuan pemeliharaan untuk
jangja waktu lama.
2. Pengembang biasanya ingin cepat menyelesaikan proyek. Sehingga
menggunakan algoritma dan bahasa pemrograman yang sederhana untuk
membuat prototyping lebih cepat selesai tanpa memikirkan lebih lanjut
bahwa program tersebut hanya merupakan cetak biru sistem .
3. Hubungan pelanggan dengan komputer yang disediakan mungkin tidak
mencerminkan teknik perancangan yang baik.
Prototyping bekerja dengan baik pada penerapan-penerapan yang berciri sebagai
berikut:
1. Resiko tinggi yaitu untuk masalah-masalah yang tidak terstruktur dengan
baik, ada perubahan yang besar dari waktu ke waktu, dan adanya
persyaratan data yang tidak menentu.
2. Interaksi pemakai penting . Sistem harus menyediakan dialog on-line
antara pelanggan dan komputer.
3. Perlunya penyelesaian yang cepat.
4. Perilaku pemakai yang sulit ditebak.
5. Sitem yang inovatif. Sistem tersebut membutuhkan cara penyelesaian
masalah dan penggunaan perangkat keras yang mutakhi.r
6. Perkiraan tahap penggunaan sistem yang pendek.
(http://achmad-rasul.blogspot.com/2009/05/pengertian-prototype_7273/)
2.2 Modeling
Model adalah pola (contoh, acuan, ragam) dari sesuatu yang akan dibuat
atau dihasilkan( Departemen P dan K, 1984 : 75). Definisi lain dari model adalah
abstraksi dari sistem sebenarnya, dalam gambaran yang lebih sederhana serta
mempunyai tingkat prosentase yang bersifat menyeluruh, atau model adalah
abstraksi dari realitas dengan hanya memusatkan perhatian pada beberapa sifat
dari kehidupan sebenarnya. (Simamarta, 1983: ix – xii)
Jenis-jenis model dapat dibagi dalam lima kelas yang berbeda :
1. Kelas I, pembagian menurut fungsi :
a. Model deskriptif : hanya menggambarkan situasi sebuah sistem tanpa
rekomendasi dan peramalan.
Contoh : peta organisasi
b. Model prediktif : model ini menunjukkan apa yang akan terjadi, bila
sesuatu terjadi.
c. Model normatif : model yang menyediakan jawaban terbaik terhadap
satu persoalan. Model ini memberi rekomendasi tindakan-tindakan
yang perlu diambil.
Contoh : model budget advertensi, model economics, model marketing.
2. Kelas II, pembagian menurut struktur.
a. Model Ikonik : adalah model yang menirukan sistem aslinya, tetapi
dalam suatu skala tertentu.
Contoh : model pesawat.
b. Model Analog : adalah suatu model yang menirukan sistem aslinya
dengan
hanya
mengambil
beberapa
karakteristik
utama
dan
menggambarkannya dengan benda atau sistem lain secara analog.
Contoh : aliran lalu lintas di jalan dianalogkan dengan aliran air dalam
sistem pipa.
c. Model Simbolis : adalah suatu model yang menggambarkan sistem yang
ditinjau
dengan
simbol-simbol
biasanya
dengan
simbol-simbol
matematik. Dalam hal ini sistem diwakili oleh variabel-variabel dari
karakteristik sistem yang ditinjau.
3. Kelas III, pembagian menurut referansi waktu.
a. Statis : model statis tidak memasukan faktor waktu dalam
perumusannya.
b. Dinamis : mempunyai unsur waktu dalam perumusannya.
4. Kelas IV, pembagian menurut referansi kepastian.
a. Deterministik : dalam model ini pada setiap kumpulan nilai input, hanya
ada satu output yang unik, yang merupakan solusi dari model dalam
keadaan pasti.
b. Probabilistik : model probabilistik menyangkut distribusi probabilistik
dari input atau proses dan menghasilkan suatu deretan harga bagi paling
tidak satu variabel output yang disertai dengan kemungkinankemungkinan dari hargaharga tersebut.
c. Game : teori permainan yang mengembangkan solusi-solusi optimum
dalam menghadapi situasi yang tidak pasti.
5. Kelas V, pembagian menurut tingkat generalitas.
a. Umum
b. Khusus
Model yang akan disusun dalam penelitian ini termasuk model
Simbolis, yaitu model yang menggambarkan sistem yang ditinjau
dengan simbol-simbol biasanya dengan simbol-simbol matematik.
Dalam hal ini sistem diwakili oleh variabel-variabel dari karakteristik
sistem yang ditinjau.
2.3
Simulasi
Simulasi dapat diartikan sebagai meniru suatu sistem nyata yang kompleks
yang penuh dengan sifat probabilistik, tanpa harus mengalami keadaan yang
sesungguhnya . Hal ini dapat dilakukan dengan membuat sebuah miniature yang
representative dan valid denagn tujuan sampling dan survey statistik pada sistem
nyata dapat dilakukan pada tiruan ini.
Proses simulasi juga berhubungan dengan penyusunan tiruan sistem
dengan menggunakan interaksi antar bilangan ramdom yang menuruti distribusi
dari pola data tertentu. Sehingga diperlukan suatu distribusi tertentu untuk
mensimulasikan suatu sistem.
Model simulasi ada dua (2) macam :
1. Simulasi Analog
Yaitu simulasi yang mempergunakan representasi fisik untuk menjelaskan
karakteristik penting dari suatu masalah. Contoh : model hidraulik sistem
ekonomi makro.
1. Simulasi Simbolik
Pada dasarnya meniru model matematik yang pemecahannya (dipermudah)
dengan menggunakan komputer, disebut simulasi komputer.
Terdapat tiga (3) komponen utama yang mendasari simulasi :
1. Metode analisis sistem
2. Metode statistik
3. Pemograman computer
Simulasi merupakan satu bahasan dengan cakupan sangat luas dan
bersinggungan dengan berbagai bidang ilmu. Pada umumnya digunakan untuk
menyelesaikan permasalahan yang:
1. Sulit diselesaikan dengan cara analisis : dynamic programming, rangkaian
listrik kompleks, dll.
2. Memiliki ukuran data dan kompleksitas yang tinggi: travelling salesman
problem, assignment, schedulling, dll.
3. Sangat sulit diimplementasikan secara langsung, karena biaya yang sangat
tinggi: optimasi Radio Base Station atau optimasi channel assignment
4. Ketika hubungan antar variable tidak linier
5. Ketika model memiliki variable acak.
(ellyns.wordpress.com/2009/08/28/definisi-simulasi-2.html)
2.4
Arduino Uno
Arduino Uno adalah board mikrokontroler berbasis ATmega328 dan
memiliki 14 pin input dari output digital dimana 6 pin input tersebut dapat
digunakan sebagai output PWM dan 6 pin input analog, 16 MHz osilator kristal,
koneksi USB, jack power, ICSP header, dan tombol reset. Untuk mendukung
mikrokontroler agar dapat digunakan, cukup hanya menghubungkan Board
Arduino Uno ke komputer dengan menggunakan kabel USB atau listrik dengan
AC yang-ke adaptor-DC atau baterai untuk menjalankannya.
Uno berbeda dengan semua board sebelumnya dalam hal koneksi USB-toserial yaitu menggunakan fitur Atmega8U2 yang diprogram sebagai konverter
USB-to-serial berbeda dengan board sebelumnya yang menggunakan chip FTDI
driver USB-to-serial.
Nama “Uno” berarti satu dalam bahasa Italia, untuk menandai peluncuran
Arduino 1.0. Uno dan versi 1.0 akan menjadi versi referensi dari Arduino. Uno
adalah yang terbaru dalam serangkaian board USB Arduino, dan sebagai model
referensi untuk platform Arduino.
Ringkasan Arduino Uno
Microcontroller ATmega328
Operasi dengan daya 5V Voltage
Input Tegangan (disarankan) 7-12V
Input Tegangan (batas) 6-20V
Digital I / O Pins 14 (dimana 6 memberikan output PWM)
Analog Input Pin 6
DC Lancar per I / O Pin 40 mA
Saat 3.3V Pin 50 mA DC
Flash Memory 32 KB (ATmega328) yang 0,5 KB digunakan oleh bootloader
SRAM 2 KB (ATmega328)
EEPROM 1 KB (ATmega328)
Clock Speed ?16 MHz.
(http://blog.kedairobot.com/2011/07/02/arduino-uno/)
2.5
Sensor ping ultrasonik
Sensor PING merupakan sensor ultrasonik yang dapat mendeteksi jarak
obyek dengan cara memancarkan gelombang ultrasonik dengan frekuensi 40 KHz
dan kemudian mendeteksi pantulannya. Sensor ini dapat mengukur jarak antara 3
cm sampai 300 cm. keluaran dari sensor ini berupa pulsa yang lebarnya
merepresentasikan jarak. Lebar pulsanya bervariasi dari 115 uS sampai 18,5 mS.
Pada dasanya, Ping))) terdiri dari sebuah chip pembangkit sinyal 40KHz, sebuah
speaker ultrasonik dan sebuah mikropon ultrasonik. Speaker ultrasonik mengubah
sinyal 40 KHz menjadi suara sementara mikrophone ultrasonik berfungsi untuk
mendeteksi pantulan suaranya.
Pin signal dapat langsung dihubungkan dengan mikrokontroler tanpa
tambahan komponen apapun. Ping hanya akan mengirimkan suara ultrasonik
ketika ada pulsa trigger dari mikrokontroler (Pulsa high selama 5uS). Suara
ultrasonik dengan frekuensi sebesar 40KHz akan dipancarkan selama 200uS.
Suara ini akan merambat di udara dengan kecepatan 344.424m/detik (atau 1cm
setiap 29.034uS), mengenai objek untuk kemudian terpantul kembali ke Ping.
Selama menunggu pantulan, Ping akan menghasilkan sebuah pulsa. Pulsa ini akan
berhenti (low) ketika suara pantulan terdeteksi oleh Ping. Oleh karena itulah lebar
pulsa tersebut dapat merepresentasikan jarak antara Ping dengan objek.
(https://fahmizaleeits.wordpress.com/2010/10/30/sensor-jarak-ping-paralax/)
2.6
Papan project board
Project Board atau yang sering disebut sebagai BreadBoard adalah dasar
konstruksi sebuah sirkuit elektronik dan merupakan prototipe dari suatu rangkaian
elektronik. Di zaman modern istilah ini sering digunakan untuk merujuk pada
jenis tertentu dari papan tempat merangkai komponen, dimana papan ini tidak
memerlukan proses menyolder ( langsung tancap ).
Karena papan ini solderless alias tidak memerlukan solder sehingga dapat
digunakan kembali, dan dengan demikian dapat digunakan untuk prototipe
sementara serta membantu dalam bereksperimen desain sirkuit elektronika.
Berbagai sistem elektronik dapat di prototipekan dengan menggunakan
breadboard, mulai dari sirkuit analog dan digital kecil sampai membuat unit
pengolahan terpusat (CPU).
Secara umum projectbord memiliki jalur seperti berikut ini :
Gambar 2.1 Jalur projectboard
(http://aisi555.blogspot.com/2011/07/mengenalprojectboard.html)
Penjelasan :
2 Pasang jalur Atas dan bawah terhubung secara horizontal sampai ke bagian
tengah dari breadboard. Biasanya jalur ini digunakan sebagai jalur power atau
jalur sinyal yg umum digunakan seperti clock atau jalur komunikasi.
5 lubang komponen di tengah merupakan tempat merangkai komponen. Jalur ke 5
lubang ini terhubung vertikal sampai bagian tengah dari breadboard.
2.7
Ic l293b driver motor
IC L293 adalah IC Quadruple Half H Driver yang dapat digunakan
sebagai driver 2 arah untuk arus yang cukup besar (1A, untuk tipe L293D maks
600mA). IC ini sering di pakai untuk pembuatan suatu mobil line follower.
Konfigurasi pin :
Gambar 2.2 Konfigurasi L2395b
Keterangan :
-
Pin 1 adalah pinenable
-
Pin 2,7,10, dan15 adalah pin input
-
Pin 3, 6, 11, dan14 adalah pin output
-
Pin 3 ke motor
-
Pin 6 ke motor
-
pin 4, 5, 12, 13 adalah pin ground
-
Pin 8 dan 16 adalah pin sumber daya (+)
2.8
EMS LCD Display
EMS LCD Display merupakan modul LCD 16 karakter x 2 baris. Modul
ini
mempermudah
penggunaan
LCD
karakter
16x2
dengan
hanya
menghubungkannya dengan sebuah port I/O pada mikrokontroler atau
mikroprosesor. Modul ini juga memiliki konfigurasi pin yang kompatibel dengan
code wizard dari CodeVisionAVR®.
Spesifikasi EMS LCD Display
1. Berbasis LCD karakter 16x2 dengan antarmuka antarmuka paralel 4 bit.
2. Tersedia pin untuk mengendalikan backlight.
3. Tersedia VR untuk mengatur kontras.
4. Pilihan konfigurasi untuk operasi write only atau read/write.
5. Catu daya +5 Volt DC.
6. Kompatibel dengan DT-51 dan DT-AVR Low Cost Series serta sistem
mikrokontroler/mikroprosesor lain.
Konektor J3 digunakan untuk antarmuka perintah/data, pengendalian
backlight, sekaligus sumber tegangan bagi EMS LCD Display.Alokasi Pin J3 dan
keteranganya dapat di lihat pada gambar 2.3 dan table 2.1.
Gambar 2.3 Alokasi pin J3 (Copyright © 2009 Innovative Electronics)
Tabel 2.1 Keterangan pin J3 (Copyright © 2009 Innovative Electronics)
2.9
Adaptor
Adaptor adalah alat elektronika yang dapat menyesuaikan atau merubah
tegangan listrik AC (alternating current) ke tegangan DC (direct current). Prinsip
kerja adaptor adalah merupah tegangan AC (Alternating Current) menjadi
tegangan DC (Direct Current). Komponen adaptor adalah transformator, diode
dan kondensator.
Transformator
Transformator atau sering disebut trafo adalah alat untuk mentransfer
tegangan AC dari gulungan kawat ke gulungan kawat lainya.
Kawat yang dipakai biasanya menggunakan kawat email, sedangkan untuk inti
besi biasanya menggunakan lapisan – lapisan pelat besi. Selain itu trasformator
juga berfungsi untuk menaikan tegangan listrik. Trafo jenis ini disebut trafo step
up. Dan yang menurunkan tegangan listrik disebut Trafo step down.
Komponen yang dihubungkan dengan tegangan input disebut komponen
primer, sedangkan komponen yang dihubugnkan dengan tegangan output disebut
komponen sekunder. Adapun tegangan untuk satu daya cenderung kecil, yaitu
sekitar 3; 4,5; 6; 7,5; 9; 12 maka trafo ini disebut trafo step down.
Diode
Diode berfungsi sebagai penyearah yang dapat mengubah tegangan AC
menjadi DC. Rangkaian penyearah dapat digolongkan menjadi 2 kelompok, yaitu
penyearah setengah gelombang dan penyearah gelombang penuh.
Kondensator
Kondensator berfungsi sebagai filter. Kondensator biasanya menggunakan
kondensator ELKO (Elektrolit Kondensator). Arus bolak-balik yang melewati
penyearah masih harus diratakan menggunakan kondensator. Pada pembuatan
adaptor biasanya menggunakan ELKO.
2.10 Diagram Alir (Flowchart)
Flowchartatau diagram alir merupakan metode untuk menggambarkan
tahap-tahap pemecahan masalah dengan merepresentasikan simbol-simbol
tertentu yang mudah dimengerti, mudah digunakan, dan standar (Oetomo, Dharma
B.S,2002 : 117). Tujuan utama penggunaan diagram alir adalah untuk
menggambarkan suatu tahapan penyelesaian masalah secara sederhana, terurai,
rapi, dan jelas dengan menggunakan simbol-simbol yang standar. Dalam
penulisannya diagram alir dikenal dua model, yaitu diagram alir sistem dan
diagram alir program. Simbol-simbol standar yang digunakan pada diagram alir
sistem ditunjukkan dalam Gambar2.2.
Gambar2.4 Simbol-simbol diagram alir program (Oetomo, Dharma B.S, 2002)
Pada penggambaran diagram alir program, ada dua jenis metode, yaitu conceptual
flowchart dan detail flowchart. Conceptual flowchart menggambarkan tentang
alur dari suatu pemecahan masalah secara global saja.Sedangkan detail flowchart
menggambarkan alur pemecahan masalah secara rinci.
2.11
Bola Basket
Bola basket merupakan olahraga dengan menggunakan bola sebagai alat
utamanya dan dimainkan secara berkelompok yang terdiri atas dua tim
beranggotakan masing-masing lima orang yang saling bertanding mencetak poin
dengan memasukkan bola ke dalam keranjang lawan. Permainan bolabasket di
batasi oleh waktu pertandingan. Bola basket sangat cocok untuk ditonton karena
biasa dimainkan di ruang olahraga tertutup dan hanya memerlukan lapangan yang
relatif kecil. Selain itu, bola basket mudah dipelajari karena bentuk bolanya yang
besar, sehingga tidak menyulitkan pemain ketika memantulkan atau melempar
bola tersebut.
Bola basket merupakan salah satu olahraga yang paling digemari oleh
penduduk Amerika Serikat serta penduduk di belahan bumi lainnya, antara lain di
Amerika Selatan, Eropa Selatan, Lithuania, dan juga Indonesia.
‡‹’‡” ƒ‹ƒ„‘Žƒ„ƒ•‡–’”‘ˆ‡•‹‘ƒŽ
• Fade Away
Fade away adalah tehnik mendorong badan kebelakang saat melakukan
shoot, sehingga menyulitkan defender untuk menghalau bola. tehnik ini cukup
sulit dilakukan oleh pemain yang baru belajar basket. Bila keseimbangan badan
tidak terjaga pemain dapat terpelanting dan jatuh kebelakang. Pemain NBA yang
sering memakai teknik ini adalah sang legenda basket seperti Michael Jordan dan
Kobe Bryant.
• Hook Shoot
Hook adalah suatu teknik yang sangat efektif jika pemain dijaga oleh orang
yang lebih tinggi. Caranya yaitu menembak dari samping dengan satu tangan. Jadi
jarak antara orang yang menghadang dan pemain bias agak jauh. Belakangan
tehnik ini sering dipakai oleh Rony Gunawan Satria Muda Britama waktu
melawan Garuda Bandung di Final 2009.
• crossover
merupakan tehknik dribble dengan cara memantulkan bola dari tangan kiri
ke tangan kanan atau sebaliknya. biasanya teknik sudah banyak di improvisasi
dengan cara memantulkan bola di antara celah kaki atau belakang kaki.
• Slamdunk
Slamdunk adalah salah satu teknik yang paling popular dalam permainan
basket.. Sebenarnya cukup simpel, yaitu hanya memasukkan bola secara langsung
ke ring dan menghempaskan tangan ke ring basket. Walaupun simpel, tapi untuk
orang dengan tinggi 171 cm slam seperti ini sangat sulit untuk dilakukan karena
biasanya lompatannya tidak cukup tinggi.
2.12
Metodologi Waterfall
Metodologi Waterfall merupakan model klasik yang sederhana dengan
aliran sistem yang linier. Output dari setiap tahap merupakan input bagi tahap
berikutnya. Model ini pertama kali diperkenalkan oleh Winston Royce tahun 1970,
sekarang model ini lebih dikenal dengan Liner Sequential Model.
Karakteristik dari metodologi waterfall ini meliputi beberapa bagian, yaitu :
• Aktivitas mengalir dari satu fase ke fase lainnya secara berurutan.
• Setiap fase dikerjakan terlebih dahulu sampai selesai, jika sudah selesai mulai
ke fase berikutnya, jika terjadi kesalahan dapat kembali ke fase sebelumnya.
Tahapan penelitian pada model waterfall meliputi metodologi berupa :
1. System Engineering
.
Menetepkan segala hal yang di perlukan dalam pelaksanaan proyek.
2. Analisis
Menganalisis hal-hal yang diperlukan untuk pembuatan atau pengembangan
perangkat lunak
3. Design
Tahap penerjemahan dari keperluan atau data yang telah dianalisis ke dalam
bentuk yang mudah dimengerti oleh programmer . Tiga atribut yang penting
dalam proses perancangan yaitu : struktur data, arsitektur perangkat lunak dan
prosedur rinci / algoritma.
4. Coding
Menerjemahkan data yang telah dirancang / algoritma ke dalam bahasa
pemrograman yang telah ditentukan
5. Testing
Uji coba terhadap program telah dibuat .
6. Maintenance
Perubahan atau penambahan program sesuai dengan permintaan user.
Kelebihan dari metode WaterFall:
Metode ini masih lebih baik digunakan walaupun sudah tergolong kuno,
daripada menggunakan pendekatan asal-asalan. Selain itu, metode ini juga masih
masuk akal jika kebutuhan sudah diketahui dengan baik.
Kekurangan dari metode Waterfall :
o Pada kenyataannya, jarang mengikuti urutan sekuensial seperti pada teori.
o Sulit bagi pelanggan untuk menentukan semua kebutuhan secara eksplisit.
o Kesalahan di awal tahap berakibat sangat fatal pada tahap berikutnya.
(http://jejakjari007.blogspot.com/2011/04/metodologi-pengembangan-sistem
.html).
Alasan kenapa menggunakan metode ini ialah, metode ini sangat cocok
dalam pembuatan prototyledan modeling. Pengerjaan setiap fase sangat teratur
dan sistematis.
2.13
Use Case Diagram
Use Case Diagram adalah diagram yang menunjukkan fungsionalitas suatu
sistem atau kelas dan bagaimana sistem tersebut berinteraksi dengan dunia luar
dan menjelaskan sistem secara fungsional yang terlihat user. Biasanya dibuat pada
awal pengembangan. 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 system 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 menginclude 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.
Use case diagram adalah gambaran graphical dari beberapa atau semua
actor, use case, dan interaksi diantara komponen-komponen tersebut yang
memperkenalkan suatu sistem yang akan dibangun. Use case diagram
menjelaskan manfaat suatu sistem jika dilihat menurut pandangan orang yang
berada di luar sistem. Diagram ini menunjukkan fungsionalitas suatu sistem atau
kelas dan bagaimana sistem tersebut berinteraksi dengan dunia luar.
Use case diagram dapat digunakan selama proses analisis untuk menangkap
requirements sistem dan untuk memahami bagaimana sistem seharusnya bekerja.
Selama tahap desain, use case diagram berperan untuk menetapkan perilaku
(behavior) sistem saat diimplementasikan. Dalam sebuah model mungkin terdapat
satu atau beberapa use case diagram. Kebutuhan atau requirements sistem adalah
fungsionalitas apa yang harus disediakan oleh sistem kemudian didokumentasikan
pada model use case yang menggambarkan fungsi sistem yang diharapkan (use
case), dan yang mengelilinginya (actor), serta hubungan antara actor dengan use
case (use case diagram) itu sendiri (http://www.masjito.com).
•
Use Case
Use case menggambarkan perilaku, termasuk didalamnya
interaksi antara actor dengan sistem. Use case dibuat berdasarkan keperluan actor,
merupakan
“apa”
yang
dikerjakan
sistem
bukan
“bagaimana”
sistem
mengerjakannya. Setiap use case harus diberi nama yang menyatakan apa hal
yang dicapai dari hasil interaksinya dengan actor. Nama use case boleh terdiri
dari beberapa kata dan tidak boleh ada dua use case memiliki nama yang sama.
•
Association antara actor dan use case
Ujung panah pada association antara actor dan use case mengindikasikan
siapa/apa yang meminta interaksi dan bukannya mengindikasikan aliran data
Sebaiknya gunakan garis tanpa panah untuk association antara actor dan use case
association antara actor dan use case yang menggunakan panah terbuka untuk
mengindikasikan bila actor berinteraksi secara pasif dengan system anda
(http://isebu.blogspot.com)
2.14
Bahasa C
Bahasa C dirancang oleh Dennis M. Ritchie pada tahun 1972 dan
dituangkan pada “C Reference Manual” yang diterbitkan oleh Bell Laboratories
pada tahun 1974. Bahasa C merupakan perkembangan bahasa BCPL (Basic
Combined Programming Language) yang dibuat oleh Dr. Martin Richard dari
Cambridge University di Ingggris, kemudian dikembangkan oleh Ken Thompson
menjadi bahasa yang disebut dengan B. Dennis M. Ritchie tertarik oleh interpreter
bahasa B yang ditulis Ken Thompson tersebut dan mengembangkannya menjadi
suatu compiler yang disebut dengan C. Nama C ini dipilih karena merupakan
urutan selanjutnya dari B pada alphabetic. Definisi dari bahasa C dikelurkan pada
tahun 1979 dalam buku “The Programming Language” oleh Brian Kerninghan
dan Dennis M. Ritchie. Sejak saaat itu masyarakat mulai mengenal adanya suatu
bahsa yang baik yaitu C. Hingga sekarang telah hadir puluhan versi dari compiler
C.
Perkembangan bahasa di komputer mikro dimulai tahun 1978 yaitu Tiny-C
yang ditulis oleh Tom Gibson. Seperti versi dari C sebelumnya, Tiny-C ditulis
bukan untuk tujuan komersial melainkan digunakan Tom Gibson untuk
mengajarkan anaknya mengenai bahasa C. Tom menyadari nilai komersial dari
usahanya dan mulai memasarkan produknya. Tetangga Tom Gibson yaitu George
Eberhart (penulis bahasa CI-C68) menulis compiler tiny-c tersebut. Tiny-c
kemudian banyak dikembangkan versi bahasa C lainnya yaitu Small-C, C-80, QC,
CW/C dan banyak lainnya.
Jenis bahasa C lain yang ditulis untuk komputer mikro adalah BD system
C (BDS C). Compiler dari BDS C merupakan hasil kerja dari Leor Zolman.
Sewaktu dia berumur 17 tahun Leor Zolman menulis suatu permainan Othello di
system operasi UNIX. Pertama kali program Othello dijalankan kurang sempurna,
kemudian Leor Zolman menulis bagian dari bahasa C untuk menunjang program
Othello tersebut. Setelah mencoba compiler C tersebut Leor Zolman menyadari
produknya dapat dipasarkan, yang kemudian banyak digunakan di komputer
mikro. Sehingga mulai banyak ditulis versi lain bahasa C yang didasarkan pada
BDS C.Versi-versi yang paling popular untuk koputer mikro adalah MS-C
(Microsoft C) dan Turbo C.
Sampai tahun 1982 sistem operasi CP/M dan MP/M merupakan system
operasi yang dominan pada komputer mikro. Mulai awal tahun 1983 sistem
operasi yang mulai banyak dipergunakan oleh komputermikro adalah MS-DOS
dan bahsa C juga dapat dijanlankan denagn system operasi ini. Jadi untuk mikro
komputer, system operasi yang dapat menjalankan bahasa C adalah CP/M dan
MP/M, MS-DOS dan PC-DOS serta UNIX.
Bahasa pemrograman C merupakan bahasa pemrograman yang bersifat
umum (General Purpose Language), tidak dikhususkan untuk bidang aplikasi
tertentu. Bahasa pemrograman ini digolongkan sebagai bahasa pemrograman
tingkat menengah (medium level language). Hal ini dikarenakan Bahasa C
memiliki kemampuan dalam mengakses mesin komputer yang mendekati
kemampuan bahasa rakitan, tetapi mudah dipelajari dan digunakan seperti halnya
bahasa pemrograman tingkat tinggi. Selain itu bahasa pemrograman C memilki
karakteristik lain seperti : hemat ekspresi, alur kontrol, menggunakan struktur data
modern, dan kaya dengan operator.
Pada tahun 1978, Dennis Ritchie dan Brian Kernighan menerbitkan edisi
pertama dari buku yang berjudul The C Programming Language. Buku ini hingga
sekarang diakui sebagai kitab suci bahasa C dan merupakan referensi utama
seorang pemrogram yang ingin mengetahui tentang bahasa C, terutama karena
begitu lengkapnya cakupan buku ini tentang bahasa C dan mudahnya program
yang dicontohkan dalam buku ini.
Versi bahasa C yang ditampilkan dalam buku ini kemudian dikenal dalam
kalangan pemrogram sebagai C K&R. Pada buku The C Programming Language
edisi kedua kemudian melingkupi ANSI C yang diperkenalkan belakangan.
Pada perkembangannya, muncul versi-versi C lain yang pada akhirnya
membuat kebingungan di kalangan pemrogram. Karena itu, pada tahun 1983,
American National Standards Institute (ANSI) membuat sebuah komite untuk
membuat sebuah versi standar dari bahasa C. Setelah melalui proses yang panjang
dan sengit, pada tahun 1989, telah berhasil disahkan standar yang dinamakan
ANSI X3.159-1989, versi ini seringkali dinamakan ANSI C, atau kadang-kadang
C89.
Pada 1990, versi ANSI C diadopsi oleh Organization for Standardization (ISO)
dengan sedikit perubahan dengan nama ISO/IEC 9899:1990. Versi ini seringkali
dinamakan ISO C atau C90. Karena versi ANSI C dan ISO C hanya memiliki
sedikit perbedaan, pemanggilan C90 dan C89 merujuk pada bahasa yang sama.
C99
Versi C99 dibuat oleh ISO C pada tahun 1999. Versi ini dimaksudkan terutama
untuk memperbanyak dukungan kepada pemrograman berorientasi objek,
terutama setelah C++, yang dibuat berdasarkan bahasa ini mendapat tempat yang
istimewa di kalangan pemrogram
Beberapa alasan mengapa memakai bahasa C
1. C adalah bahasa pemrograman yang paling populer saat ini, Dengan banyaknya
programmer bahasa C, membawa pengaruh semakin mudahnya kita menemukan
pemecahan masalah yang kita dapatkan ketika menulis program dalam bahasa C.
Pengaruh positif lain adalah semakin banyaknya kompiler yang dikembangkan
untuk berbagai platform (berpengaruh ke portabilitas).
2. C adalah bahasa pemrograman yang memiliki portabilitas tinggi, Program C
yang kita tulis untuk satu jenis platform, bisa kita kompile dan jalankan di
platform lain dengan tanpa ataupun hanya sedikit perubahan. Ini bisa diwujudkan
dengan adanya standarisasi ANSI untuk C.
3. C adalah bahasa pemrograman yang fleksibel, Dengan menguasai bahasa C,
kita bisa menulis dan mengembangkan berbagai jenis program mulai dari
operating system, word processor, graphic processor, spreadsheets, ataupun
compiler untuk suatu bahasa pemrograman.
Variabel bahasa C
a. variabel lokal
Variabel
lokal,yaitu
variabel
yang
dideklarasikan
di
dalam
fungsi.
Variabel lokal mempunyai sifat :
a. Secara otomatis akan diciptakan ketika fungsi dipanggil dan akan
hilang (dari memori) ketika eksekusi fungsi berahir.
b. Hanya dikenal oleh fungsi tempat variabel dideklarasikan.
c. Tidak ada inisialisasi secara otomatis(saat variabel diciptakan
nilainya tidak tentu).
d. Contoh variabel lokal :
b. variabel Global
Variabel
Global,
yaitu
variabel
yang
dideklarasikan
diluar
fungsi.
Variabel global mempunyai sifat :
a. Dapat diakses/dipanggil oleh semua fungsi.
b.
Jika tidak di beri nilai awal,maka otomatis diinisialisasikan dengan nilai 0.
Tipe data bahasa C
Bahasa C menyediakan lima macam tipe data dasar, yaitu tipe data integer
(nilai numerik bulat yang dideklarasikan dengan int), floating-point (nilai numerik
pecahan ketepatan tunggal yang dideklarasikan dengan float), double-precision
(nilai numerik pecahan ketepatan ganda yang dideklarasikan dengan double),
karakter (dideklarasikan dengan char), dan kosong (dideklarasikan dengan void).
Int, float, double dan char dapat dikombinasikan dengan pengubah (modifier)
signed, unsigned, long, dan short.
Bahasa C dikatakan sebagai bahasa pemrograman terstruktur, karena
strukturnya menggunakan fungsi-fungsi sebagai program-program bagian
(subroutine). Fungsi-fungsi selain fungsi utama merupakan program-program
bagian. Fungsi-fungsi ini dapat ditulis setelah fungsi utama atau diletakkan pada
file pustaka dan akan dipakai di suatu program, maka nama judulnya (header file)
harus dilibatkan di dalam program yang menggunakan preprocessor directive
#include.
Header file merupakan file yang berisi dengan prototype (judul, nama, sintak)
dari sekumpulan fungsi- fungsi pustaka tertentu. Jadi file ini hanya berisi dengan
prototype dari fungsi- fungsi pustaka, sedangkan fungsi-fungsi pustakanya sendiri
disimpan dalam file pustaka (library file dengan nama extension file-nya adalah
.LIB) Misalnya prototype dari fungsi- fungsi pustaka printf() dan scanf() terdapat
di file stdio.h, sehingga jika fungsi-fungsi ini digunakan di program, maka nama
file judulnya harus dilibatkan dengan menggunakan preposcessor #include. File
judul stdio.h berisi prototype fungsifungsi pustaka untuk operasi input dan output
standar. Ada dua cara melibatkan file judul disuatu program C, yaitu :
#include<stdio.h>
atau
#include”stdio.h”
File judul selain berisi dengan prototype dari fungsi-fungsi pustaka, juga
umumnya berisi dengan konstanta-konstanta terdefinisi dan makro-makro.
Misalnya nama konstanta terdefinisi M_PI telah didefinisikan di file judul math.h
oleh Turbo-C. Selanjutnya untuk menggunakan nilai phi, nama konstanta M_PI
dapat
digunakan
yang
telah
berisi
dengan
3.14159265358979323846.
(http://swastikayana.wordpress.com/2009/02/17/bahasa-c/)
nilai
konstanta
Download