Software Processes: Plan-driven vs Agile Processes

GraciousRhenium avatar
GraciousRhenium
·
·
Download

Start Quiz

Study Flashcards

18 Questions

What are products in a process description?

Outcomes of a process activity

What do roles represent in a process description?

Responsibilities of the people involved in the process

What do pre- and post-conditions signify in a process description?

Statements true before and after a process activity

What is a characteristic of plan-driven processes?

All process activities are planned in advance

In agile processes, what is the approach to planning?

Incremental planning

Which software process model involves separate and distinct phases of specification and development?

Waterfall model

What does system testing involve?

Executing the system with test cases derived from real data specifications

In a plan-driven software process using the V-model, what is the purpose of customer testing?

Testing with customer data to verify system meets customer’s needs

What is the most commonly used verification and validation activity?

System testing

What does software evolution refer to?

Adapting software to changing business circumstances

What is increasingly becoming irrelevant?

The demarcation between development and evolution

What is particularly important during system testing?

Testing emergent properties of the system

What is the main goal of process analysis in software development?

Identify process weaknesses and bottlenecks

Which activity involves describing the software process through models or maps?

Process analysis

Why is collecting quantitative process data preferred in software development?

To assess the effectiveness of process improvements

What is the purpose of developing a baseline in software process improvement?

To decide if process improvements have been effective

When are process changes proposed in the software development cycle?

After identifying process weaknesses

In the context of software development, why might it be difficult to collect quantitative process data?

Lack of clearly defined process standards

Study Notes

Process Descriptions

  • Process descriptions may include products, which are the outcomes of a process activity.
  • Roles, which reflect the responsibilities of the people involved in the process.
  • Pre- and post-conditions, which are statements that are true before and after a process activity has been enacted or a product produced.

Software Processes

  • Plan-driven processes: all process activities are planned in advance and progress is measured against this plan.
  • Agile processes: planning is incremental and it is easier to change the process to reflect changing customer requirements.
  • Most practical processes include elements of both plan-driven and agile approaches.

Software Process Models

  • Waterfall model: separate and distinct phases of specification and development.
  • Incremental model: specification, development, and validation are interleaved; may be plan-driven or agile.
  • Integration and configuration: the system is assembled from existing configurable components; may be plan-driven or agile.

Agile Methods

  • Primary characteristics: rapid delivery of functionality and responsiveness to changing customer requirements.

Process Improvement Cycle

  • Process measurement: measure one or more attributes of the software process or product.
  • Process analysis: assess the current process, identify weaknesses and bottlenecks, and develop process models.
  • Process change: propose and implement changes to address weaknesses, and collect data to assess effectiveness.

Process Measurement

  • Quantitative process data should be collected wherever possible.
  • Process measurements should be used to assess process improvements, but should not drive the improvements.

Testing

  • Involves checking and review processes, and system testing.
  • System testing: execute the system with test cases derived from the specification of the real data to be processed by the system.

Stages of Testing

  • Component testing: individual components are tested independently.
  • System testing: testing of the system as a whole, including testing of emergent properties.
  • Customer testing: testing with customer data to check that the system meets the customer’s needs.

Software Evolution

  • Software is inherently flexible and can change as requirements change through changing business circumstances.
  • Software evolution is increasingly important as fewer and fewer systems are completely new.

Coping with Change

  • Change is inevitable in all large software projects.
  • Software must evolve and change as requirements change.

Learn about different types of software processes including plan-driven and agile processes. Explore the concept of process descriptions including outcomes, roles, and pre- and post-conditions.

Make Your Own Quizzes and Flashcards

Convert your notes into interactive study material.

Get started for free

More Quizzes Like This

Software Processes Quiz
5 questions

Software Processes Quiz

UnmatchedLucchesiite avatar
UnmatchedLucchesiite
Software Engineering SWE-390 Quiz
4 questions
Waterfall Software Process Model
12 questions
Use Quizgecko on...
Browser
Browser