Lecture 7 Flashcards
what is the software process
A structured set of activities required to develop a software system
What are the different software processes?
Specification
Design and implementation
Validation
Evolution
What is a software process model?
It is an abstract representation of a process, a description of the process from a particular perspective.
What is a Plan-drive process
A plan-driven process is a process where all the process activities are planned in advance and progress is measured against this plan.
What is an Agile process?
In agile, planning is incremental and it is easier to change the process to accommodate changing customer requirements
What processes does recent software take?
Both include elements of different approaches
Disadvantages in the Waterfall model?
Difficulty in accommodating change once the process is underway (can be quite costly)
In principle, a phase has to be completed before moving onto the next phase (Not clear when finished)
Rigid partitioning of a project into distinct stages make it difficult to respond to changing requirements
When is the waterfall model used?
In situations when requirements are well understood and changes will be limited during the design process
In large systems engineering projects where a system is developed at several sites, helping coordinate the work
Advantages of Incremental development?
Accommodating changing requirements is less costly (then waterfall)
Easier to get customer feedback on the work that has already been done
More rapid delivery and deployment of useful software to the customer
Disadvantages of Incremental development?
The process is not visible
Systems structure tends to degrade as new increments are added
What is Integration and Configuration in software development?
Based on software reuse where systems are integrated from existing components or application systems
Reduced costs and risks as less software is developed from scratch
Advantage of Integration and Configuration software development?
Fast delivery and deployment of system
The disadvantage of Integration and Configuration software development?
Requirements compromises are inevitable so the system may not meet the real needs of users
Loss of control over the evolution of reused system elements
What are process activities?
Software processes are inter-leaved sequences of technical, collaborative and managerial activities with the overall goal of specifying, designing, implementing and testing a software system. e.g: specification development validation evolution
What is software Specification?
The process of establishing what services are required and the constraints on the system’s operation and development