Methodologies and Frameworks Flashcards
Framework
- The processes, tasks, roles, and guiding principles that form the structure of completing work.
- The framework significantly influences how a project moves from start to finish.
What does DevOps promote?
Continuous integration, continuous delivery, and continuous deployment (CI/CD)
Scaled Agile Framework (SAFe)
- Methodology used to expand Agile practices across multiple teams in an organization.
- SAFe is best suited for companies with projects involving multiple teams that need to communicate and collaborate effectively.
Software Development Life Cycle (SDLC)
- Flexible framework designed to produce high-quality, low-cost, and thoroughly tested software through continual improvement.
- SDLC also relies heavily on thorough advance planning, which may not suit agile-focused teams
Waterfall Methodology
- A sequential development process that flows like a waterfall through all phases of a project
- Initially used in manufacturing, and eventually made its way to software development because it was in common use by that time, serving as an early starting point.
- It follows a linear sequence
What are the 6 phases of a Waterfall methodology?
- Requirements
- Design
- Implementation
- Testing
- Delivery
- Maintenance
What are the advantages of Waterfall methodology?
- Waterfall framework is easy to understand and deploy
- The documentation required for these projects is very thorough.
What are the disadvantages of Waterfall methodology?
- Not very flexible
- The plan is designed up front and changes or revisions down the line are often costly in time, money or other resources.
-Makes change management very expensive to conduct in a waterfall based project
When would you use waterfall?
- Fixed requirements with no unknowns
- Change costs are very high
- Short and simple
What is Agile methodology?
A project management approach that involves breaking the project into phases and emphasizes continuous collaboration and improvement.
What are the differences between Waterfall and Agile?
Waterfall
- Structured and delivers value at the end
- Big design upfront approach
- Best with no unknowns
Agile
- Flexible and delivers value early and often
- Iterative and incremental
- Adaptable to change
Iterative Development
- A software development approach that emphasizes the continuous refinement and improvement of a system or product
- The main goal of each iteration is to identify issues, make improvements, and incorporate feeback from users or stakeholders
What are the key benefits of Iterative Development?
- Ability to respond quickly to changing requirements or emerging user needs
- Opportunity for early and frequent user feedback
Incremental Development
- A software development approach that focuses on delivering small, functional parts of a system or product in a step-by-step manner.
What are the key benefits of Incremental Development?
- Reduced risk and predictable project outcomes
- Developers manage complexity, minimize errors, and maintain a higher level of control over the developmental process
-Allows for faster delivery in new features
What are the advantages of Agile?
- Adaptability
- Shorter release cycles
- Higher quality results
What are the disadvantages of Agile?
- Potential scope creep
- Missed deadlines
- Less documentation
What is Scrum?
Scrum is the most common agile framework; it delivers iterative and adaptive value while intentionally covering only the barest requirements.
- It uses empiricism and lean thinking to continuously improve results.
What does Empiricism encourage?
For teams to make decisions based on what they see and know.
What is Lean thinking?
It is focused on driving improved efficiency by reducing waste, redundancy, and other unnecessary work within a given project.
What are the 5 Key Values of Scrum?
- Commitment
- Focus
- Openness
- Respect
- Courage
What are the 3 Fundamental Pillars of Scrum?
- Transparency
- Inspection
3.Adaptation
What are the 4 basic steps of the Scrum process?
- Product owner prioritizes work into a product backlog
- Scrum team selects the top items in the backlog
- Scrum team and stakeholders review the sprint results
- Steps repeat as long as the product backlog exists
What are the 4 Roles in Scrum?
- Scrum Team
-Group of people who work together to deliver increments of value - Product Owner
-Creates, maintains, and owns the product backlog - Scrum Master
-The team’s coach which helps the team, product owner, and organization improve the implementation of scrum. - Developer
-Describes the remaining team members and isn’s exclusive to software engineers.