Oleh : Rasyeda Ghulam Aufa | 321210010  PROSES PENGEMBANGAN       PERANGKAT LUNAK
SYSTEMS DEVELOPMENT LIFE CYCLE (SDLC),or Software development process
SOFTWARE DEVELOPMENT PROCESS                              Activities and steps Requirements  Specification  Architecture...
PENGEMBANGAN PERANGKAT LUNAK Metode Pengembangan Perangkat Lunak Tahapan Pengembangan Perangkat Lunak Dokumentasi Penge...
PENGEMBANGAN PERANGKAT LUNAK   Metode Pengembangan Perangkat Lunak     Linear Sequential / waterfall method     Prototy...
PENGEMBANGAN PERANGKAT LUNAK Metode Pengembangan Perangkat Lunak Tahapan Pengembangan Perangkat Lunak Dokumentasi Penge...
Linear Sequential – Prototyping – RAD – SpiralMETODE & TAHAPAN PENGEMBANGANPERANGKAT LUNAK
LINEAR SEQUENTIAL / WATERFALL
LINEAR SEQUENTIAL / WATERFALL Keunggulan Kelemahan
LINEAR SEQUENTIAL / WATERFALL   Keunggulan     Mudah   aplikasikan.     Memberikan template tentang metode analisis,   ...
LINEAR SEQUENTIAL / WATERFALL Keunggulan Kelemahan     Proyek yang sebenarnya jarang mengikuti alur      sekuensial sep...
PROTOTYPING
PROTOTYPING Keunggulan Kelemahan
PROTOTYPING   Keunggulan     Adanya komunikasi yang baik antara pengembang dan      pelanggan.     Pengembang dapat bek...
PROTOTYPING Keunggulan Kelemahan     Pelanggan kadang tidak menyadari bahwa perangkat      lunak yang ada belum mencant...
RAD (RAPID APPLICATION DEVELOPMENT)
RAD (RAPID APPLICATION DEVELOPMENT) Keunggulan Kelemahan
RAD (RAPID APPLICATION DEVELOPMENT)   Keunggulan     Waktu   yang digunakan sangat cepat karena pekerjaan      bisa dila...
RAD (RAPID APPLICATION DEVELOPMENT)   Keunggulan   Kelemahan       Untuk proyek dengan skala besar, RAD membutuhkan sum...
SPIRAL
SPIRAL Keunggulan Kelemahan
SPIRAL   Keunggulan     Lebih cocok untuk pengembangan sistem dan      perangkat lunak skala besar     Pengembang dan p...
SPIRAL Keunggulan Kelemahan     Memerlukan    tenaga ahli untuk memperkirakan      resiko, dan harus mengandalkannya su...
Requirements - Architecture/Design -Technical - End User - Marketing DOKUMENTASI PENGEMBANGAN
DOKUMENTASI REQUIREMENTS   Definisi Kebutuhan   Analisis Kebutuhan   Model Kebutuhan
DOKUMENTASI REQUIREMENTS
DOKUMENTASI ARCHITECTURE / DESIGN Pendahuluan Spesifikasi singkat Desain Arsitektur Desain secara detail Referensi
DOKUMENTASI TECHNICAL
DOKUMENTASI TECHNICAL/** * Short one line description. (1) * Longer description. If there were any, it would be [2] * here...
DOKUMENTASI TECHNICAL
DOKUMENTASI END USER Pengantar Instalasi Tutorial Instruksi detail Detail Teknis
DOKUMENTASI MARKETING Untuk menarik calon pengguna dan membuat  mereka berkeinginan untuk ikut merasakan  produk. Member...
DOKUMENTASI MARKETING
SUMBER•   http://en.wikipedia.org/wiki/Systems_development_life-cycle•   http://en.wikipedia.org/wiki/Software_development...
TERIMA KASIH,
Upcoming SlideShare
Loading in...5
×

Proses Pengembangan Perangkat Lunak (SDLC)

5,906

Published on

Slide mengenai pengantar 'Proses Pengembangan Perangkat Lunak' / 'Software Development Process' / 'System Development Life Cycle'.

Published in: Technology
0 Comments
9 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
5,906
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
9
Embeds 0
No embeds

No notes for slide
  • adalah proses pembuatan dan pengubahan sistem serta model dan metodologi yang digunakan untuk mengembangkan sistem-sistem tersebut.
  • Analisis Kebutuhan Perangkat LunakProses menganalisis dan pengumpulan kebutuhan sistem yang sesuai dengan domain informasi tingkah laku, unjuk kerja, dan antar muka (interface) yang diperlukan. Kebutuhan-kebutuhan tersebut didokumentasikan dan dilihat lagi dengan pelanggan.3. DesainProses desain akan menerjemahkan syarat kebutuhan ke sebuah perancangan perangkat lunak yang dapat diperkirakan sebelum dibuat coding. Proses ini berfokus pada : struktur data, arsitektur perangkat lunak, representasi interface, dan detail (algoritma) prosedural.4. Pengkodeaan (Coding)Pengkodean merupakan proses menerjemahkan desain ke dalam suatu bahasa yang bisa dimengerti oleh komputer.5. PengujianProses pengujian dilakukan pada logika internal untuk memastikan semua pernyataan sudah diuji. Pengujian eksternal fungsional untuk menemukan kesalahan-kesalahan dan memastikan bahwa input akan memberikan hasil yang aktual sesuai yang dibutuhkan.6. PemeliharaanPerangkat lunak yang sudah disampaikan kepada pelanggan pasti akan mengalami perubahan. Perubahan tersebut bisa karena mengalami kesalahan karena perangkat lunak harus menyesuaikan dengan lingkungan (periperal atau sistem operasi baru) baru, atau karena pelanggan membutuhkan
  • Proyek yang sebenarnya jarang mengikuti alur sekuensial seperti diusulkan, sehingga perubahan yang terjadi dapat menyebabkan hasil yang sudah didapat tim harus diubah kembali/iterasi sering menyebabkan masalah baru.Linear sequential metode mengharuskan semua kebutuhan pemakai sudah dinyatakan secara eksplisit di awal proses, tetapi kadang-kadang ini tidak dapat terlaksana karena kesulitan yang dialami pemakai saat akan mengungkapkan semua kebutuhannya tersebut.Pemakai harus bersabar karena versi dari program tidak akan didapat sampai akhir rentang waktu proyek.Adanya waktu menganggur bagi pengembang, karena harus menunggu anggota tim proyek lainnya menuntaskan pekerjaannya.
  • Tahapan-tahapan dalam Prototyping adalah sebagai berikut:1. Pengumpulan kebutuhanPelanggan dan pengembang bersama-sama mendefinisikan format seluruh perangkat lunak, mengidentifikasikan semua kebutuhan, dan garis besar sistem yang akan dibuat.2. Membangun prototypingMembangun prototyping dengan membuat perancangan sementara yang berfokus pada penyajian kepada pelanggan (misalnya dengan membuat input dan format output)3. Evaluasi prototypingEvaluasi ini dilakukan oleh pelanggan apakah prototyping yang sudah dibangun sudah sesuai dengan keinginann pelanggan. Jika sudah sesuai maka langkah 4 akan diambil. Jika tidak prototyping direvisi dengan mengulangu langkah 1, 2 , dan 3.4. Mengkodekan sistemDalam tahap ini prototyping yang sudah di sepakati diterjemahkan ke dalam bahasa pemrograman yang sesuai5. Menguji sistemSetelah sistem sudah menjadi suatu perangkat lunak yang siap pakai, harus dites dahulu sebelum digunakan. Pengujian ini dilakukan dengan White Box, Black Box, Basis Path, pengujian arsitektur dan lain-lain6. Evaluasi SistemPelanggan mengevaluasi apakah sistem yang sudah jadi sudah sesuai dengan yang diharapkan . Jika ya, langkah 7 dilakukan; jika tidak, ulangi langkah 4 dan 5.7. Menggunakan sistemPerangkat lunak yang telah diuji dan diterima pelanggan siap untuk digunakan.
  • Pengguna atau pemilik sistem bisa terus menerus menambah kompleksitas sitem hingga sistem menjadi sangat kompleks, hal ini bisa menyebabkan pengembang meninggalkan pekerjaanya sehingga sistem yang dikerjaan tidak akan pernah terselesaikan.Pelanggan kadang tidak melihat atau menyadari bahwa perangkat lunak yang ada belum mencantumkan kualitas perangkat lunak secara keseluruhan dan juga belum memikirkan kemampuan pemeliharaan untuk jangja waktu lama.Pengembang biasanya ingin cepat menyelesaikan proyek. Sehingga menggunakan algoritma dan bahasa pemrograman yang sederhana untuk membuat prototyping lebih cepat selesai tanpa memikirkan lebih lanjut bahwa program tersebut hanya merupakan cetak biru sistem .Hubungan pelanggan dengan komputer yang disediakan mungkin tidak mencerminkan teknik perancangan yang baik
  • Model RAD bisa dibilang keluarganya dari waterfall hehehe… soalnya pada Model RAD mengadopsi dari model waterfall.. lebih jelasnya mungkin bisa diliat keterangan di bawah…RAD adalah model proses pembangunan perangkat lunak 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.Pada model ini waktu yang singkat yang di gunakan pada model tsb.Jika kebutuhan lengkap dan jelas maka waktu yang diperlukan kira2 60 sampai 90 hari(wah cepat juga y…).Penjelasan gambarnya mungkin seperti ini:Business modelling : berfungsi menjawab pertanyaan-pertanyaan seperti informasi apa yang mengendalikan proses bisnis? Informasi apa yang dihasilkan? Siapa yang menghasilkan informasi? Kemana informasi itu diberikan? Siapa yang mengolah informasi?Data modelling: aliran informasi yang sudah didefinisikan, disusun menjadi sekumpulan objek data. karakteristik/atribut dan hubungan antar objek-objek tersebut à analisis kebutuhan dan dataProcess 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.
  • Merupakan metode proses perangkat lunak yang memadukan wujud pengulangan dari metode prototyping dengan aspek pengendalian dan sistematika dari linear sequential metode, dengan penambahan elemen baru yaitu analisis resiko. metode ini memiliki 4 aktivitas penting, yaitu :- Perencanaan (Planning), penentuan tujuan, alternatif dan batasan- Analisis resiko (Risk Analysis), analisis alternatif dan identifikasi/pemecahan resiko- Rekayasa (Engineering), pengembangan level berikutnya dari produk- Evaluasi Pemakai (Customer Evaluation) penilaian terhadap hasil rekayasaBentuk spiral memberikan gambaran bahwa semakin besar iterasinya, maka menunjukkan makin lengkap versi dari perangkat lunak yang dibuat. Selama awal sirkuit, objektif, alternatif dan batasan didefinisikan serta resiko diidentifikasikan dan dianalisa. Jika resiko menunjukkan ada ketidakpastian terhadap kebutuhan, maka prototyping harus dibuat pada kuadran rekayasa. Simulasi dan pemodelan lain dapat digunakan untuk mendefinisikan masalah dan memperbaiki kebutuhan. Pelanggan mengevaluasi hasil rekayasa (kuadran evaluasi pelanggan) dan membuat usulan untuk perbaikan. Berdasarkan masukan dari pelanggan, fase berikutnya adalah perencanaan dan analisis resiko. Setelah analisis resiko selalu diperiksa apakah proyek diteruskan atau tidak, jika resiko terlalu besar, maka proyek dapat dihentikan. Model spiral ini adalah pendekatan yang paling realistic untuk sistem sekala besar. Metode ini menggunakan pendekatan evolusioner, sehingga pelanggan dan pengembang dapat mengerti dan bereaksi terhadap suatu resiko yang mungkin terjadi
  • Sulit untuk meyakinkan pemakai (saat situasi kontrak) bahwa penggunaan pendekatan ini akan dapat dikendalikan.
  • written text that accompanies computer software. It either explains how it operates or how to use it, and may mean different things to people in different roles.
  • DefinisiKebutuhanPurposeful requirementFunctional requirementNonfunctional requirementUser profileAnalisisKebutuhanRequirement prioritisationConstrain and Risk AnalysisTrade-off analysisModel KebutuhanDisusunsecarahierarki (functional) berdasarkanprioritas, risk functional,
  • Database Design Document (DDD). It contains Conceptual, Logical, and Physical Design Elements. The DDD includes the formal information that the people who interact with the database need. The purpose of preparing it is to create a common source to be used by all players within the scene. The potential users are:Database DesignerDatabase DeveloperDatabase AdministratorApplication DesignerApplication Developer
  • This is what most programmers mean when using the term software documentation. When creating software, code alone is insufficient. There must be some text along with it to describe various aspects of its intended operation.
  • For many applications it is necessary to have some promotional materials to encourage casual observers to spend more time learning about the product. This form of documentation has three purposes:-To excite the potential user about the product and instill in them a desire for becoming more involved with it.To inform them about what exactly the product does, so that their expectations are in line with what they will be receiving.To explain the position of this product with respect to other alternatives.One good marketing technique is to provide clear and memorable catch phrases that exemplify the point we wish to convey, and also emphasize the interoperability of the program with anything else provided by the manufacturer.
  • For many applications it is necessary to have some promotional materials to encourage casual observers to spend more time learning about the product. This form of documentation has three purposes:-To excite the potential user about the product and instill in them a desire for becoming more involved with it.To inform them about what exactly the product does, so that their expectations are in line with what they will be receiving.To explain the position of this product with respect to other alternatives.One good marketing technique is to provide clear and memorable catch phrases that exemplify the point we wish to convey, and also emphasize the interoperability of the program with anything else provided by the manufacturer.
  • Proses Pengembangan Perangkat Lunak (SDLC)

    1. 1. Oleh : Rasyeda Ghulam Aufa | 321210010 PROSES PENGEMBANGAN PERANGKAT LUNAK
    2. 2. SYSTEMS DEVELOPMENT LIFE CYCLE (SDLC),or Software development process
    3. 3. SOFTWARE DEVELOPMENT PROCESS Activities and steps Requirements  Specification  Architecture  Design  Implementation  Testing  Debugging  Deployment  Maintenance Methodologies Waterfall  Prototype model  Incremental  Iterative V-Model  Spiral  Scrum  Cleanroom  RAD  DSDM  RUP  XP  Agile  Lean  Dual Vee Model  TDD Supporting disciplines Configuration management  Documentation  Quality assurance (SQA)  Project management  User experience design Tools Compiler  Debugger  Profiler  GUI designer  IDE  Build automation
    4. 4. PENGEMBANGAN PERANGKAT LUNAK Metode Pengembangan Perangkat Lunak Tahapan Pengembangan Perangkat Lunak Dokumentasi Pengembangan
    5. 5. PENGEMBANGAN PERANGKAT LUNAK Metode Pengembangan Perangkat Lunak  Linear Sequential / waterfall method  Prototyping  RAD (Rapid Application Development)  Spiral Tahapan Pengembangan Perangkat Lunak Dokumentasi Pengembangan
    6. 6. PENGEMBANGAN PERANGKAT LUNAK Metode Pengembangan Perangkat Lunak Tahapan Pengembangan Perangkat Lunak Dokumentasi Pengembangan  Dokumentasi Requirements  Dokumentasi Architecture/Design  Dokumentasi Technical  Dokumentasi End User  Dokumentasi Marketing
    7. 7. Linear Sequential – Prototyping – RAD – SpiralMETODE & TAHAPAN PENGEMBANGANPERANGKAT LUNAK
    8. 8. LINEAR SEQUENTIAL / WATERFALL
    9. 9. LINEAR SEQUENTIAL / WATERFALL Keunggulan Kelemahan
    10. 10. LINEAR SEQUENTIAL / WATERFALL Keunggulan  Mudah aplikasikan.  Memberikan template tentang metode analisis, desain, pengkodean, pengujian, dan pemeliharaan. Kelemahan
    11. 11. LINEAR SEQUENTIAL / WATERFALL Keunggulan Kelemahan  Proyek yang sebenarnya jarang mengikuti alur sekuensial seperti diusulkan.  Linear sequential metode mengharuskan semua kebutuhan pemakai sudah dinyatakan secara eksplisit di awal proses.  Pemakai harus bersabar karena versi dari program tidak akan didapat sampai akhir rentang waktu proyek.  Adanya waktu menganggur bagi pengembang.
    12. 12. PROTOTYPING
    13. 13. PROTOTYPING Keunggulan Kelemahan
    14. 14. PROTOTYPING Keunggulan  Adanya komunikasi yang baik antara pengembang dan pelanggan.  Pengembang dapat bekerja lebih baik dalam menentukan kebutuhan pelanggan.  Pelanggan berperan aktif dalam pengembangan sistem.  Lebih menghemat waktu dalam pengembangan sistem.  Penerapan menjadi lebih mudah karena pemakai mengetahui apa yang diharapkannya. Kelemahan
    15. 15. PROTOTYPING Keunggulan Kelemahan  Pelanggan kadang tidak menyadari bahwa perangkat lunak yang ada belum mencantumkan kualitas perangkat lunak secara keseluruhan.  Pengembang biasanya ingin cepat menyelesaikan proyek.  Hubungan pelanggan dengan komputer yang disediakan mungkin tidak mencerminkan teknik perancangan yang baik.
    16. 16. RAD (RAPID APPLICATION DEVELOPMENT)
    17. 17. RAD (RAPID APPLICATION DEVELOPMENT) Keunggulan Kelemahan
    18. 18. RAD (RAPID APPLICATION DEVELOPMENT) Keunggulan  Waktu yang digunakan sangat cepat karena pekerjaan bisa dilakukan secara simultan.  Kualitas software yang dihasilkan cenderung lebih baik dibandingkan prototype dan linear, karena model ini menggabungkan kedua model tersebut. Kelemahan
    19. 19. RAD (RAPID APPLICATION DEVELOPMENT) Keunggulan Kelemahan  Untuk proyek dengan skala besar, RAD membutuhkan sumber daya manusia yang cukup untuk membentuk sejumlah tim RAD.  RAD membutuhkan pengembang dan pemakai yang mempunyai komitmen untuk melaksanakan aktivitas melengkapi sistem dalam kerangka waktu yang singkat.  Akan menimbulkan masalah jika sistem tidak dapat dibuat secara modular.  RAD tidak cocok digunakan untuk sistem yang mempunyai resiko teknik yang tinggi.
    20. 20. SPIRAL
    21. 21. SPIRAL Keunggulan Kelemahan
    22. 22. SPIRAL Keunggulan  Lebih cocok untuk pengembangan sistem dan perangkat lunak skala besar  Pengembang dan pemakai dapat lebih mudah memahami dan bereaksi terhadap resiko setiap tingkat evolusi Kelemahan
    23. 23. SPIRAL Keunggulan Kelemahan  Memerlukan tenaga ahli untuk memperkirakan resiko, dan harus mengandalkannya supaya sukses.  Belum terbukti apakah metode ini cukup efisien karena usianya relatif baru.
    24. 24. Requirements - Architecture/Design -Technical - End User - Marketing DOKUMENTASI PENGEMBANGAN
    25. 25. DOKUMENTASI REQUIREMENTS Definisi Kebutuhan Analisis Kebutuhan Model Kebutuhan
    26. 26. DOKUMENTASI REQUIREMENTS
    27. 27. DOKUMENTASI ARCHITECTURE / DESIGN Pendahuluan Spesifikasi singkat Desain Arsitektur Desain secara detail Referensi
    28. 28. DOKUMENTASI TECHNICAL
    29. 29. DOKUMENTASI TECHNICAL/** * Short one line description. (1) * Longer description. If there were any, it would be [2] * here. * * @param variable Description text text text. (3) * @return Description text text text. */public int methodName (...) { // method body}
    30. 30. DOKUMENTASI TECHNICAL
    31. 31. DOKUMENTASI END USER Pengantar Instalasi Tutorial Instruksi detail Detail Teknis
    32. 32. DOKUMENTASI MARKETING Untuk menarik calon pengguna dan membuat mereka berkeinginan untuk ikut merasakan produk. Memberi tahu apa yang bisa dilakukan oleh produk
    33. 33. DOKUMENTASI MARKETING
    34. 34. SUMBER• http://en.wikipedia.org/wiki/Systems_development_life-cycle• http://en.wikipedia.org/wiki/Software_development_methodology• http://en.wikipedia.org/wiki/Software_documentation• http://bukurobek.blogspot.com/2011/04/metodologi-pengembangan- perangkat-lunak.html• http://en.wikipedia.org/wiki/Waterfall_model• http://yaniarprayogo.wordpress.com/2011/06/20/langkah-langkah- dalam-pengembangan-software/• http://enter-mydo.blogspot.com/2011/09/metode-pengembangan- software.html• http://imacokladh.wordpress.com/2009/05/21/metode- pengembangan-perangkat-lunak/
    35. 35. TERIMA KASIH,

    ×