What is Agile?
Agile software development refers to a group of software development methodologies based on iterative and incremental approach.
- In Agile approach customer no need to wait for long time.
- Agile approach can develop, test and release pieces of software to the customer with few number of functionalities.
3. Agile approach can accept and accommodate requirement changes.
4. Delivery is very faster in Agile process models.
5. Agile processes generally promote a disciplined project management process that encourages frequent inspection and adaptation, a leadership philosophy that encourages teamwork, self-organization and accountability, a set of engineering best practices intended to allow for rapid delivery of high-quality software, and a business approach that aligns development with customer needs and company goals.
Advantages of Agile
- Release will be very faster.
- Customer no need to wait for long time.
- Good Communication between a team.
- It is very easy model to adopt.
- Requirement changes are allowed in any stages of development.
Disadvantages Of Agile
- Less focus on design and documentation.
What is Scrum?
Scrum is a framework through which we build software product by following Agile principles.
Scrum includes group of people called as Scrum team. Normally 5–9 members in team.
- Product Owner
- Development Team
- QA Team
- The keeper of the requirement.
- Define the feature of the product.
- Prioritize feature according to market value.
- Adjust features and priority every iteration, as required.
- Accept or reject work results.
ScrumMaster is facilitating and driving the agile process.
In practical terms, the ScrumMaster needs to understand Scrum well enough to train and mentor the other roles, and educate and assist other stakeholders who are involved in the process. The ScrumMaster should maintain a constant awareness of the status of the project (its progress to date) relative to the expected progress, investigate and facilitate resolution of any roadblocks that hold back progress, and generally be flexible enough to identify and deal with any issues that arise, in any way that is required.
Development and QA Team:
Develop and Test the software.
A User Story describes a desired feature (functional requirement) in narrative form. User Stories are usually written by the Product Owner, and are the Product Owner’s responsibility. The format is not standardized, but typically has a name, some descriptive text, references to external documents (such as screen shots), and information about how the implementation will be tested. For example, a Story might resemble the following:
Name: Planner enters new contact into address book, so that one can contact the person later by postal or electronic mail.
Description: Planner enters standard contact information (first and last name, two street address lines, city, state, zip / postal code, country, etc.) into contact-entry screen. One clicks “Save” to keep the data, and “Cancel” to discard data and return to previous screen.
How to test: Tester enters and saves the data, finds the name in the address book, and clicks on it.
Collection of user stories.
Contains a list of user stories prepared by the product owner at the beginning of the process.
Period of time to complete the user stories, decide by the product owner and team, usually 2–4 weeks of time.
Sprint planning meeting:
Meeting conduct with the team to define what can be delivered in the sprint.
List of committed stories by Dev/QA for specific sprint.
Meeting conducted by the ScrumMaster everday 15–20 min. This meeting called as Scrum call/Stand-up meeting. in Scrum Meeting team will discuss:
What did u do yesterday?
What will u do today?
Are there any impediments in your way?
Sprint retrospective meeting:
Conduct meeting after completion of Sprint. The entire team, including both the ScrumMaster and product owner should participate.
Rough estimation of user stories, will be given by Dev/QA.