Y3S2 Flashcards
ST: name the 6 stages of the Software Development Life Cycle aka the Software Development Process
Planning Defining Designing Building Testing Deployment Repeat (It's a cycle)
ST: Name the 5 stages of the waterfall method and 3 of the “tools” that are used by developers at each stage
(1970 Winston W. Royce)
Stages:
1.Requirement Elicitation and Anal ;) ysis
/\ \/
2.Specification - (Tool used - Specification Notations)
/\ \/
3.Implementation (Tool used- programming languages)
/\ \/
4.Test (Tool used- Test Languages (TTCN-3))
/\ \/
5.Maintenance
ST: 4 Advantages of the waterfall method
◦ Simple and easy to understand and use.
◦ Easy to manage due to the rigidity of the model – each phase has specific deliverables and review process.
◦ Phases are processed and completed one at a time. Phases do not overlap.
◦ Works well for smaller projects where requirements are well understood.
ST: 4 Disadvantages of the waterfall method
◦ Difficult to go back and change something that was not well-thought out.
◦ No working software is produced until late during the life cycle.
◦ High amounts of risk and uncertainty.
◦ Not good for complex and OO projects. Not good for ongoing projects.
◦ Not suitable for projects with high risk of requirements changes.
ST: Give 5 reasons why someone would choose to implement the waterfall method for their project.
◦ Requirements are very well documented, clear and fixed.
◦ Product definition is stable.
◦ Technology is understood and is not dynamic.
◦ Ample resources with required expertise are available to support the product.
◦ The project is short.
ST: Define the 4 quarters of the spiral model
1. Top Left - Determine Objectives 2. Top Right - Identify and resolve risks 3. Bottom Right Development and Test 4. Bottom Left Plan the next iteration
ST: Consider the commonly used diagram used to depict the spiral model used . Describe where the project would start.
x axis - No name
y axis - Cumulative cost
Projects start at the center (0,0) and starts the spiral towards the right
ST: Name 5 advantages of using the spiral model
◦ High amount of risk analysis
◦ Good for large and mission-critical projects
◦ Strong approval and documentation control
◦ Additional functionality can be added at a later date
◦ Software is produced early in the software life cycle
ST: Name 5 disadvantages of using the spiral model
◦ Can be a costly model to use
◦ Risk analysis requires highly specific expertise
◦ Project’s success is highly dependent on the risk analysis phase
◦ Not suitable for smaller projects (high overhead)
ST: Give some possible reasons that a project would chose to use the spiral model
◦ Long-term project commitment because of potential changes to economic priorities as the requirements change with time.
◦ Customer is not sure of their requirements.
◦ Requirements are complex and need evaluation to get clarity.
◦ New product line which should be released in phases to get enough customer feedback.
◦ Significant changes are expected in the product during the development cycle.
ST: Name the 5 stages that sit on the left side \ of the v model and then name the 4 corresponding stages that sit on the right side / of the v.
Left Side \ ->/ Right Side Requirements -> Acceptance Testing Specification -> System Test Architectural Design -> Integration Test Detailed Design -> Unit Test Coding
ST: why did the v model come about and in which field of cs is it mandatory that developers implement this development cycle
The German federate office for information security BSI was a driving force in its elaboration.
In Germany, the V-model is mandatory for safety-critical governmental projects.
ST: 4 V-Model Advantages
◦ Simple and easy to use
◦ Testing activities like planning, test designing happens well before coding
◦ Proactive defect tracking – defects are found at early stage (with early testing)
◦ Works well for small projects where requirements are stable and well understood
ST: 3 V-Model disadvantages
◦ Very rigid and least flexible
◦ No early prototypes as software is developed
◦ If changes happen in midway, both test documents and requirement documents change
ST:Name 5 possible reasons why you would implement the v model in developing your application
◦ Requirements are well defined, clearly documented and fixed.
◦ Product definition is stable.
◦ Technology is not dynamic and is well understood by the project team.
◦ There are no ambiguous or undefined requirements.
◦ The project is short.
ST: Name 3 common modals/methods used in system life cycle development
Waterfall
Spiral Model
V model
What formal ISO process describes the standard for software testing and what does it state
9000-3 recognizes that several types of testing may be necessary to adequately exercise a product, such as unit, integration, system, and acceptance testing.
ISO = International Organization for Standardization
ST: Briefly describe the 4 case study’s given for buggy software
Steam - Accidentally wiping linux users entire root directory when uninstalling a client.
German Bank cards faulty “theres no 2010” microchip
Llyods customers couldnt transfer money via “Faster Payments”
Pacman level 256, Donkey Kong level 22 suffered overflow errors
ST: Briefly describe the case study for l”software is long in use”
Fortran Library - largest collection of numerical algorithms from 1970
ST: according to Effort
distribution,
industry, 2005
what is the breakdown of time spent on each section of the software development process
◦ Requirements: 15-20 percent
◦ Analysis and Design: 15-20 percent
◦ Construction (code and unit testing): 25-30 percent
◦ System Testing: 15-20 percent
◦ Implementation / Deployment: 5-10 percent