Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Software Engineering SOFTWARE AND SOFTWARE ENGINEERING SOFTWARE ENGINEERING 1.

Presentasi serupa


Presentasi berjudul: "Software Engineering SOFTWARE AND SOFTWARE ENGINEERING SOFTWARE ENGINEERING 1."— Transcript presentasi:

1 Software Engineering SOFTWARE AND SOFTWARE ENGINEERING SOFTWARE ENGINEERING 1

2 Apa itu software? Software → computer software Namun, pada John von Neumann type computer, antara data dengan software yang mengolah data, batasannya makin tidak jelas Istilah software berasal dari hardware ◦ware: barang yang dibuat; produk. kitchenware, ironware, etc. Contoh kalimat menggunakan software muncul pertama kali tahun 1960 [Oxford Dictionary] Sebelumnya, tahun 1958, Prof. John W. Tukey (Princeton Univ.) menuliskan software dalam tulisan ilmiahnya di jurnal American Mathematical Monthly) No. 1, yang ditemukan oleh Fred R. Shapiro (Graduate School of Law, Yel Univ.). SOFTWARE ENGINEERING 2

3 ソフトウェアとは Computer software: ditulis dengan bahasa buatan yang disebut bahasa pemrograman (programming language) Mirip dengan novel, artikel, tulisan ilmiah, yang juga disusun dari kata- kata, namun punya keistimewaan, dapat berinteraksi langsung dengan dunia luar Hasil yang ditulis dari bahasa pemrograman disebut program Beda program dengan software: ◦Program: deret symbol yang dijalankan oleh computer ◦Software: seperti pada hardware, sebutan umum untuk program Dalam bahasa Inggris, software tidak memiliki bentuk plural – program ada SOFTWARE ENGINEERING 3

4 Apa itu software engineering? Dalam IEEE Standard , Software Engineering (SE) didefinisikan sebagai: 1.Metode untuk membangun/mengembangkan, mengoperasikan, dan memelihara, yang dapat dihitung, dengan secara sistematis dan terstruktur 2.Penelitian untuk #1 Tujuan mata kuliah ini adalah untuk mencari proses, metode, yang dapat digunakan untuk membangun software yang dapat memenuhi kebutuhan dunia saat ini Dibandingkan dengan engineering yang lain seperti Mechanical Engineering, Electrical Engineering, SE muncul belakangan ◦Lebih mirip dengan Mechanical Engineering Software tidak memilik wujud, seperti halnya mesin atau listrik SOFTWARE ENGINEERING 4

5 ソフトウェア工学とは Dari keabstrakannya, dalam keilmuannya (Ilmu Pasti), SE dekat dengan ilmu komputer atau matematika Dari sudut pandang bagaimana software itu dibuat – menggunakan bahasa pemrograman –, maka SE dekat dengan ilmu sastra ◦Metode penulisan program mirip dengan cara menulis buku (B.W. Kernighan, et.al. 1974) SOFTWARE ENGINEERING 5

6 Rekayasa Piranti Lunak Arti rekayasa (dari KBBI): 1.(kata benda) penerapan kaidah-kaidah ilmu dl pelaksanaan (spt perancangan, pembuatan konstruksi, serta pengoperasian kerangka, peralatan, dan sistem yg ekonomis dan efisien) 2.(kiasan) rencana jahat atau persekongkolan untuk merugikan dsb pihak lain: ia menjadi terdakwa krn -- yg dilakukan tetangganya; Arti engineering (dari Oxford Dictionaries): 1.(noun) the branch of science and technology concerned with the design, building, and use of engines, machines, and structures. a field of study or activity concerned with modification or development in a particular area: software engineering 2.the action of working artfully to bring something about: if not for his shrewd engineering, the election would have been lost SOFTWARE ENGINEERING 6

7 Tasks in Software Engineering Sama dengan bidang engineering yang lain, pekerjaan dalam SE mencakup: ◦Modeling Apa permasalahannya, sistem seperti apa yang harus dibuat, tidak jelas diberikan dari awal. Perlu dilakukan analisis terhadap target domain, identifikasi masalah, menangkap kebutuhan pengguna. Diperlukan teknik pemodelan. ◦Specification Dalam engineering, mendeskripsikan spesifikasi dengan benar, merupakan syarat utama. ◦Design Inti dari engineering adalah desain. ◦Verification Apakah sistem telah dibuat sesuai spesifikasinya? Perlu verifikasi. ◦Maintenance Sistem yang hanya dibuat saja tidak bermanfaat. Pemeliharaan, upaya untuk menyesuaikan dengan kebutuhan dan perubahan lingkungan juga diperlukan. ◦Organization Pada umumnya, sistem tidak dibangun oleh satu orang. Perlu teknik manajemen untuk membangun dalam organisasi. SOFTWARE ENGINEERING 7

8 Tiga sisi penting dalam SE Dari sudut pandang engineering, yang penting adalah bagaimana membangun software sebagai suatu produk ◦yang dibuat sendiri, untuk digunakan sendiri, tidak perlu engineering Tiga sisi yang harus diperhatikan: 1.Dari sisi teknik/teknologi murni yang digunakan untuk membangun dan memelihara software dengan tingkat keabstrakan yang tinggi 2.Dari sisi manajemen yang digunakan untuk mengelola pembangunan software dalam suatu organisasi 3. Dari sisi manusia, seperti komunikasi, pengakuan, yang digunakan untuk meningkatkan kepuasan pengguna, serta untuk meningkatkan motifasi dan kerja sama tim dalam pembangunannya SOFTWARE ENGINEERING 8

9 Sejarah Software Engineering Pembangunan software dimulai sejak ditemukannya komputer ◦ENIAC (1946), program dibuat dengan menyambung-nyambungkan kabel Komputer yang dilengkapi dengan program, ditemukan oleh John von Neumann ("First Draft of Report on the EDVAC", 1945) ◦Dalam bagian akhirnya, tercantum program yang pertama kali dibuat Komputer komersial pertama, yang digunakan dalam sensus penduduk Amerika Serikat, 1951 IBM System/360, 1964 ◦dengan tingkat kompatibilitas tinggi, meningkatkan penggunaan software ◦OS-nya sendiri disusun dari 5 juta baris program assembly SOFTWARE ENGINEERING 9

10 Krisis software Kebutuhan akan software tidak diimbangi dengan teknologi untuk membuatnya dan juga infrastrukturnya ◦jadwal pembangunan yang terlambat ◦kualitas produknya rendah (1960) → Software crisis, krisis dalam software SOFTWARE ENGINEERING 10

11 Perkembangan SE Software Engineering muncul untuk menyelamatkan krisis Pertama kali diangkat dalam konferensi NATO, Garmisch (Deutsh), 1968 Tahun 1970an, pemrograman terstruktur, banyak diteliti/dikaji, baik dari sisi teori maupun aplikasinya Pada era ini lah, pondasi pemrograman, metodologi perancangan, dan teknik analisis kebutuhan dibuat Tahun 1980an, lagi-lagi permintaan/kebutuhan software tidak diimbangi dengan perkembangan engineering Muncul bidang ilmu manajemen (spt. quality control, configuration management), software process di dalam software engineering → Software Process: CMM, ISO9000 Tahun 1990an, Object Oriented Programming mendapatkan perhatian → Object Oriented Design, Object Oriented Analysis SOFTWARE ENGINEERING 11

12 Keragaman aplikasi Dibandingkan sebelumnya (tahun 70an), tahun 90an, aplikasi software makin beragam ◦menyebarnya PC dan Internet ◦pembebasan, desentralisasi, miniaturisasi, multimedia → software engineering yang selama ini dikembangkan jadi "ketinggalan"? Pada abad ke-21 ini, kebutuhan software di dalam masyarakat dan ketergantungan pada software meningkat → setelah 30 tahun, pentingnya software engineering makin dirasakan SOFTWARE ENGINEERING 12

13 Cakupan software engineering Literatur yang umum: ◦I. Sommerville, Software Engineering (6th Ed.), Addison-Wesley, 2001 ◦R. Pressman, Software Engineering, A Practioner's Approach (5th Ed.), McGraw-Hill, 2001 Asosisasi yang melakukan penelitian, membuat standar: ◦IEEE (Institute of Electrical and Electronics Engineers) Computer Society ◦ACM (Assocication for Computer Machinery) → menyusun sistematika pengetahuan dalam software engineering → SWEBOK (Software Engineering Body of Knowledge), V → CC2001 (Computer Curricula 2001) SOFTWARE ENGINEERING 13

14 Kematangan engineering dalam software engineering Mary Shaw, Prospects for an engineering discipline of software, IEEE Software, 7(6):15–24, November 1990: ◦Teknologi lahir dari industri dan seni/kerajinan tangan. Setelah keduanya saling terhubung, masuk tahapan komersialisasi. Kemudian jika ilmu pengetahuan ikut andil juga, maka lahirlah engineering. ◦Dibandingkan dengan bidang lain, software, baru bagian pemrograman dan bagian khusus lain saja yang sudah masuk tahapan engineering. D. L. Parnas. Software aspects of strategic defense systems, Communications of ACM, 28(12):1326–1335, 1985: ◦Software untuk SDI (Strategic Defense Initiative, or Star Wars Plan), tidak mungkin dibangun, karena teknologi yang ada belum mencukupi. F. P. J. Brooks. No silver bullet: Essence and accidents of software engineering, IEEE Software, pp. 10–19, April ◦Belum ada teknologi setara peluru perak untuk pengembangan software SOFTWARE ENGINEERING 14

15 Alternatif jalan menuju solusi Jalan menuju solusi pengembangan yang memungkinkan: ◦Tidak buat sendiri, tapi beli ◦Memperjelas kebutuhan dan prototyping ◦Incremental Development ◦Super Developer Kemampuan yang dibutuhkan seorang programmer: ◦Logika yang dimiliki seorang ahli matematika ◦Bakat engineering seperti Edison ◦Keakuratan yang dimiliki seorang banker ◦Imaginasi seorang penulis novel misteri ◦Kemampuan praktis seorang businessman ◦Sikap mau bekerja sama dan juga mengerti masalah manajerial A. P. Ershov. Aesthetics and the human factor in programming. Communications of ACM, 15(7):501–505, 1972 SOFTWARE ENGINEERING 15


Download ppt "Software Engineering SOFTWARE AND SOFTWARE ENGINEERING SOFTWARE ENGINEERING 1."

Presentasi serupa


Iklan oleh Google