makalah-rekayasa-perangkat-lunak

advertisement
MAKALAH REKAYASA PERANGKAT LUNAK
DESAIN PERANGKAT LUNAK
Disusun Oleh :
Agung Surya Tamaka
Bima Ahida Indaka S
Febrita Dian P
Nadhifatul Laeily
( 1541180137 )
( 1541180171 )
( 1541180211 )
( 1541180030 )
POLITEKNIK NEGERI MALANG
JURUSAN TEKNOLOGI INFORMASI
PRODI TEKNIK INFORMATIKA
2017
DAFTAR ISI
Contents
DAFTAR ISI............................................................................................................................................... 2
BAB 1 ....................................................................................................................................................... 3
PENDAHULUAN ....................................................................................................................................... 3
1.
LATAR BELAKANG........................................................................................................................ 3
2.
RUMUSAN MASALAH .................................................................................................................. 3
BAB 2 ....................................................................................................................................................... 4
PEMBAHASAN ......................................................................................................................................... 4
1.
PENGERTIAN DESAIN PERANGKAT LUNAK.................................................................................. 4
2.
SYARAT DESAIN PERANGKAT LUNAK .......................................................................................... 4
3.
TUJUAN DESAIN PERANGKAT LUNAK ......................................................................................... 6
4.
PRINSIP DESAIN PERANGKAT LUNAK .......................................................................................... 7
5.
KONSEP DESAIN PERANGKAT LUNAK ......................................................................................... 7
BAB 3 ..................................................................................................................................................... 11
PENUTUP ............................................................................................................................................... 11
1.
KESIMPULAN ............................................................................................................................. 11
2|MAKALAH CBIS ( COMPUTER BASED INFORMATION SYSTEM )
BAB 1
PENDAHULUAN
1. LATAR BELAKANG
Pengembangan suatu perangkat pada era sekarang sudah begitu marak
dilakukan oleh sebagian besar developer program. Perangkat lunak yang dihasilkan
juga berbagai macam jenis serta fungsinya dan manfaat yang dirasakan oleh para user
atau brainware dari setiap program. Program yang dibuat pada saat ini banyak sekali
memberikan kemudahan pada setiap user baru yang menggunakan program tersebut.
Selain itu setiap tahun selalu muncul sebuah teknologi baru atau transformasi baru
dari program yang ditawarkan kepada usernya. Kemudahan akses serta pengoperasian
selalu diincar oleh para user. Selain itu kecocokan program dengan bidang user juga
sangat diperhitungkan. Namun dengan kemajuan teknologi yang begitu cepat melesat,
membuat user tidak kebigungan dalam menentukan program atau aplikasi yang
dirasanya tepat.
Dari uraian diatas relevan dengan kondisi yang saat ini sedang terjadi pada
lingkungan bisnis. Uraian diatas menunjukkan dimana user selalu mengincar sebuah
teknologi program yang dapat digunakan dengan mudah. Selain itu munculnya teori
tentang Desain Perangkat Lunak membuat developer menjadi mudah mengidentifikasi
kebutuhan dari user. Selain itu dari penerapan Desain Perangkat Lunak ini membuat
program yang dihasilkan dapat tepat sasaran pada setiap bidang kebutuhan dari user.
Karena adanya Desain Perangakat Lunak ini membuat user diberikan kemudahan
dalam menentukan program yang digunakan.
2. RUMUSAN MASALAH
Rumusan masalah yang akan kita bahas kali ini adalah :
1.
2.
3.
4.
5.
Apa itu Desain Perangkat Lunak ?
Apa syarat dalam Desain Perangkat Lunak ?
Mengapa perlu dilakukan Desain Perangkat Lunak ?
Apa saja prinsip yang terdapat dalam Desain Perangkat Lunak ?
Bagaimana konsep Desain Perangkat Lunak ?
3|MAKALAH CBIS ( COMPUTER BASED INFORMATION SYSTEM )
BAB 2
PEMBAHASAN
1. PENGERTIAN DESAIN PERANGKAT LUNAK
Desain perangkat lunak bukan hanya sebuah perancangan berupa interface
(antar muka) sebuah perangkat lunak, tetapi memiliki lingkup yang jauh lebih luas.
Sebuah proses untuk mendefinisikan sesuatu yang akan dikerjakan dengan
menggunakan teknik yang bervariasi serta didalamnya melibatkan deskripsi mengenai
arsitektur serta detail komponen dan juga keterbatasan yang akan dialami dalam
proses pengerjaannya.
Sebuah proses perancangan membutuhkan pengetahuan mengenai berbagai
teknik atau model perancangan yang dapat digunakan. Selain itu, sebuah perancangan
membutuhkan hasil analisa yang telah mampu mendeskripsikan kebutuhan dari sistem
yang akan dibuat.Dan seorang desainer harus memahami kendala atau hambatan yang
mungkin terjadi pada saat implementasi.
Ini berarti bahwa sebuah proses perancangan memiliki 3 unsur penting, yakni :
a) Pengetahuan mengenai teknik perancangan
b) Kebutuhan sistem
c) Kendala yang mungkin terjadi
Desain Perangkat Lunak merupakan sebuah proses yang berkelanjutan dari analisa
dan didalamnya melakukan identifikasi hasil analisa serta menghasilkan konsep dasar
untuk kepentingan pengembangan perangkat lunak.
Dalam pengertian yang sama, dapat digolongkan bahwa perancangan adalah
mengubah dari “apa” yang menjadi kebutuhan, menjadi “bagaimana” mendefinisikan
kebutuhan tersebut menjadi sebuah perangkat lunak.
Acuan umum untuk menilai bahwa hasil perancangan merupakan hasil perancangan
yang baik
a) Hasil perancangan harus mengimplementaasikan hasil analisa secara eksplisit dan
memenuhi kebutuhan pengguna secara implisit
b) Hasil perancangan harus dapat dimengerti oleh pihak pengembang perangkat
lunak yang akan mengimplementasikan ke dalam bahasa pemrograman
c) Hasil perancangan harus menyediakan gambaran yang lengkap mengenai
perangkat lunak yang akan dibuat, baik dari segi data, fungsi serta perilaku yang
akan dijalankan oleh perangkat lunak tsb.
2. SYARAT DESAIN PERANGKAT LUNAK
Sebuah perancangan perangkat lunak yang baik harus memenuhi syarat-syarat
berikut :
4|MAKALAH CBIS ( COMPUTER BASED INFORMATION SYSTEM )
a. Fleksibel
Setiap program atau aplikasi yang dibuat harus fleksibel dalam artian program
harus mudah diatur atau mudah dalam pengoperasiannya. Hal ini dimaksudkan
agar setiap user pemakai mudah dalam pengoperasian aplikasi tersebut
b. Mudah ditransfer
Data maupun program harus mudah ditransfer kepada media lain. Data atau
aplikasi ini harus dapat dipindahkan dari satu device ke device lain dengan mudah
agar proses pengerjaan dapat dilakukan dengan mudah dan tidak monoton pada
satu device tertentu
c. Mudah dimodifikasi
Aplikasi atau program harus dapat dimodifikasi, namun modifikasi ini bukan
dilakukan oleh user melainkan oleh pihak developer. Hal ini dimaksudkan untuk
mempermudah pihak developer dalam pengembangan aplikasi. Jadi jika terdapat
suatu masalah atau perbaharuan aplikasi dapat dilakukan dengan mudah tanpa
harus memulai dari awal
d. Mudah digunakan
Seringkali kita temui banyak aplikasi yang digunakan sangat sulit
dioperasikan oleh user baru. Program yang dibuat haruslah mudah dalam
pengoperasian karena kita tidak tahu siapa pengguna dari aplikasi kita nanti.
Selain itu kemudahan dalam pengoperasian ini ditujukan agar pihak developer
tidak usah repot-repot untuk melakukan seminar ataupun tutorial bagi user yang
menggunakannya
e. Handal
Program atau aplikasi yang dibuat harusalah handal. Program yang handal
tentu tidak akan mengganggu kinerja dari user. User akan lancar mengoperasikan
karena tidak akan takut jika terdapat suatu bug. Selain itu kehandalan dari
program merupakan salah satu incaran dari user yang menggunakan. Jadi dapat
dikatan program yang laku dalam perdagangan adalah program yang handal
dibidangnya
f. Aman
Program yang didevelop haruslah aman digunakan oleh user. Keamanan ini
mencakup kerahasiaan data yang diolah oleh user. Data yang diolah tidak boleh
tersebar atau terpublikasi secara public ke dunia. Selain itu aman dari sebuah
aplikasi juga dikaji dari virus-virus. Aplikasi yang dibuat haruslah bebas dari
serangan maupun penyebaran virus yang dapat mengganggu serta membahayakan
user maupun data.
g. Tidak Mahal
5|MAKALAH CBIS ( COMPUTER BASED INFORMATION SYSTEM )
Yang paling umum dan penting dalam pengembangan suatu aplikasi adalah
aplikasi yang dibuat haruslah tidak mahal. Tidak mahal ini dikaji dari dua sisi,
yaitu sisi pengembangan dan pemasaran. Aplikasi yang dikembangkan dengan
biaya yang mahal akan menyebabkan mahal juga dalam develop aplikasi.
3. TUJUAN DESAIN PERANGKAT LUNAK
Tujuan dilakukannya perancangan oleh seorang designer system (software
engineer) adalah
a.
b.
c.
d.
e.
Mendekomposisi sistem (perangkat lunak) menjadi komponen-komponennya
(data, antarmuka, prosedur, arsitektur). Sebagai gambaran, pada gambar 5.1
menunjukkan dekomposisi perangkat lunak menjadi halaman web (antarmuka),
script (prosedur) dan basisdata/tabel data (desain data).
Menentukan relasi antar komponen.
Menentukan mekanisme komunikasi antar komponen.Sebagai gambaran, pada
gambar 5.2 yang menunjukkan mekanisme dan relasi antar komponen perangkat
lunak yaitu relasi antarmuka pemakai ke prosedur/script untuk meminta sebuah
data yang diinginkan pengguna serta bagaimana sebuah prosedur mengakses tabel
data agar dapat ditampilkan sesuai dengan permintaan pemakai pada antarmuka
pemakai.
Menentukan antarmuka komponen.
Menjelaskan fungsionalitas masing-masing komponen.
Gambar 1 : Dekomposisi perangkat lunak menjadi komponen-komponennya
Gambar 2 : Mekanisme dan relasi antar komponen perangkat lunak
6|MAKALAH CBIS ( COMPUTER BASED INFORMATION SYSTEM )
4. PRINSIP DESAIN PERANGKAT LUNAK
Perancangan perangkat lunak merupakan model dan proses. Proses
perancangan merupakan serangkaian langkah yang memungkinkan seorang desainer
menggambarkan semua aspek perangkat lunak yang dibangun, sedangkan model
perancangan hampir sama dengan rencana arsitek untuk sebuah rumah yaitu memulai
dengan menyajikan totalitas hal yang akan dibangun (misal pandangan 3 dimensi dari
rumah yang akan dibangun, setelah itu akan disaring hal-hal yang memberikan
panduan bagi pembangunan setiap detail dari rumah, seperti layout ruangan, layout
pipa dan lainnya). Sama halnya dengan model perancangan yang dibuat untuk
perangkat lunak memberikan berbagai pandangan yang berbeda terhadap program
komputer.
Ada beberapa prinsip yang dikemukakan oleh Davis [DAV95] yang perlu
diketahui oleh desainer untuk dapat mengendalikan proses perancangan, yaitu
a. Perancangan harus dapat ditelusuri sampai ke model analisis.
b. Perancangan tidak boleh berulang, maksudnya dapat mengunakan kembali
rancangan yang sudah ada sebelumnya (reusable component).
c. Perancangan dapat diperbaiki atau diubah tanpa merusak keseluruhan sistem.
d. Perancangan harus dinilai kualitasnya pada saat perancangan, bukan setelah
sistem jadi dengan kata lain siap diimplementasikan.
e. Perancangan harus mempunyai beberapa pendekatan alternatif rancangan.
f. Perancangan harus mengungkap keseragaman dan integrasi
g. Perancangan harus meminimalkan kesenjangan intektual antara perangkat lunak
dan masalah yang ada didunia nyata. Maksudnya perancangan perangkat lunak
harus mencerminkan struktur domain permasalahan.
h. Perancangan bukanlah pengkodean dan pengkodean bukanlah perancangan.
i. Perancangan harus dikaji untuk meminimalkan kesalahan-kesalahan konseptual.
Desainer harus menekankan pada hal-hal yang penting seperti elemen-elemen
konseptual (ambiguitas, inkonsisten).
Jika prinsip perancangan diatas diaplikasikan dengan baik, maka desainer
telah mampu menciptakan sebuah perancangan yang mengungkapkan faktor-faktor
kualitas eksternal dan internal[MEY88].
Faktor-faktor eksternal adalah sifat-sifat perangkat lunak yang dapat diamati
oleh pemakai (misal kecepatan, reliabilitas, ketepatan, usabilitas). Sedangkan faktor
internal lebih membawa pada perancangan berkualitas tinggi dan perspektif teknis
dari perangkat lunak yang sangat penting bagi para perekayasa perangkat lunak.
Untuk mencapai kulitas faktor internal, seorang desainer harus memahami konsepkonsep dari perancangan perangkat lunak.
5. KONSEP DESAIN PERANGKAT LUNAK
Pada dasarnya konsep perancangan memberikan kerangka kerja atau pedoman
untuk mendapatkan perangkat lunak yang bisa berjalan dengan baik. Ada beberapa
konsep perancangan yang dikemukakan oleh Pressman [PRE01] dan perlu dipahami
oleh seorang desainer agar mendapatkan perancangan yang berkualitas tinggi yaitu
7|MAKALAH CBIS ( COMPUTER BASED INFORMATION SYSTEM )
1. Abstraksi
Abstraksi merupakan cara untuk mengatur kompleksitas sistem dengan
menekankan karakteristik yang penting dan menyembunyikan detail dari
implementasi. Tiga mekanisme dasar dari abstraksi yaitu :
a) Abstraksi Prosedural, urutan instruksi yang mempunyai sebuah nama yang
menggambrakan fungsi tertentu
b) Abstraksi Data, kumpulan data yang mempunya nama yang menggambarkan
objek data.
c) Abstraksi Control, mengimplikasikan sebuah mekanisme kontrol dari program.
2. Dekomposisi
Dekomposisi merupakan mekanisme untuk merepresentasikan detail-detail
dari fungsionalitas. Dengan adanya dekomposisi membantu para desainer
mengungkapkan detail tingkat rendah ketika perancangan sedang berjalan. Jadi
dekomposisi membagi perancangan secara top-down/menyaring tingkat detail dari
prosedural.
3. Modularitas
Mekanisme membagi perangkat lunak ke dalam elemen-elemen kecil dan
dapat dipanggil secara terpisah, biasanya elemen ini sering disebut dengan modul.
Modularitas merupakan karakteristik penting dalam perancangan yang baik karena
a) Menyediakan pemisahaan fungsionalitas yang ada pada perangkat lunak.
b) Memungkinkan pengembang mengurangi kompleksitas dari sistem.
c) Meningkatkan skalabilitas, sehingga perangkat lunak dapat dikembangkan oleh
banyak personal.
Modularitas perangkat lunak ditentukan oleh coupling dan cohesion:
a) Coupling: derajat ketergantungan antar modul yang berinteraksi.
b) Cohesion: derajat kekuatan fungsional dalam suatu modul
Modul yang baik harus mempunyai chesion yang tinggi dan coupling yang rendah.
Faktor-faktor yang mempengaruhi coupling:
a) Banyaknya data yang dilewatkan antar modul (passing parameter)
b) Banyaknya kontrol data yang dilewatkan antar modul.
c) Banyaknya data global yang digunakan bersama oleh beberapa modul.
4. Arsitektur Perangkat Lunak
Arsitektur perangkat lunak merupakan struktur hirarki dari komponen program
(modul), cara bagaimana komponen tersebut berinteraksi dan struktur data yang
digunakan oleh komponen.
8|MAKALAH CBIS ( COMPUTER BASED INFORMATION SYSTEM )
5. Hirarki Kontrol
Hirarki kontrol disebut juga dengan struktur program, yang merepresentasikan
oraganisasi (hirarki) komponen program (modul) serta mengimplikasikan suatu
hirarki kontrol. Hirarki kontrol tidak mengimplikasikan aspek prosedural dari
perangkat lunak, seperti urutan proses, kejadian/urutan keputusan, atau pengulangan
operasi.
Hirarki kontrol juga merepresentasikan dua karakteristik yang berbeda dari
arsitektur peragkat lunak yaitu visibilitas dan konektivitas. Visibilitas menunjukkan
serangkaian komponen program yang dapat diminta dan dipakai sebagai data oleh
komponen yang diberikan dan dilakukan secara tidak langsung. Sedangkan
konektivitas mengindikasikan serangkaian komponen program yang diminta secara
tidak langsung atau digunakan data oleh sebuah modul yang ditetapkan.
6. Partisi Struktural
Struktur program harus dipartisi secara horisontal maupun struktural. Partisi
ini membagi cabang-cabang yang terpisah dari hirarki modul untuk menjadi sebuah
fungsi program. Ada beberapa keuntungan yang didapat mempartisi arsitektur secara
horisontal, yaitu
a)
b)
c)
d)
Menghasilkan perangkat luank yang mudaj diuji.
Menghasilkan penyebaran efek samping yang sedikit.
Menghasilkan perangkat lunak yang lebih mudah diperluas.
Menghasilkan perangkat lunak yang lebih mudah dipelihara.
Selain struktur program bisa dipartisi secara horisontal bisa juga dipartisi
secara vertikal, dimana kontrol dan kerja dari arsitektur program didistribusikan
secara top-down.
7. Struktur Data
Struktur data merepresentasikan hubungan logis antara elemen-elemen data.
Selain itu struktur data juga menentukan organisasi, metode akses, tingkat
assosiativitas dan alternatif pemrosesan untuk informasi.
8. Prosedur Perangkat Lunak
Prosedur perangkat lunak lebih berfokus pada detail-detail pemrosesan dari
masing-masing modul. Prosedur harus memberikan spesifikasi yang teliti terhadap
pemrosesan, mencakup event, keputusan, operasi, dan struktur data.
9. Penyembunyian Informasi
Sebuah mekanisme perancangan modul sehingga informasi yang terkandung
dalam modul tidak dapat diakses oleh modul lain yang tidak berkepentingan dengan
informasi tersebut. Informasi yang disembunyikan terdiri dari
a) Representasi data
b) Algorita seperti teknik pengurutan dan pencarian
9|MAKALAH CBIS ( COMPUTER BASED INFORMATION SYSTEM )
c) Format masukan dan keluaran
d) Perbedaan mekanisme/kebijakan
e) Antarmuka modul tiangkat rendah Ada beberapa alasan kenapa konsep
perancangan ini perlu dipahami oleh desainer yaitu
f) Mengatur sistem perangkat lunak yang kompleks.
g) Meningkatkan kualitas faktor dari perangkat lunak.
h) Memudahkan penggunaan kembali simantik sistem atau perangkat lunak.
i) Memecahkan permasalahan-permasalahan perancangan yang ada pada umumnya.
10 | M A K A L A H C B I S ( C O M P U T E R B A S E D I N F O R M A T I O N S Y S T E M )
BAB 3
PENUTUP
1. KESIMPULAN
Perkembangan teknologi saat ini berkembang dengan cepat. Metode-metode
dalam pengembangan suatu aplikasipun juga beragam dilakukan. Selain itu
pemenuhan kebutuhan user oleh aplikasi yang dikembangkan menjadi semakin
mudah karena adanya metode desain dari perangkat lunak yang memiliki banyak
persyaratan serta poin-poin yang perlu diperhatikan. Dalam metode desain perangkat
lunak juga dimuat banyak materi dan step-step yang harus dijalankan oleh setiap
developer yang mengembangkan aplikasi tersebut. Oleh karena itu dengan adanya
metode Desain Perangkat Lunak ini dapat menghindari program yang di develop
lepas dari kegunaan dari user yang menggunakan. Selain itu dengan dilakukan desain
dari perangkat lunak membuat aplikasi dapat tepat sasaran pada user yang
menggunakan
11 | M A K A L A H C B I S ( C O M P U T E R B A S E D I N F O R M A T I O N S Y S T E M )
Download