RPL - 02 Proses Rekayasa Perangkat Lunak (Software Process)

Berli Bytes
23 Sept 202121:50

Summary

TLDRThis video lecture on software engineering focuses on software development processes. It discusses the Software Development Framework, outlining key activities like communication, planning, modeling, construction, and deployment. The lecture then delves into different process models, including the linear Waterfall model, iterative Prototyping, evolutionary Spiral model, and the Unified Process model. Each model's strengths and weaknesses are compared, emphasizing the importance of selecting the most suitable model for a project's specific needs.

Takeaways

  • πŸ˜€ The video discusses the Software development process, focusing on Software development Frameworks, process flows, and prescriptive process models.
  • πŸ“š A Framework is a high-level perspective of software development, outlining the general processes involved in developing software.
  • πŸ” The video explains that Framework activities are the smallest units within the software development process, grouped under umbrella activities for overall management.
  • πŸ—£οΈ Communication is the first step in the software development process, aiming to align stakeholders on requirements and expected features.
  • πŸ“ˆ The video outlines four main processes within the software development Framework: communication, planning, modelling, construction, and deployment.
  • πŸ” Process flows in software development can be linear, iterative, evolutionary, or parallel, each with its own characteristics and applications.
  • 🌟 The Waterfall model is introduced as a linear and sequential approach to software development, but it has limitations, such as difficulty in handling requirement changes.
  • 🎯 The Prototyping model is highlighted as an approach to quickly develop a preliminary version of the software to gather user feedback and clarify requirements.
  • πŸŒ€ The Spiral model is presented as an iterative and evolutionary approach, involving risk analysis and customer feedback at each iteration.
  • πŸ”„ The Unified Process model emphasizes the importance of continuous customer communication and uses a series of five phases: Inception, Elaboration, Construction, Transition, and Production.
  • πŸ“Š The video concludes with a comparison of the discussed models, highlighting their strengths and weaknesses, and suggests choosing the model that best fits the project's needs.

Q & A

  • What is the main focus of the video material discussed in the script?

    -The main focus of the video material is on Software Engineering processes, specifically discussing Software development Frameworks, the process flow of software, and prescriptive process models.

  • What is a Software development Framework as described in the script?

    -A Software development Framework is described as a high-level perspective of software development, providing a general overview of the processes involved in developing software. It is structured with Umbrella activities and Framework activities, which are the smallest units of work.

  • What are the four general processes within the Software Engineering Framework mentioned in the script?

    -The four general processes within the Software Engineering Framework are communication, planning, modelling, and construction, and deployment.

  • What is the purpose of Umbrella activities in the context of Software development Framework?

    -Umbrella activities are meant to manage progress, quality, change, and risk within the overall software development process. They ensure that the software development process itself is of high quality, not just the final software product.

  • What are the different types of process flows for software development discussed in the script?

    -The script discusses four types of process flows for software development: linear, iterative, evolutionary, and parallel process flows.

  • How does the Waterfall model differ from other process models in terms of its process flow?

    -The Waterfall model is characterized by a systematic, sequential, and linear process flow where each phase is completed one time and only once, with no iteration, and each process must be completed before the next can begin.

  • What are the advantages and disadvantages of the Waterfall model as mentioned in the script?

    -The Waterfall model's advantages include being easy to understand and plan, effective for small projects with clear requirements, and having straightforward analysis and testing processes. Its disadvantages include difficulty in handling requirement changes, late testing, and obtaining user approval only at the end of the project.

  • What is the main concept behind the Prototyping process model?

    -The Prototyping process model involves quickly developing a prototype of the software to gather user feedback on whether the requirements are met. It helps to clarify user needs and reduce the risk of project rejection.

  • How does the Spiral model differ from the Waterfall model in terms of its approach to software development?

    -The Spiral model differs from the Waterfall model by involving iterative development with customer feedback and risk analysis at each iteration, allowing for a more flexible and controlled development process, especially for large and complex systems.

  • What is the Unified Process model and what are its unique phases?

    -The Unified Process model is an iterative and use-case driven approach that emphasizes the importance of communication with users and simplified methods to explain the system from the user's perspective. Its unique phases include Inception, Elaboration, Construction, Transition, and Production.

  • How does the script suggest choosing the right software development model for a project?

    -The script suggests that there is no one-size-fits-all model and that the choice should be based on the specific conditions and requirements of the software project at hand.

Outlines

00:00

πŸ“š Introduction to Software Development Frameworks

This paragraph introduces the concept of a Software Development Framework, which is a high-level perspective on the processes involved in software development. It explains that a Framework is a general view of the processes and activities that occur during software development. The paragraph outlines four main processes within the framework: communication, planning, modelling, construction, and deployment. It also introduces the idea of 'Framework activities' as the smallest units within these processes. The paragraph further discusses 'Umbrella activities', which are additional activities aimed at managing the progress, quality, change, and risks associated with the software development process. Examples of Umbrella activities include software project tracking, risk management, and quality assurance.

05:00

πŸ”„ Understanding Software Process Flows

The second paragraph delves into the different types of software process flows, including linear, iterative, evolutionary, and parallel process flows. It explains that in a linear process flow, each process is carried out sequentially and only once, starting from communication to deployment. Iterative process flows allow for repetition of certain processes, such as revisiting the communication phase after reaching the testing phase. Evolutionary process flows are characterized by rhythmic increments of the software, with each iteration potentially producing a new release of the software. Parallel process flows enable simultaneous execution of processes, such as modeling and planning occurring at the same time. The paragraph also discusses the concept of tasks (taxes), which are the actual work to be completed at each activity within the framework, and how the number and complexity of these tasks depend on the size of the software project.

10:02

πŸ› οΈ Exploring Prescriptive Process Models

This paragraph focuses on prescriptive process models, which are models that clearly define the rules, activities, tasks, outputs, and other elements within the software engineering process. It emphasizes that prescriptive models prioritize measurable, sequential processes and provide guidance for each activity, much like a doctor's prescription. The paragraph lists four examples of prescriptive models: the Waterfall model, Prototyping process model, Evolutionary or Spiral process model, and the Unified process model. It provides a brief overview of each model, highlighting their characteristics and the context in which they might be applied.

15:03

πŸ’§ The Waterfall Model and Its Limitations

The fourth paragraph provides a detailed look at the Waterfall model, an approach to software development with a systematic, sequential, and linear process flow. It starts with requirement gathering and ends with ongoing support after the software is complete. The paragraph points out that the Waterfall model is the oldest approach to software engineering and is known for its structured nature. However, it also discusses the model's limitations, such as difficulty in handling requirement changes, late-stage testing, and the need for user patience as the software is only visible at the end of the project. The paragraph concludes by noting that the Waterfall model is rarely used in modern software development due to these challenges.

20:03

πŸ”„ Advantages and Disadvantages of Various Process Models

The final paragraph summarizes the advantages and disadvantages of the process models discussed in the video. It starts with the Waterfall model, which is easy to understand and plan but struggles with requirement changes and late-stage user involvement. The Prototyping model is highlighted for its ability to minimize the impact of requirement changes and involve users early on, but it can lead to misperceptions of the prototype as the final product. The Spiral or Evolutionary model is praised for its continuous user involvement and effective risk management but criticized for its complexity and the need for an expert development team. Lastly, the Unified process model is noted for its emphasis on quality documentation and continuous user involvement, but it can be challenging to manage and integrate incremental software development. The paragraph concludes by emphasizing that there is no one-size-fits-all model, and the choice of model should be based on the specific conditions of the software project.

Mindmap

Keywords

πŸ’‘Software Development Framework

A software development framework provides a high-level perspective on the processes involved in software development. It serves as a general blueprint for the activities and tasks that are undertaken to develop a software product. In the video, the framework is described as an umbrella of activities that encompass the entire software development process, including communication, planning, modeling, construction, and deployment.

πŸ’‘Framework Activity

Within the software development framework, 'Framework Activity' refers to the specific tasks or units of work that are part of each process. These activities are the building blocks of the development process and are carried out in a sequential manner. The video script mentions that each Framework Activity is part of the overarching framework and is essential for the successful completion of the software development project.

πŸ’‘Umbrella Activity

The 'Umbrella Activity' in software development refers to the complementary activities that support the main processes within the framework. These activities aim to manage progress, quality, change, and risk throughout the software development lifecycle. The video explains that Umbrella Activities include tasks like project tracking, risk management, and quality assurance, which are crucial for ensuring the optimal quality and success of the software development process.

πŸ’‘Process Flow

In the context of the video, 'Process Flow' describes the sequence in which the software development processes are carried out. It can take various forms such as linear, iterative, evolutionary, or parallel. The video script uses the term to illustrate different approaches to the development process, emphasizing that while the processes may be the same, the flow can vary significantly depending on the project's requirements and the chosen development model.

πŸ’‘Linear Process Flow

A 'Linear Process Flow' is a straightforward, sequential approach to software development where each process is completed one after the other without iteration. The video script describes it as a simple, step-by-step process starting from communication to deployment, with each stage being completed only once before moving on to the next.

πŸ’‘Iterative Process Flow

An 'Iterative Process Flow' allows for repetition or cycles of certain processes within the software development. The video script explains that this flow permits revisiting previous stages, such as going back to communication after reaching a later stage, with the understanding that if a process is repeated, the subsequent processes must follow in their logical order.

πŸ’‘Evolutionary Process Flow

The 'Evolutionary Process Flow' is characterized by a rhythmic development of the software, often depicted as a circular process that can be repeated. The video script mentions that after deployment, the process can be repeated, with each iteration producing a new release of the software, which can be used and continue to evolve in subsequent cycles.

πŸ’‘Parallel Process Flow

A 'Parallel Process Flow' enables the simultaneous execution of processes. The video script provides an example where modeling can be done at the same time as planning, demonstrating that certain activities within different processes can occur concurrently, depending on the project's needs and the development strategy.

πŸ’‘Task Set

A 'Task Set' refers to the actual work that needs to be completed for each activity within the software development framework. The video script explains that Task Sets are defined after determining the process flow and the Framework Activities, and their number and complexity depend on the size and nature of the software project being developed.

πŸ’‘Prescriptive Process Model

A 'Prescriptive Process Model' is a model that clearly defines the rules, activities, tasks, outputs, and other elements within the software engineering process. The video script discusses this model as one that prioritizes measurable, sequential processes and adherence to guidelines for each activity, akin to following a doctor's prescription for treatment.

πŸ’‘Waterfall Model

The 'Waterfall Model' is a systematic, sequential, and linear approach to software development, where each phase of development is completed before moving on to the next. The video script describes it as the oldest approach in software engineering, known for its structured nature but also for its challenges, such as difficulty in handling requirement changes and late user feedback.

Highlights

Introduction to Software Engineering processes and frameworks.

Definition of a Software development Framework as a high-level perspective on software development processes.

Explanation of Framework activities as the smallest units within the software development framework.

Identification of four main processes within the software engineering framework: communication, planning, modelling, construction, and deployment.

Description of the Communication process involving stakeholder engagement to define software requirements and features.

The Planning process involves creating a software project plan that outlines tasks, resources, outputs, and potential risks.

Modelling process explained as the creation of software models to explain requirements and to design solutions that meet those requirements.

Construction process involves building the software according to the design, including coding and testing.

Deployment process described as the act of handing over the software to users, including user manuals, training, and maintenance scenarios.

Introduction of Umbrella activities that oversee the entire software development process to manage progress, quality, change, and risk.

Discussion on the importance of Umbrella activities for ensuring the quality of the software development process.

Explanation of different process flows in software development, including linear, iterative, evolutionary, and parallel process flows.

Linear process flow described as a simple, sequential process where each step is completed once in order.

Iterative process flow allows for repetition of certain processes, with a note on the sequential nature of process repetition.

Evolutionary process flow characterized by rhythmic increments of the software, with each iteration potentially producing a new software release.

Parallel process flow enables simultaneous execution of processes, such as modelling and planning being done at the same time.

Introduction to the concept of tasks (taxes) as the actual work to be completed within each framework activity.

Discussion on how the number and complexity of tasks depend on the size of the software project being developed.

Explanation of how tasks are defined after determining the process flow and framework activities for each process.

Example of tasks within the requirements gathering activity, detailing the steps from stakeholder identification to prioritization.

Introduction to process models as implementations of software development process flows, distinguishing between prescriptive and descriptive models.

Discussion of the Waterfall model as a linear, sequential, and systematic approach to software development.

Analysis of the Waterfall model's strengths, such as its structured approach and suitability for small, well-understood projects.

Critique of the Waterfall model's weaknesses, including difficulty in handling requirement changes and late user feedback.

Introduction to the Prototyping process model, which involves creating a quick model of the software to gather detailed requirements.

Advantages of the Prototyping model, such as minimizing the impact of requirement changes and involving users early in the process.

Challenges of the Prototyping model, including the risk of users mistaking prototypes for the final product and the focus on speed over quality.

Introduction to the Evolutionary or Spiral model, which involves developing software through a series of evolutionary releases.

Strengths of the Spiral model, such as continuous user involvement and effective risk management for large-scale software projects.

Weaknesses of the Spiral model, including the difficulty in convincing users of its measurability and control, and the long wait to see the final product.

Introduction to the Unified Process model, which emphasizes communication with users and simplified methods to explain the system from the user's perspective.

Description of the Unified Process model's unique phases: Inspection, Elaboration, Construction, Transition, and Production.

Advantages of the Unified Process model, such as attention to documentation quality and continuous user involvement.

Challenges of the Unified Process model, including the potential for imprecise requirements and difficulty in integrating incremental software.

Conclusion on the importance of choosing the most suitable model for a software project based on its specific conditions.

Summary of the pros and cons of each model discussed, highlighting the need for project-specific model selection.

Transcripts

play00:00

Hai selamat datang di video materi untuk

play00:02

mata kuliah rekayasa perangkat lunak

play00:03

dalam kesempatan kali ini kita akan

play00:06

membahas topik tentang Software proses

play00:08

atau proses-proses pada rekayasa

play00:10

perangkat lunak selamat menyimak

play00:14

topik pembahasan dalam video kali ini

play00:16

ada tiga pertama adalah pembahasan

play00:18

tentang Software development Framework

play00:20

lalu kedua adalah pembahasan tentang

play00:22

alur proses dari software dan topik

play00:25

pembahasan ketiga atau yang terakhir

play00:26

adalah model proses prescriptive Mari

play00:29

kita bahas satu persatu

play00:32

kerangka atau Framework merupakan

play00:35

gambaran besar atau high-level

play00:37

perspektif software development

play00:39

Framework dapat diartikan sebagai

play00:41

gambaran umum tentang proses-proses yang

play00:43

dilalui untuk mengembangkan Sebuah

play00:46

software Perhatikan gambar di sebelah

play00:48

kiri ini merupakan Framework atau

play00:51

kerangka pengembangan software seperti

play00:54

yang terlihat kerangka pengembangan

play00:56

software tersusun atas Umbrella

play00:58

activities yang frame objectivity dan di

play01:02

dalam Framework activity terdapat

play01:04

sekumpulan taxed yang merupakan unit

play01:06

terkecil nya Mari kita bahas lebih dalam

play01:09

tentang kerangka ini

play01:12

di dalam Framework tadi kita bisa lihat

play01:14

ada yang dinamakan dengan Framework

play01:16

activity sebetulnya Framework tipe ini

play01:20

adalah aktivitas dari proses atau bisa

play01:23

kita sebut juga dengan Framework proses

play01:25

untuk pengembangan software secara umum

play01:28

ada empat proses atau proses Framework

play01:30

tadi dalam rekayasa perangkat lunak

play01:32

yaitu communication planning modelling

play01:35

construction dan diklaim and

play01:39

communication yaitu melakukan komunikasi

play01:41

dengan stakeholders untuk menyepakati

play01:43

tujuan kebutuhan yang harus dipenuhi

play01:46

atau requirements serta fitur dan fungsi

play01:50

yang diharapkan ada pada software yang

play01:52

akan dikembangkan

play01:54

lalu proses planning ini merupakan

play01:56

membuat rencana pekerjaan apa saja yang

play01:58

harus dilakukan

play02:00

Hai dengan cara mendefinisikan

play02:01

tugas-tugas teknis sumber daya yang

play02:04

diperlukan

play02:05

luaran atau outputnya dan juga Resiko

play02:08

yang mungkin temukan proses Ini

play02:11

menghasilkan sesuatu yang dinamakan

play02:13

dengan software Project plan

play02:15

lalu proses yang ketiga adalah modelling

play02:18

proses ini membuat berbagai model

play02:21

perangkat lunak untuk dapat menjelaskan

play02:23

kebutuhan atau requirements dengan baik

play02:25

pada proses modelling ini kita juga

play02:28

membuat rancangan yang bisa memenuhi

play02:30

requirement tersebut

play02:32

proses yang keempat adalah construction

play02:35

ini membangun software sesuai rancangan

play02:37

termasuk melakukan coding dan juga

play02:39

testing dari software tersebut dan

play02:42

proses yang terakhir adalah diploy man

play02:44

ini menyerahkan software kepada user

play02:47

untuk mereka gunakan tentu penyerahannya

play02:49

disertai dengan manual penggunaan

play02:51

pelatihan pengguna dan juga skenario

play02:54

pemeliharaan softwarenya

play02:57

5 proses tersebut harus

play03:00

secara berurutan dan seperti yang tadi

play03:02

disebutkan aktivitas yang ada di setiap

play03:05

proses tersebut dinamakan dengan

play03:06

Framework activity pada kerangka

play03:09

pengembangan software Tadi kita juga

play03:11

melihat ada yang dinamakan dengan

play03:13

Umbrella activity saya sengaja membahas

play03:16

tentang proses Framework dan free

play03:17

motivity terlebih dahulu sebelum masuk

play03:20

ke pembahasan tentang ambil activity ini

play03:22

tujuannya agar lebih mudah untuk

play03:24

memahaminya Amril activity di sini

play03:27

merujuk pada setiap aktivitas pelengkap

play03:30

dari aktivitas di dalam proses

play03:32

pengembangan software secara keseluruhan

play03:34

dengan tujuan untuk mengelola kemajuan

play03:37

kualitas perubahan dan juga resiko tadi

play03:42

kita sudah bahas bahwa ada lima proses

play03:44

umum dari proses rekayasa perangkat

play03:46

lunak Umbrella activity ini mencakup

play03:48

kelima proses tersebut tujuan dari ambil

play03:51

activity ini sebetulnya lebih mengarah

play03:53

pada atribut kualitas dari proses

play03:56

pengembangan software nya itu sendiri

play03:58

tanpa melakukan Amril activity bisa saja

play04:02

softwarenya selesai dikembangkan namun

play04:04

belum tentu optimal baik dari sisi

play04:06

proses ataupun hasil softwarenya itu

play04:09

sendiri melengkapinya dengan serangkaian

play04:11

Umbrella activity akan lebih menjamin

play04:13

keberhasilan dan juga kualitas dari

play04:16

proses pengembangan software

play04:18

ada banyak aktivitas yang termasuk

play04:21

kedalam ambil activity ini Berikut ini

play04:23

adalah beberapa diantaranya seperti

play04:26

misalnya software Project tracking and

play04:29

control risk management software quality

play04:32

assurance

play04:33

technical review measurement software

play04:37

configuration management resource beli

play04:39

tim manajemen dan juga work produk

play04:42

preparation and production

play04:45

kita lanjutkan pada alur proses software

play04:48

proses-proses pada kerangka RPL mulai

play04:51

dari communication hingga deployment

play04:53

harus dilakukan secara sistematis Namun

play04:56

demikian alur proses atau proses flownya

play05:00

bisa berbagai bentuk Contoh alur proses

play05:03

yang paling sederhana adalah alur proses

play05:05

linear seperti yang terlihat pada gambar

play05:08

pada alur proses linear Setiap proses

play05:11

dilakukan satu kali secara berurutan

play05:13

mulai dari communication planning

play05:17

modelling construction hingga di Polman

play05:20

Setiap proses tersebut hanya dilewati

play05:23

satu kali saja dan untuk maju ke satu

play05:26

proses tertentu proses sebelumnya harus

play05:28

sudah tuntas

play05:30

Halo proses software yang kedua adalah

play05:33

alur proses iteratif seperti yang

play05:35

terlihat pada gambar alur proses ini

play05:38

memungkinkan adanya pengulangan terhadap

play05:40

suatu proses tertentu misalnya

play05:42

mengulangi kembali tahap communication

play05:44

setelah sampai pada tahap lening perlu

play05:48

dicatat juga apabila suatu proses

play05:50

diulang kembali maka proses selanjutnya

play05:52

haruslah proses yang secara urutan

play05:55

berada setelah proses tersebut Artinya

play05:58

kita tidak bisa di urutan proses kedepan

play06:01

alur proses ini memungkinkan suatu

play06:04

proses yang dijalankan lebih dari satu

play06:06

kali selama pengembangan software ini

play06:08

dilakukan siklus ini berakhir jika

play06:11

proses diplome telah selesai dilakukan

play06:14

alur proses berikutnya adalah

play06:17

evolutionary process flow ciri khas dari

play06:20

siklus ini adalah instrumen ritmis dari

play06:22

software tersebut proses ini berbentuk

play06:25

lingkaran yang bisa diulang Terus

play06:27

putarannya setelah proses deployment

play06:30

kita bisa mengulangi kembali alur proses

play06:33

mulai dari communication namun setiap

play06:36

putaran proses menghasilkan rilis

play06:38

increment software yang baru perangkat

play06:40

lunak yang dikembangkan dengan alur

play06:42

proses ini dirilis secara bertahap namun

play06:45

setiap kali rilis softwarenya sudah bisa

play06:48

digunakan dan terus berkembang atau

play06:50

berevolusinya pada putaran putaran

play06:52

berikutnya proses berakhir Apabila semua

play06:55

kebutuhan softwarenya sudah terpenuhi

play06:57

atau bisa kita katakan bahwa setelah

play07:00

bentuk evolusi terakhir dari softwarenya

play07:02

tercapai

play07:05

alur proses yang keempat adalah paralel

play07:08

proses flow sesuai namanya alur proses

play07:11

ini memungkinkan untuk ada proses yang

play07:13

dilakukan secara paralel atau bersamaan

play07:16

contohnya dapat kita lihat pada gambar

play07:19

proses modeling bisa dilakukan secara

play07:22

bersamaan dengan proses planning atau

play07:24

pada titik waktu tertentu aktivitas pada

play07:27

proses planning modelling dan juga

play07:29

construction dapat dilakukan secara

play07:31

bersamaan keempat bentuk alur proses ini

play07:35

menunjukkan bahwa walaupun secara umum

play07:36

proses yang dilewati saat mengembangkan

play07:39

software adalah sama tetapi alur

play07:41

prosesnya bisa beragam

play07:43

komponen lain dari kerangka proses

play07:45

rekayasa perangkat lunak adalah taxed

play07:48

tabset ini adalah pekerjaan aktual yang

play07:51

harus diselesaikan pada setiap aktivitas

play07:53

Framework taxed ditentukan setelah

play07:56

menentukan alur proses yang akan

play07:58

digunakan dan yang mendefinisikan

play08:01

Framework tivity pada setiap proses

play08:03

tersebut jumlah dan tingkat kesulitan

play08:06

taxed akan tergantung dari ukuran

play08:08

software yang dikembangkan walaupun

play08:10

Framework tv-nya sama sebuah proyek yang

play08:14

besar biasanya memiliki jumlah taxed

play08:16

yang lebih banyak dibandingkan dengan

play08:18

proyek yang kecil selain kita juga

play08:20

vaxxed bersifat unik berbeda antar

play08:23

proyek pengembangan software jika semua

play08:26

tabset sudah berhasil dilakukan maka

play08:28

seharusnya tujuan dari proyek perangkat

play08:30

lunaknya sudah tercapai Karena itulah

play08:33

saat menentukannya kita sudah tahu

play08:34

terlebih dahulu Apa tujuan proyek

play08:37

perangkat lunaknya dengan baik

play08:39

agar lebih memahami tentang tased ini

play08:42

Mari kita lihat contohnya seperti yang

play08:44

sudah disebutkan tadi setiap Framework

play08:46

activity memiliki sekumpulan tas set

play08:49

atau tugas-tugas yang harus dilakukan

play08:50

Mari kita ambil contoh frame of Activity

play08:53

yang selalu ada yaitu requirements

play08:55

gathering contoh teks set pada aktivitas

play08:58

pengumpulan requirements ini soalnya

play09:00

satu membuat daftar stakeholders lalu

play09:04

kedua adalah mengundang mereka untuk

play09:06

meeting ketiga adalah menanyakan fitur

play09:09

dan fungsi apa saja yang dibutuhkan oleh

play09:12

sel holder tersebut keempat adalah

play09:14

mendiskusikan requirements yang

play09:16

terkumpul dan membuat daftar equipment

play09:18

yang sudah final kelima adalah

play09:21

memberikan prioritas terhadap

play09:22

requirements tersebut dan keenam adalah

play09:25

mencatat semua hal yang perlu diperjelas

play09:27

kembali jika kita sudah berhasil

play09:30

melakukan keenam fase tersebut maka

play09:33

seharusnya aktivitas requirements

play09:34

gathering ini sudah selesai dan kita

play09:36

bisa melanjutkan pada frame activity

play09:39

berikutnya dengan tased yang berbeda

play09:41

tentunya

play09:42

kita lanjutkan pada pembahasan tentang

play09:44

proses model proses model atau model

play09:47

proses merupakan bentuk implementasi

play09:49

dari alur proses perangkat lunak yang

play09:51

tadi sudah kita bahas secara umum ada

play09:54

dua jenis proses model yaitu

play09:56

prescriptive model dan enjoy model ada

play10:00

Jin kali ini yang kita bahas hanya

play10:01

prescriptive model terlebih dahulu dan

play10:04

untuk jail model dibahas pada video lain

play10:06

yang terpisah model proses perspektif

play10:09

merupakan model yang sudah

play10:10

mendefinisikan dengan jelas aturan

play10:13

aktivitas tugas luaran dan berbagai

play10:16

elemen lain dalam proses rekayasa

play10:18

perangkat lunak model proses

play10:20

prescriptive mengutamakan proses yang

play10:22

terukur berurutan dan mengikuti suatu

play10:25

panduan dalam setiap aktivitasnya ibarat

play10:28

sebuah resep dokter kita tinggal

play10:30

mengikutinya saja agar dapat sembuh

play10:32

Seperti apa jenis obatnya Berapa banyak

play10:35

dosisnya dalam kondisi seperti apa obat

play10:38

tersebut diminum dan lain sebagainya

play10:40

kira-kira seperti itulah analogi dari

play10:42

proses preskriptif ini setidaknya ada

play10:45

empat contoh yang termasuk dalam model

play10:47

proses perspektif yang dapat kita

play10:49

temukan saat ini yaitu the waterfall

play10:52

model prototyping proses model

play10:54

evolusioner atau spiral proses model dan

play10:58

terakhir adalah uniform model Mari kita

play11:01

bahas satu persatu model proses tersebut

play11:05

hai pertama adalah Waterfall model

play11:07

Perhatikan gambar yang terlihat ini

play11:09

adalah gambar dari waterfall model

play11:11

Waterfall model merupakan pendekatan

play11:14

untuk pengembangan perangkat lunak yang

play11:16

alur proses yang sistematis berurutan

play11:18

dan juga linier dimulai dari pengumpulan

play11:21

kebutuhan customer merencanakan tugas

play11:24

modelling construction diploy men-dan

play11:29

berujung pada penyediaan dukungan secara

play11:30

berkelanjutan ketika software telah

play11:32

selesai

play11:34

seperti yang sudah jelas terlihat

play11:36

Waterfall model ini adalah bentuk

play11:38

implementasi dari alur proses yang

play11:40

linier tidak ada iterasi disana dan

play11:43

setiap proses hanya dilakukan satu kali

play11:45

jika suatu proses belum tuntas maka

play11:48

proses selanjutnya belum bisa kita

play11:50

lakukan

play11:51

Waterfall model ini merupakan pendekatan

play11:53

rekayasa perangkat lunak yang paling tua

play11:57

the waterfall model dikenal sebagai

play11:59

pendekatan yang rapi dan terstruktur

play12:01

namun pendekatan ini bukan tanpa

play12:03

permasalahan beberapa masalah yang

play12:06

sering muncul pada saat menggunakan

play12:07

Waterfall model adalah pertama proyek

play12:10

pengembangan software di dunia nyata

play12:12

jarang Mengikuti alur proses yang

play12:14

berurutan dan satu arah kedua seringkali

play12:17

pengguna kesulitan untuk mendeskripsikan

play12:20

semua requirements secara eksplisit di

play12:22

awal proses dan ketiga pengguna atau

play12:25

pelanggan harus bersabar karena software

play12:27

baru dapat terlihat pada tahap akhir

play12:30

Project ketiga masalah ini yang menjadi

play12:33

pertimbangan Mengapa tim pengembang

play12:35

software memilih pendekatan atau model

play12:37

proses yang lain pada kenyataannya model

play12:40

Waterfall sudah sangat jarang digunakan

play12:42

dalam pengembangan perangkat lunak

play12:44

modern sekarang ini

play12:47

Hai model proses prescriptive yang kedua

play12:49

adalah prototyping proses model gambar

play12:52

yang terlihat ini merupakan model proses

play12:54

prototyping

play12:55

dalam praktek pengembangan perangkat

play12:57

lunak seringkali pelanggan hanya

play13:00

menjabarkan kebutuhan secara umum saja

play13:02

tanpa penjelasan rinci terkait fungsi

play13:04

atau fitur softwarenya

play13:07

penyebabnya bisa beragam yang jelas

play13:10

perlu proses communication yang berulang

play13:12

dan efektif untuk bisa mendapatkan

play13:14

requirements yang paling sesuai dalam

play13:17

situasi seperti ini paradigma

play13:19

prototyping bisa menjadi pendekatan yang

play13:21

sesuai seperti yang terlihat pada gambar

play13:23

setelah proses komunikasi yang dilakukan

play13:26

Tim akan dengan cepat melanjutkannya ke

play13:28

proses planning dan juga desain atau

play13:31

modeling dan setelahnya Prototype dari

play13:33

software tersebut dikembangkan Prototype

play13:36

ini kemudian ditunjukkan kepada pengguna

play13:38

Mereka kemudian diminta untuk menilai

play13:41

Apakah requirement yang mereka maksud

play13:43

sudah dipenuhi oleh Prototype tersebut

play13:45

idealnya prod Yo ini berperan sebagai

play13:48

alat untuk mengidentifikasi software

play13:50

requirement seringkali dengan membuat

play13:53

Prototype pengguna lebih bisa

play13:55

membayangkan Seperti apa sistem yang

play13:57

mereka butuhkan dan kebutuhan atau

play13:59

requirements itulah yang kemudian harus

play14:01

dipenuhi pada software yang sebenarnya

play14:05

model proses prototipe ini juga memiliki

play14:08

permasalahan atau tantangan ingat bahwa

play14:11

prototipe yang dihasilkan disini

play14:12

bukanlah produk hasil yang sudah siap

play14:15

digunakan suatu prototipe atau purwarupa

play14:18

bisa saja memiliki fungsi seperti

play14:20

software aslinya Namun karena

play14:22

dikembangkannya dengan cepat aspek-aspek

play14:25

lain seperti kualitas umumnya belum

play14:27

diperhatikan

play14:28

inilah yang biasanya menimbulkan

play14:30

permasalahan-permasalahan atau kelemahan

play14:33

utama dari perlu typing adalah

play14:35

stakeholder sering menganggap prototipe

play14:37

software sebagai virus yang sudah

play14:39

berjalan atau produk finalnya dan tidak

play14:42

menyadari bahwa kualitasnya secara

play14:44

keseluruhan belum terjamin is Sisi

play14:47

sebagai software Enginer kita sering

play14:50

mengimplementasikan software yang

play14:52

mengabaikan banyak aspek misalnya

play14:54

kualitas atau keamanan demi menghasilkan

play14:57

prototipe yang lebih cepat

play14:59

akan menjadi masalah apabila tim

play15:02

pengembang lebih fokus pada kecepatan

play15:04

dan menomorduakan aspek lain yang sama

play15:07

pentingnya apalagi jika stakeholders

play15:09

mengira bahwa prototipe ini adalah

play15:11

bentuk yang hampir selesai dari software

play15:13

yang akan digunakan

play15:15

kunci untuk mengatasi permasalahan

play15:17

tersebut adalah dengan membuat

play15:19

kesepakatan di awal dan semua

play15:21

stakeholder harus setuju bahwa prototipe

play15:24

ini dibuat untuk mendapatkan

play15:25

requirements of versi akhirnya nanti

play15:28

dengan demikian stakeholders paham bahwa

play15:31

masih memerlukan waktu hingga

play15:32

softwarenya benar-benar siap untuk

play15:34

digunakan dan tim pengembang pun punya

play15:37

banyak waktu mengembangkan software

play15:38

dengan selayaknya

play15:41

berikutnya adalah evolutionary atau

play15:43

spiral model ini adalah gambarnya

play15:47

angkatan ini software dikembangkan

play15:49

dengan rangkaian versi rilis yang

play15:51

bersifat evolusioner I setiap versi

play15:54

rilis mengikuti aktivitas Kerangka kerja

play15:56

yang ditentukan oleh tim pengembang pada

play15:59

iterasi awal software yang dirilis

play16:01

mungkin saja masih berbentuk model atau

play16:04

prototipe kemudian berkembang pada

play16:06

iterasi selanjutnya hingga versi terbaik

play16:09

dari software tersebut didapatkan spiral

play16:12

model ini merupakan pendekatan yang

play16:13

realistis untuk mengembangkan system dan

play16:16

software berskala besar namun Sama

play16:19

halnya dengan model proses lain spiral

play16:21

model juga memiliki

play16:23

permasalahan-permasalahan pada spiral

play16:25

model adalah sulitnya meyakinkan

play16:26

pelanggan atau pengguna bahwa pendekatan

play16:29

ini dapat terukur dan terkendali

play16:32

sebagian pengguna bisa saja meragukan

play16:34

proses ini karena softwarenya yang

play16:36

berubah-ubah dan terkadang Butuh waktu

play16:39

lama untuk bisa melihat titik akhirnya

play16:41

misalkan

play16:43

Indonesia contoh model proses

play16:45

prescriptive yang terakhir adalah

play16:47

uniform proses model yg adalah gambar

play16:50

dari model proses tersebut yang menjadi

play16:53

ciri khas dari the unified proses ini

play16:55

adalah mengakui pentingnya komunikasi

play16:57

dengan pengguna atau customer dan juga

play17:00

memilih metode yang disederhanakan untuk

play17:03

menjelaskan sistem dari sudut pandang

play17:06

pengguna

play17:06

tujuannya adalah agar pengguna juga

play17:09

paham tentang model dan rancangan dari

play17:11

softwarenya pada the unified process

play17:14

model ini selain menjalankan

play17:16

proses-proses rekayasa perangkat lunak

play17:17

secara umum kita juga secara paralel

play17:20

menjalankan lima fase yang unik pada

play17:23

unified proses 5 fase tersebut adalah

play17:26

inspection elaboration construction

play17:30

Transition dan juga production fase

play17:33

inspection melibatkan komunikasi dengan

play17:36

pengguna dalam perencanaan aktivitas

play17:38

pada fase elaboration timpengembang

play17:41

menggunakan aktivitas-aktivitas

play17:43

Hai dan modelling seperti Yes dan lain

play17:45

sebagainya dengan demikian pengguna akan

play17:48

paham tentang model requirements dan

play17:50

juga rancangan softwarenya

play17:52

selanjutnya adalah fase construction ini

play17:55

merupakan tahap pengembangan software

play17:57

misalnya melakukan coding Lalu ada fase

play18:00

Transition yaitu transisi dari tahap

play18:03

pengembangan software ke tahap

play18:04

implementasi misalnya mengeluarkan rilis

play18:07

ended atau Beta version dan terakhir

play18:11

adalah fase production yaitu penyerahan

play18:13

software kepada pelanggan atau pengguna

play18:15

software sudah digunakan dan

play18:17

penggunaannya dipantau

play18:20

unified modelling ini juga bersifat

play18:22

interaktif dan sama seperti spiral model

play18:25

proses diploidnya menghasilkan software

play18:27

increment unified process model ini

play18:30

sebetulnya berusaha mengambil kebaikan

play18:32

dari model preskriptif secara umum

play18:34

dengan model ajal yang adaptif terhadap

play18:37

perubahan

play18:39

sebagai penutup materi kali ini Mari

play18:42

kita lihat perbandingan antar model yang

play18:44

sudah dibahas tadi tabel ini merangkum

play18:47

poin-poin Perbandingan antar model

play18:49

dilihat dari pro dan kontranya Pro dapat

play18:53

kita Artikan sebagai kekuatan modelnya

play18:56

dan kontra adalah kelemahan atau

play18:58

tantangan yang dimiliki oleh setiap

play19:00

model kita mulai dari waterfall model

play19:03

prosesi memiliki keuntungan mudah untuk

play19:05

dipahami dan direncanakan

play19:07

efektif untuk proyek kecil yang mudah

play19:10

dipahami kebutuhannya dan juga Memiliki

play19:13

proses analisis dan testing yang mudah

play19:15

untuk dilakukan namun model Waterfall

play19:17

memiliki kelemahan dan juga tantangan

play19:20

misalnya sulit menghadapi perubahan

play19:23

requirement

play19:23

testing dilakukan di tahap akhir proyek

play19:26

dan persetujuan pengguna hanya bisa

play19:29

didapatkan di akhir saja oke

play19:31

Hai model proses yang kedua yaitu

play19:33

prototyping memiliki keuntungan

play19:36

meminimalkan dampak perubahan kebutuhan

play19:39

keuntungan lainnya adalah pengguna yang

play19:41

sering terlibat di awal model ini

play19:44

efektif untuk proyek yang kecil dan juga

play19:46

efektif untuk mengurangi resiko

play19:48

penolakan proyek namun model proses ini

play19:52

memiliki kelemahan

play19:53

keterlibatan pengguna yang bisa

play19:55

mengakibatkan keterlambatan ada

play19:58

kecenderungan untuk memberikan software

play20:00

yang masih berupa prototipe dan sulit

play20:03

untuk direncanakan dan juga dikelola

play20:06

model selanjutnya yaitu spiral atau

play20:08

evolutionary

play20:10

model-model ini memiliki beberapa

play20:12

kekuatan misalnya ada keterlibatan

play20:14

pengguna secara berkelanjutan dapat

play20:17

mengelola risiko-risiko pengembangan

play20:19

software dengan baik dan efektif untuk

play20:21

proyek yang besar dan juga rumit namun

play20:24

kita harus memperhatikan juga

play20:26

kelemahannya kesalahan dalam

play20:28

menganalisis resiko bisa menggagalkan

play20:30

proyek

play20:32

juga sulit untuk mengelola pekerjaan

play20:34

yang ada didalamnya dan model proses Ini

play20:37

Membutuhkan tim pengembang yang sudah

play20:39

ahli

play20:41

Hai model proses terakhir yaitu yunivi

play20:43

proses memiliki kelebihan karena

play20:46

kualitas dari dokumentasi yang

play20:48

diperhatikan selain itu juga ada

play20:50

keterlibatan pengguna secara

play20:52

berkelanjutan model ini merespon

play20:55

perubahan requirements dengan baik dan

play20:57

efektif untuk proyek yang bersifat

play20:59

maintenance ataupun yang membutuhkan

play21:01

pemeliharaan software

play21:04

namun kelemahannya adalah yuskes yang

play21:07

dibuat tidak selalu sesuai atau presisi

play21:10

Selain itu cukup sulit mengintegrasikan

play21:13

software increment kelemahan lainnya

play21:16

adalah tahap yang bisa tumpang tindih

play21:18

dan bisa menjadi masalah

play21:20

Hai dan sama seperti spiral model yunivi

play21:23

proses ini juga membutuhkan tim

play21:25

pengembang yang sudah ahli kurang lebih

play21:27

inilah kelebihan dan kekurangan

play21:29

masing-masing model yang kita bahas

play21:31

tidak ada model yang terbaik yang bisa

play21:33

kita lakukan adalah memilih model yang

play21:35

paling sesuai dengan kondisi proyek

play21:38

perangkat lunaknya itu sendiri

play21:40

berikut adalah referensi yang digunakan

play21:42

dalam penyusunan materi video ini

play21:44

pembahasan kita selesai sampai disini

play21:46

Terima kasih karena Anda sudah

play21:48

menyimaknya hingga selesai

Rate This
β˜…
β˜…
β˜…
β˜…
β˜…

5.0 / 5 (0 votes)

Related Tags
Software DevelopmentFrameworksProcess ModelsWaterfall ModelPrototypingEvolutionary ModelUnified ProcessRequirements GatheringRisk ManagementQuality AssuranceSoftware Engineering