Lecture 1 Flashcards
what are the 6 simple software development steps?
requirements, analysis, design, implementation, testing and maintenance.
what does the requirements step involve?
statement that describes what the requirements of the system are
what does analysis step involve
-gain clear understanding of the problems and requirements, -results need to be able to be reviewed evaluated and criticized by analyst, users, management and experts, -represents the part of the real world the system is concerned with
what does design and implementation step involve?
design model is a blueprint that forms basis for implementation, implementation - coded configured and integrated.
what does the testing step involve
testing involves various tests throughout the whole software development system. should be done as early as possible.
what is involved in maintenance step?
maintenance(fix errors), enhancement (adding new features), adaptation(change features due to changes of business rates, business process, etc.)
are software development steps rigid?
no, process is iterative, some phases/activities may need to be repeated to: - correct mistakes or omissions, - enhance some existing features, add new features to the system
what is the role of modelling?
analysis & design results are likely too complicated to explain to other people, so we use modelling
what is a model?
simplified version of a complex reality. Consider the reality from certain perspective focus on relevant tasks, ignore others. model sometimes called abstraction. abstraction can also mean process to create model.
what is a modelling language?
notation used to express models. notation is set of visual or textual structures to represent the elements of a model
what are modelling methodologies?
a modelling notation. modelling process, which is a set of guidelines on what steps to take in the process of creating a model.
what is an sr process?
streamlined and rigorous process which produces precise models(blue prints) for implementation.
what are the 5 SR process steps?
- identify and describe use case
- construct domain models (domain class diagrams)
- construct design models (design class diagrams)
- identify and specify atomic use cases
- build prototype and test it