Tuesday, December 29, 2009

Pengenalan Rancangan Perangkat Lunak

Definisi RPL
Rekayasa Perangkat Lunak adalah disiplin ilmu yang membahas semua aspek produksi perangkat lunak, mulai tahap awal spesifikasi sistem sampai pemeliharaan sistem setelah digunakan. Perekayasa Perangkat Lunak memakai pendekatan yang sistematis dan terorganisir untuk menghasilkan perangkat lunak berkualitas tinggi.

Tujuan RPL
- Meningkatkan keakuratan, performance & efficiency produk secara keseluruhan dalam pengembangan.
- Menerapkan metodologi yang terdefinisi dengan baik untuk resolusi software.

Perbedaan RPL & Ilmu Komputer
Ilmu Komputer berhubungan dengan teori dan metode yang mendasari sistem komputer dan perangkat lunak. Teori ini merupakan suatu model fisik dan analitik untuk menyelesaikan kasus yang spesifik, sedangkan Rekayasa Perangkat Lunak berhubungan dengan masalah-masalah praktis untuk menghasilkan suatu perangkat lunak. Pendekatan dilakukan dengan model bisnis dan strategi bisnis suatu perangkat lunak.

Perbedaan RPL VS Rekayasa Sistem
Rekayasa Sistem berhubungan dengan semua aspek pengembangan sistem berbasis komputer, termasuk perangkat keras, perangkat lunak dan rekayasa proses. Sedangkan Rekayasa Perangkat Lunak adalah bagian dari Rekayasa Sistem.

Proses PL
Proses perangkat lunak adalah serangkaian kegiatan yang tujuannya untuk mengembangkan atau evolusi perangkat lunak. Kegiatan-kegiatan tersebut adalah:
- Spesifikasi perangkat lunak
- Pengembangan perangkat lunak
- Validasi perangkat lunak
- Evolusi perangkat lunak

Ilmu Komputer

Ilmu komputer (Ilkom) atau dalam bahasa Inggrisnya disebut Computer Science (CS), secara umum diartikan sebagai ilmu yang mempelajari baik tentang komputasi, perangkat keras (hardware) maupun perangkat lunak (software). Ilmu komputer mencakup beragam topik yang berkaitan dengan komputer, mulai dari analisa abstrak algoritma sampai subyek yang lebih konkret seperti bahasa pemrograman, perangkat lunak, termasuk perangkat keras. Sebagai suatu disiplin ilmu, Ilmu Komputer lebih menekankan pada pemrograman komputer, dan rekayasa perangkat lunak (software), sementara teknik komputer lebih cenderung berkaitan dengan hal-hal seperti perangkat keras komputer (hardware). Namun demikian kedua istilah tersebut sering disalah-artikan oleh banyak orang.


Tesis Church-Turing menyatakan bahwa semua alat komputasi yang telah umum diketahui sebenarnya sama dalam hal apa yang bisa mereka lakukan, sekalipun dengan efisiensi yang berbeda. Tesis ini terkadang dianggap sebagai prinsip dasar dari ilmu komputer. Para ahli ilmu komputer biasanya menekankan komputer von Neumann atau mesin Turing (komputer yang mengerjakan tugas yang kecil dan deterministik pada suatu waktu tertentu), karena hal seperti itulah kebanyakan komputer digunakan sekarang ini. Para ahli ilmu komputer juga mempelajari jenis mesin yang lain, beberapa diantaranya belum bisa dipakai secara praktikal (seperti komputer neural, komputer DNA, dan komputer kuantum) serta beberapa diantaranya masih cukup teoritis (seperti komputer random and komputer oracle).

Ilmu Komputer mempelajari apa yang bisa dilakukan oleh beberapa program, dan apa yang tidak (komputabilitas dan intelegensia buatan), bagaimana program itu harus mengevaluasi suatu hasil (algoritma), bagaimana program harus menyimpan dan mengambil bit tertentu dari suatu informasi (struktur data) dan bagaimana program dan pengguna berkomunikasi (antarmuka pengguna dan bahasa pemrograman).

Ilmu komputer berakar dari elektronika, matematika dan linguistik. Dalam tiga dekade terakhir dari abad 20, ilmu komputer telah menjadi suatu disiplin ilmu baru dan telah mengembangkan metode dan istilah sendiri. Departemen ilmu komputer pertama didirikan di Universitas Purdue pada tahun 1962. Hampir semua universitas sekarang mempunyai departemen ilmu komputer.

Penghargaan tertinggi dalam ilmu komputer adalah Turing Award, pemenang penghargaan ini adalah semua pionir di bidangnya.

Edsger Dijkstra mengatakan:

Ilmu komputer bukan tentang komputer sebagaimana astronomi bukan tentang teleskop

Fisikawan ternama Richard Feynman mengatakan:

Ilmu komputer umurnya tidak setua fisika; lebih muda beberapa ratus tahun. Walaupun begitu, ini tidak berarti bahwa "hidangan" ilmuwan komputer jauh lebih sedikit dibanding fisikawan. Memang lebih muda, tapi dibesarkan secara jauh lebih intensif!

Cabang ilmu utama informatika:

- Dasar Matematika

- Teori Ilmu Komputer

- Perangkat Lunak

- Perangkat Keras

- Organisasi Sistem Komputer

- Data & Sistem Informasi

- Metodologi Komputasi

- Aplikasi Komputer

- Lingkungan Komputasi

Catatan Tentang Istilah 'Informatika' & 'Ilmu Komputer'

Dalam bahasa Indonesia, istilah Informatika diturunkan dari bahasa Perancis informatique, yang dalam bahasa Jerman disebut Informatik. Sebenarnya kata ini identik dengan istilah computer science di Amerika Serikat dan computing science di Inggris. Namun istilah informatics dalam bahasa Inggris memiliki makna yang sedikit berbeda yaitu lebih menekankan pada aspek pengolahan informasi secara sistematis dan rasional.

Hubungan Informatika Dengan Bidang Lain

Ilmu komputer berkaitan erat dengan beberapa bidang lain. Bidang-bidang ini tidak benar-benar terpisah, sekalipun mempunyai perbedaan penting.

Ilmu Informasi

Ilmu Informasi adalah ilmu yang mempelajari data dan informasi, mencakup bagaimana menginterpretasi, menganalisa, menyimpan dan mengambil kembali. Ilmu informasi dimulai sebagai dasar dari analisa komunikasi dan basis data.

Sistem Informasi

Sistem Informasi adalah aplikasi komputer untuk mendukung operasi dari suatu organisasi yaitu: operasi, instalasi dan perawatan komputer, perangkat lunak dan data. Sistem Informasi Manajemen adalah kunci dari bidang yang menekankan finansial dan personal manajemen. 'Sistem Informasi' dapat berupa gabungan dari beberapa elemen teknologi berbasis komputer yang saling berinteraksi dan bekerja sama berdasarkan suatu prosedur kerja (aturan kerja) yang telah ditetapkan, dimana memproses dan mengolah data menjadi suatu bentuk informasi yang dapat digunakan dalam mendukung keputusan.

Rekayasa Perangkat Lunak

Rekayasa Perangkat Lunak pada prinsipnya menekankan pada tahapan-tahapan pengembangan suatu perangkat lunak yakni : Analisis, Desain, Implementasi, Testing dan Maintenance. Pada tahap yang lebih luas Rekayasa Perangkat Lunak mengacu pada Manajemen Proyek pengembangan Perangkat Lunak itu sendiri dengan tetap memperhatikan tahapan-tahapan pengembangan sebelumnya.

Dalam pengembangannya perangkat lunak memiliki berbagai model yaitu model water fall (model konvensional sebagai model terdahulu yang dikembangkan dan karena model water fall nyaris sama dengan siklus hidup pengembangan sistem), model prototype (model yang disukai oleh user dan pengembang), model sequensial linear, model RAD (rapid aplikation model), model formal method atau metode formal disini sebelum diadakannya implementasi terlebih dahulu rancangan model yang dibuat diverifikasi terlebih dahulu sehingga tidak ada lagi kesalahan - kesalahan pada saat implementasi.

Pengenalan Perangkat Lunak

Definisi PL
Perangkat Lunak adalah suatu aplikasi program komputer yang di dalamnya terdapat:
- Program itu sendiri
- Konfigurasi yang digunakan
- Dokumentasi yang menjelaskan struktur sistem
- Dokumentasi yang menjelaskan bagaimana menggunakan sistem
- Informasi tentang versi terbaru

Produk Perangkat Lunak dikembangkan sesuai dengan siapa pemakai perangkat lunak tersebut. Produk Perangkat lunak dibagi menjadi:
- Produk Generik, yang dijual pada pasar terbuka
- Produk Spesifik, yang dibuat dan dijual sesuai pesanan dari pemakai.

Problem Pembuatan PL
- Tidak memiliki waktu yang cukup dalam mengumpulkan data pada proses pembuatan perangkat lunak.
- Ketidakpuasan user pada PL yang dibuat.
- Kualitas PL terkadang meragukan.
- Sulit dalam memaintenance PL sekarang.

Macam PL
Perangkat Lunak Berdasarkan Pemakai:
- Generik : Perangkat lunak yang biasa digunakan secara umum
- Spesifik : Perangkat lunak yang dibuat berdasarkan pesanan
Perangkat Lunak Berdasarkan Fungsional:
- Interfacing
- Operating System
- Perangkat Lunak Aplikasi
- CASE Tools

PL Berdasarkan Pemakai
- Generik: Perangkat lunak yang digunakan secara umum. Ex: Word Processing, seperti Microsoft Word, WordPad.
- Spesifik: Perangkat lunak yang dibuat berdasarkan pesanan. Banyak Software House yang menghasilkan perangkat lunak ini berdasarkan proyek/pesanan tertentu.

PL Berdasarkan Fungsinya
- Interfacing : Perangkat lunak ini menghubungkan suatu perangkat keras tertentu, seperti hardware driver, interfaces dengan perangkat keras lain.
- Operating System : Perangkat lunak yang menjalankan sistem komputer dan merupakan interface dari sistem komputer dan program aplikasi yang berjalan diatasnya.
- Program Aplikasi : program ini digunakan untuk keperluan tertentu, yang tujuannya membantu pekerjaan manusia menjadi lebih mudah. Program ini yang banyak dibahas dalam pembuatan perangkat lunak.

Persyaratan PL
- Perangkat lunak harus memberikan bantuan dalam merepresentasikan dan mengakses file-file eksternal yang dibuat dengan alat bantu lain.
- Persyaratan Fungsional dan Non-Fungsional
- Persyaratan User
- Persyaratan Sistem
- Dokumentasi Persyaratan Perangkat Lunak

Spesifikasi Persyaratan System
- User harus diberi fasilitas untuk mendefinisikan jenis file eksternal.
- Setiap file eksternal bisa memiliki alat bantu relevan yang bisa diterapkan pada file tersebut.
- Setiap file eksternal bisa direpresentasikan sebagai ikon yang spesifik pada display user.
- Fasilitas harus disediakan untuk ikon yang merepresentasikan suatu jenis file eksternal yang akan didefinisikan oleh user.
- Ketika user memilih suatu ikon yang merepresentasikan file eksternal, efek pemilihan adalah penerapan alat bantu yang berhubungan dengan jenis file eksternal ke file yang direpresentasikan oleh ikon yang dipilih.

Persyaratan Fungsional & Non Fungsional
- Persyaratan Fungsional : Pernyataan layanan tentang bagaimana sistem harus bereaksi terhadap input, sistem harus berlaku pada situasi-situasi tertentu. Secara khusus menyatakan apa yang tidak boleh dilakukan sistem.
- Persyaratan Non Fungsional : Pernyataan tentang batasan layanan dan fungsi yang diberikan sistem.
- Persyaratan Domain : Persyaratan yang datang dari domain aplikasi sistem dan merefleksikan karakteristik domain tersebut

Persyaratan User
- Mendeskripsikan persyaratan fungsional dan non-fungsional sehingga dapat dipahami oleh user yang tidak memiliki pengetahuan teknik.
- Persyaratan user harus ditulis memakai bahasa natural, formal dan diagram intuitif yang sederhana. Persyaratan user tidak boleh didefinisikan memakai model implementasi.
- Masalah yang sering muncul:
• Tidak Adanya Kejelasan
• Kesimpang-siuran Persyaratan
• Penggabungan Persyaratan

Persyaratan Sistem
Persyaratan sistem ini lebih rinci dari persyaratan user, dan berfungsi sebagai dasar kontrak untuk implementasi sistem. Persyaratan sistem ini digunakan sebagai titik awal perancangan sistem. Bahasa natural banyak digunakan dalam mendefinisikan persyaratan sistem.

Membuka Password BIOS


Terkadang kita lupa dengan password BIOS, atau seperti yang sering saya alami ketika akan menginstal komputer pasien, ternyata biosnya dipassword oleh pemiliknya dan tidak memberitahu password komputer tersebut, sehingga ketika akan merubah konfigurasi bios mengalami kesulitan. Biasanya untuk membuka password tersebut dilakukan dengan cara merubah posisi jumper atau melepas baterai komputer, sebuah pekerjaan yang amat merepotkan dan riskan. Untuk melepas jumper, kita memerlukan manual mother board sedangkan melepas baterai CMOS, pada komputer tertentu terutama yang produk lama biasanya baterainya disolder ke mother board. Bila tidak hati-hati dan salah melakukannya mother board bisa rusak. Berikut ini ada cara untuk mengatasi kerepotan-kerepotan tersebut :


1. Standar BIOS backdoor password

Dengan cara mengetikan password menurut nama pembuatnya (coba salah satu dan perhatikan besar kecilnya huruf) sebagai berikut:


1.1 AWARD BIOS

AWARD SW, AWARD_SW, Award SW, AWARD PW, award, awkward, J64, j256, j262, j332, 01322222, 589589, 589721, 595595, 598598, HLT, SER, SKY_FOX, aLLy, aLLY, Condo, CONCAT, TTPHA, aPAf, HLT, KDD, ZBAAACA, ZAAADA, ZJAAADC, djonet


1.2 AMI BIOS

AMI, A.M.I., AMI SW, AMI_SW, BIOS, PASSWORD, HEWITT RAND, Oder. Jika cara di atas gagal, password lain yang bisa dicoba (untuk AMI, AWARD atau BIOS lainnya) adalah: LKWPETER, lkwpeter, BIOSTAR, biostar, BIOSSTAR, biosstar, ALAFAROME, Syxz, Wodj


2. Membuka BIOS lewat software

Bila cara yang di atas gagal, Anda bisa membuka password bios dengan menggunakan utility DEBUG dari MSDOS. Sebaiknya Anda mengerjakannya dalam mode MSDOS murni, bukan dari MSDOS shell dalam Windows. Setelah masuk dalam prompt debug, ketik perintah berikut:


2.1 Untuk AMI/AWARD BIOS

O 70 17

O 71 17

Q


2.2 Untuk PHOENIX BIOS

O 70 FF

O 71 17

Q


2.3 GENERIK berlaku untuk semua mother board AT (board XT tidak punya CMOS)

O 70 2E

O 71 FF

Q


CATATAN: Karakter pertama adalah huruf O bukan angka 0. Setelah melakukan langkah di atas, reset komputer dan Anda bisa merubah konfigurasi komputer. Selamat bekerja.