Kholid Fathoni, S.Kom., M.T.

dokumen-dokumen yang mirip
STEPHANIE BETHA R.H,S.ST

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

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

Produk perangkat lunak tersebut:

Pendahuluan Rekayasa Perangkat Lunak

REKAYASA PERANGKAT LUNAK

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


Bab 4 Metodologi Pengembagan Sistem(Perangkat Lunak)

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

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

DASAR REKAYASA PERANGKAT LUNAK

Pengembangan Sistem Informasi

BAB III LANDASAN TEORI

Review Rekayasa Perangkat Lunak. Nisa ul Hafidhoh

MODUL 4 Unified Software Development Process (USDP)

BAB III LANDASAN TEORI

Review of Process Model. SE 3773 Manajemen Proyek Teknologi Informasi *Imelda Atastina*

REKAYASA BERKOMPONEN

BAB I PENDAHULUAN. hal proses pengolahan data, baik itu data siswa, guru, administrasi sekolah maupun data

Pemodelan Berorientasi Objek

PENGANTAR RUP & UML. Pertemuan 2

BAGIAN 4. METODE ILMIAH

PEMODELAN ANALISIS PL

Ratna Wardani. Department of Electronic Engineering Yogyakarta State University

PENGEMBANGAN PERANGKAT LUNAK

APLIKASI PERHITUNGAN HONOR MENGAJAR DOSEN TIDAK TETAP YANG BERBASIS PRESENSI DENGAN MENGGUNAKAN BARCODE Oleh: Wiwik Sulistiyorini (A

Teknik Informatika S1

SOFTWARE PROCESS MODEL I Disiapkan oleh: Umi Proboyekti, S.Kom, MLIS

SOFTWARE PROCESS MODEL

Pemodelan Industri Perangkat Lunak

MATERI PEMODELAN PERANGKAT LUNAK KELAS XI RPL

SIKLUS REKAYASA PERANGKAT LUNAK (SDLC)

GARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP)

REKAYASA PERANGKAT LUNAK 1

Garis-garis Besar Program Pembelajaran (GBPP)

A. Spesifikasi Perangkat Lunak

Pertemuan 1 PENGENALAN REKAYASA PERANGKAT LUNAK

PENGEMBANGAN PERANGKAT LUNAK. Karmilasari

Rekayasa Web Disiapkan oleh: Umi Proboyekti, S.Kom, MLIS

SATUAN ACARA PERKULIAHAN MATA KULIAH REKAYASA PERANGKAT LUNAK KODE/SKS : TI11. C342 / 2 SKS

SOFTWARE ENGINEERING (REKAYASA PERANGKAT LUNAK)

Jenis Metode Pengembangan Perangkat Lunak

REKAYASA PERANGKAT LUNAK

System Development Life Cycle (SDLC)

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

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

Metode-Metode Pengembangan Desain Aplikasi

REKAYASA PERANGKAT LUNAK MATERI TM 14


ABSTRAK. : augmented reality, magic book, CBSE, MVC, frame rate

SATUAN ACARA PERKULIAHAN ~ 1 ~

Meeting 3_ADS. System Development Life Cycle (SDLC)

SATUAN ACARA PERKULIAHAN (SAP)

BAB III METODOLOGI. Penelitian ini dimulai dengan studi literatur dari teori-teori yang

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

STMIK AMIKOM YOGYAKARTA

BAB II LANDASAN TEORI

Kebutuhan dan Spesifikasi Perangkat Lunak

PROSES DESAIN. 1. Metodologi Pengembangan Sistem

Rekayasa Perangkat Lunak

SATUAN ACARA PERKULIAHAN MATA KULIAH PEMELIHARAAN PERANGKAT LUNAK. Kompetensi Lulusan 1. Pengertian Pemeliharaan OHT

Software Products are Software Systems delivered to a customer with the documentation which describes how to install and use the system.

RENCANA PEMBELAJARAN SEMESTER (RPS)

BAB I PENDAHULUAN.

Rekayasa Perangkat Lunak (Software Engineering)

BAB III. Metode Penelitian

Overview. By: Uro AbdRohim. U. Abd. Rohim Rekayasa Perangkat Lunak (OVERVIEW) Halaman: 1

BAB III OBJEK DAN METODE PENELITIAN. Dalam analisis sistem ini akan diuraikan sejarah singkat dari Apotek 55 yang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB III METODOLOGI PENELITIAN

BAB II LANDASAN TEORI. terpadu untuk mengembangkan rencana rencana strategis yang diarahkan pada

BAB I PENDAHULUAN. yang akan yang akan membuka peluang lebih besar dalam menembus pasar.

BAB II LANDASAN TEORI. Menurut Mulyadi (2008:202), penjualan merupakan aktivitas yang

PERANCANGAN APLIKASI POINT OF SALES BERBASIS DESKTOP (STUDI KASUS : ZONE CAFÉ PURWOKERTO)

1 BAB III METODE PENELITIAN

BAB II LANDASAN TEORI. Sistem adalah suatu jaringan kerja dari prosedur-prosedur yang saling

BAB III OBJEK DAN METODE PENELITIAN

REKAYASA PERANGKAT LUNAK I

Meeting 5_ADS. SDLC : Analysis Phase

BAB II KONSEP PEMBANGUNAN SISTEM DARI PERSPEKTIF SOFTWARE ENGINEERING

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

Rekayasa Perangkat Lunak (Software Engineering)

Systems Development Life Cycle (SDLC)

2. BAB II LANDASAN TEORI. lanjut sehingga terbentuk suatu aplikasi yang sesuai dengan tujuan awal.

Information System Analysis and Design

Teknik Informatika S1

FASE PENGEMBANGAN. MPSI sesi 7 & 8

Pendekatan-Pendekatan Pengembangan Sistem Hanif Al Fatta M.kom

Pertemuan 3 Metodologi Pengembangan Sistem Informasi

LANGKAH-LANGKAH MEMBUAT SOFTWARE MENURUT RUP

MAKALAH REKAYASA PERANGKAT LUNAK ( SIKLUS HIDUP PERANGKAT LUNAK )

Pengembangan Sistem Informasi

Testing dan Implementasi

BAB I PENDAHULUAN. Semakin berkembangnya teknologi saat ini, memacu Perusahaan PT. DASS

THE SOFTWARE PROCESS

BAB I PENDAHULUAN. dalam suatu perusahaan, karena persediaan akan dijual secara terus menerus untuk

Proyek Pengembangan Sistem Informasi

Perancangan Perangkat Lunak

SILABUS MATAKULIAH. Indikator Pokok Bahasan/Materi Aktifitas Pembelajaran

Transkripsi:

Kholid Fathoni, S.Kom., M.T.

Ian Somerville, Software Engineering, 6 th Edition, Addison Wesley, 2001 Roger R. Pressman, Software Engineering, 6 th Edition McGraw-Hill, 2005 Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software, Addison- Wesley, 1995

Perangkat Lunak Review Rekayasa Perangkat Lunak Pemodelan Perangkat Lunak

Perangkat Lunak adalah suatu aplikasi program komputer yang di dalamnya terdapat: program itu sendiri, konfigurasi yang digunakan, dokumentasi yang menjelaskan struktur sistem, dokumentasi yang menjelaskan bagaimana menggunakan sistem, dan informasi tentang versi terbaru Produk Perangkat Lunak dikembangkan sesuai dengan siapa pemakai perangkat lunak tersebut. Produk Perangkat lunak dibagi menjadi: Produk Generik, yang dijual pada pasar terbuka Produk Spesifik, yang dibuat dan dijual sesuai pesanan dari pemakai.

Software is developed or engineered, not manufactured Software doesn t wear out Most software are custom built, not assembled from existing component

Tidak memiliki waktu yang cukup dalam mengumpulkan data pada proses pembuatan perangkat lunak. Ketidakpuasan user pada S/W yang dibuat Kualitas S/W terkadang meragukan. Sulit dalam memaintenance S/W sekarang

Perangkat Lunak Berdasarkan Pemakai Generik: Perangkat lunak yang bisa digunakan secara umum Spesifik: Perangkat lunak yang dibuat berdasarkan pesanan Perangkat Lunak Berdasarkan Fungsional Interfacing Operating System Perangkat Lunak Aplikasi CASETools

Generik: Perangkat lunak yang digunakan secara umum. Sebagai contoh: Operating System, seperti Microsoft Windows, Word Processing, seperti Microsoft Word, WordPad Spreadsheet, seperti Microsoft Excell Beberapa aplikasi khusus bisa dibuat menjadi generik dengan membuatnya general dan mudah digunakan siapa saja seperti aplikasi akuntansi, aplikasi sekolah, dan lain-lain Spesifik: Perangkat lunak yang dibuat berdasarkan pesanan. Banyak Software House yang menghasilkan perangkat lunak ini berdasarkan proyek/pesanan tertentu. Sebagai contoh: Aplikasi Rumah Sakit, Aplikasi Pendidikan, Aplikasi Kesehatan, dan lain-lain

INTERFACING: Perangkat lunak ini menghubungkan suatu perangkat keras tertentu, seperti hardware driver, interfaces dengan perangkat keras lain. Misal: Driver untuk Kamera, Handphone atau perangkat keras lainnya Program interface seperti Sensor Suhu dengan LM555, PPI 8255, Komunikasi Serial RS232.

OPERATING SYSTEM: Perangkat lunak yang menjalankan sistem komputer dan merupakan interface dari sistem komputer dan program aplikasi yang berjalan diatasnya. Beberapa OS yang dikenal secara luas: Microsoft Windows Linux dan varians-nya, seperti Redhat, SuSE, Mandrake, Debian, dsb. Unix FreeBSD Macintosh (Apple)

PROGRAM APLIKASI: program ini digunakan untuk keperluan tertentu, yang tujuannya membantu pekerjaan manusia menjadi lebih mudah. Program ini yang banyak dibahas dalam pembuatan perangkat lunak. Program Aplikasi ini tergantung pada kebutuhan dari program itu sendiri, seperti: Program Office Program Graphics Design Program Multimedia dan lain-lain

Perangkat lunak harus memberikan bantuan dalam merepresentasikan dan mengakses filefile eksternal yang dibuat dengan alat bantu lain. Persyaratan Fungsional dan Non-Fungsional Persyaratan User Persyaratan Sistem Dokumentasi Persyaratan Perangkat Lunak

User harus diberi fasilitas untuk mendefinisikan jenis file eksternal Setiap file eksternal bisa memiliki alat bantu relevan yang bisa diterapkan pada file tersebut. Setiap file eksternal bisa direpresentasikan sebagai ikon yang spesifik pada display user Fasilitas harus disediakan untuk ikon yang merepresentasikan suatu jenis file eksternal yang akan didefinisikan oleh user Ketika user memilih seuatu ikon yang merepresentasikan file eksternal, efek pemilihan adalah penerapan alat bantu yang berhubungan dengan jenis file eksternal ke file yang direpresentasikan oleh ikon yang dipilih

Persyaratan Fungsional: Pernyataan layanan tentang bagaimana sistem harus bereaksi terhadap input, sistem harus berlaku pada situasisituasi tertentu. Secara khusus menyatakan apa yang tidak boleh dilakukan sistem. Persyaratan Non Fungsional: Pernyataan tentang batasan layanan dan fungsi yang diberikan sistem. Persyaratan Domain: Persyaratan yang datang dari domain aplikasi sistem dan merefleksikan karakteristik domain tersebut

Persyaratan Produk: persyaratan yang diambil dari spesifikasi produk, seperti persyaratan hardware untuk mendukung kinerja. Persyaratan Organisasi: persyaratan yang berasal dari kebijakan dan prosedur pada organisasi. Persyaratan Eksternal: Persyaratan yang berasal dari faktor eksternal terhadap sistem dan proses pengembangannya.

Kecepatan dalam: Transaksi yang diproses/detik, waktu tanggal user/event atau waktu refresh layar Ukurandalam:KBataujumlahChipRAM Kemudahan penggunaan dalam: waktu pelatihan atau jumlah frame help Kehandalan dalam: waktu rata-rata kegagalan, probabilitas ketidaksediaan, kecepatan terjadinya kegagalan, atau ketersediaan Ketahanan dalam: waktu start ulang setelah kegagalan, prosentase event yang gagal, atau probabilitas korupsi data Portabilitas dalam: prosentase pernyataan tergantung target, atau jumlah sistem target

Mendeskripsikan persyaratan fungsional dan nonfungsional sehingga dapat dipahami oleh user yang tidak memiliki pengetahuan teknik. Persyaratan user harus ditulis memakai bahasa natural, formal dan diagram intuitif yang sederhana. Persyaratan user tidak boleh didefinisikan memakai model implementasi. Masalah yang sering muncul: Tidak Adanya Kejelasan Kesimpang-siuran Persyaratan Penggabungan Persyaratan

Persyaratan sistem ini lebih rinci dari persyaratan user, dan berfungsi sebagai dasar kontrak untuk implementasi sistem. Persyaratan sistem ini digunakan sebagai titik awal perancangan sistem. Bahasa natural banyak digunakan dalam mendefinisikan persyaratan sistem

Bahasa Natural Terstruktur: Pendekatan ini tergantung pada pendefinisian format atau template standar untuk menyatakan spesifikasi persyaratan Bahasa Deskripsi Desain: Pendekatan ini menggunakan bahasa pemrograman tetapi dengan lebih banyak fitur abstrak. Notasi Grafis: Bahasa grafis dilengkapi oleh anotasi teks yang digunakan untuk mendefinisikan persyaratan funsional. Contoh bahasa grafis adalah SADT (Ross 1977), Use-Case (Jacobson et al. 1993) Spesifikasi Matematis: Notasi seperti himpunan atau finite-state machine, lebih dikenal dengan bahsa formal.

Rekayasa Perangkat Lunak adalah disiplin ilmu yang membahas semua aspek produksi perangkat lunak, mulai tahap awal spesifikasi sistem sampai pemeliharaan sistem setelah digunakan. Perekayasa Perangkat Lunak memakai pendekatan yang sistematis dan terorganisir untuk menghasilkan perangkat lunak berkualitas tinggi.

Meningkatkan keakuratan, performance & efficiency produk secara keseluruhan dalam pengembangan Menerapkan metodologi yang terdefinisi Menerapkan metodologi yang terdefinisi dengan baik untuk resolusi software

Ilmu Komputer berhubungan dengan teori dan metode yang mendasari sistem komputer dan perangkat lunak. Teori ini merupakan suatu model fisik dan analitik untuk menyelesaikan kasus yang spesifik. Rekayasa Perangkat Lunak berhubungan dengan masalah-masalah praktis untuk menghasilkan suatu perangkat lunak. Pendekatan dilakukan dengan model bisnis dan strategi bisnis suatu perangkat lunak.

Rekayasa Sistem berhubungan dengan semua aspek pengembangan sistem berbasis komputer, termasuk perangkat keras, perangkat lunak dan rekayasa proses. Rekayasa Perangkat Lunak adalah bagian dari Rekayasa Sistem

Proses perangkat lunak adalah serangkaian kegiatan yang tujuannya untuk mengembangkan atau evolusi perangkat lunak. Kegiatan-kegiatan tersebut adalah: Spesifikasi perangkat lunak, Pengembangan perangkat lunak, Validasi perangkat lunak, Evolusi perangkat lunak

Model proses perangkat lunak adalah representasi yang disederhanakan dari proses perangkat lunak yang dipresentasikan dari sudut pandang tertentu Paradigma pengembangan model sistem: Waterfall Development Model Evolutionary Development Model Spiral Development Model Incremental Development Model

Development activities are performed in sequential order, with possibly minor overlap, and minimal or no iteration between activities. User needs are determined, requirements are User needs are determined, requirements are defined, and the full system is designed, built, and tested for ultimate delivery at one point in time. Some people refer to this as a stage-wise model.

PengembanganEksplorasi: Sistem berubah dengan adanya fitur-fitur tambahan dari user. Prototype yang dapat dibuang(throw-away): Memahami persyaratan user untuk mendapatkan definisi persyaratan yang lebih baik.

Masalah-masalah dalam Pengembangan Evolusioner Proses tidak dapat dilihat Sistem seringkali mempunyai struktur yang tidak baik Mungkin diperlukan alat bantu khusus Model pengembangan evolusioner ini cocok untuk aplikasi yang kecil dan life-cycle yang pendek.

Spiral Model Description The development spiral consists of four quadrants Quadrant 1: Determine objectives, alternatives, and constraints. Quadrant 2: Evaluate alternatives, identify, resolve risks. Quadrant 3: Develop, verify, next-level product. Quadrant 4: Plan next phases.

Proses perangkat lunak dibagi menjadi serangkaian increment yang dikembangkan secara bergantian. Keuntungan Pengembangan Incremental User tidak perlu menunggu seluruh sistem dikirimkan, karena increment pertama mempunyai persyaratan kritis dan perangkat lunak segera dapat digunakan. User dapat memakai increment pertama sebagai prototype Resiko kegagalan proyek secara keseluruhan lebih rendah Pengujian paling ketat diberlakukan pada increment pertama.

Studi Kelayakan Elisitasi dan Analisis Persyaratan Spesifikasi Persyaratan Validasi Persyaratan

Perancangan Arsitektural Spesifikasi Abstrak Perancangan Interface Perancangan Komponen Perancangan Struktur Data Perancangan Algoritma

Pengujian Unit Pengujian Modul Pengujian Sub Sistem Pengujian Sistem 1 Pengujian Komponen Pengujian Integrasi Pengujian User Pengujian Sistem 2

Pemodelan dan analisa dapat dianggap sebagai akar konsep dari semua displin teknik karena keutamaannya dalam mendokumentasikan dan mengevaluasi alternatif serta pilihan desain. Pemodelan dilakukan pada awal analisa, spesifikasi dan validasi persyaratan. Persyaratan yang dimaksud adalah semua kebutuhan pengguna, kustomer dan stakeholder yang harus dipenuhi oleh sistem. Dalam pembuatan persyaratan melibatkan: Analisa studi kelayakan dari sistem yang akan dibuat, Memperoleh dan menganalisa kebutuhan dari stakeholder Pembuatan gambaran yang akurat terhadap sistem tentang apa yang harus dilakukan sistem dan apa yang tidak. Validasi terhadap dokumen atau spesifikasi oleh stakeholder

Information modeling (e.g. entity-relationship modeling, class diagrams, etc.) Behavioral modeling (e.g. structured analysis, state diagrams, use case analysis, interaction diagrams, failure modes and effects analysis, fault tree analysis etc.) Structure modeling(e.g. architectural, etc.) Domain modeling(e.g. domain engineering approaches, etc.) Functional modeling(e.g. component diagrams, etc.) Enterprise modeling (e.g. business processes, organizations, goals, etc.) Modeling embedded systems (e.g. real-time schedulability analysis, external interface analysis, etc.)

Rational Rose UML PowerDesigner Data Modeling