development lifecycles

Conference Presentations

A Manager's View -- Evolving from Traditional to Agile Development

Go inside a high risk, high reliability application environment with a combination of legacy and newer systems. These highly complex embedded and real-time systems support huge businesses and are expected to operate almost flawlessly every time. Most of the systems were originally developed with traditional waterfall and iterative processes and require extensive development documentation. So, how have they adopted leading edge Agile concepts with the full support of management while continuing to deliver products with the reliability demanded by their customers? Jon Hagar tells a fascinating story with many lessons for those of us living with hundreds of thousands or millions of lines of code that run our businesses. To avoid becoming antiquated and ending up losing not only market share but also your best people, you can make a commitment to improvement and evolution into the Agile world.

Jon Hagar, Jon Hagar Educational Services
Lean Software Contracts

Agile development is great, but it cannot possibly be for you because your software development is done under a contract-outsourced or under an internal service agreement. Right? Wrong! Similar to the way automobile manufacturers have embraced lean manufacturing, you can escape the deadly waterfall development process even in contracted development environments. Lean manufacturing companies have learned over the past twenty years that trust with suppliers lies in specific actions and expectations, not in interpersonal relationships. They understand the "game" of outsourced contracting and know how to structure relationships and write contracts so that both sides are motivated to contribute to the common good. Join Mary Poppendieck, an expert in lean software development, to explore ways to change the contracting game in software development for the better.

Mary Poppendieck, Poppendieck LLC
Describing Software Requirements with User Stories

All projects start with needs or requirements. How those requirements are documented and expressed has a tremendous affect on the rest of the project. The technique of expressing requirements as "user stories" is one of the most broadly applicable techniques introduced by eXtreme Programming (XP). However, user stories are a valuable approach on all time-constrained projects, not just those using XP. Although user stories originated in the Agile processes, they are useful even if you are not planning to employ Agile development. In this session, Mike Cohn will help you identify and write good user stories and understand the six attributes of all good stories. Explore how user role modeling can help when gathering the initial stories for a project.

Mike Cohn, Mountain Goat Software
Agile Software Development: The Home of 31 Flavors

You've heard of eXtreme Programming (XP) and perhaps Scrum. How about Crystal Clear, Adaptive Software Development, Dynamic Systems Development Method, Rational Unified Process for Agile Development, and Feature Driven Development? These are some of the many variations of Agile development methods. Join Jeff McKenna as he explores the many flavors of Agile development methods and explains the similarities and differences. Find out what aspects of Agile development can help your organization’s development team in its particular environment. If you are considering Agile development and need to decide in which direction to go, this session is for you. Although a one-hour session cannot provide all the information you will need, you can explore what is common-the philosophy, the values, the characteristics-and what is different-the methods, the coverage, the costs-about different Agile approaches.

Jeff McKenna, Agile Action
Software Factories: Hype or Hope for Real Advancement?

The new concept of Software Factories, as proposed by Microsoft, promises to elevate software development to the next level. Siemens is working with Microsoft to apply these approaches with the goal of improving product maintenance, quality, and time to market. Gunther Lenz explains the common elements and, more importantly, the differences between the Software Factories model and Model Driven Architecture (MDA), as proposed by the Object Management Group (OMG). Learn how UML 2.0, Domain Specific Languages, platform independence, product line development, and synchronization between models can all enter into the development process. Take away an in-depth understanding of the concept of Software Factories while leaning differences between Software Factories and MDAs.

Gunther Lenz, Siemens Corporate Research, Inc.
Model Driven Architecture (MDA) - What's in it for Developers and Testers?

According to the Object Management Group (OMG), the benefits of Model Driven Architecture (MDA) are significant to businesses and developers alike: reduced overall product life costs, faster development, better application quality, rapid deployment of new technology, and a higher ROI on new technology. In short, the hype is that MDA enables system integration strategies that are better, faster, and cheaper. However, the MDA approach represents a fundamental change in the way software is developed, and it revolutionizes how you allocate test resources and how you create system tests. Timothy Korson outlines the MDA process and then suggests ways to change quality assurance activities to mesh with the MDA development style. Take away a realistic view of the current state of MDA practices compared to the MDA promise and vision, offered by the OMG.

Timothy Korson, QualSys Solutions
Managing and Sizing Functional Requirements

The ability to clearly define user requirements is critical to the overall success of many software projects. You need effective requirements development and management skills and processes to identify, describe, and record the functions requested by end users. With these in place you have the information necessary to assess project complexity and make reasonable size and effort estimates. David Herron describes reliable requirements gathering and documentation techniques including context diagrams, use cases, and mind maps. He discusses function point analysis as a software sizing methodology used by leading edge companies. These techniques, together with the associated tools and templates, provide you with the elements you need to more effectively develop, manage, and measure software requirements.

  • Sizing functional requirements for project planning
David Herron, The David Consulting Group
Achieving Meaningful Metrics from Your Test Automation Tools

In addition to the efficiency improvements you expect from automated testing tools, you can-and should-expect them to provide valuable metrics to help manage your testing effort. By exploiting the programmability of automation tools, you can support the measurement and reporting aspects of your department. Learn how Jack Frank employs these tools with minimal effort to create test execution
status reports, coverage metrics, and other key management reports. Learn what measurement data your automation tool needs to log for later reporting. See examples of the operational reports his automation tools generate, including run/re-run/not run, pass/fail, percent complete, and percent of overall system tested. Take with you examples of senior management reports, including Jack's favorite, "My Bosses' Boss Test Status Report"-names will be changed to hide the guilty. Regardless of the

Jack Frank, Mosaic Inc
The Test Strategist's Toolbox

As a decision-making framework, a test strategy outlines the vision and values that drive the project and keeps you on a clear path in times of change or uncertainty. A good test strategy makes you more resilient to inevitable changes as the project progresses. However, each test
project needs its own strategy depending on the business and risk profiles of the applications, technology in use, development methods, and even the experience and culture of the test group. In this interactive session with James Lyndsay, you will learn about a wide range of test strategy

James Lyndsay, Workroom Productions
Controlling Performance Testing in an Uncontrolled World

Think about it ... You are responsible for performance testing a system containing over 5 billion searchable documents to an active user base of 2.6 million users, and you are expected to deliver notification of sub-second changes in release response and certification of extremely high reliability and availability. Your n-tier architecture consists of numerous mainframes and large-scale UNIX
servers as well as Intel processor-based servers. The test environment architecture is distributed across large numbers of servers performing shared functions for a variety of products competing for test time and resources during aggressive release cycles. Because it is impractical and too costly to totally isolate systems at this scale, capacity and performance test engineers produce high quality

Jim Robinson, LexisNexis


AgileConnection is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.