Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

SOFTWARE ENGINEERING Astrina DF ( ) Bagus Ilyas R ( )

Presentasi serupa


Presentasi berjudul: "SOFTWARE ENGINEERING Astrina DF ( ) Bagus Ilyas R ( )"— Transcript presentasi:

1 SOFTWARE ENGINEERING Astrina DF (201583102) Bagus Ilyas R (201583110)
Meltasari Br G ( ) Romi Syahrizal ( )

2 Praktek Rekayasa Perangkat Lunak
Praktik komunikasi Praktek perencanaan Praktik analisis pemodelan Praktik desain pemodelan Praktek konstruksi Praktik penerapan

3 Praktek Rekayasa Perangkat Lunak
Terdiri dari kumpulan konsep, prinsip, metode, dan alat yang disebut oleh seorang software engineer dalam kesehariannya Melengkapi manajer untuk mengelola proyek perangkat lunak dan software engineer untuk membangun program komputer Menyediakan teknis dan manajemen yang diperlukan bagaimana cara menyelesaikan pekerjaan Mengubah pendekatan menjadi sesuatu yang lebih terorganisir, lebih efektif, dan lebih baik untuk meraih kesuksesan

4 Esensi Pemecahan Masalah
Memahami masalah (komunikasi dan analisa) Siapa yang memiliki andil dalam pemecahan masalah? Apa yang tidak diketahui (data, fungsi, perilaku)? Bisakah masalahnya dikompartemenisasikan? Bisakah masalah diwakili secara grafis? Rencanakan solusi (perencanaan, pemodelan dan perancangan perangkat lunak) Pernahkah Anda melihat masalah serupa seperti ini sebelumnya? Apakah masalah yang sama telah dipecahkan dan apakah solusinya dapat digunakan kembali? Dapatkah subproblems didefinisikan dan solusi tersedia untuk subproblems?

5 Esensi Pemecahan Masalah
3. Melaksanakan rencana (konstruksi, pembuatan kode) Apakah solusinya sesuai dengan rencana? Apakah kode sumber dapat ditrace kembali ke design? Apakah setiap komponen solusi benar? Apakah desain dan kode telah diulas? 4. Periksa hasil untuk akurasi (testing dan quality assurance) Mungkinkah menguji setiap komponen solusinya? Apakah solusinya menghasilkan hasil yang sesuai dengan data, fungsi, dan perilaku yang dibutuhkan?

6 Tujuh Prinsip Inti Rekayasa Perangkat Lunak
1. Ingat alasan mengapa perangkat lunak itu ada Perangkat lunak harus memberikan nilai bagi penggunanya dan memenuhi persyaratan 2. Keep it simple, stupid(KISS) Semua desain dan implementasinya semudah mungkin 3. Pertahankan visi proyek Visi yang jelas sangat penting bagi keberhasilan proyek 4. Orang lain akan mengkonsumsi apa yang Anda hasilkan Selalu tentukan, desain, dan implementasikan mengetahui bahwa orang lain nantinya harus mengerti dan memodifikasi apa yang Anda lakukan

7 Tujuh Prinsip Inti Rekayasa Perangkat Lunak
5. Terbuka untuk masa depan Jangan pernah mendesain diri Anda ke sudut; membangun perangkat lunak yang bisa dengan mudah diubah dan disesuaikan 6. Rencanakan ke depan untuk penggunaan kembali perangkat lunak Penggunaan kembali perangkat lunak mengurangi biaya jangka panjang dan meningkatkan nilai program dan komponen yang dapat digunakan kembali 7. Pikirkan, lalu bertindaklah Menempatkan pikiran yang jernih dan lengkap sebelum tindakan hampir selalu menghasilkan hasil yang lebih baik

8 Communication Practices (Requirements Elicitation)
Project initiation Requirements gathering Planning Estimating Scheduling Tracking Modeling Analysis Design Construction Code Test Deployment Delivery Support Feedback 8

9 Prinsip Komunikasi Dengarkan pembicara dan berkonsentrasilah pada apa yang sedang dikatakan Persiapkan sebelum Anda bertemu dengan meneliti dan memahami masalahnya Seseorang harus memfasilitasi pertemuan dan memiliki agenda Komunikasi tatap muka adalah yang terbaik, namun harus tetap memiliki dokumen atau presentasi untuk memfokuskan diskusi Buat catatan dan keputusan dokumen Upayakan untuk kolaborasi dan konsensus Tetap fokus pada sebuah topik; modularize diskusi anda

10 Prinsip Komunikasi 8. Jika ada sesuatu yang tidak jelas, gambarlah 9. Pindah ke topik berikutnya a) setelah Anda menyetujui sesuatu, b) jika Anda tidak dapat menyetujui sesuatu, atau c) jika fitur atau fungsi tidak jelas dan tidak dapat diklarifikasi pada saat ini 10. Negosiasi bukanlah sebuah kontes atau permainan; Ini bekerja paling baik saat kedua belah pihak menang

11 Planning Practices (Defining a Road Map)
Communication Project initiation Requirements gathering Planning Estimating Scheduling Tracking Modeling Analysis Design Construction Code Test Deployment Delivery Support Feedback

12 Prinsip Perencanaan Memahami lingkup proyek
Libatkan pelanggan dalam kegiatan perencanaan Kenali perencanaan yang berulang; hal akan berubah Perkirakan hanya didasarkan pada apa yang Anda ketahui Pertimbangkan risiko sebagai Anda menentukan rencana Jadilah realistis tentang berapa banyak yang dapat dilakukan setiap hari oleh setiap orang dan seberapa baik Sesuaikan rincian Anda menentukan rencana Tentukan bagaimana Anda berniat untuk memastikan kualitas Jelaskan bagaimana Anda berniat untuk mengakomodasi perubahan Sering mengecek rencana dan membuat penyesuaian jika diperlukan

13 Prinsip W5HH Barry Boehm
Mengapa sistem dikembangkan? Apa yang akan dilakukan? Kapan hal itu akan dicapai? Siapa yang bertanggung jawab untuk setiap fungsi? Dimana mereka berada secara organisasi? Bagaimana pekerjaan dilakukan secara teknis dan manajerial? Berapa banyak dari setiap sumber daya yang dibutuhkan? Jawaban atas pertanyaan-pertanyaan ini mengarah pada definisi kunci karakteristik proyek dan rencana proyek yang dihasilkan

14 Modeling Practices (Analysis and Design)
Communication Project initiation Requirements gathering Planning Estimating Scheduling Tracking Modeling Analysis Design Construction Code Test Deployment Delivery Support Feedback 14

15 Pemodelan Analisis Prinsip
Informasi domain dari masalah (data yang mengalir masuk dan keluar dari sistem) harus diwakili dan dipahami Fungsi yang dikerjakan perangkat lunak harus didefinisikan Perilaku perangkat lunak (sebagai konsekuensi dari peristiwa eksternal) harus diwakili Model yang menggambarkan informasi, fungsi, dan perilaku harus dipartisi dengan cara mengungkapkan detail yang berlapis ( atau hirarkis) Tugas analisis harus bergerak dari informasi penting ke arah detail implementasi

16 Prinsip desain Pemodelan
Desain harus dapat dilacak dari model analisis Selalu mempertimbangkan arsitektur perangkat lunak dari sistem yang akan dibangun Desain data sama pentingnya dengan desain fungsi pengolahan Antarmuka (baik internal dan eksternal) harus dirancang dengan hati-hati Pengguna harus disetel untuk kebutuhan dari pengguna akhir dan harus menekankan kemudahanpenggunaan desain Komponen-level harus fungsional independen (kohesi tinggi) Komponen harus longgar digabungkan satu sama lain dan dengan lingkungan eksternal Representasi Desain (model) harus mudah dimengerti

17 Prinsip desain Pemodelan
9. Desain harus dikembangkan secara iteratif; dengan masing-masing iterasi, desainer harus berusaha untuk kesederhanaan lebih besar faktor kualitas eksternal: properti-properti yang dapat mudah diamati faktor mutu internal: properti-properti yang mengarah ke desain berkualitas tinggi dari perspektif teknis

18 Construction Practices
Communication Project initiation Requirements gathering Planning Estimating Scheduling Tracking Modeling Analysis Design Construction Code Test Deployment Delivery Support Feedback

19 Coding Prinsip (Persiapan sebelum coding)
Memahami masalah yang coba anda selesaikan Memahami prinsip-prinsip desain dasar dan konsep-konsep Pilih bahasa pemrograman yang memenuhi kebutuhan perangkat lunak yang akan dibangun dan lingkungan di mana ia akan beroperasi Pilih lingkungan pemrograman yang menyediakan alat-alat yang akan membuat pekerjaan Anda lebih mudah Buat satu set unit test yang akan diterapkan setelah coding anda selesai

20 Prinsip coding (Ketika Anda mulai coding)
Batasi algoritma anda dengan mengikuti praktek pemrograman terstruktur Pilih struktur data yang akan memenuhi kebutuhan desain Memahami arsitektur perangkat lunak dan membuat antarmuka yang konsisten dengan itu Jauhkan logika kondisional sesederhana mungkin Buat loop bersarang dengan cara yang membuat mereka mudah diuji Pilih nama variabel yang bermakna, dan ikuti standar kode lokal lainnya

21 Prinsip coding (Ketika Anda mulai coding)
7. Tulis kode yang mendokumentasikan diri 8. Membuat tata letak visual (misalnya, lekukan dan kosong baris) yang membantu kode pemahaman

22 Prinsip Coding (Setelah menyelesaikan putaran pertama dari kode)
1. Melakukan kode walkthrough 2. Lakukan tes unit (kotak hitam dan putih-kotak) dan memperbaiki kesalahan yang telah Anda menemukan 3. Refactor kode

23 Prinsip Pengujian Semua tes harus dapat dilacak pada persyaratan perangkat lunak Pengujian harus direncanakan jauh sebelum pengujian dilakukan Prinsip Pareto berlaku untuk pengujian perangkat lunak - 80% kesalahan yang tidak ditemukan berada pada 20% kode 4. Pengujian harus dimulai “kecil” dan kemajuan menuju pengujian “besar” - Pengujian unit -> pengujian integrasi -> pengujian validasi -> pengujian sistem 5. Pengujian keseluruhan tidak mungkin bisa dilakukan

24 Tes Objektif Pengujian adalah proses mengeksekusi sebuah program dengan tujuan untuk menemukan kesalahan Kasus uji baik adalah kasus yang memiliki probabilitas tinggi untuk menemukan kesalahan yang belum ditemukan Tes yang berhasil adalah tes yang mengungkapkan kesalahan yang belum ditemukan

25 Requirements gathering
Deployment Practices Communication Project initiation Requirements gathering Planning Estimating Scheduling Tracking Modeling Analysis Design Construction Code Test Deployment Delivery Support Feedback 25

26 Deployment Principles
Harapan pelanggan terhadap perangkat lunak yaitu pengelolaan - jangan banyak memberi janji dan tidak menyesatkan pelanggan 2. Paket pengiriman lengkap harus dirakit dan diuji terlebih dahulu 3. Kelompok Pendukung harus dibentuk sebelum perangkat lunak dikirimkan 4. Panduan yang sesuai harus diberikan kepada pengguna akhir 5. Masalah dalam perangkat lunak harus diselesaikan terlebih dahulu, baru dikirimkan

27


Download ppt "SOFTWARE ENGINEERING Astrina DF ( ) Bagus Ilyas R ( )"

Presentasi serupa


Iklan oleh Google