Adams Newest Project

I have started a new blog which has a decent chance of growing. It is actually not the blog topic and title I thought I would be starting, but it is the one I feel ready to do. The primary audience is Agilists, project managers, software developers, and leaders in roughly that order.

As my previous post indicated I have undertaken a move to change my career trajectory from one of a developer/architect to one of a project manager. With a technology and software background it became easy to see that the right path was via Agile methods. General agile feels like it is at a tipping point now, and the right time to get into the certification is before it tips over. I think it will tip over in a good way, getting harder to achieve and being worth more to the industry.

This is in contrast to what appears to have happened to the Certified Scrum Master (CSM) certification. It seems to have tipped the other direction. It became known as a bit of a rubber stamp certification. Simply spending money on a class resulted in the certification. The classes had little oversight and ranged from very good to barely worthwhile. In its defense The Scrum Alliance is working hard to reverse this perception and has been making it a harder certification to get in the last few years.

All of this is really just my musings on why I choose this certification path. The new blog is going to be much more. I am writing about implementing agile in the company I work for. I am writing about what agile is and why it matters. I will do book reviews. I will do course reviews. I hope to build a community of Agilists and those interested in what Agile can do for them. I am constantly learning and improving my knowledge base while building experience. The new blog is my outlet for that, and hopefully becomes a place others feed into as well.

You can see it over at OurAgileJourney.com. I have also set it up on Twitter and Facebook.

Introduction to the PMI Agile Certified Practitioner

I have been studying for this exam recently. I’ll be taking it within the next two weeks. Since it is a professional development experience that work is reimbursing for one of the things I can do for work is to share what I’ve learned through the class I took. Obviously I plan to get more involved with project management at work, but my manager wanted something more direct. Since I am also a toastmasters member I decided to write a speech that I would then present to the team. I have since decided that the presentation to the team will likely be more free-form, but the speech helped me frame an outline. I am now sharing the speech here, slightly modified since I delivered it.

PMI-ACP Intro Speech.

Many of us have heard the terms Agile and Scrum. If you have a similar background to me then you have heard them largely as a way to build software in a team environment. Established in 2011, PMI’s Agile Certified Practitioner certification looks beyond the confines of specific methodologies and past the boundaries of software projects and shows how they can benefit many types of projects while using any number of tools. I recently took an online course to prepare for the certification exam. While software development was the target for the majority of the course I took, there was an effort to point out that the methodology, and some specific tools and techniques, could apply to other types of projects.

The ACP certificate has roots in the Manifesto for Agile Software Development. That manifesto was created on 2001 by a diverse and high-profile group of people in technology at the time. They came up with it based on their own experiences with the tools and techniques they had developed and were using. Many of those tools and techniques are considered Agile today. The Agile Manifesto consists of a statement of why, four values, and a closing statement as follows:

We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:

 

Individuals and interactions over processes and tools

Working software over comprehensive documentation

Customer collaboration over contract negotiation

Responding to change over following a plan

 

That is, while there is value in the items on the right, we value the items on the left more.

The Agile Manifesto includes twelve principals of Agile Software which are not as large a part of the exam. They are relevant to a deeper understanding of Agile as they helped shape the final wording of the manifesto. I would encourage everyone here to look them up at AgileManifesto.Org when they have a chance.

Agile in and of itself is sometimes misunderstood to mean a specific way of working a project. In practice Agile is at a higher level of detail than that. Agile is a specific way to approach a project which has specific tools and techniques available for implementation. The Manifesto and Principles suggest a mindset for software development or project management. From that mindset we can then pick tools and techniques that support Agile while also fitting with our environment.

Another big confusion with Agile is that it lacks in planning. This is often a view held by people who have a lot of experience with classic project planning methods, such as Waterfall. In many classic planning methodologies the bulk of the planning work is up front, and after that change management practices are put in place to help prevent changes. For instance, as developers we have all probably heard of “Scope Creep” at one point or another. In a classic plan this is a big problem, with an Agile plan it is welcomed and manageable. This is due to Agile focusing on delivering the user value, not completing tasks. It acknowledges that what is known to be valuable changes over the course of a project. A good quick explanation of this difference is that classic project management is generally plan, plan, plan, work, work, work whereas Agile is generally plan, work, plan, work, plan, work.

This speaks directly to the basic Agile work structure which is highly cyclical in nature.

An agile software project will usually have a start where a high level view of the features to be built is set down. These features are ranked from day in an order of importance to the user. Minimum functionality is established, and milestones may include specific added functionality. These are generally where the big releases will be. Each release will provide value to the users in the form of completed features. The iterations that make up releases may also include completed value. An iteration does not mean there is no release for the user, just that it is not a Release. Features are broken down to the smallest level possible. They may be known as user stories or backlog items. No matter the name they should contain one specific feature/action that is valuable to the user. From these items tasks are created and estimated, again as small as possible. A difference here from classic project management to Agile is that the product owner is in charge of features and the development team is in charge of tasks. The project plan is continuously revisited with new features added and the rankings re-evaluated. This is because what was initially seen as important for the third release might be pushed back, pulled forward, or dropped entirely by the users as they start to actually use the product. At some point, either time or feature based, the project will close and switch to a maintenance mode.

There are many tools and techniques to help teams make this happen. Scrum and Extreme Programming are two methods with their own toolsets. Burn-Down charts and product backlog lists are tools common to many methods. Kanban uses a daily status board as a primary tool. There is nowhere near enough time to go over the possibilities. Suffice to say that it would be hard to not find some tools and techniques that work for any given team and environment.

We use some of the tools and techniques in our teams already. We do our work iteratively. We use daily status meetings. We allow the business to constantly provide input to the product. While we do not use any specific tool to its fullest we have, as most software development teams in the last decade, already taken on an Agile look and feel. A transition to full Agile might be less painful here than expected.

On our team specifically we are getting ready to launch a big project to upgrade the shipping application. It has not been directly identified as an agile project. That being said, it is shaping up already as a project with an agile flavor. As our team refines our process leading up to and during this project I hope to use what I’ve learned to help us deliver the most value to our users in the shortest time. I am also more than happy to share everything I’ve learned with the other teams in our group, working side by side with you if desired.

I know that was high-level and quick. I would like to take a moment to answer any questions anybody might have right now and remind you to feel free to contact any time for more information.

Career Development

As I look to the future of what I want to do as it relates to work I know that to get there I need to invest in myself in some way. Relying on my employer to do that investment only works as long as what I want to do lines up precisely with what the company wants or needs me to do. With that in mind I have decided to self-fund a new certification instead of trying to get the company to pay for it. Thus starts my road to a PMI-ACP certification. Ok, it really started a month and a half or so back, and kicked into high gear about a month ago.

Heather and I talked about it and decided that we were going to pay for this out of our own pockets. This wasn’t because there was no way to get reimbursement  but as a testament to the fact that this is the direction I feel like I need to go. However, my manager would have none of that. He told me not only to turn in the receipt for the class I was taking but that he also wanted me to specifically not pay for the exam in the next month. Instead he plans to have the company cover it via a purchase order.

The truth here is that I started this post about a week and a half ago, so I am going to keep it short and post this. Next I think I will post a little more about what exactly a PMI-ACP is, why I would like to move that direction, and how I think it will be used over the next year.