Methodologies Flashcards
(34 cards)
What is a methodology?
A formalised system used when undertaking a project or plan.
Why do you need a formal process?
Too many failures
Systems not intuitive
Projects often late, over budget
What are the stages of the SDLC?
Plan
Analyse
Development
Implement
What does the planning stage attempt to answer?
Why should we build this system
What two boxes are in the planning phase?
Project initiation
Project management
What two things does the analysis stage attempt to answer?
What should the system do
Where and when will it be built
What three things are included in analysis stage
Analysis strategy
Gathering requirements
Developing a business proposal
What does the design system address?
How the system will be built
What three things are included in the design stage
Design strategy
Designing architecture
Designing database, file storage etc
What’s included in implement stage?
Construction stage
Installation stage
Support
Give two examples of structured design methodologies
Waterfall
Parallel
Give two examples of rapid application development
Phased
Throwaway prototyping
Give two examples of Agile development
Scrum
extreme programming
In what ways could parallel development be said to be similar to waterfall?
Despite the subprojects, there’s a linearity to the processes. The final product is rarely, if ever, iterated upon. Or at least it’s not considered in the main idea.
What four things led to the object orientated paradigm?
Event-driven programs
GUI interfaces
Complexity of programmes
Growing desire to link business and computer processes
OOAD is four things. What are those four things?
Use-case driven
Architecture centric
Iterative
Incremental
What does it mean to be use-case driven?
The ability to describe a single business process
Together, use cases define the system
What does it mean to be architecture-driven?
Taking a functional view of the user
Thinking of architecture in terms of classes and objects
Thinking about dynamic view: communication between objects
What does it mean to be incremental?
Lots of iterations
Iterations are time-boxed
List four reasons why object orientated design is good
Code can be reused
Code can be safe (encapsulation)
Extensive planning
Software is maintainable.
List four reasons why object orientated design is bad
The idea of code being reusable is usually not borne out in practice
The emphasis on design can mean sleek computation is difficult to achieve (not performant)
Typically, OOP code takes time to compile and is less efficient than its rivals.
What’s the derogatory line said of oop?
You wanted the banana but got a gorilla with a forest and a banana
What does UML stand for?
Unified Modelling Language
Name four things UML does not consider
Budgets
Staffing
Operations
Support