Jumat, 01 Oktober 2010

tugas I _ Rekayasa Perangkat Lunak

Tugas Rekayasa Perangkat Lunak di serahkan tertanggal 6 Oktober 2010 , Jam 16.30 wita s/d 18.00 wita.

Materi Soalnya sebagai berikut:

1. Apakah Software itu ?
Software adalah suatu system yang menghubungkan suatu computer(Hardware) dengan User(pengguna) agar dapat tercipta seuatu system yang dapat di berfungsi sesuai kemauan User. Sistem OperasiSistem Operasi adalah Sistem dasar di mana Sofware –Sofware dapat beroperasi dalam sebuah computer atau elektronik lainya. Saat ini hamper semua system operasi menganut fungsi GUI (Grapical User Interfance), di mana dapat mempermudah User dalam mengoperasikan suatu computer. Contoh fungsi GUI adalah Pointing device dengan perangkat berupa mouse.

2. Apakah Software Engineering ?
Software engineering adalah disiplin ilmu yang menerapkan prinsipprinsip engineering agar mendapatkan software yang ekonomis yang dapat dipercaya dan bekerja lebih efisien pada mesin yang sebenarnya.

3. Perbedaan antara Software Engineering dan Computer Science(ilmu komputer)?

Software engineering terdiri dari 3 elemen kunci yang memungkinkan manajer
mengontrol proses pengembangan software dan memberikan praktisi dasar yang baik untuk pembentukan software berkualitas tinggi., yaitu :
a. Metode,
b. Peralatan (tools),
c. Prosedur,

a. Metode Software Enginnering
Metode software engineering memberikan tehnik-tehnik bagaimana membentuk software.
Metode ini terdiri dari serangkaian tugas :
Perencanaan & estimasi proyek
- Analisis kebutuhan sistem dan software
- Desain struktur data
- Arsitektur program dan prosedur algoritma
- Coding
- Testing dan pemeliharaan

b. Peralatan Software Engineering
Peralatan software engineering memberikan dukungan atau semiautomasi untuk metode.
Contohnya :
- CASE (Case Aided Software Engineering), yaitu suatu software yang menggabungkan software, hardware, dan database software engineering untuk menghasilkan suatu lingkungan software engineering.
- Database Software Engineering, adalah sebuah struktur data yang berisi informasi penting tentang analisis, desain, kode dan testing.
- Analogi dengan CASE pada hardware adalah : CAD, CAM, CAE

c. Prosedur Software Engineering
Terdiri dari :
- Urut-urutan di mana metode tersebut diterapkan
- Dokumen
- Laporan-laporan
- Formulir-formulir yang diperlukan
- Mengontrol kualitas software
- Mengkoordinasi perubahan yang terjadi pada software

Ilmu komputer (bahasa Inggris: Computer Science), 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), 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).

4.Perbedaan Software Engineering dan System Engineering?
Software engineering terdiri dari 3 elemen kunci yang memungkinkan manajer
mengontrol proses pengembangan software dan memberikan praktisi dasar yang baik untuk pembentukan software berkualitas tinggi., yaitu :
a. Metode,
b. Peralatan (tools),
c. Prosedur,

a. Metode Software Enginnering
Metode software engineering memberikan tehnik-tehnik bagaimana membentuk software.
Metode ini terdiri dari serangkaian tugas :
Perencanaan & estimasi proyek
- Analisis kebutuhan sistem dan software
- Desain struktur data
- Arsitektur program dan prosedur algoritma
- Coding
- Testing dan pemeliharaan

b. Peralatan Software Engineering
Peralatan software engineering memberikan dukungan atau semiautomasi untuk metode.
Contohnya :
- CASE (Case Aided Software Engineering), yaitu suatu software yang menggabungkan software, hardware, dan database software engineering untuk menghasilkan suatu lingkungan software engineering.
- Database Software Engineering, adalah sebuah struktur data yang berisi informasi penting tentang analisis, desain, kode dan testing.
- Analogi dengan CASE pada hardware adalah : CAD, CAM, CAE

c. Prosedur Software Engineering
Terdiri dari :
- Urut-urutan di mana metode tersebut diterapkan
- Dokumen
- Laporan-laporan
- Formulir-formulir yang diperlukan
- Mengontrol kualitas software
- Mengkoordinasi perubahan yang terjadi pada software

System Engineering adalah suatu aktifitas pemecahan masalah fungsi sistem yang
diinginkan, ditemukan, dianalisis, dan dialokasikan ke elemen-elemen sistem individu.
Computer System Engineering disebut juga Sistem Analis, dimulai dengan :
1. Penetapan tujuan customer
2. Hambatan-hambatan dan representasi fungsi performance yang dapat dialokasikan ke masing-masing elemen sistem.

Segera setelah fungsi performance, hambatan dan interface ditetapkan, system engineering selanjutnya melakukan pekerjaan alokasi. Selama pengalokasian fungsi diserahkan kepada satu / lebih elemen sistem (misalnya software, hardware, people, dll) seringkali alokasi alternatif diusulkan dan dievaluasi.

Fungsi yang dialokasikan maksudnya adalah menentukan mana yang masuk ke hardware, ke software dan ke brainware

5. Pengertian Software Process?
adalah Perangkat lunak terstruktur proses pengembangan yang dimaksudkan untuk membantu insinyur perangkat lunak memahami dan meningkatkan kinerja mereka, dengan menggunakan "disiplin, prosedur data-driven". Diciptakan oleh Watts Humphrey untuk menerapkan prinsip-prinsip yang mendasari Software Engineering Institute’s (SEI) Kedewasaan Rekayasa Perangkat Lunak Institut Capability Model (CMM) pada praktik pengembangan perangkat lunak satu pengembang.

6. Pengertian Software Process Model?
adalah suatu struktur yang diterapkan pada pengembangan suatu produk perangkat lunak. Proses ini memiliki beberapa model yang masing-masing menjelaskan pendekatan terhadap berbagai tugas atau aktivitas yang terjadi selama proses. Contoh model proses pengembangan perangkat lunak antara lain adalah proses iteratif, Extreme Programming, serta proses air terjun (waterfall).

Proses air terjun (waterfall):
1. Requirements analysis and definition: Mengumpulkan kebutuhan secara
lengkap kemudian kemudian dianalisis dan didefinisikan kebutuhan yang
harus dipenuhi oleh program yang akan dibangun. Fase ini harus dikerjakan
secara lengkap untuk bisa menghasilkan desain yang lengkap.

2. System and software design: Desain dikerjakan setelah kebutuhan selesai
dikumpulkan secara lengkap.

3. Implementation and unit testing: desain program diterjemahkan ke dalam
kode-kode dengan menggunakan bahasa pemrograman yang sudah
ditentukan. Program yang dibangun langsung diuji baik secara unit.

4. Integration and system testing: Penyatuan unit-unit program kemudian
diuji secara keseluruhan (system testing).

5. Operation and maintenance: mengoperasikan program dilingkungannya
dan melakukan pemeliharaan, seperti penyesuaian atau perubahan karena
adaptasi dengan situasi sebenarnya.

Kekurangan yang utama dari model ini adalah kesulitan dalam mengakomodasi
perubahan setelah proses dijalani. Fase sebelumnya harus lengkap dan selesai
sebelum mengerjakan fase berikutnya.

Masalah dengan waterfall :
1. Perubahan sulit dilakukan karena sifatnya yang kaku.

2. Karena sifat kakunya, model ini cocok ketika kebutuhan dikumpulkan secara
lengkap sehingga perubahan bisa ditekan sekecil mungkin. Tapi pada
kenyataannya jarang sekali konsumen/pengguna yang bisa memberikan
kebutuhan secara lengkap, perubahan kebutuhan adalah sesuatu yang wajar
terjadi.

3. Waterfall pada umumnya digunakan untuk rekayasa sistem yang besar
dimana proyek dikerjakan di beberapa tempat berbeda, dan dibagi menjadi
beberapa bagian sub-proyek.

Tidak ada komentar:

Posting Komentar