-------------------------- Questions and Notes -------------------------- 1. How do you prioritize the overall work? Have to imagine many resources would be on cross projects. 4. How do you manage and plan human resources (especially when they are limited and you need them for the next project)? Prioritization Existing services and systems (i.e. no new projects, well actually, no projects) i.e. "develop at the same pace users can articulate need" - Jim Highsmith User stories (functional, technical AND operational) derived from current use i.e. users cannot describe problems they do not have. Simplification/abstraction to establish what can be done e.g. As a math professor, I want to capture my lectures so I can give them to students after class, or e.g. As a math professor, I want to capture problem solutions, so students can watch them later (simple), or e.g. As a professor, I want to capture what I write on the board, so I can distribute them (abstract). Story points i.e. the relative complexity (thus effort, time, knowledge, skill, etc.) of completing each story Velocity i.e. the number of points a unit (department, team, individual) can achieve in a set time. e.g. one staff member may be better at one type of task than another. That difference will be reflected in the points assigned. backlog (identify velocity, select stories) i.e. each service and system has it's own backlog and velocity Dealing with resource allocation across projects (A bit of clarification: Resources = people or technologies?) If people: Two fundamental problems 1. An assumption that we need to move people around to staff projects, and 2. Number of simultaneous projects. First: Traditional approach = project focused, Agile approach = team focus Self-Organizing i.e. both those who participate, and their roles Consistency i.e. once a team is established for a service or system, it is fixed (perhaps "assigned") e.g. In Agile resources are fixed throughout the duration of the project and features are variable - Joe Ocampo e.g. this can be useful, like a barometer, for identifying needs/changes for future staffing e.g. PO, TO, SM, Developers (end-users and technical staff) Affirmation/Prioritization i.e. lack of staff (PO, TO, BO, developers) signifies local deficit (thus risk to project) i.e. inability to acquire staff signifies lack of administrative buy-in (thus risk to the project) Second: Too many projects Measure Velocity i.e. does velocity provide for the pace of development desired? e.g. the department has velocity, team has velocity and the developers have velocity i.e. this does not mean "work harder" it means invest in more resources. e.g. "requires the political strength to say, 'I'm sorry but we are fully allocated and we cannot support your project right now. We will queue it up for the next available team.'" - Roland Cuellar Other "resources" (technology dependencies) Two types of dependencies: those that depend on your service/system and those that your service/system depends on. Simply, these become technical requirements expressed as user stories Emergent versus Planned i.e. Top-down: fixed and thus planned - implements new service and systems as management identifies needs. e.g. all requirements must be in place in order to complete the project. i.e. Bottom-up: evolving and thus emergent - implements new services and systems as users interact with the current environment and identify needs e.g. some requirements will be in place throughout the lifetime of the service/system As more details are discovered about the project from "vision" down to "implementation," costs, time, resources grow. ----------------------------------------------------------------------- 2. What influences made you go this method? Was there a model you followed? Life as a software developer Dissatisfaction with current methods (biased by experiences with software development) Successes in approach Principles, not processes "It is not possible to exactly define Agile Methods. They promote practices and principles that reflect an agile sensibility, lightness, communication, self-directed teams, [actions] over documenting, and more. - Craig Larman, i.e. this sounds touch-feely ----------------------------------------------------------------------- 3. How did you start introducing the model? How did staff react? Touchy-feely: Incremental Development, Emergent Design, Iteration, Frequent "Testing", Bottom-up, Collaboration, Evidence Based, No Heroes, Honesty, Just Enough, Openness, Transparency, Maturity No Five-Year Plan, No Advisory Committees, No Email: How do I still have a job? "develop at the same pace users can articulate need" implies currently supported services and systems Identify services and systems i.e. deployed enterprise wiki i.e. discussion forums replaced emails i.e. all requests submitted as tickets (evolved to user stories) e.g. 1st year 478 pages, 194 users (VP Business and Finance, 73; Coordinator Online Learning, 58; Hospitality Management, Chair B&P, 31; Director, Student Housing, 29; Campus Librarian, 19; Professor, Ecology, 12; Director, College Association, 12) Created Operational Budget e.g. what did we buy, who ordered it? Identification of Product Owners e.g. how do purchases align with functions? Definition of SLA e.g. what applications, hardware, operations are undertaken (nouns vs. verbs)? Identification of "developers" e.g. who submitted tickets? Staff Reactions "Touchy feely" (Staff) "Just make a decision" (Staff) "Spin" (Staff) "Whip them into shape" (Admin) "Leadership (define Tech Master plan/Assign resources/determine priorities)" (Admin) "Risky" (Admin) "If the crowd determines direction, what is my job?" (Admin & Staff) Adoption e.g. polite indifference, flame wars, trust Validation e.g. &1,336,293 (2007-2008) to $908,567 [-$427,726] (2008-2009) in IT spending e.g. 2007-08: Alumni Donor Analytics; Blogging; Network Replacement; Emergency Notification; Enterprise Wiki; iTunesU; LMS Migration; Online International Programs; Online Tutoring; Network Monitoring; Point of Sale Upgrade; Print Templates; Redundant Power; Retention Analytics; Server Virtualization; SIS/LMS Integration; Website Redesign; Wireless Upgrade e.g. 2008-09: Computer Lab Consolidation; Data Center Rebuild; Disaster Recovery; Document Management; E-commerce; E-reporting; E-portfolio; Help Desk Upgrade; Housing Management; Hosting Services; Lecture Annotation; LMS Upgrade; Online Syllabus; Oracle Migration; Public Address; Security Cameras; SIS/Bookstore Integration; Thin Clients; Unified Messaging; VoIP ----------------------------------------------------------------------- 5. How do you determine when you are "done" if the requirements are gathered as you go? In other words, how would you know you have "scope creep" and/or how do you limit it? This is a fundamental diference e.g. we do not do projects i.e. building on existing work is lower risk e.g. we accept "scope creep" i.e. only when users can see something can they intelligently assess it Work is managed through the product back-log and Product Owners ----------------------------------------------------------------------- 6. Can your users keep asking for more and more changes/features/enhancements without any kind of end in sight or due date? Yes - don't they do that now. What is the definition of a "project" e.g. A project is a temporary endeavor with a defined beginning and end (usually time-constrained, and often constrained by funding or deliverables), undertaken to meet unique goals and objectives, typically to bring about beneficial change or added value. - Wikipedia, Project Management e.g. A project, by definition, is a temporary activity with a starting date, specific goals and conditions, defined responsibilities, a budget, a planning, a fixed end date and multiple parties involved. -SoftwareProjects.org e.g. A project is a temporary (a defined beginning and end in time, and therefore defined scope and resources), group activity designed to produce a unique product (in that it is not a routine operation), service or result. - PMI What is the definition of success: on time, on budget, meets requirements? i.e. Agile success is business value, and often value changes throughout the life of the service and system. ----------------------------------------------------------------------- More information... Reading: Agile and Iterative Development: A Manager's Guide by Craig Larman (Aug 21, 2003) Agile Project Management: Creating Innovative Products (2nd Edition) by James A. Highsmith (Jul 20, 2009) The Wisdom of Crowds by James Surowiecki (Aug 16, 2005) Wikinomics: How Mass Collaboration Changes Everything by Don Tapscott and Anthony D. Williams (Sep 28, 2010) Groups: Agile Alliance (http://www.agilealliance.org/) Agile Manifesto (http://agilemanifesto.org/) Agile New England (http://www.agilenewengland.org/) ScrumU (http://scrumu.org/) The Cutter Consortium (http://www.cutter.com/index.html) People to follow: Scott Ambler Alistair Cockburn Mike Cohn Jim Highsmith Craig Larman Andrew McAfee Ken Schwaber