Home >Documents >· Web viewBeberapa perangkat lunak sistem seperti compilers, editors, dan file management...

· Web viewBeberapa perangkat lunak sistem seperti compilers, editors, dan file management...

Date post:13-Sep-2018
Category:
View:217 times
Download:0 times
Share this document with a friend
Transcript:

13

BAB 2

LANDASAN TEORI

Bab ini berisi teori teori pendukung yang digunakan dalam pembuatan aplikasi, diantaranya adalah pengertian kecerdasan buatan, pengertian sistem pakar, metode Fuzzy Logic, dan hal hal yang terkait.

2.1 Teori Umum

2.1.1 Rekayasa Perangkat Lunak

2.1.1.1 Pengertian Rekayasa Perangkat Lunak

Menurut Pressman (2010, p4) perangkat lunak adalah :

Instruksi (program komputer) yang ketika dijalankan menyediakan fitur, fungsi, dan tampilan yang diinginkan.

Struktur data yang memungkinkan program untuk secara memadai memanipulasi informasi.

Informasi deskriptif pada hard copy dan virtual form yang menggambarkan operasi dan program yang digunakan.

Menurut Pressman (2010, p7) ada tujuh kategori software komputer yang memberikan tantangan terhadap pengembang perangkat lunak :

1. System software yaitu, kumpulan program yang ditulis untuk melayani program lain. Beberapa perangkat lunak sistem seperti compilers, editors, dan file management utilities. Pada kasus area perangkat lunak sistem ditandai dengan interaksi berat dengan perangkat keras komputer, penggunaan berat oleh beberapa pengguna, operasi bersamaan yang membutuhkan penjadwalan, berbagi sumber daya, manajemen proses yang canggih, struktur data yang kompleks, dan antarmuka eksternal yang ganda.

2. Application software, program yang berdiri sendiri memecahkan bisnis spesifik yang dibutuhkan. Aplikasi pada area proses bisnis atau teknikal data dengan cara memfasilitasi operasi bisnis atau manajemen pengambilan keputusan teknis. Selain aplikasi pengolahan data konvensional, aplikasi perangkat lunak digunakan untuk mengontrol fungsi bisnis secara real time.

3. Scientific software, ditandai dengan algoritma number crunching. Aplikasi berkisar pada astronomi untuk vulkanologi, dari analisis tegangan automotif untuk ruang orbit antar jemput yang dinamis.

4. Embedded software, yaitu terletak dalam suatu produk atau sistem dan digunakan untuk sistem itu sendiri. Dapat memberikan fungsi signifikan, misalnya fungsi digital dalam sebuah kontrol bahan bakar mobil.

5. Product line software, dirancang untuk memberikan kemampuan khusus untuk digunakan oleh banyak pelanggan yang berbeda. Contohnya persediaan kontrol produk.

6. Web application, terkait dengan hypertext yang menyajikan informasi menggunakan teks dan grafis yang terbatas. Namun, setelah web 2.0 muncul, webapps berkembang menjadi lingkungan komputasi canggih yang tidak hanya menyediakan stand alone feature, fungsi komputasi, dan konten kepada pengguna akhir, tetapi juga terintegrasi dengan database perusahaan dan aplikasi bisnis.

7. Artificial intelligence software, menggunakan algoritma non numerical untuk memecahkan masalah yang kompleks yang tidak bisa menerima perhitungan atau analisis langsung. Aplikasi dalam wilayah ini meliputi robotika, sistem pakar, pengenalan pola, jaringan syaraf tiruan, dan game.

Menurut Pressman (2010, p14) rekayasa perangkat lunak adalah sebuah teknologi yang harus terdiri dari lapisan :

Fokus pada kualitas

Pendekatan teknik apapun (termasuk rekayasa perangkat lunak) harus bersandar pada komitmen organisasi terhadap suatu mutu. Total kualitas manajemen dan filosofi yang sama mendorong budaya perbaikan proses yang berkesinambungan, dan budaya inilah yang mengarah pada pengembangan pendekatan yang semakin dewasa untuk rekayasa perangkat lunak.

Proses

Dasar untuk rekayasa perangkat lunak adalah lapisan proses. Proses pada rekayasa perangkat lunak adalah perangkat yang mengendalikan teknologi lapisan (layer) bersama - sama dan memungkinkan pengembangan perangkat lunak yang rasional dan tepat waktu. Proses mendefinisikan suatu kerangka kerja untuk suatu set key process areas (KPAs) yang harus ditetapkan untuk penyampaian (delivery) yang efektif dari teknologi perangkat lunak. Key process areas membentuk dasar bagi kontrol manajemen proyek perangkat lunak dan menetapkan konteks metode - metode teknis mana yang diterapkan, produk kerja (model, dokumen, data laporan, form, dll) yang diproduksi, milestone yang diterapkan, kualitas terjamin dan perubahan yang dikelola dengan baik.

Metode

Metode rekayasa perangkat lunak menyediakan teknis bagaimana untuk membangun sebuah perangkat lunak. Metode mencakup tugas dan mencakup analisis kebutuhan, desain, program konstruksi, pengujian, pemeliharaan.

Alat bantu

Alat bantu automatis atau semi automatis menyediakan dukungan untuk proses dan metode. Ketika alat alat diintegrasikan, sehingga informasi yang dibuat oleh satu alat dapat digunakan oleh alat lainnya, sebuah sistem yang mendukung perangkat lunak, yang disebut computer aided software engineering (CASE), didirikan. CASE menggabungkan sebuah software, hardware, dan database (sebuah repository berisi informasi penting tentang analisis, desain, program konstruksi dan pengujian) untuk menciptakan lingkungan rekayasa perangkat lunak yang analog dengan CASE untuk hardware.

Gambar 2.1 Lapisan rekayasa perangkat lunak (Pressman, 2010)

2.1.1.2 Model Proses Waterfall

Menurut Pressman (2010, p39) waterfall model disebut juga dengan model classic life cycle. Model proses tersebut mengusulkan sebuah pendekatan kepada perkembangan perangkat lunak yang sistematik dan sekuensial, yang mulai dari tingkat dan kemajuan sistem pada seluruh analisis, desain, kode, pengujian, dan pemeliharaan. Model sekuensi linier melingkupi aktivitas aktivitas sebagai berikut :

Komunikasi

Proses pencarian kebutuhan yang diintensifkan dan difokuskan pada perangkat lunak. Untuk mengetahui sifat dari program yang akan dibuat maka pengembang perangkat lunak harus mengerti tentang domain informasi dari perangkat lunak, contohnya fungsi yang dibutuhkan, user interface, dan lain sebagainya. Komunikasi dititikberatkan untuk mencapai kesepakatan user requirement dan system requirement.

Perencanaan

Menetapkan suatu rencana pengembangan dari perangkat lunak antara lain tugas tugas teknik yang harus dipenuhi, resiko yang kemungkinan akan dihadapi, sumber daya yang dibutuhkan, hasil kerja, dan jadwal kerja.

Pemodelan

Menghasilkan suatu model yang memungkinkan pengembang dan pelanggan memahami lebih lanjut mengenai kebutuhan software dan perancangan perancangan untuk memenuhi kebutuhan tersebut. Desain perangkat lunak sebenarnya adalah proses multi langkah yang berfokus pada empat atribut sebuah program yang berbeda; struktur data, arsitektur perangkat lunak, representasi antarmuka, dan detail (algoritma) procedural. Proses desain menerjemahkan syarat atau kebutuhan ke dalam sebuah representasi perangkat lunak, yang dapat diperkirakan demi kualitas sebelum dimulai kegiatan mengkode. Sebagaimana persyaratan, desain didokumentasikan dan menjadi bagian dari konfigurasi perangkat lunak.

Konstruksi

Desain harus diterjemahkan ke dalam bentuk mesin yang bisa dibaca, atau disebut juga langkah pembuatan kode. Jika desain dilakukan dengan cara yang lengkap, pembuatan kode dapat diselesaikan secara mekanis.

Penyebaran

Perangkat lunak dikirim kepada pelanggan yang dimaksudkan untuk mengevaluasi hasil kerja dan memberikan feedback (umpan balik) berdasarkan evaluasi tersebut.

Gambar 2.2 Waterfall Model (Pressman, 2010)

2.1.1.3 Delapan Aturan Emas

Ben Sneiderman mengemukakan delapan aturan yang dapat digunakan sebagai petunjuk dasar perancangan antarmuka bagi pengguna dalam membangun suatu aplikasi (Smith, 2010, p86). Delapan aturan ini disebut Eight Golden Rules of Interface Design, yaitu :

1. Berusaha untuk konsisten.

Konsistensi bisa berarti banyak hal. Ada konsistensi tindakan, tata letak layar, navigasi, dan terminologi. Menyediakan konsistensi dapat membantu pengguna untuk mengetahui apa yang diharapkan dan dapat mempelajari antarmuka dengan lebih cepat.

2. Memenuhi kegunaan yang universal.

Pengguna yang beragam, membuat desain harus diperhitungkan dalam pertimbangan pertimbangan yang kompleks, seperti rentang usia, disabilitas, dan keragaman teknologi. Mungkin butuh penjelasan bagi pemula, tetapi shortcuts harus disediakan untuk expert user.

3. Memberikan umpan balik yang informatif.

Untuk setiap aksi, harus ada semacam respon, yang disebut juga umpan balik. Tindakan yang sering dilakukan dan tidak terlalu penting, dapat diberikan umpan balik sederhana. Tetapi ketika tindakan merupakan suatu hal yang penting, maka umpan balik sebaiknya lebih substansial. Contoh : timbulnya respon suara ketika salah menekan tombol pada waktu input data.

4. Merancang dialog untuk menghasilkan suatu penutupan.

Urutan informasi harus dikelompokkan mulai dari awal, tengah, dan akhir. Umpan balik yang informatif akan memberikan indikasi bahwa cara yang dilakukan sudah benar dan dapat mempersiapkan kelompok aksi yang berikutnya.

5. Memberikan penanganan kesalahan yang sederhana.

Sistem harus dirancang agar pengguna tidak melakukan kesalahan yang serius. Apabila kesalahan terjadi, sistem dapat mendeteksi kesalahan dengan cepat dan memberikan mekanisme yang sederhana, sehingga mudah dipahami untuk penanganan kesalahan.

6. Mudah kembali ke tindakan sebelumnya.

Hal tersebut dapat mengurangi kekhawatiran pengguna, karena pengguna mengetahui bahwa kesalahan yang dilakukan dapat dibatalkan, sehingga pengguna tidak takut untuk melakukan eksplorasi pilihan pilihan lain yang belum biasa digunakan.

7. Mendukung tempat pengendali internal.

Pengguna yang memiliki keterampilan merasa menginginkan untuk mengontrol sistem dan sistem akan merespon aksi yang mereka lakukan, sehingga tidak terjadi hal yang sebaliknya bahwa pengguna merasa dikendalikan oleh sistem. Sebaiknya sistem dirancang se

Click here to load reader

Reader Image
Embed Size (px)
Recommended