is some leeway in what is meant by "continuous", the key is automation. Automation of the build sequence encourages developers to create builds prior to check-in. Automation allows early detection of potential issues. Continuous builds encourage a culture of ensuring that developer changes are of high quality. If automation can be advanced into the sanity testing phase, all the better.
Next generation ALM tools must support continuous build automation. This includes easy and automated definition of build contents (based on rules), retrieval of source code and whatever else is necessary to perform the build, launching of build scripts, packaging of the build artifacts, and collection of build results.
9. Custom Dashboards
There are various roles in an agile shop, as in any shop. Product owner, developer, customer/designated user, etc. The key to keeping each role moving smoothly is to have effective dashboards. Ideally, communications sessions should be centred on a single dashboard, showing what the past day's/week's accomplishments were and what's in store for the next one.
Dashboards can cover a number of areas: iteration status, problem/defect status, product/release/iteration backlogs, requirements traceability, quality metrics, etc.
It's fine to have an ALM tool with a number of canned dashboards. But to really allow you to streamline your agile processes, you need to be able to rapidly and easily create and customize dashboards to your specific roles and tasks. You need to be able to present information such as progress/burn-down charts, work breakdown structures, build content comparisons, etc. Ideally, you should be able to sit down and, for each role or significant task, identify exactly what you want on a dashboard. And then you should be able to spend a few minutes or hours to produce the dashboard. This is one of the key differentiators between current and next generation tools.
Taking it one step further, you should identify what you need to run meetings from the ALM tool, using meeting dashboards. A peer review station would be one example. A problem review board meeting might need a specific dashboard. Your weekly scrums should have their own specific dashboard. The dashboard provides your agenda while at the same time allowing you to easily capture whatever actions or other information that come up during the meeting. It also provides drill-down capabilities and traceability navigation so that both content and reasoning is accurately portrayed.
For a product owner, the dashboard should give you the capability of zooming into a release and/or iteration and it should consolidate the feature task/activity backlogs with the problem/defect backlogs so that a clear view of the current and future campaigns is always at hand and up to the minute.
10. Process Guidance
The myth that there is little process associated with agile methods comes from the focus on less overhead and administration. This in turn actually means that there is a requirement for well understood process. But process should help the agile development, not stand in its way.
The ALM Tool can support this by helping with a streamlined operation, that focuses on the iteration model and continuous builds, but precisely customized to the project needs. It's amazing how a single field on a form can slow down an action. At the same time, the tool has to use the user context to capture information rather than forcing entry by the user.
And when the user is unsure how to proceed, quick guidance must be available as part of the tool, perhaps as a diagram, perhaps in a role description or procedure. Next generation ALM tools allow guidance to be easily customized from a reasonable starting point reflecting the