What is the difference between agile values, principles and
techniques? The Agile Manifesto is comprised of 4 foundational values and 12 supporting principles which lead the agile approach to software development. Each Agile Technique applies the four values in different ways. Based on your understanding, summarize the agile manifesto (values). 1. Individuals and interactions over processes and tools. 2. Working software over comprehensive documentation. 3. Customer collaboration over contract negotiation. 4. Responding to change over following a plan. Agile philosophy is to welcome changes. Discuss! Expect the system requirements to change and so design the system to accommodate these changes. Simplicity is essential. Discuss! Focus on simplicity in both the software being developed and the development process. Wherever possible, actively work to eliminate complexity from the system. What is the difference between micro-managed and self- managed team? Which is best? The micro-managed is a management style whereby a manager closely observes and controls the work. The members of self-managed team plan and manage their day-to-day activities and duties under reduced or no supervision. The best: In my opinion, none of them, because they represent the two extremes of managing types. Based on your understanding, discuss the following terms: Incremental planning: Requirements are recorded on story cards and the stories to be included in a release are determined by the time available and their relative priority. Test driven development: An automated unit test framework is used to write tests for a new piece of functionality before that functionality itself is implemented. Customer involvement: Customers should be closely involved throughout the development process. Continuous integration: As soon as the work on a task is complete, it is integrated into the whole system. After any such integration, all the unit tests in the system must pass. Pair programming: Developers work in pairs, checking each other’s work and providing support to always do a good job. Mention some benefits of pair programming. Knowledge sharing. Encourage refactoring.
Mention the different levels of requirements in agile
requirement specification activity. 1. Theme. 2. EPIC. 3. User story. What is user story? What are the main components of user story? User story: is a description of a small valuable functionality. Components: Title: <A name for the user story> As a: <A user or persona> I want to: <Take an action> So that: <A benefit is realized> What is the difference between user story and epic? Epic is a large feature with insufficient details. User story is a description of a small valuable functionality. What is the Definition of Done? Who is responsible to put such definition? The DoD is when all acceptance criteria that a software product must satisfy are met and ready to be accepted by a user. DoD is created by the scrum team. Mention some items that would be valid in the definition of done. Unit test passed. Code reviewed. Functional tests passed. The owner accepts the user story. A good user story is the one that is independent, valuable, estimable and negotiable. Discuss! Independent > implemented at any order. Valuable > to customers. Estimable > easy to estimate throughout its life time. Negotiable > stories are not contracts. What is the difference between TDD and Code-first development? Test-driven > write the test before the code. Code-first > write the code before the test. What is Agile Scrum? What is it used for? Scrum is an agile project management methodology used for software development projects with the goal of delivering new software capability every 2-4 weeks. What is the role product owner and scrum master in agile team? Product owner > identify product features or requirements, prioritize these for development and continuously review the product backlog to ensure that the project continues to meet critical business needs. Scrum master > responsible for ensuring that the Scrum processes followed and guides the team in the effective use of Scrum. What is the difference between spring & release? Sprint: Time boxed development cycle within a release. Usually 2-4 weeks Release: Ready to be used by end users. 3-6 months. What is meant by: product backlog, velocity, potentially shippable product? Product backlog: a list of ‘to do’ items which the Scrum team must tackle. Velocity: how much product backlog effort that a team can cover in a single sprint. Potentially shippable product: The software increment that is delivered from a sprint. What is the measurement metric for user stories? Story points. How do you estimate the velocity of the team for a new project? Mention the methods used of quantifying team velocity. Velocity estimation: 1. Sort velocities. 2. Find 90% confidence interval. 3. Find the median. 4. Find the standard deviation. The methods: Pilot sprint. Dry run. What is burn-down chart? What is it used for? A burn down chart > is a graphical representation of work left to do versus time. Useful for predicting when all of the work will be completed.