Professional Documents
Culture Documents
Agile Questions and Answers
Agile Questions and Answers
continuously?
When requirement keeps changing, continuously agile tester should take following
approach
Write generic test plans and test cases, which focuses on the intent of the
requirement rather than its exact details
To understand the scope of change, work closely with the product owners or
business analyst
Make sure team understand the risks involved in changing requirements
especially at the end of the sprint
Until the feature is stable, and the requirements are finalized, it is best to wait if
you are going to automate the feature
Changes can be kept to a minimum by negotiating or implement the changes in
the next sprint
2) List out the pros and cons of exploratory testing (used in Agile) and scripted
testing?
Pros Cons
- It requires less preparation-
Easy to modify when - Presenting progress and
Exploratory requirement changes Coverage to project
Testing
– Works well when management is difficult
documentation is scarce
- Test preparation is usually
- In case testing against legal time-consuming- Same steps
Scripted are tested over and again
or regulatory requirements it
Testing
is very useful – When requirement changes it
is difficult to modify
To improve the performance, the existing code is modified; this is re-factoring. During re-
factoring the code functionality remains same
6) Explain how you can measure the velocity of the sprint with varying team
capacity?
When planning a sprint usually, the velocity of the sprint is measured on the basis of
professional judgement based on historical data. However, the mathematical formula
used to measure the velocity of the sprint are,
7) Mention the key difference between sprint backlog and product backlog?
Product backlog: It contains a list of all desired features and is owned by the product
owner
Sprint backlog: It is a subset of the product backlog owned by development team and
commits to deliver it in a sprint. It is created in Sprint Planning Meeting
8) In Agile mention what is the difference between the Incremental and Iterative
development?
Release 1: Sprint 1, 2… n
9) Explain what is Spike and Zero sprint in Agile? What is the purpose of it?
Sprint Zero: It is introduced to perform some research before initiating the first sprint.
Usually this sprint is used during the start of the project for activities like setting
development environment, preparing product backlog and so on.
Spikes: Spikes are type of stories that are used for activities like research, exploration,
design and even prototyping. In between sprints, you can take spikes for the work
related to any technical or design issue. Spikes are of two types Technical Spikes and
Functional Spikes.
Test driven development or TDD is also known as test-driven design. In this method,
developer first writes an automated test case which describes new function or
improvement and then creates small codes to pass that test, and later re-factors the new
code to meet the acceptable standards.
Prototypes and Wireframes are prototypes that are widely used as part of Empirical
Design
To track the project progress burnup and burn down, charts are used
Scrum ban is a software development model based on Scrum and Kanban. It is specially
designed for project that requires frequent maintenance, having unexpected user stories
and programming errors. Using these approach, the team’s workflow is guided in a way
that allows minimum completion time for each user story or programming error.
It is used to discuss the difficulty of the story without assigning actual hours. The most
common scale used is a Fibonacci sequence ( 1,2,3,5,8,13,….100) although some
teams use linear scale (1,2,3,4….), Powers of 2 (1,2,4,8……) and cloth size (XS, S ,M,L,
XL)
The tracer bullet is a spike with the current architecture, the current set of best practices,
current technology set which results in production quality code. It is not a throw away
code but might just be a narrow implementation of the functionality.
A test stub is a small code that replaces an undeveloped or fully developed component
within a system being tested. Test stub is designed in such a way that it mimics the
actual component by generating specifically known outputs and substitute the actual
component.
18) What are the differences between RUP (Rational Unified Process) and Scrum
methodologies?
RUP SCRUM
- Formal Cycle is defined across four
phases, but some workflows can be - Each sprint is a complete cycle
concurrent
- No end to end project plan. Each next
- Formal project plan, associated with
iteration plan is determined at the end
multiple iterations is used.
of the current iteration
- Scope is predefined ahead of the
project start and documented in the - It uses a project backlog instead of
scope document. During the project, scope scrum
scope can be revised.
- Artifacts include Scope Document,
formal functional requirements package, - Operational software is the only formal
system architecture document, artifacts
development plan, test scripts, etc.
- Recommended for long term, large, - Recommended for quick
enterprise level projects with medium to enhancements and organization that
high complexity are not dependent on a deadline
The primary testing activities during Agile is automated unit testing and exploratory
testing.
Though, depending on project requirements, a tester may execute Functional and Non-
functional tests on the Application Under Test (AUT).
It provides greater visibility to stakeholder from the start of the sprint, which in
turn provide early feedback and ensures project success.
Risks are greatly reduced and handled in better way in agile.
Products can be delivered early.
Clients are more involved and have greater satisfaction.
Greater agility, changes could be incorporated early.
Development could be started early.
2. What are the different meetings in Agile? What is purpose of Release Planning,
Sprint Planning meetings, Scrum Meeting, Sprint Review Meeting, Retrospection?
Release Planning
In this release plan is prepared, which include list of features that needs to be delivered,
release date of software into Production, number of iterations/sprints for that release etc.
Spring Planning
In this product Owner presents the set of features he would like and the team asks questions
to understand the requirements in sufficient detail to enable them to commit to delivering the
listed features in sprint.
Sprint Review
It is demonstration of the new features the team has completed during the sprint; it is used to
gather early feedback.
Sprint Retrospection
It follows immediately after the sprint review. It is focused on the process, the way in
which the Scrum team is working together, including their technical skills and the software
development practices and tools they are using.
Each member of team is given deck of card which contains stories points in
Fibonacci sequence: 0, 1, 2, 3, 5, 8, 13...
Scrum Master lists the user stories and provides brief overview of them. Team
discusses and clarifies any questions/risks.
Each team member privately assigns a card representing his estimate of the size for
the user story.
Later on all estimates are revealed and people having low estimates and high
estimates need to provide justification for the same and after discussion within team
story point is finalized for use story. Same is repeated for all user stories.
4. What is Continuous Integration and why it is important for Agile? What are the
software/tools available for the same?
Product backlog is owned by the product owner, which contains list of all desired features.
Sprint backlog is created in Sprint Planning Meeting. It is subset of product backlog which is
owned by development Team, who commits it to deliver in a sprint.
6. What is difference between Epic, User stories & Tasks? Who should create User
stories & Task?
User Stories defines business requirement from the client perspective and it is supposed
to be delivered in particular sprint.
Task: User Stories are further broken down into different task from technical perspective.
Epic is a group of related User Stories, or it is large use story which cannot be completed
in single Sprint.
User stories should be created by Product Owner as these are written from client
perspective. Tasks should be created by someone from Development Team who is aware
about them from technical perspective.
Incremental:
As per Wiki Incremental Development defined as:
“Incremental development slices the system functionality into increments (portions). In each increment, a slice
of functionality is delivered through cross-discipline work, from the requirements to the deployment. The unified
process groups increments/iterations into phases: inception, elaboration, construction, and transition.”
Burn Up and Burn Down charts are used to track project progress.
Burnup Chart shows progress of stories done over time. X Axis: Time, Y Axis: no. of user
stories completed.
Burndown Chart shows how much work was left to do over time. X Axis: Time, Y Axis:
no. of user stories remaining.
Task board is used to track progress in agile. Generally it has following columns:
Use Story: Use Story under consideration for current sprint.
To Do: Tasks that needs to be picked up.
In Progress: Tasks that are currently in progress.
To Verify: Tasks that needs to verified/tested.
Done: Tasks that are completed.
Frequently used agile methodology interview questions
In what does the agile testing(development) methodology differs from the other testing
(development) methodologies?
Anytime applying agile methodology, the testers (developers) ensure that the whole process
of testing (development) is broke into as small steps as possible and just a small unit of code
is tested (developed) in each of this steps. The team of testers (developers) is communicating
consistently the results of their work, and change the short term strategy and even the
development plan on the go, based on the results of agile testing. Agile methodology
encourages flexible and rapid response to change which should lead to a better end result.
Can agile methodology be applied also in other than software testing and development
projects?
While asking these sort of questions, employers try to recognize if you really understand the
benefits of this methodology and can see a practical application in various areas of business.
To state that this methodology can be, and maybe even should be, applied in all the instances
and test cases where we have insufficient entry data, or work in an unknown area, or simply
work within a small team, or where many unpredictable variables take place, is a good
answer. It is in fact used quite commonly in bio-medicine, biochemistry or physics. Anyway,
it could be used in many other areas too. Just let your imagination work and you’ll find a
good answer…
Describe a situation when you personally used the agile methodology (or was a part of a
team that used it).
This question is very important. One little experience is more useful than the entire book of
theory. Before the interview, think carefully about your own application of agile
methodology. If you can not find any example in your professional life, try to find it in
personal life. Think about it in advance, prepare a situation you will talk about later and focus
on the positive results associated with the implementation of AM in your project. Doing it,
you should be well prepared for all these practical questions. We wish you good luck!
B. The team determines iteration (timebox) length by dividing the total number of story points
by the average velocity of the team
C. Iterations (timeboxes) should always be two weeks
D. The team should agree on the length of the iteration (timebox), taking the size and
complexity of the project into consideration
2. Which of the following is a characteristic of an Agile leader?
A. Task focused
B. Process oriented
C. Supportive
D. Disengaged
3. Who is responsible for prioritizing the product backlog?
A. Product Owner
B. Project Manager
C. Lead Developer
D. Business Analyst
4. What are the advantages of maintaining consistent iteration (timebox) length throughout the
project?
A. It helps to establish a consistent pattern of delivery
B. It helps the team to objectively measure progress
C. It providea a consistent means of measuring team velocity
D. All of the above
5. Tracking project issues in an Agile project is the primary responsibility of the…
A. Tester
B. Project Leader
C. Functional Manager
D. Developer Sample Questions with Answers for Web Revised Jan 2013 v0 4 3 22 January 2013 Author D J Tudor
6. Why is it important to trust the team?
A. High trust teams do not have to be accountable to each other
B. High trust teams do not require a user representative
C. The Project Manager does not then have to keep a project schedule
D. The presence of trust is positively correlated with the team performance
7. An effective workshop facilitator will always ...
A. Involve the whole project team in all project workshops
B. Agree the process and participants of the workshop with the workshop owner before the
workshop
C. Involve only those team members who will commit to doing further work after the workshop
D. Act as a proxy for any invited participant who is unable to attend the workshop on the day
8. Which of the following best represents the Agile approach to planning?
A. Planning is not part of an Agile approach, because Agile is exploratory
B. Planning should be done in detail at the outset of a project and not revisited
C. Planning should involve the whole team, not just the Project Manager
D. Planning should all be done by the Project Manager
9. Who should define the business value of a Feature within an Agile project?
A. The individual end-users
B. The Product Owner
C. The Business Analyst
D. The Business Sponsor
10. If a timebox (iteration) plan needs to be reprioritised in a hurry, who should re-prioritise?
A. The developers alone (they know what the customer wants)
B. The Product Owner (the developers would only choose the easy things as top priority)
C. The Project Leader (they can give an independent, pragmatic view)
D. The whole team including Product Owner and developers (together they can consider both
business value and practicality)
Sample Questions with Answers for Web Revised Jan 2013 v0 4 4 22 January 2013 Author D J Tudor
11. What is the effect of having a large visible project plan on a wall?
A. It removes the need to create any other reports for management
B. It continuously communicates progress within the team and to other stakeholders
C. It allows the Project Manager to allocate tasks to specific team members
D. It is restrictive, as it does not allow the team to innovate and change
12. How should work be allocated to the team in an Agile project?
A. The Team Leader (Scrum Master) should allocate specific tasks to individuals
B. Tasks should be randomly allocated to team members, using Planning Poker
C. Team members should self-select tasks appropriate to their skills
D. The most complex tasks should be allocated by the Team Leader (Scrum Master)
13. What should the developers do if the customer representative is repeatedly too busy to be
available?
A. Continue the work, record the assumptions and ask the customer later for input.
B. Send the customer a written warning that the end product will be completed on time, but
may not meet their needs
C. Allow the Business Analyst to take on the role of Proxy Customer Representative
D. Draw the problem to the attention of the Scrum Master (Team Leader)
14. Which one of the following is a key feature of documentation that you would expect to find
in an Agile project?
A. System documentation created at the end of each increment, at the start of the deployment
B. User Stories held in a spreadsheet or specialist database, where full details of user
conversations are recorded for future purposes, like handover to maintenance or support
C. User Story cards containing only enough detail for planning and development, which will
need to be supplemented by further face-to-face conversations
D. No written documentation, as all good communication is face-to-face
17. Which one of the following statements is correct regarding quality of deliverables from an
Agile Project?
A. The products produced by an Agile project should be cheaper than those produced by any
other approach, but quality will suffer
B. The products will be more expensive than by any other approach but will be top quality
C. The products will be fit for purpose, but may not do what the customer wanted
D. The products will be of appropriate quality, as guided by the customer representative
involved throughout the development process
22. Which one of the following is an important feature of the daily stand-up / wash up / Scrum
meeting?
A. Everyone is expected to stand for the whole time, to keep the meeting short
B. The meeting must be kept short and well structured
C. The meeting should ensure that it is clear to all which team members are not performing
D. No-one is allowed to leave the stand-up meeting until all problems raised have been solved
24. One of the development stages you would expect to see a team go through is:
A. Storming
B. Warming
C. Cloning
D. Yawning
25. When estimating is done for a project, the developers should:
A. Be fully involved in the estimating process
B. Be in total control of the estimating process
C. Be consulted after the Team Leader (Scrum Master) has made the estimates for the team’s
work
D. Not make estimates unless velocity is already known
26. During an iteration (sprint) (timebox) the developers should be:
A. Able to contact the customer to clarify aspects of the work
B. Completely uninterrupted by the customer
C. In twice-daily contact with the customer
D. Able to work without needing to disturb the customer Sample Questions with Answers for Web Revised
Jan 2013 v0 4 7 22 January 2013 Author D J Tudor
27. The end result of an Agile development is:
A. A product of a professional quality which fits the business need
B. A product of almost as good a quality as a Waterfall development
C. A product which is barely sufficient for its purpose and deliberately not maintainable
D. A technically-perfect, re-factored solution
28. An Agile customer …
A. Must have a thorough understanding of Agile techniques, for Agile to work
B. Will always receive lower-quality products than their non-Agile counterparts
C. Will typically get business value delivered early and often
D. Will need to understand the technical aspects of development, to contribute effectively
29. An Agile team …
A. Is self-organizing, with each member having the same technical skills
B. Collaborates and supports its team members
C. Ensures that weak members of the team are allocated the simpler tasks
D. Ensures blame is allocated fairly
30. The Agile process …
A. Encourages the team to meet regularly
B. Has no meetings
C. Has lengthy reporting requirements
D. Has no reporting requirements
31. The Agile Leader …
A. Should allocate tasks to the team members each day at the stand-up meeting
B. Should involve the team in their own work-allocation
C. Should give detailed work-plans to the team each day
D. Should direct the work of the team, if they are inexperienced
32. What is Kan Ban?
A. A list of activities banned by the team, in relation to Team Norms
B. The set of Can Have stories for a project
C. A visible chart of work to do, work in progress and work done
D. A graph of tasks partially-completed by the team Sample Questions with Answers for Web Revised Jan
2013 v0 4 8 22 January 2013 Author D J Tudor
33. What is meant by “Yesterday’s Weather” in an Agile project?
A. Teams work less well when it rains
B. Keeping metrics of earlier work to help with future estimates
C. Retrospectives should include less important topics, such as the weather, as ice-breakers
D. Estimating is as futile as predicting the weather
34. In Agile projects, we plan to “learn as we go” because…
A. It creates a better relationship between the developers and customer representatives
B. Many projects are evolutionary, and a better solution emerges this way
C. It is time-consuming to analyse everything at the beginning of a project
D. It prevents late delivery of the project
35. The recommended approach to design in an Agile project is:
A. No design up front
B. Big design up front
C. Just enough design up front
D. Use a previous design – it will be “good enough”
36. What is the personal risk that an Agile Leader takes in empowering the team?
A. The Agile Leader might lose their job, as the team is doing all the work
B. If the team fails, the Agile leader will not get a performance bonus
C. The Agile Leader has less direct control over the team’s work, but still has the responsibility
for their outcomes
D. The Agile Leader cannot share the glory of team success
37. The Agile approach to documentation is:
A. Do no documentation because it is a waste of time
B. Do sufficient documentation to prove you have done a good job
C. Do the necessary documentation to support the development and use of the product
D. Do more documentation than usual, because Agile is risky
38. The Agile way is:
A. To produce working product of the right quality, early and incrementally
B. To produce working product after documentation has been signed off
C. To produce simple prototypes early, but no finished product until the end of the project
D. To produce products without technical integrity, but re-engineer later Sample Questions with
Answers for Web Revised Jan 2013 v0 4 9 22 January 2013 Author D J Tudor
39. The customer in an Agile project ….
A. Has no control over the prioritization of delivered features
B. Has total control over the prioritization of features
C. Collaborates with the developers over prioritization of features, but the developers have the
final decision
D. Collaborates with the developers over prioritization of features, but the business has the
final decision
40. In the popular prioritization technique called “MoSCoW”, the “M” stands for ...
A. May have
B. Major
C. Must Have
D. Mandatory
41. The working culture of an Agile team is …
A. Collective
B. Collaborative
C. Connective
D. Contemplative
42. The leadership style of an Agile Leader is …
A. Directive
B. Assertive
C. Facilitative
D. Feature-based
43. The Agile Manifesto states the following values:
A. People are more important than contracts
B. Working software should have priority over comprehensive documentation
C. Plans should have priority over ability to respond
D. Contracts should be negotiated which allow control over the people
44. Which of the following are attributes of an Agile team?
A. Courage to change and adapt
B. Trust of fellow team members to do the work
C. Responsiveness to change
D. All of these Sample Questions with Answers for Web Revised Jan 2013 v0 4 10 22 January 2013 Author D J Tudor
45. A sustainable pace means …
A. If the team members work long hours regularly they will get used to it, and be able to sustain
it
B. A 40 hour week is only for the weaker members of the team. Others can do more.
C. The team should establish a velocity which can be sustained within normal working hours
D. Working long hours is the only way to deliver on time
46. A burn-down chart shows …
A. The energy level and velocity of the team
B. The remaining work (effort, points) to complete before the iteration (timebox) end
C. The number of hours worked by each team member during the iteration (timebox)
D. The rate of spending of the budget for a project
47. The reason for holding regular Retrospectives is:
A. It allows the team to take a necessary break from work
B. It gives management information to use in team members’ performance reviews
C. It allows learning which can be used to improve team performance during the project
D. It prevents deviation from the process which the team has been following
48. Once a project is underway, the approach to planning is:
A. Plans should never be changed
B. It is normal to need to plan and re-plan as the project progresses
C. Plans should only be changed with full approval of all stakeholders
D. Plans are not required as Agile is incremental
49. An Agile project …
A. Should have no control over its progress
B. Should be able to demonstrate control of its progress
C. Is always out of control
D. Is controlled by the velocity of the most junior team member
50. An Agile project should have ...
A. Occasional early deliveries, if the business is prepared to accept lower quality
B. A regular pattern of delivery of developer-focused products
C. A regular pattern of delivery of business-valued increments
D. An irregular and unpredictable delivery of products Sample Questions with Answers for Web Revised Jan
2013 v0 4 11 22 January 2013 Author D J Tudor
51. When an Agile team is successful …
A. It should be encouraged to celebrate success only when the project is over
B. It should be encouraged to celebrate even small successes immediately
C. It should not celebrate success, as this wastes project budget
D. It should not celebrate success, as this makes less successful teams feel bad
52. In order to communicate well, the Agile project should ...
A. Keep team-size large, to avoid stakeholders feeling left out
B. Break the project into small, mixed-skill, self-organising teams
C. Operate with one team of less than 10 people
D. Operate with separate customer, developer and test teams
53. If a new requirement emerges once an Agile project is running, it should be:
A. Automatically included in the work of the project
B. Automatically excluded and left until a later project or increment
C. Assessed for importance and, if sufficiently important to the business, included in the
project, displacing less important requirements
D. Put on the backlog for consideration by the wider group of stakeholders after the project has
been completed
54 . You have been engaged as the Technical Coordinator in a product development team. The
customer (Product Owner) and Team Leader (Scrum Master) are happy because the team always
delivers business value on time. However, you worry that the technical debt is increasing. What
would be your primary goal to ensure the right quality?
A. Ensure testers define their entry criteria for quality, which they impose on the development
team
B. Nothing. Prescribed roles such as technical coordinators are not part of an Agile team
C. Make sure that the maintainability quality attribute is addressed
D. On time delivery and happy end users are the only quality measures in Agile development
55. How could maintainability of the developing product be improved in a development team?
A. Apply standard design patterns
B. All of these
C. Make refactoring a common practice
D. Ensure unit testing is included in the “done” criteria
Sample Questions with Answers for Web Revised Jan 2013 v0 4 12 22 January 2013 Author D J Tudor
56. Agile methods are described as “adaptive” because…
A. Agile teams have the empowerment to frequently respond to change and to learn on a
project by changing the plan
B. The rate of development progress on an Agile project is constantly tracked to allow
adaptation
C. Project Managers are not needed in Agile methods because teams are self-organising
D. Workshops held at the beginning and the end of every iteration (timebox) allow the team to
adapt the product specification
57. What do all Agile approaches have in common?
A. A prescribed, fixed iteration (timebox) length
B. Iterative development and incremental delivery
C. A strict focus on on-time delivery
D. A large set of clearly defined roles
58. What is one difference in responsibility between a Project Manager and a Scrum Master
(Team Leader) in an Agile project?
A. None. It's basically the same. Scrum Master (or Team Leader) is just a better term than
Project Manager in an Agile project
B. The Project Manager creates the detailed delivery plans while the Team Leader monitors
execution within the team
C. Project Manager communicates with project governance authorities when necessary
D. The Project Manager monitors the realisation of benefits in the business case.
59. How could you benefit from having an End User Representative in your development team?
A. End users should NOT be in the development team. Requirements are always communicated
to the developers by the Product Owner, who is part of the customer team
B. The End User Representative will be solely responsible for acceptance tests within the team
C. The End User Representative assures that user stories are documented properly
D. The End User Representative will be able to clearly tell the developers what will work for
an end user
60. The responsibilities of a Product Owner will include …
A. Business processes diagramming
B. Prioritizing requirements
C. Managing the project budget
D. All of these
Depending on the role you are interviewing for, you may want to leave
certain questions out or perhaps add some of your own. Certainly there
will be questions you want to ask about things like the person’s outlook
towards businesspeople and technical people working closely together,
which is important no matter whether the project is waterfall or Agile.
1. How long were the iterations (or sprints) on the projects you
worked on?
Agile project methodology moves at a fast pace and you should already
have a good idea of the length of the iterations for the pending project.
Answers of between 1-week to 3-weeks are ideal. If your candidate has
worked on Agile projects which have long iterations (4 weeks or longer),
or wildly variable-length iterations, it will make sense to determine if this
person is comfortable with the iterations as defined for your project. A
steady set of fixed-length iterations that are fairly short is best. The
theory that big companies need longer iterations is not based in fact.
We’ve done many big company projects in the 1 to 2 week iteration
range.
2. Are you a Certified Scrum Master (CSM)? If so, how do you view
the way Scrum projects need to be organized?
If the person is not a CSM, you may still encounter these issues, so
pursue the line of questioning either way.
3. Did you use automated test tools on your projects? Explain how
that worked.
Agile project team members should have experience (or at the very least,
the desire) to use automated testing tools for regression and performance
testing of each iteration. At the end of each iteration you want to have
something that your customer/client can "see." Automated testing allows
quick identification and isolation of development defects as well as the
ability to test development work completed in previous iterations. Expect
the candidate to talk about automated regression testing, continuous
integration and testing and even performance testing techniques and
tools. Also expect them to discuss the need for manual testing as well as
automated testing, due to the ever-changing nature of the code base in
Agile.
Here you want to get a pretty detailed explanation of how the candidate
has used continuous integration on previous projects. Continuous
integration is a set of automated build, integration and test steps that
executes against the code base in a configuration management
repository. For instance, if you were using Java and CVS, the CVS
repository would have a set of triggers that automatically built, integrated
and unit tested the code often, perhaps each night, perhaps a few times a
week, or even every time someone checked in new code. Each of these is
a valid continuous integration story.
5. Did your iterations overlap? For instance, were the testers still
testing Iteration 6 while Iteration 5 was being
designed/developed?
6. Have you used story cards or use cases? Explain how that
worked for the team.
Often, Agile projects are associated with the use of story cards. However,
our goal is to simply understand if our potential team member is
comfortable implementing a project (designing, developing, testing, etc)
with business information which has been documented in some way. The
requirements (story cards or use cases or a combination of both) should
have enough information to provide guidelines for developing and testing
and also allow the development team to come up with a creative and
effective solution. By asking this question, you want to understand if your
potential team member is comfortable working with requirements in a
structured development environment (versus brief summaries from which
the developers build code). Again, this is a matter of matching the Agile
candidate’s experience with your organization’s needs.
The point here is to make sure testing goes all the way back to
requirements for validation. Not only is it important to test that the
functionality a developer has created during an iteration actually
functions, it is also important to determine if it functions the way the
business wanted it to function. Does it meet the requirements defined in
the story card / use case? Your team members should understand the
importance of this concept and if they understand and accept traceability,
you should be able to count on this person to help you meet project
goals.
This question is more for Agile project managers. Do you have corporate
PM tool standards? If so, this question becomes quite important. Agile has
a new breed of PM tools including Rally Software, Version One and
XPlanner. These tools bear no resemblance to the waterfall PM tools like
MS-Project or Clarity. If your candidate is more comfortable using one of
these Agile PM tools, try to identify if they will be able to fit their Agile
project plans (and issues, milestones, change requests, etc.) into your
company’s structure.
This is a PM question, but most Agile people should know the answer.
Project velocity is the rate at which a team is "burning" through story
points, so a possible velocity might be "30 story points per iteration." That
means that so far, the team has been able to identify, code and test 30
units of functionality (story points) in an average iteration and can expect
to do about that much in future iterations, giving a fairly good view
towards what can be accomplished by a release date.
References:
Our work is based on the research paper by Dr. Hong Li. The paper is
available here:
http://agileplusrigor.ning.com/forum/topic/show?id=2075814%3ATopic%
3A565
http://atozmcqs.blogspot.in/2014/01/105-top-agile-testing-multiple-choice.html
************************************************************************
Kanban
Kanban is a lean approach to agile software development.
Actually, Kanban means many things. Literally, Kanban is a Japanese word that means “visual
card”. At Toyota, Kanban is the term used for the visual & physical signalling system that ties
together the whole Lean Production system. Most agile methods such as Scrum and XP are
already well aligned with lean principles. In 2004, however, David Anderson pioneered a more
direct implementation of Lean Thinking and Theory of Constraints to software development.
Under the guidance of experts such as Don Reinertsen, this evolved into what David called a
“Kanban system for software development”, and which most people now simply refer to as
“Kanban”. So while Kanban as applied to software development is new, Kanban as used in Lean
Production is over a half century old.
o “We’ve done Scrum for a long time now and our process improvement has levelled off. How can
we take our process to the next level?”
o “Our needs and priorities shift on a daily basis”
o “We don’t like fixed-length, fixed-commitment iterations”
o “We are spending too much time planning and estimating”
If so, read on. Along with Scrum and XP, Kanban should be part of the process toolkit of any
agile company. The choice of where & when to use it can only be made by you though.
How does Kanban work?
There are many flavors, but the core of Kanban means:
Here’s a more complex one (see Kanban kick-start example for a closer look & description)
o Bottlenecks become clearly visible in real-time. This leads people to collaborate to optimize the
whole value chain rather than just their part.
o Provides a more gradual evolution path from waterfall to agile software development, thereby
helping companies that previously have been unable or unwilling to try agile methods.
o Provides a way to do agile software development without necessarily having to use time-boxed
fixed-commitment iterations such as Scrum sprints. Useful for situations where sprints don’t
make much sense, such as operations and support teams with a high rate of uncertainty and
variabilty.
o Tends to naturally spread throughout the organization to other departments such as HR and
sales, thereby increasing visibility of everything that is going on at the company.
o Enterprise Kanban (article by Mattias) - shows how Kanban can be used to improve the full
value stream
Multi team projects
o Lean from the Trenches – Managing Large Scale Projects with Kanban (book by Henrik) – shows
advanced application of Kanban in a 60-person project
Operations
o Kanban & Scrum, making the most of both (book by Henrik & Mattias)
Further reading
o Kanban (book by David J Anderson)
o Kanban & Scrum, making the most of both (book by Henrik & Mattias)
o 10 kanban boards and their context (article by Mattias)
o Converting a Scrum team to Kanban (article by Mattias)
o www.limitedwipsociety.org – main Kanban resource site
o One day in Kanban land (comic strip by Henrik)
o Kanban kick-start example (template by Henrik)
o How can support and operations be Agile (slides by Mattias)
o Mattias’ blog entries on Kanban and more
o Henrik’s blog entries on Kanban and more
o Queue utilization is a leading indicator (Corey Ladas)
Scrum
Scrum and Kanban are both empirical in the sense that you are expected to experiment with the process
and customize it to your environment. In fact, you have to experiment. Neither Scrum nor Kanban provide
all the answers – they just give you a basic set of constraints to drive your own process improvement.
Scrum Summary
Scrum is an iterative, incremental framework for projects and product or application development. It
structures development in cycles of work called Sprints. These iterations are no more than one month
each, and take place one after the other without pause. The Sprints are timeboxed – they end on a
specific date whether the work has been completed or not, and are never extended. At the beginning of
each Sprint, a cross-functional team selects items 5 (customer requirements) from a prioritized list. The
team commits to complete the items by the end of the Sprint. During the Sprint, the chosen items do not
change. Every day the team gathers briefly to inspect its progress, and adjust the next steps needed to
complete the work remaining. At the end of the Sprint, the team reviews the Sprint with stakeholders,
and demonstrates what it has built. People obtain feedback that can be incorporated in the next Sprint.
Scrum emphasizes working product at the end of the Sprint that is really “done”; in the case of software,
this means code that is integrated, fully tested and potentially shippable.
A major theme in Scrum is “inspect and adapt.” Since development inevitably involves
learning, innovation, and surprises, Scrum emphasizes taking a short step of development,
inspecting both the resulting product and the efficacy of current practices, and then adapting
the product goals and process practices. Repeat forever.
Like any tools, Scrum and Kanban are neither perfect nor complete. They don’t tell you everything
that you need to do, they just provide certain constraints & guidelines
Points to be noted:
Scrum and Kanban are process tools in that they help you work more effectively by, to a certain extent,
telling you what to do. Which tool is better depends upon your context. For a given situation, a particular
tool is better
2. No tool is complete and no tool is perfect. Like any tools, Scrum and Kanban are
neither perfect nor complete. They don’t tell you everything that you need to do, they just
provide certain constraints & guidelines. For example, Scrum constrains you to have
timeboxed iterations and cross-functional teams, and Kanban constrains you to use visible
boards and limit the size of your queues.
3. Interestingly enough, the value of a tool is that it limits your options. A process tool that
lets you do anything is not very useful. We might call that process “Do Whatever” or how
about “Do The Right Thing”
4. Using the right tools will help you succeed, but will not guarantee success. It's easy to confuse
project success/failure with tool success/failure.
A project may succeed because of a great tool.
A project may succeed despite a lousy tool.
A project may fail because of a lousy tool.
A project may fail despite a great tool..
5. Prescriptive means “more rules to follow” and adaptive means “fewer rules to follow”.
100% prescriptive means you don’t get to use your brain, there is a rule for everything.
100% adaptive means Do Whatever, there are no rules or constraints at all.
6. Agile methods are sometimes called lightweight methods, specifically because they are
less prescriptive than traditional methods. Scrum and Kanban are both highly adaptive,
but relatively speaking, Scrum is more prescriptive than Kanban. Scrum gives you more
constraints, and thereby leaves fewer options open. For example Scrum prescribes the use
of timeboxed iterations, Kanban doesn’t
8. One of the main differences between Scrum and RUP is that in RUP you get too much, and you
are supposed to remove the stuff you don’t need. In Scrum you get too little, and you are supposed
to add the stuff that is missing. Kanban leaves almost everything open. The only constraints are
Visualize Your Workflow and Limit Your WIP. Just inches from Do Whatever, but still
surprisingly powerful.
9. Don’t limit yourself to one tool. Mix and match the tools as you need! I can hardly imagine a
successful Scrum team that doesn’t include most elements of XP for example. Many Kanban
teams use daily standup meetings (a Scrum practice). Some Scrum teams write some of their
backlog items as Use Cases (a RUP practice) or limit their queue sizes (a Kanban practice).
Whatever works for you.
10. The general mindset in both Scrum and Kanban is “less is more”. So when in doubt, start
with less.