I prefer to describe 'Agile' in terms of the following key characteristics that are common to the portfolio of Agile methods: - ANSWER ■ People driven;
Agile is driven by the continuous collaboration of people ranging o
...
I prefer to describe 'Agile' in terms of the following key characteristics that are common to the portfolio of Agile methods: - ANSWER ■ People driven;
Agile is driven by the continuous collaboration of people ranging over all required departments; whether they are called business, IT, marketing, sales, customer service, operations or management. People are respected for their creativity, intelligence and self-organizing capabilities.
■ Facilitation;
Agile replaces the traditional command-and-control mechanisms of assigning individuals on a daily basis with executable micro-tasks.Agile teams are facilitated by servant-leadership. Boundaries and a context for self-management exist, upon which teams are given objectives and direction.
■ Iterative-incremental process;
Products are created piece by piece ('incremental') The built pieces and the total product are frequently revisited ('iterative') to assure overall integrity.
■ Measuring success
Agile makes it explicit that success and progress in software development can only be determined by frequently inspecting working software and the actual value it holds for the people who will have to use it.
■ Change.
Even when requirements and implementations are predicted in an upfront way, they are prone to change.Agile encourages change as a source of innovation and improvement.
Agile software development is driven by - ANSWER business and business opportunities.All work is reorganized to respond to and enable that business opportunities can be capitalized on.
'Value' is the answer to business opportunities and the overall measure of progress and success. - ANSWER Value is an internal assumption within the organization until the software is actually released to the marketplace. Releasing software on the marketplace is the only way to validate this assumption.Releasing software on the marketplace regularly is the only way to adapt to the feedback and appreciation of the marketplace.
Value is continuously increased across iterations and risk is controlled by - ANSWER consecutively producing working increments based upon defined engineering standards
Technical perspective on risk (Will the system perform? Is it scalable?) often ignores the fact that the ultimate goal of software development is - ANSWER to provide greater satisfaction to end-users and customers, to endure that software product is useful.
The Agile software development process should address the risk - ANSWER of not being able to capitalize on unforeseen and previously unknown market opportunities, of not releasing the software product fast enough,being subject to customer dissatisfaction e.g. by releasing untested software, the risk of releasing features that are not what users expect or appreciate etc.
High-value needs are answered first. - ANSWER Software products, versions and releases are released quickly and frequently.They get users to pay for the software and optimize the stakeholders' return. They are of high quality in order to minimize maintenance and support.
Agile understands the core purpose of the 'normal' IT activities: - ANSWER Analysis, Design, Coding and Testing/Integration), but breaks the sequential organization of these. The goal of such an integrated, cross-functional approach is to build in quality and to prevent defects, rather than attempt to establish quality by a bug hunting approach in a post-development phase.
Agility is the state of - ANSWER High responsiveness, speed and adaptiveness, while controlling risks.It serves to better deal with the unpredictability so common to the work of software development and to the markets that organizations operate within.
■ Agility can't be planned; ■ Agility can't be dictated; ■ Agility has no end-state. - ANSWER Agility in itself is much more than following a new process. It is about behavior, it is about cultural change.In a transformation towards an Agile way of working, there is no way of predicting what change needs will be encountered at what point in time, how these will be dealt with and what the exact outcome will be in order to control next steps.
A time-planned way for an Agile transformation ignores the essence of Agile, - ANSWER that of dealing with complexity via well-considered steps of experimentation and learning.
Agility has no end-state. - ANSWER Time-plans create the illusion of deadlines and a final end-state.
A practice to identify structural waste is Value Stream Mapping. - ANSWER All steps and phases in the process of going from 'idea' to 'cash' are set out on a timeline. Activities may be labeled as 'valuable' or as 'non-value adding', but possibly also as necessary although not directly value-adding.
The Value Ratio can be calculated - ANSWER as the ratio of time spent on value-adding activities versus wasteful activities.
Lean strives for continuity and flow. - ANSWER Overproduction of materials disrupts flow and may delay the discovery and resolution of quality issues.Lean says to limit 'Work in Progress' (and costly inventory) by producing only materials when there is a pull signal from the next steps in the process in a 'Just in Time' mode.
Here we will show just some of the clear strategies in Agile that align it with Lean: - ANSWER ■ Potentially unused inventories: Detailed requirements, hard-coded plans, designs, etc. form a liability in software development, and not an asset, because they represent potentially unused work.
■ Partially done work: Work that is not completely finished, 'almost there, I just need a little more time'-type of work, is a known, important type of waste in software development.
The overall Kaizen thinking, and its explicit daily Inspect & Adapt implementation in Agile, helps team in not taking up new work while undone work remains in the iteration. Time-boxing is a time-management technique that helps teams focus on finishing work.
■ Feature usage: Research has shown that barely 20% of the features included in a product built in a traditional way are regularly used (Standish, 2002). Unused or under-used functions thus represent an enormous waste of effort and budget, both in terms of developing and maintaining them.
1986 paper 'The New New Product Development Game' (Takeuchi & Nonaka, 1986). - ANSWER The research described in their paper showed that outstanding performance in the development of new, complex products is achieved when teams, as small and self-organizing units of people, are fed with objectives, not with tasks. The best performing teams are those that are given direction within which they have room to devise their own tactics on how to best head towards their joint objective. Teams require autonomy to achieve excellence.
Jeff Sutherland and Ken Schwaber conceived the Scrum process for Agile software development in the early 90's. - ANSWER They presented Scrum for the first time in 1995 at the Oopsla1 conference in Texas. They inherited the name 'Scrum' from the paper by Takeuchi and Nonaka.
If teams are only instructed to carry out executable tasks and their capacity in hours is pre-filled with such tasks, - ANSWER They lose openness for better solutions, ideas that are a better fit to the actual demand given change, proven findings and current circumstances. Their only focus is to deliver what was instructed without considering conflicting ideas and options, without dealing with the natural form of instability typical to product development and technological discovery.
Scrum implements the scientific method of empiricism to better deal with the complexity and unpredictability of software development. - ANSWER Scrum replaces the industrial, plan-driven paradigm with framework has been consciously limited to a bare minimal set of mandatory elements, so that each element becomes essential.
The purpose of empiricism via Scrum is - ANSWER to help people perform inspections & adaptations upon transparency of the work being undertaken. Scrum builds in frequent reality checks to assure best possible decisions.
Methodologies, by design, are composed of stringent and mandatory sequences of steps, processes and procedures, implementing predefined algorithms and executers for each step, process or procedure. - ANSWER Methodologies depend on high degrees of predictability to have a high yield. Software development does not have that high degree of predictability.
Scrum is a process that helps surface the most effective process, practices and structures. - ANSWER Scrum helps discover a way of working that is continuously adaptable to everybody's actual context and current circumstances. Therefore, we prefer to call Scrum... a framework.
The goal of Scrum, as a framework for Agile software development, is - ANSWER to optimize and control the creation of valuable software in turbulent enterprise, organizational, business and market circumstances.
Scrum requires great discipline from its players, but still leaves much room for personal creativity and context-specific expansions. - ANSWER The rules of the game are based upon respect for the people-players through a subtle and balanced distribution of responsibilities.
The time-management technique of time-boxing all work allows the players to - ANSWER quickly respond to new opportunities and adapt to any changes and evolutions.
Scrum organizes its players into Scrum Teams. - ANSWER A Scrum Team consists of three roles, where each role complements the other roles in accountability, thereby turning collaboration into the key to success
The Product Owner manages the Product Backlog based on the product vision as a long-term view of the road ahead. - ANSWER Product vision captures why the product is being built.The Product Backlog shows all of the work actually envisioned for the product that's being created and sustained. This work may comprise functional and non-functional expectations, enhancements, fixes, patches, ideas, updates and other requirements.
The Product Owner expresses the business expectations and ideas captured in the Product Backlog to the team, - ANSWER and orders the items in the Product Backlog to optimize the value being delivered.
The Product Owner also manages the game budget to optimize the balance of - ANSWER value, effort and time for the represented stakeholders.
The Development Team self-organizes to perform all end-to-end development activities required to turn items from the Product Backlog, expressed and ordered by the Product Owner, into releasable software. - ANSWER It covers all work necessary to guarantee that the Increment of product at the end of each Sprint is usable and that it technically can be released to the users and consumers of the product or service.
The criteria that need to be met to do so, and thus also drive the development work to be undertaken by the Development Team, is often captured in - ANSWER a 'definition of done'.
The Development Team also has a set of 'Engineering Standards' that describes how the implementation is being performed. - ANSWER This is required to guarantee the level of quality needed to ship regularly. And it provides the right transparency to the way the game is being played.And it provides the right transparency to the way the game is being played.
The Development Team sets the cost or effort indication on Product Backlog items. - ANSWER The evolving effort indications on Product Backlog can be compared with proven experience to make a forecast of Product Backlog for a Sprint.
The Scrum Master, a one-person player role, facilitates the Product Owner and the Development Team during the game. The Scrum Master teaches, coaches and mentors the Scrum Team, and also the organization, in understanding, respecting and knowing how to play the game of Scrum. - ANSWER The Scrum Master makes sure the rules of the game are well understood and that any elements that hinder or block the team in its progress are removed. Such elements are called Impediments in Scrum. The Scrum Master induces the continual desireto become better players. The Scrum Master implements Scrum by helping others to use Scrum.
The time-boxed iterations in the game of Scrum is called - ANSWER called Sprints. Sprints allow the Development Team to focus on achieving the next game level, the Sprint Goal, with minimal external disruptions.
The selected work, the forecast, is designed, analyzed and elaborated into a list of actionable development work, - ANSWER the Sprint Backlog. After the expiration of the time-box of the event, or possibly sooner, the Development Team starts upon this work plan that has been collaboratively created.
Daily Scrum. The meeting serves as a right-time planning event. - ANSWER The adaptation is captured in an update of the Sprint Backlog.The actual progress on the Sprint Backlog is visualized, based upon the amount of remaining work.If the actual progress impacts upon the forecast, the Development Team consults with the Product Owner.
While reviewing the product Increment all players are likely to discover changes and receive feedback and evolutionary insights from the inspection. - ANSWER These are processed into the Product Backlog for future implementation.
The Sprint is concluded with a Sprint Retrospective in which the Scrum Team inspects, and covers - ANSWER all aspects of the work, i.e. technology, social aspects, the Scrum process, development practices, product quality, etc. What experiments might be usefully conducted in order to learn and build a better product.
The Sprint length is kept steady over several Sprints for reasons of consistency. - ANSWER It's useful for the team to understand how much work can be done during the Sprint. This amount of work is often refered as velocity.
Velocity is a sum of effort or cost units that were completed in a Sprint - ANSWER and is typical to one team, and one team's composition.
The Sprint length is right-sized to capitalize on emerging and previously unforeseen business opportunities. - ANSWER The Sprint length may also depend on how long a Team can work without consulting with stakeholders at the Sprint review. It is an opportunity to adopt new strategic directions. A team may suffer from reduced learning and adaptation opportunities when not consulting with stakeholders, markets.
Overall progress of work is tracked and visualized, in order to create progress trends that add predictability to uncertainty. - ANSWER In order to continuously measure and adapt to reality and achieve the best predictability possible, taking into account the levels of complexity, the remaining work is re-estimated regularly and honestly.
Sprint progress - ANSWER Within a Sprint, progress is tracked on a daily basis. The Sprint Backlog always holds the most realistic plan and estimates of the work remaining to implement the Sprint Goal. The classic Scrum approach to visualize progress is a Burn-down chart, a physical Scrum Board, a burn-up chart, cmulative flow diagram.
The progress indication at the level of the Product Backlog is updated and reviewed at a minimum at the Sprint Review meeting. - ANSWER The Product Owner may package Product Backlog items into tentative releases. The proven progress of past Sprints gives the Product Owner and its stakeholders a forecasted delivery date for releases, individual features or feature sets.
Product Backlog is an ordered list of ideas, features and options to bring an envisioned software product to life, and to sustain and grow it. - ANSWER The list is bound to include all functionalities and features, but naturally also includes fixes, maintenance work, architectural work, work to be spent on security, scalability, stability and performance, etc.
The list is bound to include all functionalities and features, but naturally also includes fixes, maintenance work, architectural work, work to be spent on security, scalability, stability and performance, etc. - ANSWER An item is intentionally incomplete to encourage additional and explicit discussion over it. Each item is a placeholder for discussion at the appropriate time.Continuously adhering to 'just enough' descriptions and designs of the work, i.e. leaving out unnecessary details, ensures that no excessive money and time is wasted if the item ultimately isn't created or is implemented in a different fashion.
The level of description and detail of a Product Backlog item lies somewhere between what used to be a desire and what used to be a requirement. - ANSWER A 'desire' is too fuzzy to work on and a requirement is over-specified and over-detailed. While the ordering of the Product Backlog depends upon a complex combination of factors like cost/effort, dependencies, priority, cohesion and consistency, it is essential to have a view on the value.
While the ordering of the Product Backlog depends upon a complex combination of factors like cost/effort, dependencies, priority, cohesion and consistency, it is essential to have a view on the value. - ANSWER
Core factors for a Product Backlog item are cost and value: - ANSWER Cost: The cost, or effort, of a Product Backlog item is generally expressed as the relative size of the item.
Value: An important principle of Agile is "to satisfy the customer through early and continuous delivery of valuable software". The value of a Product Backlog item can be indirect, in it that not picking up a Product Backlog item might undercut the value of the system or even the organization, or that not pulling it may produce negative value.
The notion of value helps Product Owners and their stakeholders move away from the (false idea of) perfection of a total product that must be completely built before even considering its release. - ANSWER The focus shifts to a minimal marketable product release and the minimal work it takes to bring effective value to the marketplace. Product Backlog can be used to group items, features and non-functional requirements into cohesive feature sets.
Transparency requires common standards to work against and to inspect upon. - ANSWER The definition of done sets the standard for releasable, and should be known
[Show More]