250 likes | 420 Views
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
E N D
PengenalanSoftware Engineering Erlin Windia Ambarsari, ST UniversitasIndraprasta PGRI
APA ItuSOFtware? • Program komputerdandokumenterkaitsepertikebutuhan, model-model rancangandan user manual. • Produk software dibangun Pelanggantertentu (pesanan), pasarumum • Umum Sistemygdiproduksiolehorganisasipengembangdandijualkepasarterbukakesiapapunygmembelinya.Contoh : word, Excel. • Pesanan Sistemygdipesanolehpelanggantertentu. Dikembangkankhususbagipelangganolehkontraktorperangkatlunak. • Software barudapatdibuatdenganmengembangkan program baru, mengatursistem software umumataumenggunakankembalisofware yang ada
Karakteristik Software • S/w dibangundandikembangkan, tidakdibuatdalambentuk yang klasik • Perangkatlunaktidakpernahusang • Sebagianbesarperangkatlunakdibuatsecara custom-built, sertatidakdapatdirakitdarikomponen yang sudahada. • Denganberkembangnya OOP, pengembangkan software berbasiskomponensemakinbanyakdilakukan.
Tipe Software • System Software • Real-time Software • Business Software • Engineering & Scientific Software • Embedded Software • PC Software • Web-based Software • Artificial Intelligence Software
SofwareSistem • Software Sistemadalah software yang berfungsiuntukmelayani software lainnya • Tugasutama : resource sharing, scheduling, manajemenproses, interface eksternal, dll. • Contoh : compiler, utility manajemen file, komponen-komponenoperasi, driver, dansebagainya.
Real-Time SOFTWARE • Software yang berfungsiuntukmemonitor/ menganalisis/mengontrolkejadian-kejadiandalam “real world”
SofTwareBisnis • Merupakandaerahaplikasi software terbesar • Dibuatuntukmempercepatprosesbisnisdanmempermudahpengambilankeputusan • Berhubungandengan database yang besar • C/o : MyOB, Accurate
Software Embedded • Produk-produkmekanik/elektroniksemakin “pintar” karenadilengkapidenganprosesordan software yang embededdidalamnya. • Software biasanyadisimpandalam ROM/EPROM • Software melakukanfungsi-fungsi yang sederhana • Contoh : VCR, televisi, mesincuci, dashboard mobil, dsb
Sofware Web-Based • Software Web-based padaprinsipnyamerupakankombinasidaribahasauntukmemformatdokumen (HTML) sertainstruksi-instruksi yang dinyatakandalambentuk • CGI • Java • Perl
Software Intelligence • Software Intelligence adalah software yang dapatmenggantikansebagianfungsikecerdasan. • Salahsatubentukaplikasi yang populeradalah “Expert System”. C/o : Expert Choice, Superdecision • Berkembang pula “Artificial Neural Network”
Harga Software • Harga S/w seringdidominasiolehbiaya-biayasistemkomputer. Biaya-biaya software pada PC > Biaya H/w. • Biaya S/w lebihdigunakanuntukmemeliharadibandingkansaatawalmembangun S/w tsb. Hargapemeliharaanbisabeberapa kali lipatuntukhidup S/w lebih lama. Alasan saatpengembangan, desainkodemenjadisulit • S/w engineering berkaitandenganbiayaefektif
ApaCiri-ciri Software yang Baik? • Software harussesuaidengankebutuhan yang diperlukandandijalankansertaharusdapatdipelihara, diandalkandanditerimaoleh user. • Pemeliharaan • Software harusberkembanguntukmemenuhiperubahankebutuhan • Dapatdiandalkan • Software harusdapatdipercaya • Efesiensi • Software tidakbolehmenyia-nyiakanpenggunaansumberdayasistem. • Dapatditerima • Software harusditerimaoleh user ketikatelahdirancang dimengerti, dapatdigunakandancocokdengansistem lain.
Krisis Software • Kegagalan software adalahproyek Software dimana : • Melebihianggaran • Terlambat • Tidakmemenuhiharapandankebutuhan user • Tidakmemenuhipersyaratanfungsionalataukinerja • Tidakmemenuhipersyaratanmutu
ContohKegagalan Software • State of California: • $40M DMV project • $44M Prison software system • $100M State child support system • $10B FAA modernization project • UK tax filing system
ContohKegagalan Software yang fatal • Di tahun 1988, sebuahkapallautAmerikamenembakkanpelurukendalidanmenjatuhkansebuahpesawat yang diidentifikasisebagaimusuh. Ternyatapesawat yang ditembakadalahsebuahpesawatkomersial Airbus A 320 yang sangatjauhberbedadenganpesawatmusuh. Akibatnya 290 penumpangpesawattersebuttewas. AngkatanlautAmerikamenyalahkansistempenjejak ( tracking software ) yang memperagakan output yang tidakdapatdimengerti (cryptic) sehinggamengambilkesimpulan yang salah.
ApapenyebabKrisis Software? • Kebutuhan S/w tidakcocokuntukmenggambarkankebutuhanatauharapan user • Perencanaanproyekseringtidakrealistis, tidaklengkapataudiabaikan • Biayaproyekdanestimasijadwaldiremehkanatauditetapkanolehdekritmanajemen • Kualitas S/w sulituntukditentukan, desain, dandibangun • Kemajuanpembangunan S/w sulituntukdilihat tdkdiketahui. • Perubahanpersyaratantidakdisertaidenganperubahandalamrencana S/w • Desainberubahtanpamengubahpersyaratan • Standartidakdigunakanataudidokumentasikan
BagaimanaPemecahannya? SOFTWARE ENGINEERING
APA ITU SOFTWARE ENGINEERING? • Software engineering adalahdisiplinilmutehnik yang terfokuspadasemuaaspekproduksi software. • Insinyur S/w harusmengadopsipendekatan yang sistematisdanterorganisirutkpekerjaanmrkdenganmenggunakanalatdanteknikuntukbertahanpadamasalah yang akandipecahkanberdasarkankendalapengembangandansumberdaya yang tersedia. • Membangun software tanpamenggunakan software engineering sepertimembangunmobildenganhanyamengambilalatdanbesi.
ApaItu Software Engineering? • Aplikasiilmukomputerpraktis, tehnikmanajemen, danketerampilanlainnyaseperti : desain, pembangunan, danpemeliharaan. Semuaitudidokumentasikan. • Aplikasimetodesistematik, alatdantehnikuntukmencapaikebutuhanatausasaransistem software • Aplikasi system engineering untukpembangunan software • Menggunakanteknikdisiplinuntukmengurangimasalahketerlambatanpengiriman, biaya yang membengkak, dangagalmemenuhikebutuhan/persyaratan • Dimaksudkanuntukberkomunikasidenganpemberi modal.
Software engineering • Difinisimasalah ( analisakebutuhan) • Analisasolusi (desain software) • Prosesperencanaan • Proses control • Prosesevaluasi (verifikasi, pemisahan, danpengujian)
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