Archive

Archive for the ‘Festival’ Category

Off the Grid

June 29th, 2009

That’s my status now. Although it’s not really true. My wife and I are keeping our home and someone will be sitting in it for us. Yeah, we might get out somewhere without any public utilities but it won’t be for long in duration and certainly not permanent.

It’s summer time! And the living is easy. Even the phone is shut off for days in a row. We’ve been adventuring around, having just come back from camp. This week we recharge and gear up for a music festival in the mountains over the 4th of July. Immediately following, we’ll be traveling down to party with friends in a multi-day wedding near Sao Paulo, Brazil. We’ll stick around and check out the area, but keep it simple and not try and take in it all for the short time we have. And after that, it’s time to do some serious hanging out in the Colorado area.

None of this has anything to do with Agile. The URL is my name. Regardless of the blog’s title, guess what it’s about? During this time of travel, tweets and posts will be much less frequent, if at all. There’s an intention here, to refocus this as a reflection of what is going on with and around me, that I might find interesting to post. Not always my experiences. Yet current, what is true right now, for me in this moment. When I’m working, there may be more of a slant to that. There might not. We’ll see what comes up. I’m working on becoming one integrated Aaron. Let me know what you may think of this approach.

  • Share/Bookmark

Aaron Festival, Travel

Agile Team Members – Roles and Responsibilities

August 12th, 2008

The following was written by myself and edited by my manager to help define roles in our group. Modifications have consisted of removing any reference to the specific group. This is largely influenced in the writing by David Anderson’s book Agile Management. Most of the wording for the roles of Product Owner and Scrum Master come from the Scrum Alliance, with specific cites on the role’s title. Influences in the editing have a decidedly more traditional feel to the statements, and leaves one feeling they are behind the steering wheel of some analogous car.

Agile Team Members – Roles & Responsibilities

The key to successful team building is creating unity while celebrating the individuality of each team member => Common purpose supported by unique contributions

  • Team is held responsible for a release, individuals are held accountable to their commitments
  • Each team member has one or more roles on a project
  • When a team member has more than one role on a project, potential conflicts may occur. Always think checks & balances before signing up for multiple roles

Program/Release/Project TEAMS

Program/Release/Project CORE Team consists of:

  • Product Owner (aka Product Manager)
  • Engineering Manager
  • Architect
  • QA Manager
  • Program Manager (aka Project Manager, Scrum Master)

Representing multiple TEAMS as a Core Team member

  • Cannot attend multiple stand ups
    1. Scrum team too large and being split
    2. New teams being formed
    3. One core team member on multiple Scrum teams
  • Stagger daily stand ups
  • Attend one stand up and send a proxy to the other

Scrum Of Scrums

  • Starts ON TIME
  • Attendees
    1. Core team members
    2. VP of the group
    3. All other VP direct reports
  • Scrum Master is the Director of Program Management
  • Product Owner is the Director of Product Management
  • Program or Project Manager (Scrum Master) for the project answers the following
    1. What was accomplished on the project yesterday?
    2. What is happening today on the project?
    3. What is blocking the project from progressing to deployment?
    4. What are other projects with which this one is being integrated?
  • A proxy of another core team member who attended the daily stand up can answer if needed
  • Product Owner provides business and domain answers for clarification of project direction
  • Side conversations are parked and follow-up meetings arranged
  • Scrum Master records all blockers and follow-up arrangements
  • Scrum Master lists out existing blockers and follow-ups made
  • VP prioritizes blockers
  • NOTE: Every attempt is made to resolve all blockers in the day they are raised.

Representing multiple ROLES in a Core Team

A core team member might have for example, both the roles of Product Manager and Architect; or a team member may be Scrum Master and Engineering Manager. In some cases, there can be a potential conflict of interest. In the first case, this could be a person with great, wide vision for a product. In the latter, this is a coalescing of authority and responsibility. The person responsible for protecting the team from interrupts with outside work now has great influence to interrupt someone working. Please use due diligence in volunteering for, or assigning people, multiple roles.

Scrum Team consists of:

  • Scrum Master role – usually Project or Program Manager but can be anyone on the team
  • Product Owner role – usually Product Manager but can be anyone on the team
  • The Team of 7 people, +/- 2, Responsible for Task Completion :: Development, QA, Architect, OPS, UED Engineers, etc
  • Core Team

DESCRIPTION of Roles & Responsibilities

Product Manager aka Product Owner

Role definition

  • “CEO” of the product
  • Vertical – focus on long and short term product vision of a product line
  • Represents customer’s interest
  • Represents the product to the outside world (Customer)

Responsibilities

  • Responsible for market, business case, and competitive analysis
  • Responsible for long and short term product vision
  • Responsible for ROI and Net Profit
  • Prioritizes features for releases based upon expected ROI
  • Writes Acceptance Criteria
  • Writes user stories
  • Makes tradeoff decisions between scope(value in Expected ROI) and schedule(higher operating expense in longer release cycles)

Challenges

  1. Resisting the temptation to “manage” the team. The team may not self-organize in the way you would expect it to. This is especially challenging if some team members request your intervention with issues the team should sort out for itself.
  2. Resisting the temptation to add more work
  3. Being willing to make hard choices during a planning meeting.
  4. Balancing the interests of competing stakeholders.

Program Manager

Program Managers can perform both Project & Program Manager roles. On a Scrum team, Program Managers usually perform both Program Manager & Scrum Master roles unless another team member is assigned to be Scrum Master.

Role definition

  • Horizontal (Across the product lines, projects, x-functional teams)
  • A rational voice to drive the cross-functional core team to solve problems and make decisions
  • Impartial – not biased to Product, nor to Engineering, nor any other group

Responsibilities

Program Management responsibilities

  • Manages planning process
  • Manages overall program schedule
  • Drives multiple releases/projects
  • Facilitates Release Planning & Retrospective
  • Provides access to tools and people
  • Owns all action items for the project until he/she finds the right owner
  • Owns reporting on project status, to all directions
  • Coordinates other release support
  • Responsible for risk assessment & mitigation
  • The Role is a peer to the Product Manager and the Engineering Manager on the release/project
  • Educates/Enforces agreed upon processes & methodology rules
  • Educates/Enforces roles and responsibilities

Scrum Master responsibilities

  • Manages 1 sprint at a time
  • Facilitates Sprint Planning, Review & Retrospective
  • Finds and works to remove roadblocks
  • Helps to motivate the team and keep them excited
  • Protects team from outside distractions
  • Facilitates communication between roles for every aspect of the project
  • Responsible for keeping release/project information consolidated, organized and up to date
  • Drives the cross-functional team at all levels
  • Responsible for throughput (team velocity)
  • Drives the execution of sprint items

Architect

Role definition

  • Leads the technical direction of overall system

Responsibilities

  • Responsible for end-to-end cross functional system design and communication
  • Works with the PM to group features based upon the Architectural Elements which support them, an influence on priorities
  • Tests Architectural Elements with executable and testable design (abstract interfaces, aka the contract)
  • Facilitates technical decision; incorporates feedback and emergent patterns from the team back in to the overall design
  • Produces alternate Design Concepts & detailed approach
  • Ensures the Design goals – Performance, Modularity, Reliability, Maintainability, Reusability, Internationalization and Accessibility – are met
  • Ensures technical cohesion and helps write the technical contract in interfaces and other abstract objects and data entities
  • Leads design review & provides feedback

Engineering Manager

Role definition

  • Ensures the successful completion of Work-in-progress (WIP)
  • Understands the process of product creation

Responsibilities

  • Responsible for rate of production and lead time (what each engineer needs to fulfill their commitment)
  • Responsible for initial high level sizing
  • Works with the architect and the team to prove technical integrity
  • Responsible for conducting forward leaning technology investigations (spikes)
  • Negotiating with architect on technical approaches
  • Removes most bottlenecks
  • Enforces engineering best practices
  • Ensures motivation of their team
  • Assists career development of team members
  • Conducts focals

Product Developer

Role definition

  • Responsible for creation of product

Responsibilities

  • Estimates size of backlog items
  • Translation of backlog items into engineering design and logical units of work (tasks)
  • Evaluation of technical feasibility
  • Implementation of backlog items
  • Writes unit tests first to the contract of the interface and other abstract classes
  • Writes and verifies code which adheres to the acceptance criteria
  • Application of product development best practices

QA

Role definition

  • Prevents defects from entering the system, as opposed to finding them at the end
  • Facilitates building integrity into the software product and development process

Responsibilities

  • Writes test plans which enforce the acceptance criteria of features
  • Keeps all test plans and cases updated to changing requirements
  • Continually integrates the code base with automated builds and functional-level regression tests
  • Notifies when production is blocked due to errors in development
  • Measuring Quality
  • Defining Quality
  • Improving Quality
  • Enforces QA Best Practices
  • Provides visibility into end-to-end product quality
  • Owns QA Health status of releases/projects in SM dashboard

UED

Role definition

  • Integrating the human factor in to features

Responsibilities

  • Responsible for overall UI consistency across interaction models and visual styles
  • Upfront user research (to help inform features/direction)
  • Interaction Design specs (wireframes, user flows) which conform to acceptance criteria of the features
  • Works with the PM on analysis of features conform to user’s needs and provide a consistent experience
  • Ensures features are implemented as designed, and design modified to reflect implemented features
  • Visual Design
  • Prototyping
  • Usability testing

Operations

Role definition

  • Keep products running in production

Responsibilities

  • Design hardware configurations for BCP, security, monitoring, availability during product design stage
  • Responsible for getting the required hardware using the “HRC” process
  • Set up staging, production environments (and in some cases the QA environment)
  • Post production monitoring, and troubleshooting of product/services
  • Owns OPS Health Status of releases/projects in SM dashboard

Role comparisons

Program Manager vs. Product Manager Comparison

  • Product Manager: owns the decisions on the project tradeoffs
  • Program Manager: owns the execution of the project based on those tradeoffs
  • Product Manager: owns the product vision: overall and per-project
  • Program Manager: owns the execution of the vision for each project

Advantages to PMs and EMs having a Program Mgr on a project

  • Both are freed from doing all the program/project work!
  • The Product Managers can focus on their true mission:
    • finding the most value in the smallest scope (maximizing ROI)
  • The Engineering Managers can focus on their area of expertise:
    • developing the best engineering design
    • solving technical issues
    • building products in accordance w/ best eng. practices
    • improving performance and stability
  • Share/Bookmark

Aaron Agile, Festival, List, Scrum, Yahoo!

Let’s Party Like Spacemen

April 18th, 2008

The title was my status on IM until Saturday April 12, which was Yuri’s Night. Erica and I went to the best local place to celebrate, the NASA Ames Research Center. My one regret is that we did not go as early as possible and stay the whole time. Attending an early morning motorcycle Basic RiderCourse prevented that.

One of the best installations for me was that of the NASA Ames Intelligent Robotics Group. One of the scientists had made steel-caged AI balls of about 2.5 feet in diameter. In the middle on a perpendicular axis was a motor. Lights and cameras mounted on the motor as well. Their directive is to find their position as accurately as possible using on board GPS. It allows them to know the location of each other. The system can be overridden with a radio remote, or a program. The inventor was telling us about the choreograph
dances they were doing out in Black Rock City. Many of the inventions looked like they would be at home out there.

The one thing which completely blew me away was a 3D mapping application lecture. It combined data at the lowest level of the earth’s terrain, and added on more layers so that the speaker was able to zoom back from the top of Everest to 2 billion light years out. It showed the constellations above us, and then zoomed back to show the distance of those stars as lines to the earth, like spikes going in every direction. He lit up a sphere of how far radio signals have traveled since the 1930s. Highlighting other solar systems, nebulae, galaxies, the microwave field, and on back. Insane patterns with a fractal image sort of look to them. I want to find the DVD but don’t even know what to search for.

  • Share/Bookmark

Aaron Festival

The Man Burned Last Night

August 29th, 2007

A person known to the Billboard Liberation Front, Paul Addis, was arrested for lighting the man last night. The man burned after the lunar eclipse last night. The charred remains have been removed from the foundation and a new man will be up in time for the scheduled burn on Saturday.

With this year’s theme of the Green Man, it seems appropriate that this is the year someone pulled off the age-old joke of igniting it early. An outlaw working alone, Paul pulled off something which will be remembered for some time. At least he did it early enough in the week to have it rebuilt. This year, people at the event get a 2-for-1 deal with the burn.

  • Share/Bookmark

Aaron Festival