1.2.3 - Software Development Flashcards
Analysis - What is Analysed?
- The data - It’s origin, uses, volumes and characteristics
- The procedures - what is done, where, when and how and how errors and expectations are handled
- The future - development plans and expected growth rates
- Problems with any existing system
Design - What is considered?
Processing - The algorithms and appropriate structure for the solution, specifying modules with clear documented interfaces
Data structures - How data will be held and accessed.
Output - Content, format, sequence, frequency and medium
Input - Volume, frequency, documents used, input methods
User Interface - Screens and dialogues, menus
Security - How the data is to be kept secure from accidental corruption or deliberate tampering or hacking
Hardware - Selection of an appropriate configuration
Testing - What is Black Box Testing?
Testing that is carried out independently and involves looking at the program specification and creating a set of test data that covers all the inputs and outputs and program functions.
Testing - What is White Box Testing?
Testing that is dependent on the code logic and is created from the code structure rather than it’s function. The program code is studied and tests are made up that test each path once.
Testing - What is a weakness of White Box testing?
It cannot detect missing functions because you can’t test what isn’t there
Testing - What is Alpha Testing?
Testing carried out by the developers in-house testing team. Often reveals errors and things missed out from the requirements. User may discover that the system does not have the required functionality because the requirements were not specified carefully or the requirements were misunderstood by the devs.
Testing - What is Beta Testing?
Testing that involves giving the package to a number of potential users who agree to use the system and report any problems to devs.
Testing - Example of a company that uses Beta Testing?
Microsoft give beta versions of their products to many sites for testing - This exposes the product to real use and detects problems and errors that may have not been anticipated by devs. The product can then be fixed and sent out for beta testing again until its ready for the final release.
Testing - What does Evaluation include?
A post implementation review which is a critical examination of the system 3 - 6 months after it has been put into operation.
Testing - Evaluation | What do post-implementation reviews focus on?
- A comparison of the systems actual performance against its expected performance
- An assessment of each aspect of the system against present criteria
- Errors which were made during system development
- Unexpected benefits and problems
Development Methodologies - What stages are in the waterfall life cycle model and what does it illustrate?
A model with the following stages: - Analysis - Design - Implementation - Evaluation - Maintenance It suggests that each step is completed one at a time from beginning to end and each step leads onto the next. The model shows that developers have to work through the following stages and you cannot go back without redoing everything.
Development Methodologies - When is the user involved in the waterfall life cyber model?
The user is involved at the start of the process in the analysis stage but then has little to no input until the evaluation stage.
Development Methodologies - What is the Spiral Model?
A model that uses the idea of developing the software in iterative and repeating stages. The requirements are defined at the start and then the steps Analyse => Design => Implement => Evaluate are repeated and each iteration of this loop creates a prototype until the product is finished.
Development Methodologies - What projects is the Spiral Model used for?
It is mostly used for large scale projects that take years to deliver
Development Methodologies - What model is used for large scale projects?
The spiral model