Software Processes and Agile Development Flashcards
What is a software process?
A process identifies the activities that must be performed in order to achieve the desired outcome
A process organizes activities into stages or phases with gateways that defines the criteria when the process can move from one phase to another
A process defines roles that team members play while following a process
Software Process Components?
Activities (HOW)
Phases (WHEN)
Roles (WHO)
Artefacts (WHAT)
Plan Driven Processes?
Activities are planned in advance
Measured against the plan
Significant upfront engineering effort
Minimize changes
Agile Processes?
Planning is incremental and continually adapted as software is developed.
Change is embraced and mitigated with recurrent refactoring / rework.
Simplification of Reality?
Allows to better understand and analyze what is being modelled
Waterfall?
Each software activity is treated as a distinct phase of the process
Incremental?
The process is divided into iterations. Each iteration consists of all activities necessary for an executable deliverable
Integration and Configuration?
Activities center around assembly, configuration and customization of existing components.
Waterfall model was proposed as?
Winson Royce as a way to manage the development of large systems in 1970s
Waterfall model components?
Requirements Definition System and Software Design Implementation and Unit Testing Integration and System Testing Operation and Maintenance
Spiral Model?
Bohem 1988
Iterative process with Iterations that are designed to minimize risk
Uses evolutionary prototyping
RUP?
Rational Unified Process
Iterative development where each iteration includes all activities with different emphasis
Phases of RUP?
Inception,
Elaboration,
Construction,
Transition
Inception Phase?
Establish a business case and identify stakeholders and business requirements
Elaboration Phase?
Develop understanding, build requirement models, architecture and early system prototypes.
Construction Phase?
Emphasizes design, programming and testing activities
Transition Phase?
Taking the system from development to operation and developing user documentation
RUP Phases can be implemented based on which processes?
Plan Based: phases contain iterations of the same type
Agile: each iteration contain the each phases
Workflows in RUP?
Business Modelling Requirements Modelling Analysis and Design Implementation Testing Deployment Configuration and Change Management Project Management Environment
Integration and Configuration?
Using or customizing general purpose systems