Pengenalan Software Engineering

Post on 19-Jan-2016

64 views 1 download

description

Pengenalan Software Engineering. Erlin Windia Ambarsari , ST Universitas Indraprasta PGRI. APA Itu SOFtware ?. Program komputer dan dokumen terkait seperti kebutuhan , model-model rancangan dan user manual. Produk software dibangun  Pelanggan tertentu ( pesanan ), pasar umum - PowerPoint PPT Presentation

Transcript of Pengenalan Software Engineering

PENGENALAN SOFTWARE ENGINEERING

Erlin Windia Ambarsari, ST

Universitas Indraprasta PGRI

APA ITU SOFTWARE?

Program komputer dan dokumen terkait seperti kebutuhan, model-model rancangan dan user manual.

Produk software dibangun Pelanggan tertentu (pesanan), pasar umum Umum Sistem yg diproduksi oleh organisasi

pengembang dan dijual ke pasar terbuka ke siapapun yg membelinya. Contoh : word, Excel.

Pesanan Sistem yg dipesan oleh pelanggan tertentu. Dikembangkan khusus bagi pelanggan oleh kontraktor perangkat lunak.

Software baru dapat dibuat dengan mengembangkan program baru, mengatur sistem software umum atau menggunakan kembali sofware yang ada

KARAKTERISTIK SOFTWARE

S/w dibangun dan dikembangkan, tidak dibuat dalam bentuk yang klasik

Perangkat lunak tidak pernah usang Sebagian besar perangkat lunak dibuat

secara custom-built, serta tidak dapat dirakit dari komponen yang sudah ada. Dengan berkembangnya OOP, pengembangkan

software berbasis komponen semakin banyak dilakukan.

TIPE SOFTWARE

System Software Real-time Software Business Software Engineering & Scientific Software Embedded Software PC Software Web-based Software Artificial Intelligence Software

SOFWARE SISTEM

Software Sistem adalah software yang berfungsi untuk melayani software lainnya

Tugas utama : resource sharing, scheduling, manajemen proses, interface eksternal, dll.

Contoh : compiler, utility manajemen file, komponen-komponen operasi, driver, dan sebagainya.

REAL-TIME SOFTWARE

Software yang berfungsi untuk memonitor/ menganalisis/mengontrol kejadian-kejadian dalam “real world”

SOFTWARE BISNIS

Merupakan daerah aplikasi software terbesar Dibuat untuk mempercepat proses bisnis dan

mempermudah pengambilan keputusan Berhubungan dengan database yang besar C/o : MyOB, Accurate

SOFTWARE EMBEDDED

Produk-produk mekanik/elektronik semakin “pintar” karena dilengkapi dengan prosesor dan software yang embeded didalamnya.

Software biasanya disimpan dalam ROM/EPROM

Software melakukan fungsi-fungsi yang sederhana

Contoh : VCR, televisi, mesin cuci, dashboard mobil, dsb

SOFWARE WEB-BASED

Software Web-based pada prinsipnya merupakan kombinasi dari bahasa untuk memformat dokumen (HTML) serta instruksi-instruksi yang dinyatakan dalam bentuk CGI Java Perl

SOFTWARE INTELLIGENCE

Software Intelligence adalah software yang dapat menggantikan sebagian fungsi kecerdasan.

Salah satu bentuk aplikasi yang populer adalah “Expert System”. C/o : Expert Choice, Superdecision

Berkembang pula “Artificial Neural Network”

HARGA SOFTWARE

Harga S/w sering didominasi oleh biaya-biaya sistem komputer. Biaya-biaya software pada PC > Biaya H/w.

Biaya S/w lebih digunakan untuk memelihara dibandingkan saat awal membangun S/w tsb. Harga pemeliharaan bisa beberapa kali lipat untuk hidup S/w lebih lama. Alasan saat pengembangan, desain kode menjadi sulit

S/w engineering berkaitan dengan biaya efektif

APA CIRI-CIRI SOFTWARE YANG BAIK? Software harus sesuai dengan kebutuhan yang

diperlukan dan dijalankan serta harus dapat dipelihara, diandalkan dan diterima oleh user.

Pemeliharaan Software harus berkembang untuk memenuhi perubahan

kebutuhan Dapat diandalkan

Software harus dapat dipercaya Efesiensi

Software tidak boleh menyia-nyiakan penggunaan sumber daya sistem.

Dapat diterima Software harus diterima oleh user ketika telah dirancang

dimengerti, dapat digunakan dan cocok dengan sistem lain.

KRISIS SOFTWARE

Kegagalan software adalah proyek Software dimana : Melebihi anggaran Terlambat Tidak memenuhi harapan dan kebutuhan user

Tidak memenuhi persyaratan fungsional atau kinerja Tidak memenuhi persyaratan mutu

CONTOH KEGAGALAN SOFTWARE

State of California: $40M DMV project $44M Prison software system $100M State child support system

$10B FAA modernization project UK tax filing system

CONTOH KEGAGALAN SOFTWARE YANG FATAL

Di tahun 1988, sebuah kapal laut Amerika menembakkan peluru kendali dan menjatuhkan sebuah pesawat yang di identifikasi sebagai musuh. Ternyata pesawat yang ditembak adalah sebuah pesawat komersial Airbus A 320 yang sangat jauh berbeda dengan pesawat musuh. Akibatnya 290 penumpang pesawat tersebut tewas. Angkatan laut Amerika menyalahkan sistem penjejak ( tracking software ) yang memperagakan output yang tidak dapat dimengerti (cryptic) sehingga mengambil kesimpulan yang salah.

APA PENYEBAB KRISIS SOFTWARE? Kebutuhan S/w tidak cocok untuk menggambarkan

kebutuhan atau harapan user Perencanaan proyek sering tidak realistis, tidak

lengkap atau diabaikan Biaya proyek dan estimasi jadwal diremehkan atau

ditetapkan oleh dekrit manajemen Kualitas S/w sulit untuk ditentukan, desain, dan

dibangun Kemajuan pembangunan S/w sulit untuk dilihat tdk

diketahui. Perubahan persyaratan tidak disertai dengan

perubahan dalam rencana S/w Desain berubah tanpa mengubah persyaratan Standar tidak digunakan atau didokumentasikan

BAGAIMANA PEMECAHANNYA?

SOFTWARE ENGINEERING

APA ITU SOFTWARE ENGINEERING?

Software engineering adalah disiplin ilmu tehnik yang terfokus pada semua aspek produksi software.

Insinyur S/w harus mengadopsi pendekatan yang sistematis dan terorganisir utk pekerjaan mrk dengan menggunakan alat dan teknik untuk bertahan pada masalah yang akan dipecahkan berdasarkan kendala pengembangan dan sumberdaya yang tersedia.

Membangun software tanpa menggunakan software engineering seperti membangun mobil dengan hanya mengambil alat dan besi.

APA ITU SOFTWARE ENGINEERING?

Aplikasi ilmu komputer praktis, tehnik manajemen, dan keterampilan lainnya seperti : desain, pembangunan, dan pemeliharaan. Semua itu didokumentasikan.

Aplikasi metode sistematik, alat dan tehnik untuk mencapai kebutuhan atau sasaran sistem software

Aplikasi system engineering untuk pembangunan software

Menggunakan teknik disiplin untuk mengurangi masalah keterlambatan pengiriman, biaya yang membengkak, dan gagal memenuhi kebutuhan/persyaratan

Dimaksudkan untuk berkomunikasi dengan pemberi modal.

SOFTWARE ENGINEERING Difinisi masalah ( analisa kebutuhan) Analisa solusi (desain software) Proses perencanaan Proses control Proses evaluasi (verifikasi, pemisahan, dan

pengujian)

GAMBARAN SOFTWARE ENGINEERING

ELEMEN SOFTWARE ENGINEERING (IEEE CSDP EXAM)

Professionalism, economics, ethics Software requirements Software design Software construction Software testing Software maintenance Software configuration management Software engineering management Software engineering processes Software engineering tools and methods Software quality

PROGRAMMING VS SOFTWARE ENGINEERING

Programming ≠ Software Engineering Programming without Software Engineering is

just hacking

IEEE SOFTWARE ENGINEERING STANDARD

IEEE-Std 1074-1997 IEEE-Std 1012-1998 IEEE-Std 829-1998 IEEE-Std 830-1998 IEEE-Std 12207.0-1996 IEEE-Std 12207.1-1997 IEEE-Std 12207.2-1998