The Infrastructure-First Fallacy

Early in the development of Upkeepr, we had a “lead developer” with a very command-and-control style that created some friction with the rest of our agile team.  This first conflict we had was around developing the core elements of the web application architecture.  For the first couple of sprints, this lead insisted on working on “application infrastructure” while the other devs built out some critical components like OAuth login and refresh tokens.

While the others demonstrated their work product at the end of each sprint, the lead dev failed to create even a demonstrable prototype, let alone a skeleton that the others could hang their work on. 

Now I know, as most experienced agilists do, the importance of creating a working product increment with every sprint.  So, I pushed the team to just deliver something.  It took several sprints of me talking with the lead and other Devs individually about the value of delivering a working increment and my dissatisfaction as a product owner (as entrepreneur, I was playing multiple roles) that we worked through to the point of having a basic working architecture.  But not too surprisingly, the application infrastructure built en-mass, and not delivered and tested incrementally, was riddled with technical problems and shortcomings – most of which had to be reworked for many future sprints. 

In the PSM II class we talked about the importance of team agreements, including the Definition of Done, which can evolve over time. The team needs to start with the fundamental Scrum values of transparency, inspection, and adaptation.  Creating a done product increment every sprint enables these.  Starting with Scrum fundamental values and principles to build team agreements is a much healthier and more effective way to address a friction point like lead developer hero behavior than I took just trying to coach them through “the right way to Scrum” without those fundamentals. 

If I could do it over again, I would take this approach:

  1. Start by sharing with the team the product vision AND the Scrum values and principles.  Ensure the whole team has buy-in before starting the first sprint.
  2. Work with the team to create an attainable sprint goal.
  3. Coach the team to create a rudimentary Definition of Done (DoD) that just has working code to meets the PBI acceptance criteria committed/merged to the main branch, compiling and running. 
  4. Push to create a working increment from the very first sprint and analyze the situation deeply if we fail to deliver value towards the Sprint goal.
  5. Defer creating more sophisticated DoD criteria like automated tests, CI and CD builds until later sprints.  Make the first couple of sprints about delivering something that works, preferably integrating everyone’s work product.
  6. Encourage the whole Dev team to evolve the application infrastructure towards a vision rather than building it up-front.

The goal in these early sprints should not be to build out as much of the product and DevOps infrastructure as possible, but to get the team working together and start a rhythm of delivering a working increment.  It’s counter to my entrepreneur’s urge to realize the product vision as quickly as possible. But, taking it slowly at first will avoid much dysfunction and frustration with all parties.

Return to Blogging

For the last couple of years, I’ve been running a startup to develop an app (Upkeepr) and learning many lessons along the way, which I’ve been thinking about sharing here. Also, I’ve immersed myself in Agile theory again by:

  • Taking the Professional Scrum Master PSM I and PSM II courses taught by Improving
  • Studying for the PSM assessments (and passing)
  • Reading
  • Applying to be a Professional Scrum Trainer (PST) and reflecting on my love of teaching

The two big books that have me thinking deeply at the moment are:

As has always been the case in my blogging, my intended audience is both the public at large who may be interested in my musings on Agility, product development, or technology, and my future self, when I’ve forgotten the clarity of thought I had at some moment or want to continue a train of thought with the next step. Plus, writing often forces me to frame my thoughts and structure ideas into something consumable by others. So maybe this will make me a better Agilist, leader, and entrepreneur along the way.

So, here goes!

AgileDotNet and the ALM Workshop are coming to Dallas March 1 & 2

Looking for great agile training with industry experts? Hunting questions to help your everyday work? Climbing the agile mountain and stuck? Not to worry, AgileDotNet is coming to Dallas on March 1st, 2013!

AgileDotNet Dallas 2013

AgileDotNet unites the worlds of .NET development and Agile methods, delivered by agilists passionate about providing superior content in unique settings.

This will be the fourth year of AgileDotNet, and the content will rock you! AgileDotNet brings developers, QA, scrum masters, project managers, and business leaders with all levels of experience to empowering and unique sessions across four tracks. You’ll return to work with the tools, motivation, and support to be more agile – as an individual and as part of a team.

#ADN13 is different from those past. Despite maintaining a high bar for great workshops and discussions, we realized there was a common theme among many of the most steadfast agile coaches and leaders trying to bring change within their enterprise.  The organizations are difficult to change.  Budgets, risks, unfamiliar territory, and planning are all excuses that point to one thing. The enterprise has trust issues.

At #ADN13, we will break the trust barrier down. With a wrecking ball. You will learn from passionate field-tested agilists how to establish trust amongst the team, with management, and throughout the organization as a whole. Regardless of the role you play.

And as if the conference is not cool enough already with agile experts, Scrum experts, and FOOD TRUCKS! Improving decided to up the game another notch. After the conference on Friday, there is a Saturday March 2nd workshop at the Improving Offices. This is just crazy!

What? You haven’t registered? Quick, jump over to the registration site, and

Register Now!

Improving Enterprises is pleased to offer an Agile ALM with Microsoft Team Foundation Server Workshop. In this hands-on, mentored workshop, we will dive into how Visual Studio supports the Development process, the Quality Assurance process, and the Project Management process. We will have a full TFS environment, interactive labs, and instructors on hand for questions.

We will be breaking the day into the three segments.  Each section will include a free form section to bring your problems to the ALM Team at Improving and get some much needed answers.

  • Development Lifecycle Management is all about getting a streamlined routine that doesn’t hinder velocity and contributes to quality code. We will guide through developing, developer-testing, and deploying an application.
  • Agile Project Management can be quite challenging, and managing multiple projects even more so. We will dive into how to set and measure effective KPIs, automate reporting, and manage work items in an effective, logical, and visible way.
  • Quality Assurance Management is encapsulated in an agile environment able to effectively and quickly report on the status of the product. We will walk through defining test cases, writing test steps, recording automation, and enabling regression testing.
      Join us on

March 2nd

    and discover best practices around Agile ALM using Microsoft® Visual Studio and TFS. And don’t forget to bring your real-world problems for our on-site mentors!

Hope to see you there!

Register Now!

AgileDotNet Dallas 2012

Improving ADN-D 2012is hosting our third annual AgileDotNet conference in Dallas on Friday February 17th. It will be a day of presentations and discussion focused on agile software development on the Microsoft stack, ALM tools, and the leadership and cultural issues involved in agile IT.  

As the website says, AgileDotNet Dallas will be hosted at the Addison Convention Center, which is right near the Addison Circle and the big blue sculpture art thing.  There are topics for everyone, weather you’re new to agile concepts or an experienced developer.  For you PMI types, there are 7 PDUs (personal development units) up for grabs to help maintain your certification.  The price is only $50 per person, which helps cover the cost of the venue and the food.  Lunch is served and there’s a panel discussion with experienced leaders in the industry answering your questions.  Come check it out!