This 1/2 day workshop covers the factors that increase or decrease project productivity, quality, and satisfaction. Based on Tim Lister’s decades of work experience and his best-selling book “PeopleWare”, The first twenty-five people to register for this tutorial will also receive a copy of the book.
![]() |
Mr. Lister is a principal of the Atlantic Systems Guild, Inc. Tim works on tailoring software development processes using software risk management techniques. Mr. Lister has over 30 years of professional software development experience. Before the formation of the Atlantic Systems Guild, he worked at Yourdon Inc. from 1975 to 1983. At Yourdon he was an Executive Vice President and Fellow, in charge of all instructor/consultants, the technical content of all courses, and the quality of all consultations. |
Use Cases are the best tool known for capturing, documenting, and validating the functional requirements for a system. Unfortunately, trying to capture a system’s use cases all at once often leads to a severe case of “analysis paralysis”. Our approach to use case development is an incremental one that allows us to develop, refine, and validate use cases as we move to more detailed software requirements. We call this technique the Ever-Unfolding Story, and it is the subject of this course. The course consists of lecture and hands-on exercises, and the use case portion is largely based on Alistair Cockburn’s book “Writing Effective Use Cases” – winner of the Jolt Productivity Award for 2001.
Section 1: Introduction
This half-day section provides motivation for, and introduction to, use case based requirements analysis. You learn what a use case looks like, and the general process of unfolding them into more detailed requirements.
![]() |
Douglas E. Shimp is a CST (Certified ScrumMaster Trainer) and a Use Case expert. He has 16 years experience in the technology field. One of his distinctions is his focus on the interaction of technology and corporate cultural issues. He is currently writing a book on “The ProductOwner.” He is certified by both Cockburn and Associates to teach “Writing Effective Use Cases” and Advanced Development Methods as a ScrumMaster Trainer. Email: Doug_shimp@netobjectives.com, or see his website: 3Back.com |
Many organizations look to Test-Driven-Design (TDD) as a potential way to improve their current quality challenges. The problem with that mind set is that TDD is still seen as an add-on, or something to do after you write the code. And when one attempts to add tests to code as an after thought, dozens of excuses arise that typically result in yet another untested method, untested class, or untested architectural layer.
This tutorial is intended as an introduction to software developers and managers who have not yet adopted TDD. This tutorial is intended to help you experience several of the common lessons that need to be ingrained in your daily process habits, in order to become truly Test-Infected. This is not a tutorial on JUnit or any other testing framework. All of the exercises are paper-based and will keep you focused on designing object-oriented systems and refining the scope definition by defining the tests first.
![]() |
James Goebel, co-founder of Menlo Innovations in Ann Arbor, Michigan, has practiced custom software development for more than twenty years as a developer, team lead, system architect, project manager, practice director, and executive coach. He is a certified Project Management Professional (PMP), a licensed Michigan Residential Builder, and has an MBA from Eastern Michigan University. |
His work in commercial software development has spanned several domains including bio-informatics, diagnostic medical imaging, vehicle monitoring, test generation, online bill presentment, and digital archives.
For the last six years James has acted as a coach and change agent for organizations implementing process changes to improve their ability to positively affect the business impact of their software development projects.
This three hour tutorial is focused on the practical use and application of Test Driven Development (TDD). Attendees will follow along with the presenter in pairs on their laptops through the instruction and examples of test driven development. While the principals and standards that will be covered in this tutorial apply to most development environments, the examples and projects will be done in .NET-C#, using Visual studio 2003. The tutorial will be divided into two parts.
Part one will deal with setting up a C# TDD project using NUnit and the basics of unit tests. Once a working framework is established, examples of state based TDD will be demonstrated followed by exercises to be completed by the attendees with the presenter’s supervision and assistance.
Part two will introduce the concept and benefits of interaction based testing. The purpose and use of mock objects will be described and use of the NMock library will be demonstrated. Examples and exercises based on interaction testing will follow.
Tutorial Requirements
Each attendee should come ready with the following equipment and software:
At the start of the tutorial each attendee will receive a CD with the rest of the needed software, including:
![]() |
After working as an independent consultant as a means of paying for school, Scott began working as a developer full time in the late 80s. He has lead or participated in a wide range of projects including Kitchen & Bath design, Automotive job costing, Explosives detection, Golf and hockey league management, Internet-based file sharing, and several applications in the textile and apparel design field. |
Scott has spent the last two years exploring and refining Test Driven Development practices for large applications on several platforms, including C#, C++, Java, and HTML/Javascript.