ICT 114 midterms part 2 Flashcards
also called process model
a descriptive and diagrammatic representation of the software life cycle
captures the order in which the activities are to be undertaken
LIFE CYCLE MODEL
The most obvious way to develop software.
Though tis model is elegant and intuitively obvious, it is not a practical model in the sense that it cannot be used in actual software development projects.
CLASSICAL WATERFALL MODEL
This study is to determine whether it would be financially and technically feasible to develop the product.
Feasibility study
This phase is to understand the exact requirements of the customer and to document them properly.
Requirements analysis and specification-
This phase is to transform the requirements specified in the Software Requirement Specifications document into a structure that is suitable for implementation in some programming language.
Design
Two distinctly different design approaches are available:
traditional design approach and the object-oriented design approach.
this consists of two different activities; first a structured analysis of the requirements specification is carried out where the detailed structure of the problem is examined.
Traditional design approach
In this technique, various objects that occur in the problem domain and the solution domain are first identified, and the different relationships that exist among these objects are identified.
Object-oriented design approach
The purpose of the coding phase (sometimes called the implementation phase) of software development is to translate the software design into source code.
Coding and unit testing
Integration of different modules is undertaken once they have been coded and unit tested. During the integration and system testing phase, the modules are integrated in a planned manner.
Integration and system testing:
when all the modules have been successfully integrated and tested.
System Testing
System testing usually consists of three different kinds of testing activities:
It is the system testing performed by the development team.
It is the system testing performed by a friendly set of customers.
It is the system testing performed by the customer himself after the product delivery to determine whether to accept or reject the delivered product.
A testin
B testing
and
Acceptance testing
of a typical software product requires much more than the effort necessary to develop the product itself.
Maintenance
Maintenance involves performing any one or more of the following three kinds of activities:
Corrective maintenance
perfective maintenance
and
adaptive maintenance
Correcting errors that were not discovered during the product development phase.
corrective maintenance.
Improving the implementation of the system, and enhancing the functionalities of the system according to the customer’s requirements.
perfective maintenance.
Porting the software to work in a new environment. For example, porting may be required to get the software to work on a new computer platform or with a new operating system.
This is called adaptive maintenance.
Developed to overcome the major shortcomings of the classical waterfall model
provide feedback paths for error correction when detected later in a phase.
ITERATIVE WATERFALL MODEL
a ‘toy’ implementation of the system.
usually exhibits limited functional capabilities, low reliability, and inefficient performance compared to the actual software.
PROTOTYPING MODEL
During the first quadrant, it is needed to identify the objectives of the phase.
Examine the risks associated with these objectives.
First quadrant (Objective Setting)
A detailed analysis is carried out for each identified project risk.
Steps are taken to reduce the risks. For example, if there is a risk that the requirements are inappropriate, a prototype system may be developed.
Second Quadrant (Risk Assessment and Reduction)
Develop and validate the next level of the product after resolving the identified risks
Third Quadrant (Development and Validation)
Review the results achieved so far with the customer and plan the next iteration around the spiral. * Progressively more complete version of the software gets built with each iteration around the spiral
Fourth Quadrant (Review and Planning)
The spiral model is called a
meta model
refers to a development life cycle designed to give much faster development and higher quality systems than the traditional life cycle
Rapid Application Development
Is an incremental and iterative process of software development. It defines each iteration’s number, duration, and scope in advance. Every iteration is considered a short “frame” which mostly lasts from two to four weeks.
Agile Model
In Agile development, self-organization and motivation are important, as are interactions like co-location and pair programming.
Individuals and interactions
Demo working software is considered the best means of communication with the customers to understand their requirements, instead of just depending on documentation.
Working software
As the requirements cannot be gathered completely in the beginning of the project due to various factors, continuous customer interaction is very important to get proper product requirements.
Customer collaboration
Agile Development is focused on quick responses to change and continuous development.
Responding to change