SDLC & Agile Flashcards
What is SDLC and what is it used for?
The Term SDLC is defined as Software Development Life Cycle it is a process used by the software industry to design, develop and test high-quality software.
What are all the phases of SDLC?
There are 7 Phases in SDLC they are,
1.planning
2.analysis
3.design
4.development
5.testing
6.implementation
7.maintenance.
What are the five models used in SDLC?
There are 5 Models in SDLC,
1.Agile
2.Waterfall
3.V-Shaped
4.Iterative
5.Spiral.
What is Agile Methodology?
Agile is a term that describes approaches to software development that emphasize incremental delivery, team collaboration, continual planning, and continual learning. we are using Agile methodology to overcome the disadvantages of waterfall model. In waterfall model we cannot promote the longer delivery times.
It typically works better for only
small projects.
So to avoid this we are using Agile Methodology.
What is Agile testing?
Agile testing is a software testing practice that follows the Agile software development methodology. It is used inorder to check the functionality and find the errors or bugs in the software.
It consists of mainly four phases :
1.Planning - The team decides which features are testable and which tests are necessary.
2. Execution: The team executes the tests.
3.Tracking: The team tracks the results of the tests and defect reports.
4.Closure: The team reviews the test results and closes out any remaining defects.
————- MADHU VASANTH ———-
Can you list out the different types of agile methodologies?
There are several types of Agile methodologies that are commonly used in software development.
Scrum: Scrum is a popular Agile methodology that emphasizes collaboration, transparency, and rapid iteration.
Kanban: Kanban is another Agile methodology that focuses on visualizing work and limiting work in progress. It involves using a board to track tasks and moving them through different stages of development.
Extreme Programming (XP): Extreme Programming is an Agile methodology that emphasizes continuous improvement and feedback. It involves practices such as pair programming, test-driven development, and continuous integration.
Lean: Lean is an Agile methodology that is based on the principles of lean manufacturing. It involves eliminating waste, maximizing value, and focusing on continuous improvement.
Crystal: Crystal is an Agile methodology that emphasizes simplicity and communication. It involves using a flexible approach to development and adapting to the needs of the project.
What is the biggest difference between sprint backlog and product backlog?
The difference between a product backlog and a sprint backlog is that the former lists all the tasks and items leading to the development of the end product while the latter includes select items that are a must to complete the sprint.
One of the differences between a product backlog and a sprint backlog is that a product backlog is independent of the sprint backlog. But a sprint backlog is the subset of a product backlog
What is refactoring?
Refactoring is the process of restructuring code, while not changing its original functionality. The goal of refactoring is to improve internal code by making many small changes without altering the code’s external behavior.
-sohail syed
Can you differentiate Agile and Scrum?
- Agile is a philosophy, whereas Scrum is a type of Agile methodology.
- Scrum is broken down into shorter sprints and smaller deliverables, while in Agile everything is delivered at the end of the project.
- Agile involves members from various cross-functional teams, while a Scrum project team includes specific roles, such as the Scrum Master and Product Owner
What is a sprint in Agile?
- A project sprint in Scrum is a short period of time wherein a development team works to complete specific tasks, milestones, or deliverables.
- Sprints separate a project timeline into smaller, more manageable blocks.
- Sprints typically do not extend longer than one calendar month. Some teams might work in two-week sprints, while others might prefer weekly sprints.
Why is continuous integration in Agile important?
important continuous integration in Agile are:
Early detection of faults: With continuous integration, developers can find and fix errors and issues faster. By identifying problems early on, it reduces the risk of more significant bugs and issues that may take longer to fix in the future.
Faster feedback for developers: Continuous integration provides fast feedback to the developers, which helps speed up the development process. It also helps in collaboration and communication between team members.
Improved code quality: The continuous integration process runs automated tests on the code, ensuring that developers are continually improving the quality of their work.
Reduced risk: Continuous integration helps reduce the risk of failure during the software development process, and it makes it easier for teams to detect and fix any problems that arise.
What are the different types of sprint meetings?
The Agile methodology emphasizes collaboration, calling for various meetings for each sprint to determine what needs to be changed or improved. The following are the different types of sprint meetings conducted:
Sprint Planning Meeting: The features and product backlog items are discussed (user stories) here. The product owner, Scrum Master, and Scrum Team conduct this meeting to discuss the major points of a sprint. This meeting takes place every week.
Sprint Review Meeting: Here, the Scrum team demonstrates the product. This meeting is useful when the team is required to review the product and make the required changes. The product owner states which items are completed and which remain. He or she can add items to the product backlog if the requirements change.
Sprint Retrospective Meeting: This meeting takes place after the Sprint planning meeting to inspect decisions, discuss past mistakes, and review ways to resolve them. This meeting is necessary to improve the development process and lasts a few hours.
What do you know about the “zero sprint” in Agile?
Zero Sprint refers to the first step carried out before the first sprint. It is also referred to as the pre-step to the first sprint.
Zero Sprint includes activities that must be completed before starting a project, such as setting up the development environment, preparing backlog, and other tasks.
What do you understand about the term “user story” in Agile?
In Agile development, a user story is a concise, simple description of a feature or functionality that describes how a user will interact with the software system. It is a way of capturing a requirement from the perspective of the end-user.
A user story typically follows a simple template, such as: “As a [user], I want [goal], so that [reason].” The user story focuses on the user’s needs, goals, and motivations, and not on the technical implementation details.
User stories are used to capture requirements in an Agile project and form the basis of the Product Backlog. They are used to guide the development team’s work during the Sprint, and help ensure that the team is building software that meets the needs of the end-users.
- Bhargav Bhat
What is Scrum?
Scrum is an agile project management framework that helps teams structure and manages their work through values, principles, and practices.
or
Scrum is a way to get work done as a team in small pieces at a time, with continuous experimentation and feedback loops along the way to learn and improve as you go. Scrum helps people and groups deliver value incrementally in a collaborative way
The main roles in Scrum are Scrum Master, Product Owner, and Development team.
-By: Sai Krishna