04 Lecture Flashcards
Define Software Lifecycle
Set of activities and their relationships to each other to support the development of a software system
Define Software Lifecycle Model
An abstraction that represents a software lifecycle for the purpose of understanding monitoring or controlling the development of a software system
What is Tailoring and which three Activities does it include?
Adjusting a lifecycle model to fit a project
- Naming
- Cutting
- Ordering
Which three Activities do Model support?
- Communication
- Analysis/Design
- Archival
A&D of Modeling
+ Modeling enables developers to deal with complexity
+ Modeling males implicit knowledge about the system explicit
+ Modeling formalizes knowledge so that a number of participants can share it
- If one is not careful model can become as complex as the system being modeled
How are models that support communication called
Communication Models
How are Models that support Analysis and Design called
Specification Models
Define Validation
Assurance that a product, service, or system meets the needs of the customer and other identified stakeholders
Define Verification
Evaluation whether or not a product, service, or system complies with a regulation, requirement, specification, or imposed condition
What are the two major views of software lifecycles
- Activity centered
Software development consists of a set of development activities
- Entity centered
Software development consists of the creation of a set of deliverables
What does a process group consist of?
Consists of a set of processes
What does a process consist of?
Consists of activities
What does an Activity consist of?
Consists of sub activities and tasks
Which kind of life cycle models are distinguished?
Sequential
Iterative
Agile
Name two Sequential SLM
Waterfall Model
V-Model
Name three Iterative SLM
Spiral Model
V-Model XT
Unified Process
Name three Agile SLM
Extreme Programming (XP)
Kanban
Scrum
Describe the Waterfall Model
- Activity-oriented
- Only if an activity is completely finished, the next one can start
- Assumes that software development can be scheduled as a step-by-step process that transforms user needs into code
Describe the V Model
- Separation between development and testing
- Mapping between development and testing activities
Describe Unified Process
Four Stages: Inception, Elaboration, Construction, Transition
Who invented Extreme Programming
Kent Beck
Ron Jeffries
Ward Cunningham
What are the four basic principles of Kanban
1) Start with existing process
2) Agree to pursue incremental, evolutionary change
3) Respect the current process, roles, responsibilities and titles
4) Leadership at all levels
Describe Scrum
- Management and control process
- Focus on early risk management
- Deliver working software, incrementally and empirically
- Simple framework for effective team collaboration
What is the purpose of a Software lifecycle Model?
To understand, monitor, or control the development of a software system.