Software Development Life Cycle Models
21 Questions
0 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

Which prescriptive SDLC model emphasizes component reuse?

  • Component-based model (correct)
  • Waterfall model
  • Evolutionary model
  • Incremental process model
  • What is a key characteristic of Agile methods?

  • Strict adherence to a predetermined plan
  • Development primarily focused on extensive documentation
  • Emphasis on working in large, distributed teams
  • Informal communication among small teams (correct)
  • Which aspect is NOT a component of agility?

  • Effective communication among stakeholders
  • Adaptive response to change
  • Drawing the customer onto the team
  • Detailed long-term planning (correct)
  • What does the Incremental process model produce?

    <p>Software in a series of incremental releases</p> Signup and view all the answers

    What is the Unified Process Model designed for?

    <p>To serve as a framework for UML methods and tools</p> Signup and view all the answers

    Which principle emphasizes the importance of content over representation in Agile Modeling?

    <p>Content is more important than representation</p> Signup and view all the answers

    What is the primary focus of XP (Extreme Programming) during the planning phase?

    <p>Assessing user stories and assigning costs</p> Signup and view all the answers

    Which of the following Agile Models emphasizes the use of time-boxing?

    <p>Adaptive Software Development</p> Signup and view all the answers

    What technique does XP encourage for addressing difficult design problems?

    <p>Creating spike solutions</p> Signup and view all the answers

    What is one of the key features that distinguishes Adaptive Software Development (ASD)?

    <p>Emphasis on customer mission statements</p> Signup and view all the answers

    In XP coding practices, what is recommended before starting the actual coding process?

    <p>Constructing a unit test for a story</p> Signup and view all the answers

    What is a major characteristic of the Dynamic Systems Development Method (DSDM)?

    <p>Active user involvement is imperative</p> Signup and view all the answers

    Which of the following is NOT a principle of Agile Modeling?

    <p>Travel heavy</p> Signup and view all the answers

    What is essential for the acceptance of deliverables in DSDM teams?

    <p>Fitness for business purpose</p> Signup and view all the answers

    Which of the following is a principle of the Kanban methodology?

    <p>Projects are overseen with the help of a Kanban Board</p> Signup and view all the answers

    What does the term 'Kanban' translate to in English?

    <p>Visual board or signboard</p> Signup and view all the answers

    In Scrum methodology, what is referred to as a 'sprint'?

    <p>A cycle of development</p> Signup and view all the answers

    What is a key feature of the iterative and incremental development approach?

    <p>It allows for convergence on an accurate business solution</p> Signup and view all the answers

    How does the Kanban method increase visibility for teams?

    <p>Through a Kanban Board that depicts process flow</p> Signup and view all the answers

    Which of the following is NOT true about Scrum methodology?

    <p>Scrum focuses solely on long-term planning</p> Signup and view all the answers

    Which characteristic distinguishes Kanban from Scrum?

    <p>Kanban focuses on visual methods while Scrum follows sprints</p> Signup and view all the answers

    Study Notes

    Prescriptive SDLC Models

    • Perform 5 generic activities
    • Waterfall model suggests a linear progression
    • Incremental process models produce software as a series of increment releases
    • Evolutionary models are designed to accommodate change and produce incremental work products quickly
    • Component-based model emphasizes component reuse and assembly

    Unified Process Models

    • Framework for UML methods and tools

    Agile Process Models

    • Effective (rapid and adaptive) response to change
    • Effective communication among all stakeholders
    • Drawing the customer onto the team
    • Organizing a team so that it is in control of the work performed

    Agile Methods

    • Developed for small programming teams that work together in the same room
    • Mostly been used for the development of small and medium-sized systems
    • A plan-driven software process can support incremental development and delivery
    • Agile process is not inevitably code-focused and may produce some design documentation

    Agile Modeling

    • Originally proposed by scott ambler
    • Suggests a set of agile modeling principles:
      • Model with a purpose
      • Use multiple models
      • Travel light
      • Content is more important than representation
      • Know the models and the tools you use to create them
      • Adapt locally

    Agile Models

    • Driven by customer descriptions of what is required (stories, or scenarios)
    • Recognizes that plans are short-lived
    • Develops software iteratively with a heavy emphasis on construction activities
    • Delivers multiple software increments
    • Adapts as changes occur

    Agile Models/Methods

    • XP (Extreme Programming)
    • Adaptive Software Development (ASD)
    • Dynamic Systems Development Method (DSDM)
    • Kanban
    • Scrum

    XP (Extreme Programming) 1

    • The most widely used agile process, originally proposed by Kent Beck
    • XP Planning
      • Begins with the creation of “user stories”
      • Agile team assesses each story and assigns a cost
      • Stories are grouped to form a deliverable increment
      • A commitment is made on delivery date
      • After the first increment “project velocity” is used to help define subsequent delivery dates for other increments

    XP (Extreme Programming) 2

    • XP Design
      • Follows the KIS (Keep It Simple) principle
      • Encourages the use of CRC (Class Responsibility Collaborator) cards
      • For difficult design problems, suggests the creation of spike solutions—a design prototype
      • Encourages refactoring—an iterative refinement of the internal program design
        • Through methods
        • Through inheritance
        • Through delegation

    XP (Extreme Programming) 3

    • XP Coding

      • Recommends the construction of a unit test for a story before coding commences
      • Recommends pair programming
    • XP Testing

      • All unit tests are executed daily
      • Acceptance tests are defined by the customer and executed to assess customer visible functionality

    Adaptive Software Development

    • Originally proposed by Jim Highsmith
    • ASD – distinguishing features
      • Mission-driven planning (uses customer mission statement)
      • Component-based focus
      • Uses time-boxing
      • Explicit consideration of risks
      • Emphasizes collaboration for requirements gathering
      • Emphasizes learning throughout the process
        • Focus groups
        • Formal technical reviews
        • Postmortems (self examination)

    Dynamic Systems Development Method

    • Similar in most respects to XP and/or ASD
    • Nine guiding principles:
      • Active user involvement is imperative
      • DSDM teams must be empowered to make decisions
      • The focus is on frequent delivery of products
      • Fitness for business purpose is the essential criterion for acceptance of deliverables
      • Iterative and incremental development is necessary to converge on an accurate business solution
      • All changes during development are reversible
      • Requirements are baselined at a high level
      • Testing is integrated throughout the life-cycle

    Kanban

    • Originating from the Japanese language, ‘Kanban’ translates to "visual board or signboard”
    • Initially, the Kanban concept was introduced as a lean manufacturing system
    • Uses visual methods for developing and managing projects
    • Projects through Kanban are overseen with the help of the Kanban Board, which is divided into columns to depict the process flow of the software development
    • This method requires thorough interaction and transparency to enable the team members to be equipped with the right stage of the development at any time and have a cohesive flow of work at all times.

    Scrum

    • One of the most popular agile methodology examples
    • Scrum development methodology is depicted by various cycles of development
    • Similar to Kanban, Scrum breaks down development phases into stages or cycles called 'sprints'
    • The development time for each sprint is maximized and dedicated, thereby managing only one sprint at a time
    • Scrum and agile methodologies focus on continuous deliverables, and thus this method lets designers adjust priorities to ensure that any incomplete or overdue sprints get more attention.

    Studying That Suits You

    Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

    Quiz Team

    Related Documents

    Agile Process Models PDF

    Description

    Explore the various models and methodologies in the Software Development Life Cycle (SDLC). This quiz covers prescriptive, unified, and agile process models, along with their characteristics and applications in software development. Test your knowledge on how these models adapt to change and facilitate effective communication among teams.

    More Like This

    Use Quizgecko on...
    Browser
    Browser