Obstacles to Agility 1. What does agile mean?

Slides:



Advertisements
Similar presentations
Basic SDLC Models.
Advertisements

©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 17 Slide 1 Rapid software development.
Software Development Models: Waterfall and Spiral Sung Hee Park Department of Mathematics and Computer Science Virginia State University August 21, 2012.
Release & Deployment ITIL Version 3
Trusted IT Group. The challenge: 40 active, concurrent IT projects  Unsatisfactory Project Delivery.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 17 Slide 1 Extreme Programming.
Get quality results faster: Agile Projects and your team Presenters: Laurie Barnas and Wendy Taylor, Associate Registrars, University of Victoria.
Monster-Sized Agile Adoptions SUCCESS AND FAILURE STRATEGIES.
Dr. Tom WayCSC Software Processes CSC 4700 Software Engineering.
Sofia Bulgaria Summer School IST eXPERT: Best Practice on e-Project Development 30 June - 2 July 2003 eXtreme programming.
Current Trends in Systems Develpment
Agile and XP Development Dan Fleck 2008 Dan Fleck 2008.
Coming up: What is Agile? XP Development Dan Fleck 2010 Dan Fleck 2010.
Extreme/Agile Programming Prabhaker Mateti. ACK These slides are collected from many authors along with a few of mine. Many thanks to all these authors.
1 Software Process Models-ii Presented By; Mehwish Shafiq.
Rapid software development 1. Topics covered Agile methods Extreme programming Rapid application development Software prototyping 2.
Extreme Programming (XP). Agile Software Development Paradigm Values individuals and interactions over processes and tools. Values working software over.
Chapter 2 Software processes. Topics covered Software process models Process activities Coping with change.
Chapter 7 The Practices: dX. 2 Outline Iterative Development Iterative Development Planning Planning Organizing the Iterations into Management Phases.
Requirements Engineering Requirements Engineering in Agile Methods Lecture-28.
Extreme programming (XP) Variant of agile Takes commonsense practices to extreme levels © 2012 by Václav Rajlich1.
CS 4500: Software Development Software Process. Materials Sommmerville Chapters 1, 2 and 3 Software Cycle and Models:
Coming up: What is Agile? XP Development Dan Fleck 2010 Dan Fleck 2010.
Introducing an Agile Process to an Organization By Mike Cohn and Doris Ford IEEE Computer.
Project Workflow.
Agile Methods SENG 301.
Software Development.
Agile Methodology and Scrum
Scrum CS These outstanding slides were created by Kevin Schenk, BS in Computer Science, Purdue University, 2012.
Agile Education Teacher Presentation
Flight Software Conference 2016
Chapter 12: Planning for Electronic Commerce
Appendix B Agile Methodologies
Software Engineering Process
Extreme Programming.
Scrum CS These outstanding slides were created by Kevin Schenk, BS in Computer Science, Purdue University, 2012.
Scrum CS These outstanding slides were created by Kevin Schenk, BS in Computer Science, Purdue University, 2012.
The importance of project management
Project Workflow.
Designing for people CPSC 481: HCI I.
Iterative and Agile Development
Scrum CS These outstanding slides were created by Kevin Schenk, BS in Computer Science, Purdue University, 2012.
Organization and structure
Collaborative Communication
Chapter 1 The Systems Development Environment
Enterprise Content Management, Shared Services, & Contract Management
Obstacles to Agility 1. What does agile mean?
What do you need to know about XP?
How to Successfully Implement an Agile Project
Agile and XP Development
Agile Process: Overview
Frameworks in project management
Agile and XP Development
Chapter 3 – Agile Software Development
Agile and XP Development
Archives and Records Professionals for Research Data IG
Introduction If you have got a call for an Agile testing interview, then congratulations are in order. You may be feeling nervous, but it sure to be felt.
Software Process Models
Chapter 3: Agile Software Processes
Mumtaz Ali Rajput +92 – SOFTWARE PROJECTMANAGMENT– WEEK 1 Mumtaz Ali Rajput +92 – 301-
Coming up: What is Agile?
DSDM ArLinda A. Carroll.
Agile Development – a new way of software development?
Appendix B Agile Methodologies
Extreme Programming.
Agile software development
Organizing and Accelerating Your Work with Scrum
Chief Technology Officer
Co-production: Enablement Tracking & Reporting
Remaining Agile on Virtual Teams
Presentation transcript:

Obstacles to Agility 1. What does agile mean? 2. What keeps us from being agile? 3. What can we do about this? Total of 25 slides

What does “agile” mean? Per the Agile Manifesto, 2001 Software is developed in short time-boxes (“iterations”). Each iteration results in functioning build. The team values real time communication over documentation. The team--including programmers and subject matter experts--is collocated. Progress is measured in working software.

What does “agile” look like? Your development plan/task list is in short, 1-to-4 week iterations. A project is made up of many iterations. At the end of each one, you generate a functioning build, creating prototypes whenever possible. Also at the end of each iteration, you identify what can be done in the next cycle. Your team includes a subject matter expert. You work closely with your teammates, holding brief, stand-up meetings often. You measure progress with complete iterations.

To solve problems for your users more quickly and more frequently. Why bother? Short answer: To solve problems for your users more quickly and more frequently. It’s also an exciting way to work…

Is this important? “Our users expect simplicity and immediate reward and Amazon, Google, and iTunes are the standards against which we are judged.” University of California Libraries’ Bibliographic Services Task Force, Dec. 2005 “Academic libraries might just have a window of opportunity to leap into a future where we add value to our institutions in ways we've never imagined before or are only beginning to envision. But that window may already be in the process of slamming shut.” Roy Tennant, Library Journal, Dec. 2006

So…what keeps us from agility? Academic culture: our dear customers themselves! Project management practices Institutional hiring processes Our own work practices

Academic culture Academic culture: a ‘non-participatory democracy’ Individuals do not want to be involved but do want veto power. Individuals do not want to be represented by anyone else. They want a voice. Or not.

Academic culture What this means: It can be difficult—if not impossible—to identify a small number of subject matter experts who can represent the customer base at large. Project teams end up working with large committees of users. Committees of committees…

What keeps us from agility? Aspects of academic culture Project management practices: how we run things! Institutional hiring processes Our own work practices

Project management practices Projects typically do not have a single individual or committee that takes ownership responsibility for the project’s outcome. Major project decisions often require input from a very diffuse decision-making structure. Projects are allowed to drag on for years, sucking life from all surrounding beings.

Project management practices What this means: Because no single entity can adjudicate conflicts over requirements, schedule, or funding, many players must be consulted. Time passes. Then, more time passes. Individual team members have the life sucked out of them. By the time it is delivered, the solution is out of date.

What keeps us from agility? Aspects of academic culture Project management practices Hiring processes…at the beloved institutions where we work! Our own work practices

Hiring processes Hiring processes and systems built for the academic job market are a bad fit for the technology market. Many months elapse between the identification of a staffing need and the start date of a new employee. Some shops don’t even have administrative control over their own openings. Grant-funded staff members can’t be moved around as project work might require.

Hiring processes What this means: Project teams are not able to get help when and where they need it. Projects are slowed; schedules are warped to less-than-optimal configurations.

What keeps us from agility? Aspects of academic culture Project management practices Institutional hiring processes Work practices: time to look in the mirror…

Work practices We value space and privacy over team collocation. We don’t want to share work in progress. We aren’t practiced in estimating how long it will take to accomplish project tasks. We measure progress, well… how do we measure progress? Do we measure progress?

Work practices What this means: We lose time communicating/coordinating with people in other locations. We aim for perfection before getting feedback. We can’t reliably predict what we can get done in the next time block. We may not be working on what our customers want/expect.

What can we do about this? 1. Start small… 2. …with a new project… 3. …and introduce it as a pilot.

What can we do about: Academic culture Create a project Steering Committee/Advisory Council, with representatives from the stakeholding committees. Establish the group expectation of decision-making. Identify a subject matter expert to serve as a user representative on the team. Give this person a meaningful role. Use the “Pilot Project” label to encourage adoption of the new approach.

What can we do about: Project management Identify a time-to-market goal, and review progress toward this goal at the close of each iteration. Implement first versions (with 80% of functionality) quickly—in a few weeks or months. Automate well-understood processes first. Empower user representative as decision-makers. Aim for functionality, not perfection.

What can we do about: Hiring & Staffing No quick fix, so adopt a work-around strategy: Look for trade possibilities with other tech shops in your university system (“salary transfer”); Establish standing relationships with contracting agencies; Use independent contractors. Assign temporary workers to production support activities, freeing up employees to do the cool (agile) work.

What can we do about: Work practices Learn about and practice agile programming techniques. Graphic from www.plunge.in

A few resources The Agile Alliance: http://www.agilealliance.org/ Extreme Programming: http://www.extremeprogramming.org Scrum: http://www.controlchaos.com Dynamic Systems Development Model: http://www.dsdm.org

Questions? joan.starr@ucop.edu