A ALM Vol. 1 Issue 1 – January 2013 L Mag M M a g - V o 1 ..l .com sI , s u e 1 J a n Empowering Rapid Delivery of Quality Software u a yr Inaugural Edition 2 0 1 3 ALM Summit * January 2013 Team Culture, Development & Operations Project Integrated in the Enterprise Culture Requirement Management In The Modern Application Lifecycle BONUS TFS Taskboard on Microsoft Surface Video A Lap Load Testing Using Around Windows Azure TFS 2012 TFS / ALM Requirement management in the modern application lifecycle M anaging requirements is hard and no single tool can tell you how to achieve that within your organization. To that end, Visual Studio 2012 Team Foundation Server stays out of the “where do your requirements come from” world and firmly in the “I have my requirements.. .what now?” world and indeed the tools built on top of the requirement management system stay in one niche. UPDATED 2012-09-11: I have updated the list of tools available Martin Hinshelwood ALM Consultant Northwest Cadence Team Foundation Server aims to become your matter of record or single- point-of-truth for what state your requirements are in, what the details of that requirement are, who is currently working on it and who changed what when. The system has lists of work item that can have any number of fields with configurable forms and permissions along with many other features out- of-the-box and you can store data against these fields with TFS storing a revision history so we can get back to any version that we like. All users authenticate is some way with a single unified authority so we get full digital signature traceability through the system which allows TFS to fully support and comply with Sarbanes-Oxley, FDA and PCI-DSS to name but a few. 2 TFS / ALM Figure: Storing data in forms and state transition But while Team Foundation Server fully supports that recording and traceability there are only a few tools for figuring out where the requirements come from. Figure: Traceability of every change to every field 3 TFS / ALM The Problem The problems that TFS can’t solve for you, and no other tool out there can either, is that creating clear and actionable requirements is hard. Capturing requirements is so hard that most, if not all, software created today does not meet the value expectations of the customer. Part of this is due to a gap between the customers understanding of what was asked for and IT’s interpretation of that requirement but much of it is the inability for requirements to be captured in a timely and well documented fashion. Figure: Code does not meet requirements We need to be able to reduce the requirements definition cycle time and much more effectively capture the details of those requirements so that we can execute. To achieve this we need more than a matter of record and while there are a number of awesome tools out of the box, Microsoft has recognised that it cant be all things to all men, and cant build all tools for all situation. They have encouraged an ecosystem of partners that can fill these gaps and provide value to customers. Integration Points for Requirement Management There are many integration points with Visual Studio 2012 Team Foundation Server but the key here is the TFS API and its flexible Work Item Tracking model. The Work Item Tracking system that contains Work item Type Definitions (Requirement, PBI, User Story, Bug, Task, Test Case, etc.) that have Field Definitions (Title, Description, Effort, Remaining Work, State, etc.) all of which can be customised. 4 TFS / ALM Figure: Custom Link Types There is a built in linking system that allows not just hierarchical lists, but the ability to create your own bi-directional linking taxonomy. For example the existing process templates contain a “tests / tested by” relationship that allows you to have a directional relationship between a bug and a test case. i.e. a Bug is “tested by” one or more Test Case(s) and visa versa. These links can be between any of the built in artifact types and indeed you can link to your own external artifacts to enable deeper integration with the product. 5 TFS / ALM The revision history is atomically stored for each change but also allows for merging as long as there are no individual field conflicts. This revision history allows for rich reporting that is configurable for each field and you can set the reportability of each of the fields which enables the data they contain to be visible as a detail in the Data Warehouse for lists or indeed as a Measure / Dimension in an Analysis Services Cube for trend analysis. Figure: Customize Work Item Types Because everyone is authenticated the same across all parts of the system you have a single model for identifying an individual, their permissions and their actions. You can add custom fields to an individual Work Item Type Definition or globally to all Work Item Type Definitions on the Team Foundation Server. So the Key Integration Points are: Linking One or more work items in TFS link by unique identifier to one or more items in the partner system but no sync of data takes place or a one-time only sync occurs (copy). Syncing A copy of the work item data resides in both TFS and the Partner system allowing for tight bi- directional integration. Loading The partner system does not store any data directly but instead exclusively stores all of its data in TFS. These integration points represent a tightening of the gap between products and as partner products move from Lining through Synching to Loading they become able to provide a much richer feature set to their users. Products that get all the way to Loading can concentrate on adding value to their customers while not having to build all of the infrastructure required to deliver it. 6 TFS / ALM Solution: Team Companion from Ekobit (Partner) If you don’t know Team Companion then you should. It is by far the best of breed in integrating Team Foundation Server and Outlook. It lets your team members and managers that spend their lives in Outlook work with Work Items, manage Sprints / Iteration and report right from the familiar ground of Outlook. Figure: Work Items from Team Foundation Server In Outlook By allowing folks to work directly in Outlook the guys at Ekobit have maintained the fluent paradigms from Outlook which manifests in making Work Items “feel” like emails with history and a purpose. In addition you can create Work items form emails and emails from work items with the ability for Team Companion to track that history through both products. 7 TFS / ALM Figure: Access you reports And its not just work item, you can access both Team Companion real-time reporting as well as surface the reports provided out of the box in TFS. 8 TFS / ALM Figure: Even interact with SharePoint Just as TFS talks and stored documents in SharePoint so does Team Companion again allowing everyone to collaborate against this single point of truth for all data regarding the product. Team Companion integrates with a hybrid Syncing / Loading interaction that is made possible through adding the capabilities of Outlook and its offline capability to the mix. Yes, you can go offline, update your work items and sync when you come back online and if you are using TFS 2012 you can take advantage of the field collision model that allows for merging of work item changes. Much more flexible… I use Team Companion and so should you… 9 TFS / ALM Solution: Caliber from Borland (Partner) If you have enterprise teams that require more structure while still allowing teams to decide how best to build and deliver the software that they are building then you need a tool that embodies that vision so that it will grow into that space as you do. Figure: Ideation and traceability in Caliber Caliber is best for organizations that need more visibility from inception to delivery of a requirement and especially when there are compliance requirements as there are in many industries. I had the opportunity to meet some of the developers and the tooling and interaction was pretty cool. They are using a “Linking” style integration that allows them to interoperate with multiple systems this gives you the flexibility of Business Analysts using one tool even across multiple development teams building in multiple technologies on multiple ALM platforms. Awesome… 10
Description: