Model Proses PL. Proses Kerangka kerja untuk tugas-tugas yang dibutuhkan untuk membangun perangkat lunak dengan kualitas tinggi & Model Proses PL Strategi.

Презентация:



Advertisements
Похожие презентации
Rekayasa Perangkat Lunak 1 Pengantar. Software (1) Perintah (program komputer) yang bila dieksekusi memberikan fungsi dan unjuk kerja seperti yang diinginkan.
Advertisements

Architectural Design. FASE PENGEMBANGAN DAN DESAIN SOFTWARE Design Code Generation (manual or automatic) Testing Setiap langkah melakukan transformasi.
Oleh: erwinchristiant.my1.ru. Kegiatan yang berfungsi untuk merumuskan tujuan dan ukuran dari aplikasi berbasis web serta menentukan batasannya system.
Design Perangkat Lunak Pertemuan 9. Setelah kebutuhan dikumpulkan, analisis terhadap kebutuhan dilakukan dengan menggunakan beberapa alat (tools) seperti.
Requirement Conclusion. Definisi Requirement adalah gambaran dari layanan (services) dan batasan bagi sistem yang akan dibangun. Fungsi Menjadi dasar.
Analisis Model. Apa, Siapa, Mengapa? Model analisis menggunakan kombinasi teks dan diagram untuk menggambarkan kebutuhan data, fungsi dan tingkah-laku.
DATA WAREHOUSE TEKNIK INFORMATIKA TITUS KRISTANTO, S.KOM PERTEMUAN IV © APRIL 2012.
Requirement Document. Dokumen kebutuhan Dokumen kebutuhan merupakan pernyataan resmi dari apa yang dibutuhkan dari pembangun sistem, berisi definisi dan.
Berbagai Jenis Lisensi dan Berkembangnya Perangkat Lunak Bebas.
Pertemuan 1 – Pengantar Organisasi Komputer Erwin Christiant S.Kom - Arsitektur dan Organisasi Komputer.
STRATEGI USAHA YANG SESUAI AGAR TERCAPAI TUJUAN PERUSAHAAN.
ORGANISASI BERKAS. Organisasi Berkas ialah suatu teknik atau cara untuk menyatakan dan menyimpan record-record dalam sebuah berkas / file Ada 4 teknik.
PENGERTIAN Analisis laporan keuangan secara harfiah terdiri dari dua kata, yaitu: 1. Analisis, yang berarti penguraian suatu pokok atas berbagai bagiannya.
ASPEK TEKNIS/OPERASI. Penentuan kelayakan teknis atau operasi perusahaan menyangkut hal-hal yang berkaitan dengan teknis/operasi, sehingga apabila tidak.
Nonot Wisnu Karyanto. UTS Konsep Dasar Berkas Perangkat Keras dan Parameternya Bloking dan Buffering Penyimpanan Data Organisasi File File Sequensial.
Sistem Operasi Konsep Dasar Sistem Operasi Prepared By Team Teaching Presented by WIN & TGW.
U M L Unified Modeling Language. Penggunaan UML itu sendiri tidak terbatas hanya pada dunia software modeling, bisa pula digunakan untuk modeling hardware.
TF 308 Etika Profesi dan Pengembangan Diri. Perlu melakukan beberapa tahap awal, yaitu mencoba memahami dan mengenali diri kita sendiri. Pemahaman dan.
TF 308 – Etika Profesi dan Pengembangan Diri. Abdulkadir Muhammad (2001) mengklasifikasikan kebutuhan manusia menjadi empat kelompok sebagai berikut :
TEKNIK INFORMATIKA TITUS KRISTANTO, S.KOM PERTEMUAN
Транксрипт:

Model Proses PL

Proses Kerangka kerja untuk tugas-tugas yang dibutuhkan untuk membangun perangkat lunak dengan kualitas tinggi & Model Proses PL Strategi pengembangan PL yang melingkupi lapisan proses, metode dan alat bantu yang digunakan

1. Waterfall Model

Aktifitas Waterfall Model Requirements analysis and definition : Mengumpulkan kebutuhan secara lengkap kemudian kemudian dianalisis dan didefinisikan kebutuhan yang harus dipenuhi oleh program yang akan dibangun. System and software design : Desain dikerjakan setelah kebutuhan selesai dikumpulkan secara lengkap. Implementation and unit testing : desain program diterjemahkan ke dalam kode­kode dengan menggunakan bahasa pemrograman yang sudah ditentukan. Program yang dibangun langsung diuji. Integration and system testing : Penyatuan unit­ unit program kemudian diuji secara keseluruhan (system testing).

Aktifitas Cont. Operation and maintenance : mengoperasikan program dilingkungannya dan melakukan pemeliharaan, seperti penyesuaian atau perubahan karena adaptasi dengan situasi sebenarnya. Kekurangan yang utama dari model ini adalah kesulitan dalam mengakomodasi perubahan setelah proses dijalani. Fase sebelumnya harus lengkap dan selesai sebelum mengerjakan fase berikutnya. & Kekurangan

2. Prototyping Model Sebagian besar customer hanya memberikan beberapa kebutuhan umum software tanpa detil input, proses atau detil output.

Requirements : developer dan klien bertemu dan menentukan tujuan umum, kebutuhan yang diketahui dan gambaran bagian­bagian yang akan dibutuhkan berikutnya. Design : perancangan dilakukan cepat dan rancangan mewakili semua aspek software yang diketahui, dan rancangan ini menjadi dasar pembuatan prototype. Evaluasi prototype : klien mengevaluasi prototype yang dibuat dan digunakan untuk memperjelas kebutuhan software.

3. Evolutionary Model Iteratif, hasil proses berupa produk yang makin lama makin lengkap sampai versi terlengkap dihasilkan sebagai produk akhir dari proses.

Karakteristik Iteratif Kombinasikan elemet­element dari waterfall dengan sifat iterasi/perulangan. Element­element dalam waterfall dikerjakan dengan hasil berupa produk dengan spesifikasi tertentu, kemudian proses dimulai dari fase pertama hingga akhir dan menghasilkan produk dengan spesifikasi yang lebih lengkap dari yang sebelumnya. Demikian seterusnya hingga semua spesifikasi memenuhi kebutuhan yang ditetapkan oleh pengguna. Produk hasil increment pertama biasanya produk inti (core product), yaitu produk yang memenuhi kebutuhan dasar. Produk tersebut digunakan oleh pengguna atau menjalani review/pengecekan detil. Hasil review tersebut menjadi bekal untuk pembangunan pada increment berikutnya. Hal ini terus dikerjakan sampai produk yang komplit dihasilkan.

Model ini cocok jika jumlah anggota tim pengembang/pembangun PL tidak cukup. Mampu mengakomodasi perubahan secara fleksibel. Produk yang dihasilkan pada increment pertama bukanlah prototype, tapi Produk yang sudah bisa berfungsi dengan spesifikasi dasar. Karakteristik Iteratif Cont.

Spiral Model (Original: Boehm)

Customer communication : membangun komunikasi yang baik dengan pengguna/customer. Planning : mendefinisikan resources, batas waktu, informasi­informasi lain seputar proyek Risk analysis : identifikasi resiko managemen dan teknis Engineering : pembangunan contoh­contoh aplikasi, misalnya prototype Construction and release : pembangunan, test, install dan support. Customer evaluation : mendapatkan feedback dari pengguna beradasarkan evaluasi PL pada fase engineering dan fase instalasi.

Pada model spiral, resiko sangat dipertimbangkan. Resiko adalah sesuatu yang mungkin mengakibatkan kesalahan. Model spiral merupakan pendekatan yang realistik untuk PL berskala besar. Pengguna dan pembangun bisa memahami dengan baik software yang dibangun karena setiap kemajuan yang dicapai selama proses dapat diamati dengan baik.

4. RAD (Rapid Application Development) RAD adalah model proses pembangunan PL yang incremental. RAD menekankan pada siklus pembangunan yang pendek/singkat. RAD mengadopsi model waterfall dan pembangunan dalam waktu singkat dicapai dengan menerapkan component based construction. Waktu yang singkat adalah batasan yang penting untuk model ini. Jika kebutuhan lengkap dan jelas maka waktu yang dibutuhkan untuk menyelesaikan secara komplit software yang dibuat adalah misalnya 60 sampai 90 hari.

Kelemahan dalam RAD model Tidak cocok untuk proyek skala besar Proyek bisa gagal karena waktu yang disepakati tidak dipenuhi Sistem yang tidak bisa dimodularisasi tidak cocok untuk model ini Resiko teknis yang tinggi juga kurang cocok untuk model ini

Bagan RAD Model

Fase­fase dalam RAD model Business modelling : menjawab pertanyaan : informasi apa yang mengendalikan proses bisnis ? Informasi apa yang dihasilkan ? Siapa yang menghasilkan informasi ? Kemana informasi itu diberikan ? Siapa yang mengolah informasi ? kebutuhan dari sistem Data modelling : aliran informasi yang sudah didefinisikan, disusun menjadi sekumpulan objek data. Ditentukan karakteristik/atribut dan hubungan antar objek­objek tersebut analisis kebutuhan dan data Process Modelling : objek data yang sudah didefinisikan diubah menjadi aliran informasi yang diperlukan untukmenjalankan fungsi­fungsi bisnis. Application Generation: RAD menggunakan component program yang sudah ada atau membuat component yang bisa digunakan lagi, selama diperlukan. Testing and Turnover: karena menggunakan component yang sudah ada, maka kebanyakan component sudah melalui uji atau testing. Namun component baru dan interface harus tetap diuji.

5. V Model V model adalah metode pengembangan perangkat lunak yang mengijinkan pada setiap prosesnya untuk dilakukan testing dan validasi. Jadi proses baru menggunakan hasil dari proses lama sebagai acuannya. Ini memungkinkan meminimalisasikan kesalahan pada prosesnya.

Bagan V Model

Keuntungan V Model Bahasa yang digunakan untuk merepresentasikan konsep V model menggunakan bahasa formal. Contoh : dengan menggunakan objek model ataupun frame-frame Meminimalisasikan kesalahan pada hasil akhir karena ada test pada setiap prosesnya Penyesuaian yang cepat pada projek yang baru Memudahkan dalam pembuatan dokumen projek Biaya yang murah dalam perawatan dan modifikasinya

Aktifitas V-Model hanya difokuskan pada projectnya saja, bukan pada keseluruhan organisasi. V-Model adalah proses model yang hanya dikerjakan sekali selama project saja, bukan keseluruhan organisasi. Prosesnya hanya secara sementara. Ketika project selesai, jalannya proses model dihentikan. Tidak berlangsung untuk keseluruhan organisasi. Metode yang ditawarkan terbatas. Sehingga kita tidak memiliki cara pandang dari metode yang lain. Kita tidak memiliki kesempatan untuk mempertimbangkan jika ada tools lain yang lebih baik. Toolnya tidak selengkap yang dibicarakan. SDE (Software Development Environment).Tidak ada tools untuk hardware di V-Model. Tool yang dimaksud adalah software yang mendukung pengembangan atau pemeliharaan / modifikasi dari system IT. Kerugian V Model

V model biasa digunakan pada proyek-proyek dengan skala yang besar. Sebagai contohnya yaitu digunakan di Jerman untuk mengatur sistem administrasi pemerintahannya dalam hal ini pada bagian BWB (Bundesamt für Wehrtechnik und Beschaffung = German Federal Office for Procurement). Penerapan V Model

6. Component­based Development Model Component­based development sangat berkaitan dengan teknologi berorientasi objek. Pada pemrograman berorientasi objek, banyak class yang dibangun dan menjadi komponen dalam suatu software. Class­class tersebut bersifat reusable artinya bisa digunakan kembali. Model ini bersifat iteratif atau berulang­ulang prosesnya.

Proses dalam C-bD model Identifikasi class­class yang akan digunakan kembali dengan menguji class tersebut dengan data yang akan dimanipulasi dengan aplikasi/software dan algoritma yang baru Class yang dibuat pada proyek sebelumnya disimpan dalam class library, sehingga bisa langsung diambil dari library yang sudah ada. Jika ternyata ada kebutuhan class baru, maka class baru dibuat dengan metode berorientasi objek. Bangun software dengan class­class yang sudah ditentukan atau class baru yang dibuat, integrasikan.

Component­Based Software Engineering (CBSE) adalah proses yang menekankan perancangan dan pembangunan software dengan menggunakan komponen software yang sudah ada. CBSE terdiri dari dua bagian yang terjadi secara paralel yaitu software engineering (component­based development) dan domain engineerin.

Domain engineering menciptakan model domain bagi aplikasi yang akan digunakan untuk menganalisis kebutuhan pengguna. Identifikasi, pembangunan, pengelompokan dan pengalokasikan komponen­ komponen software supaya bisa digunakan pada sistem yang ada dan yang akan datang. Software engineering (component­based development) melakukan analisis terhadap domain model yang sudah ditetapkan kemudian menentukan spesifikasi dan merancang berdasarkan model struktur dan spesifikasi sistem, kemudian melakukan pembangunan software dengan menggunakan komponen­komponen yang sudah ditetapkan berdasarkan analisis dan rancangan yang dihasilkan sebelumnya hingga akhirnya menghasilkan software.

Bagan Cb-D

7. Extreme Programming (XP) Model Model proses ini diciptakan dan dikembangkan oleh Kent Beck. Model ini adalah model proses yang terbaru dalam dunia rekayasa perangkat lunak dan mencoba menjawab kesulitan dalam pengembangan software yang rumit dan sulit dalam implementasi. Menurut Kent Beck XP adalah : A lightweight, efficient, low­risk, flexible,predictable, scientific and fun way to develop software. Suatu model yang menekankan pada keterlibatan user secara langsung, pengujian, design

4 nilai penting dari XP Communication/Komunikasi : komunikasi antara developer dan klien sering menjadi masalah. Karena itu komunikasi dalam XP dibangun dengan melakukan pemrograman berpasangan (pair programming). Developer didampingi oleh pihak klien dalam melakukan coding dan unit testing sehingga klien bisa terlibat langsung dalam pemrograman sambil berkomunikasi dengan developer. Selain itu perkiraan beban tugas juga diperhitungkan. Simplicity/sederhana: Menekankan pada kesederhanaan dalam pengkodean : What is the simplest thing that could possibly work? Lebih baik melakukan hal yang sederhana dan mengembangkannya besok jika diperlukan. Komunikasi yang lebih banyak mempermudah, dan rancangan yang sederhana mengurangi penjelasan.

Feedback / Masukan/Tanggapan: Setiap feed back ditanggapi dengan melakukan tes, unit test atau system integration dan jangan menunda karena biaya akan membengkak (uang, tenaga, waktu). Courage / Berani: Banyak ide baru dan berani mencobanya, berani mengerjakan kembali dan setiap kali kesalahan ditemukan, langsung diperbaiki. 4 nilai penting dari XP Cont.