![]() |
||||||||||||||||||||||||||||||||||
|
Tutorials |
|||||||||||||||||||||||||||||||||
Collaboration is a critical to success in an agile software development project. But, practicing interaction design techniques collaboratively involving users, programmers, testers, and stakeholders is a challenge at best. In this tutorial you’ll learn, through participation, practical and fun collaborative design techniques that effectively involve the whole team. PARTICIPANT KNOWLEDGE AND EXPERIENCE EXPECTEDParticipants should have practical knowledge of the complete software development process. Participants should have some general knowledge of interaction design. GOALS FOR THE SESSION:Participants in this tutorial will learn:
HOW THIS TUTORIAL WILL BE CONDUCTEDAlistair Cockburn describes the use of a “process miniature” as an approach to allow people to quickly learn a large and somewhat complex process. Participants of this tutorial will be engaged in a process miniature. They will play the role of a design team tasked with coming up with a general design for a piece of software, justification for that design, and a development plan that reasonably allows them to complete construction of the software in the constrained time frame allowed. 50% of participant's time will be spent engaged in hands-on activities. 20% in discussion of models and other work-products with the instructor and other workshop participants, 30% listening to presentation to help them participate effectively in activities and apply the techniques learned to real-world design and development projects. Activities will primarily use card-sorting and arranging techniques for brainstorming, prioritization, and model construction. TUTORIAL SCHEDULE WITH TIME ALLOCATION
DETAILED DESCRIPTION OF TUTORIAL1. Hit the Ground Running: the Design Problem: 30 minutes Goal: Set up for a collaborative scoping session. Introduce a real world design problem to discuss during this tutorial. Topics Include:
2. Who Cares?: User Roles and Role Modeling: 1 hour Goal: Introduce the concept of the user role and understand what it means relative to job titles or actors. Introduce card-sorting techniques for brainstorming and prioritization. Introduce card based modeling techniques for user role modeling. Topics Include:
3. Agile Software Development and Interaction Design Overview: 30 minutes Goal: Define terms and establish a motivation for using Usage-Centered Design and collaborative modeling techniques on your agile project. Topics Include:
4. Tasks, Features, and the Release Plan: 1 hour Goal: Introduce the U-CD task, the development feature, and understand them relative to XP's story or other definitions for feature such as FDD's feature. Introduce the concept of phased delivery and the “system span.” Incorporate all these concepts to build a feature-centric release plan using 3 x 5 card sorting techniques. Topics Include:
5. Summary: 30 minutes Goal: Review the concepts of interaction design and Usage-Centered Design specifically. Understand where interaction design concepts are used in an iterative development environment. SPEAKER BIO Jeff Patton Development Team Lead Tomax Corporation
I've worked as a software designer, developer, and development team and project leader for the past 8 years. During that time I've successfully designed, lead development of and delivered several commercial software products in use by hundreds of thousands of people today. Over the past 4 years I've been focusing on agile software development and in particular Extreme Programming. I've spent a year on a development team founded by Kent Beck, the author of XP. I've worked closely with Alistair Cockburn, author of Agile Software Development, over the past 2 years sharpening my agile development skills. Concurrently I've placed special attention on driving my agile projects using interaction design sensibilities. To support those goals I've trained with Larry Constantine & Lucy Lockwood as well as the folks from Cooper Interactive. My resulting approach is a unique and pragmatic blend of agile techniques with proven interaction design techniques. I've been successfully practicing these techniques on projects I work on today as well as teaching these techniques to others. I'm currently and ACM member and an active participant in object-oriented, design patterns, and agile development communities.
|
||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||