I. INTRODUCTION TO SOFTWARE ENGINEERING. 1. What and Why Sofware Engineering?

dokumen-dokumen yang mirip
Pendahuluan Rekayasa Perangkat Lunak

PENDAHULUAN REKAYASA PERANGKAT LUNAK. By PresenterMedia.com

REKAYASA PERANGKAT LUNAK

REKAYASA PERANGKAT LUNAK 1

Tujuan Perkuliahan. PENGANTAR RPL (Pert. 2 chapter 1 Pressman) Agenda. Definisi Software (Perangkat Lunak) Lunak) 23/09/2010

Fase Desain Proyek Perangkat Lunak

PENGENALAN. Perancangan Perangkat Lunak. (Software Engineering) Bertalya Program Pascasarjana Univesitas Gunadarma

REKAYASA PERANGKAT LUNAK (Software engineering)

Ratna Wardani. Department of Electronic Engineering Yogyakarta State University

Rekayasa Perangkat Lunak

REKAYASA PERANGKAT LUNAK

Pendahuluan. Oleh : Dewi Sartika, M.Kom

Pertemuan 2 SOFTWARE DEVELOPMENT LIFE CYCLE (SDLC)


PERANGKAT LUNAK & REKAYASA PERANGKAT LUNAK

Pendahuluan Rekayasa Perangkat Lunak

Produk perangkat lunak tersebut:

Rekayasa Perangkat Lunak (Software Engineering)

PEMODELAN ANALISIS PL

Perancangan Sistem Informasi

5. Aktivitas generic dalam semua proses perangkat lunak antara lain adalah : a. Spesifikasi dan pengembangan b. Validasi dan evolusi c.

REKAYASA BERKOMPONEN

Defri Kurniawan, M.Kom

Pertemuan 1 PENGENALAN REKAYASA PERANGKAT LUNAK

REKAYASA PERANGKAT LUNAK. 3 sks Sri Rezeki Candra Nursari reezeki2011.wordpress.com

SOFTWARE DEVELOPMENT LIFE CYCLE (SDLC) Siklus Hidup Perangkat Lunak (SWDLC/Software Development Life Cycle)

Pertemuan 2 SOFTWARE DEVELOPMENT LIFE CYCLE (SDLC) POKOK BAHASAN

THE SOFTWARE PROCESS

1. Pengenalan Rekayasa Perangkat Lunak. Teknik Informa-ka Politeknik Negeri Malang

The Process. A Layered Technology. Software Engineering. By: U. Abd. Rohim, MT. U. Abd. Rohim Rekayasa Perangkat Lunak The Process RPL

REKAYASA PERANGKAT LUNAK I ALIF FINANDHITA, M.T. - TEKNIK INFORMATIKA UNIKOM 1

Andi Sunyoto, M.Kom Web: andi.amikom.ac.id

BAB II LANDASAN TEORI. untuk menyelesaikan suatu sasaran yang tertentu (Jogiyanto, 2005:1).

Pengenalan Rekayasa Perangkat Lunak (RPL)

PENGENALAN REKAYASA PERANGKAT LUNAK

Nama : Rendi Setiawan Nim :

3/17/16 Testing dan Audit Perangkat Lunak - Universitas Mercu Buana Yogyakarta

Perspektif Alur-kerja (workflow) - barisan kegiatan Perspektif Alur Data (Data flow) alur informasi Perspektif Peran/Aksi siapa melakukan apa.

REKAYASA PERANGKAT LUNAK I

Rekayasa Perangkat Lunak

Hanif Fakhrurroja, MT

Rekayasa Perangkat Lunak

Hanif Fakhrurroja, MT

Analysis Modeling 4/10/2018. Focus on What not How. Kenapa Analisis Kebutuhan. Definisi Analisis Kebutuhan. Langkah-Langkah Analisis Kebutuhan

SOFTWARE DEVELOPMENT LIFE CYCLE (SDLC)

Etika Profesional Komputer

Rekayasa Perangkat Lunak

1. PENDAHULUAN 1. PERANGKAT LUNAK DAN PERKEMBANGANNYA

REKAYASA PERANGKAT LUNAK. ( 1 st week)

Pengenalan Rekayasa Perangkat Lunak. Pertemuan II

Teknik Informatika S1

BAB I PENDAHULUAN I.1 Latar Belakang Masalah

Mata Kuliah Testing & Implementasi Sistem Program Studi Sistem Informasi 2014/2015 STMIK Dumai -- Pertemuan 2 --

Rekayasa Perangkat Lunak. Tujuan

Review Rekayasa Perangkat Lunak. Nisa ul Hafidhoh

BAB 2 LANDASAN TEORI

BAB II DASAR TEORI. 2.2 Sistem Suku Bunga Secara umum terdapat dua metode dalam perhitungan bunga, yaitu metode Flat dan Efektif.

PERTEMUAN 2 DAN 3 PERENCANAAN PROYEK PERANGKAT LUNAK 1

1 BAB III OBJEK DAN METODE PENELITIAN

MODUL REKAYASA PERANGKAT LUNAK STMIK DHARMAPALA RIAU

BAB 2 LANDASAN TEORI

Pemodelan Berorientasi Objek

Pendekatan-Pendekatan Pengembangan Sistem Hanif Al Fatta M.kom

REKAYASA PERANGKAT LUNAK. 3 sks Sri Rezeki Candra Nursari reezeki2011.wordpress.com

PROSES DESAIN. 1. Metodologi Pengembangan Sistem

BAB II KONSEP PEMBANGUNAN SISTEM DARI PERSPEKTIF SOFTWARE ENGINEERING

Jenis Metode Pengembangan Perangkat Lunak

A. Konsep dan Teknik Pemeliharaan Perangkat Lunak

A Layered Technology

PROSES DESAIN FAKULTAS ILMU KOMPUTER - UNIVERSITAS BRAWIJAYA 3/14/2017

Metode-Metode Pengembangan Desain Aplikasi

SOFTWARE PROCESS MODEL

PRODUK DAN PROSES. Aprilia Sulistyohati, S.Kom. Jurusan Teknik Informatika Universitas Islam Indonesia. Your Logo

BAB III OBJEK DAN METODE PENELITIAN. Objek penelitian yang di ambil penulis adalah Apotek Century Jalan

BAB III METODOLOGI PENELITIAN. Metode pengumpulan data yang digunakan pada penelitian ini berupa studi

Dibuat Oleh : 1. Andrey ( )

BAB I PENDAHULUAN I-1

REKAYASA PERANGKAT LUNAK. 3 sks Sri Rezeki Candra Nursari reezeki2011.wordpress.com

Rekayasa Perangkat Lunak

BAB 2 LANDASAN TEORI

PERANGKAT LUNAK & REKAYASA PERANGKAT LUNAK

SILABUS MATAKULIAH. Indikator Pokok Bahasan/Materi Aktifitas Pembelajaran

Tugas Rekayasa Perangkat Lunak

Tugas Rekayasa Perangkat Lunak

Definisi RPL Adalah : Software Engineering. Suatu teknologi untuk membangun sebuah Software Metodologi dan peralatannya.

Judul. Deskripsi dan Spesifikasi Kebutuhan Sistem Berbasis Komputer. Oleh: Tim Dit. TIK UPI

BAB 4 PELAKSANAAN PENGUJIAN

METODE PENGEMBANGAN PERANGKAT LUNAK BERBASIS MULTIMEDIA. Oleh: Eka Wahyu Hidayat 1

Interraksi Manusia dan Komputer

Kebutuhan Aplikasi Web

REKAYASA PERANGKAT LUNAK. 3 sks Sri Rezeki Candra Nursari reezeki2011.wordpress.com

BAB III METODOLOGI PENELITIAN. dalam pengumpulan data atau informasi guna memecahkan permasalahan dan

Mengapa Perlu Kode Etik Profesi Teknologi Informasi dan Komunikasi

ENGINEER / PEREKAYASA??? Dian Retno Sawitri

BAB III OBJEK DAN METODE PENELITIAN. penelitian. Objek penelitian dalam penelitian ini adalah Sistem Informasi

Transkripsi:

I. INTRODUCTION TO SOFTWARE ENGINEERING 1. What and Why Sofware Engineering?

1.1 Software Engineering (Rekayasa Perangkat Lunak) Ekonomi dari semua bangsa-bangsa maju tergantung pada perangkat lunak Semakin banyak sistem yang dikendalikan oleh perangkat lunak Rekayasa Perangkat Lunak mempunyai kaitan dengan teori, metode, dan perkakas (tools) untuk pengembangan perangkat lunak profesional Rekayasa Perangkat Lunak sudah menjadi bagian yang penting untuk menghadirkan pendapatan nasional pada semua negara maju

1.2 Software Costs (Biaya-Biaya Perangkat Lunak) Biaya-biaya perangkat lunak sering mendominasi biaya-biaya sistem.. Biaya-biaya perangkat lunak pada suatu PC sering lebih besar dari harga perangkat keras. Biaya-biaya perawatan perangkat lunak lebih besar dibanding dengan pengembangan perangkat lunak, karena sistem dengan masa pakai lama, biaya pemeliharaan mungkin beberapa kali biaya- biaya pengembangan. Rekayasa Perangkat Lunak mempunyai kaitan dengan biaya-biaya pengembangan perangkat lunak yang ekonomis.

1.3 FAQs about Software Engineering (Pertanyaan-pertanyaan Seputar SE) Apakah software itu? Apakah software engineering itu? Apa perbedaan antara software engineering dan computer science? Apa perbedaan antara software engineering dan system engineering? Apakah software process itu?

FAQs about Software Engineering (Lanjutan) Apa saja yang merupakan biaya-biaya rekayasa perangkat lunak itu? Apa saja metode rekayasa perangkat lunak itu? Apakah CASE (Computer-Aided Software Engineering) itu? Apa saja atribut dari perangkat lunak yang baik? Apakah yang merupakan tantangan kunci dalam menghadapi rekayasa perangkat lunak?

What is software? perintah (program komputer) yang bila dieksekusi memberikan fungsi dan unjuk kerja seperti yang diinginkan; struktur data yang memungkinkan program memanipulasi informasi secara proporsional; dan dokumen yang menggambarkan operasi dan kegunaan program. Produk Perangkat lunak mungkin : Generic (Umum)) - yang dikembangkan untuk dijual ke bidang pelanggan berbeda; Bespoke/Custom (Pesanan)) - dikembangkan untuk pelanggan tunggal menurut spesifikasi mereka.

What is software engineering? Software engineering adalah suatu disiplin rekayasa (rancang-bangun) yang terkait dengan semua aspek produksi perangkat lunak. Engineer perangkat lunak mengadopsi pendekatan sistematis dan terorganisir untuk pekerjaan mereka dan menggunakan teknik dan tools yang disesuaikan dengan masalah yang dihadapi untuk dipecahkan, batasan pengembangan, dan sumber daya tersedia.

IEEE Definition (IEEE = Institute of Electrical and Electronic Engineers) Software engineering adalah: 2. Aplikasi dari sebuah pendekatan yang bersifat kuantifiabel, disiplin, dan sistematis bagi pengembangan, operasi, dan pemeliharaan perangkat lunak. 3. Studi tentang pendekatan-pendekatan seperti pada (1)( Bidang Penelitian Software Engineering mengacu pada kedua hal tsb.

What is the difference between software engineering and computer science? Computer science mempunyai kaitan dengan theory and fundamentals; software engineering mempunyai kaitan dengan practicalities of developing and delivering useful software. Computer science sekarang ini tidak cukup lengkap untuk bertindak sebagai tiang penyokong software engineering.

What is the difference between software engineering and system engineering? System engineering mempunyai kaitan dengan semua aspek pengembangan sistem berbasis- komputer yang mencakup perangkat keras, perangkat lunak,dan yang terkait dengan proses bisnis. Software engineering berkonsentrasi pada komponen perangkat lunak sistem yang lebih besar. System engineers mencakup spesifikasi sistem, desain arsitektur, pengintegrasian, dan penyebaran.

What is a software process? Software process merupakan himpunan aktivitas tujuan pengembangan atau evolusi perangkat lunak. Aktivitas umum dalam semua proses perangkat lunak adalah: Specification (Spesifikasi)- hal-hal yang diperlukan oleh sistem dan batasan pengembangannya. Development (Pengembangan)- produksi sistem perangkat lunak. Validation (Pengesahan) - pemeriksaan perangkat lunak sesuai dengan keinginan pelanggan. Evolution (Evolusi) - pengubahan perangkat lunak sesuai dengan permintaan pelanggan.

What is a software process model? Software process model merupakan representasi sederhana suatu software process,, yang diperkenalkan dari suatu perspektif spesifik. Contoh perspektif proses adalah Workflow Perspektif - Urutan aktivitas Data-Flow Perspektif - Arus Informasi Role/Action Perspektif Peran dan Aksi Proses umum model Waterfall Evolutionary development Formal transformation Integration from reusable components

What are the costs of software engineering? Perkiraan kasar adalah 60% untuk biaya pengembangan, sedangkan 40% untuk biaya pengujian. Untuk custom sofware, biaya-biaya evolusi sering melebihi biaya-biaya pengembangan. Biaya-biaya berubah-ubah tergantung pada jenis sistem yang dikembangkan dan kebutuhan atribut sistem seperti kehandalan dan reliabilitas sistem. Distribusi biaya-biaya tergantung pada model pengembangan yang digunakan.

What are software engineering methods? Software engineering methods merupakan pendekatan terstruktur dalam pengembangan perangkat lunak yang meliputi model sistem, notasi, aturan, desain advice, dan panduan proses. Model Descriptions (Uraian Model) Uraian tentang model grafis yang harus diproduksi. Rules (Aturan-aturan) Batasan yang berlaku pada model sistem. Recommendations (Rekomendasi) Rekomendasi untuk praktik desain yang baik. Process guidance (Panduan Proses) Aktivitas yang mengikuti.

What is CASE (Computer- Aided Software Engineering)? CASE adalah System software yang digunakan untuk mendukung otomatisasi aktivitas proses perangkat lunak. CASE sering digunakan untuk mendukung metode. Upper-Case Tools untuk mendukung aktivitas proses awal kebutuhan dan desain. Lower-Case Tools untuk mendukung aktivitas selanjutnya seperti programming, debugging, dan testing.

What are the attributes of good software? Software perlu memiliki fungsi kebutuhan dan kemampuan yang diperlukan oleh pemakai dan harus maintainable, dependable, efficient, dan usable. Maintainability Software harus dapat ditingkatkan dan diubah sesuai dengan kebutuhan. Dependability Software harus dapat dipercaya (trustworthy). Efficiency Software seharusnya tidak membuat penggunaan sumber daya sistem menjadi boros. Usability Software harus dapat dipakai oleh para pemakai yang direncanakan.

What are the key challenges facing software engineering? Tantangan : mengatasi sistem warisan (legacy( systems), meningkatnya heterogenitas (Heterogenity( Heterogenity) ) sistem, dan tuntutan permintaan percepatan penyerahan(delivery Delivery) sistem. Legacy systems Sistem warisan (sistem lama) harus dirawat dan dibaharui. Heterogenity Sistem terdistribusikan dalam bentuk campuran antara perangkat keras dan lunak. Delivery Adanya peningkatan tekanan untuk penyerahan perangkat lunak lebih cepat.

1.4 Professional and Ethical Responsibility Software engineering melibatkan tanggung- jawab lebih luas dibanding hanya aplikasi kecakapan teknis. Software engineer harus bertindak secara etis, bertanggung jawab, dan jujur jika mereka diharapkan untuk terhormat sebagai seorang profesional. Perilaku etis tidak hanya sekedar menegakkan hukum saja tetapi harus lebih dari itu (lih. hal. berikutnya).

Issues of professional responsibility Confidentiality (Kerahasiaan) Engineer seharusnya menghormati kerahasiaan dari klien mereka tanpa tergantung dengan ya atau tidaknya suatu persetujuan kerahasiaan formal ditandatangani. Competence (Kemampuan) Engineer mestinya tidak salah menggambarkan tingkatan kemampuannya. Mereka mestinya tidak dengan sadar menerima pekerjaan yang di luar kemampuannya.

Issues of professional responsibility (lanjutan) Intellectual property rights (Hak milik intelektual) Engineers harus sadar akan hukum lokal yang mengatur penggunaan dari properti intelektual seperti hak paten, hak cipta, dll. Mereka harus seksama untuk memastikan bahwa intelektual properti klien harus dilindungi. Computer misuse (Penyalahgunaan Komputer) Software engineers mestinya tidak menggunakan kecakapan teknis mereka untuk menyalahgunakan komputer orang lain.. Penyalahgunaan komputer dari yang relatif sepele (misal untuk bermain game) sampai yang serius (pemberian virus). ***