Steven Fraser is the Director of the Cisco Research Center (www.cisco.com/research<http://www.cisco.com/research>)
and is responsible for managing external research program funding and tech
transfer-with personal expertise in software and agile processes. From 2005 to
2007, Steven was senior staff at QUALCOMM's Learning Center, with
responsibilities for technical learning. From 2002 to 2004 Steven was an
independent software consultant on tech transfer and disruptive technologies.
Previous to 2002, Steven held a variety of software roles at Nortel and BNR
including: Process Architect, Senior Manager (Disruptive Technology and Global
External
Research) and Software Reuse Program Prime. In 1994 he spent a year as a
Visiting Scientist at the Software Engineering Institute (SEI). Steven holds a
Doctorate in Electrical Engineering from McGill University in Montreal, Canada.
Steven is a Senior Member of the IEEE and a member of the ACM. His work focuses
on alleviating the "soft" challenges of developing and deploying products highly
dependent on software. This tutorial will explore the intersection of agility
and software development in a world of legacy code-bases and large distributed
teams. Organizations with hundreds of developers and code-bases of a million or
more lines of code are seeking new ways to expedite development while retaining
and attracting staff who desire to apply "agile" methods. Now agile practices
are embraced outside of their usual zone (small co-located teams) of
applicability where "projects pick agility" rather than "agility picks
projects". Now practitioners must understand both what "best practices" already
exist in the organization-and how they might be improved or modified by applying
"agile" approaches. What is "best" depends on context-and this tutorial will
explore software "best" practices in a hybrid world where existing strategies
for development invite agile to move beyond small co-located teams. Topics for
discussion will be dependent on participant interests and might include:
* What constitutes software "best practices" and their related limitations and
failure modes-specifically in the context of large systems
and teams
* What constitutes team collaboration "best practices" and how they might be
optimized in light of continuous change
Objectives:
1. Overview of software practices and processes
2.
Provide caveats and checklists for software development in a hybrid world (large
legacy systems - desiring to embrace agile practices)
Format:
The tutorial will consist of a mix of lecture-style presentation, case studies
and interactive discussions.
Audience: This tutorial is intended for individuals (developers, managers,
researchers) with an interest in the adoption of agile practices in a large
distributed (by geography) software organization.