AGILE DEVELOPMENT Flashcards
What Agile methodologies do you know?
- XP (Extreme Programming),
- DSDM (Dynamic Systems Development Method),
- Crystal Family,
- ASD (Adaptive Software Development),
- SCRUM,
- FDD (Feature-Driven Development),
- TDD
- LD (Lean Development),
- Open Source.
What are the XP values?
- Communication,
- Simplicity,
- Feedback,
- Courage,
- Respect.
What are the key practices of XP?
- Planning Game,
- Small but Frequent Releases,
- Customer Involvement (On-Site),
- Continuous Testing,
- Pair Programming,
- Collective Code Ownership,
- Continuous Inregration,
- Refactoring of Code
When is XP recommended?
- When developers know the requirements will change through the project,
- When there’s high risk,
- When the programmers team is smaller,
- When the development team is extended,
- When one of the project’s requirements is high productivity, since XP leads to increased productivity, in an automated unit and using functional tests,
- When customers are constantly changing demands or requirements,
What are the principles of the DSDM?
- Fixed iterations,
- Frequent releases,
- Total quality,
- Adaptability to changing requirements.
Characterize the DSDM.
Used for smaller teams, fixes time and resources by adjusting the number of features. The team is authorized to make decisions and the user is always involved in the development process. During the life cycle of the software there are always tests integrated directly in it.
What factors may change the method Crystal Family?
- Size of the team,
- Geographic location,
- Security,
- Resources.
How does the Crystal Family work?
The idea is to choose the methodology (crystal type) that aligns with the specific project’s needs, rathan than applying a one-size-fits-all approach, so each project gets a tailored process.
Characterize the Adaptive Software Development.
- Iterative and incremental process
- Fits better large and complex projects,
- Deliver of products with “good enough” quality,
- The high risk task are done first, so changes don’t affect the work much.
What’s the cycle process of ASD?
- Speculate - set the objctives and a plan based on components,
- Collaborate - balance the work,
- Learn - all stakeholders are envolved on the quality review and on the demonstration of the features developed.
What is the JAD technique?
This technique consists of a workshop where knowledge workers and IT specialists meet to define and review the business requirements for the system.
What are the main problems of ASD?
- Demands extensive user involvement,
- The focus on rapid interating and continuous feedback can lead to scope creep,
- The project can be expensive because this development method tests the features developed at all stages.
Explain the SCRUM agile framework.
- Scrum is characterized by its iterative and incremental approach, providing a structured yet flexible framework for teams to deliver high-value products.
- What chracterizes SCRUM are its “Sprints” where developers must deliver a set of items or finish work within a small amount of time, fostering quick and constant delivery.
- The team must be commited, focused, efficient and experienced in order for it to work properly.
Explain the complementarity property between SCRUM and XP.
While SCRUM provides management practives, XP focuses more on integrated software engenerring practices.
This combination can result in a more holistic and adaptable approach to software development.
What are the five processes of Feature-Driven Developement or FDD?
- Develop an Overall Model - indentifying major classes and their relationships,
- Build a Features List - a list of features grouped into sets and subject areas
- Plan by Fearture - group features into smalled and managebable sets, assigning them to spevific development teams,
For each feature set: - Design by Feature - break down into smalled tasks,
- Build by Feature - build one feature at a time (a “complete before moving to the next task” mindset)