Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Rekayasa Perangkat Lunak (Software Engineering) Rahmat D.R. Dako, ST., M.Eng.

Presentasi serupa


Presentasi berjudul: "Rekayasa Perangkat Lunak (Software Engineering) Rahmat D.R. Dako, ST., M.Eng."— Transcript presentasi:

1 Rekayasa Perangkat Lunak (Software Engineering) Rahmat D.R. Dako, ST., M.Eng

2 FAQs about software engineering What is software? What is software? What is software engineering? What is software engineering? What is the difference between software engineering and computer science? What is the difference between software engineering and computer science? What is the difference between software engineering and system engineering? What is the difference between software engineering and system engineering?

3 What is software ? Computer programs and associated documentation such as requirements, design models and user manuals. Computer programs and associated documentation such as requirements, design models and user manuals. Software products may be developed for a particular customer or may be developed for a general market. Software products may be developed for a particular customer or may be developed for a general market. Software products may be Software products may be ◦ Generic - developed to be sold to a range of different customers e.g. PC software such as Excel or Word. ◦ Bespoke (custom) - developed for a single customer according to their specification. New software can be created by developing new programs, configuring generic software systems or reusing existing software. New software can be created by developing new programs, configuring generic software systems or reusing existing software.

4 What is Software Engineering ? Software engineering is an engineering discipline that is concerned with all aspects (requirement capturing, spesification, design, coding, testing and maintenance) of software production (Ian Sommerville) Perekayasa perangkat lunak seharusnya menerapkan pendekatan sistematik dan terorganisasi kedalam pekerjaan mereka, menggunakan perangkat dan teknik tertentu yang tergantung pada : masalah yang harus dipecahkan, Keterbatasan-keterbatasan untuk pengembangan, Sumber-sumber yang tersedia.

5 What is the difference between software engineering and computer science? Computer science is concerned with theory and fundamentals; Computer science is concerned with theory and fundamentals; software engineering is concerned with the practicalities of developing and delivering useful software. software engineering is concerned with the practicalities of developing and delivering useful software. Computer science theories are still insufficient to act as a complete underpinning for software engineering (unlike e.g. physics and electrical engineering). Computer science theories are still insufficient to act as a complete underpinning for software engineering (unlike e.g. physics and electrical engineering).

6 What is the difference between software engineering and system engineering? System engineering is concerned with all aspects of computer-based systems development including hardware, software and process engineering. System engineering is concerned with all aspects of computer-based systems development including hardware, software and process engineering. Software engineering is part of this process concerned with developing the software infrastructure, control, applications and databases in the system Software engineering is part of this process concerned with developing the software infrastructure, control, applications and databases in the system System engineers are involved in system specification, architectural design, integration and deployment System engineers are involved in system specification, architectural design, integration and deployment

7 Software Engineering Software engineering berhubungan dengan teori- teori, metoda-metoda dan alat-alat (tools) untuk pengembang perangkat lunak profesional. Tools dan prosedur digunakan untuk membantu mengelola ukuran, kompleksitas dan jaminan kualitas dari produk perangkat lunak yang dihasilkan.

8

9 Definisi Software Engineering Menurut Fritz Bauer (1969) Software Engineering adalah pendekatan sistematik untuk pengembangan, pengoperasian, perawatan suatu perangkat lunak yaitu dengan menerapkan prinsip rekayasa dalam usaha memperoleh perangkat lunak yang ekonomis, dapat bekerja secara andal dan efisien pada mesin sebenarnya. Menurut Boehm (1986) Software Engineering adalah aplikasi dari sains dan matematika yang membuat peralatan komputer menjadi bermanfaat bagi manusia melalui program komputer, prosedur dan dokumentasi yang berhubungan dengannya.

10 Definisi Software Engineering (2) Menurut Richard Fairly (1985) Software Engineering adalah disiplin yang secara teknologi dan manajerial berhubungan dengan produksi dan perawatan suatu perangkat lunak, yang dikembangkan dan dimodifikasi menurut fungsi waktu dan dengan perkiraan biaya didalamnya.

11 Mengapa perlu Software Engineering Masalahnya adalah kompleksitas Masalahnya adalah kompleksitas Banyak dibutuhkan sumber-sumber, tetapi kuncinya adalah ukuran (size): Banyak dibutuhkan sumber-sumber, tetapi kuncinya adalah ukuran (size): ◦ UNIX berisi 4 juta lines of code ◦ Windows 2000 berisi 10 8 lines of code dikerjakan oleh Tim dengan 1400 orang Software engineering adalah bagaimana mengelola kompleksitas tersebut dan dapat bekerja dalam satu Tim Work.

12 CATATAN  Tujuan pokok dari software engineering adalah membuat pengembangan perangkat lunak lebih dekat ke sains dan jauh dari suatu “karya seni”  Tujuan Dasar dari suatu software engineering adalah untuk menghasilkan suatu perangkat lunak berkualitas, tepat waktu dan ekonomis. Ekonomis sebab rancangan yang buruk berakibat pada peningkatan biaya pemeliharaan.

13 Jadi Software Engineering terutama untuk menjawab masalah: Kualitas Perangkat Lunak Kualitas Perangkat Lunak ◦ Menentukan kehandalan sistem komputer. ◦ Mempengaruhi unjuk kerja sistem. ◦ Menentukan apakah perangkat lunak mudah dipelihara dan dikembangkan. Pemeliharaan Perangkat Lunak Pemeliharaan Perangkat Lunak ◦ Memperbaiki kesalahan (bugs) pada perangkat lunak. ◦ Menyesuaikan dengan perubahan perangkat keras dan sistem perangkat lunak. ◦ Menyesuaikan dengan perkembangan dunia usaha dan organisasi.

14 Tiga Elemen Kunci pada Rekayasa Perangkat Lunak Software Engineering Metodologi Perangkat Bantu Prosedur

15 1. Metodologi Merupakan sekumpulan teknik atau metoda untuk membangun suatu perangkat lunak melalui beberapa tahap pengembangan. 2. Perangkat pembantu (Tools) Perkakas untuk dipergunakan pada proses pengembangan. Misal: CASE, data flow diagram, decision table, program design language (PDL), dll. 3. Prosedur Pengelolaan kegiatan pengembangan (manajemen). Pengelolaan kegiatan pengembangan (manajemen). Misal: Mendefinisikan tahapan-tahapan untuk penerapan metoda, keluaran dari tiap tahap (dokumen, laporan, formulir), kendali jaminan kualitas dan mile- stones kemajuan proyek.

16 Next Week…


Download ppt "Rekayasa Perangkat Lunak (Software Engineering) Rahmat D.R. Dako, ST., M.Eng."

Presentasi serupa


Iklan oleh Google