MediaPublishingMoving Beyond Code-and-Fix Development

Moving Beyond Code-and-Fix Development

Taking a "code-and-fix" approach to development is quite common in small companies - you see it all the time in start-ups. And you can understand why. It's fast and flexible, and can work very well when there's just a few people on the development team. But in a larger company, it can lead to costly errors and a product that ships two months late. Aaron's got some tips that can help you transition out of a code-and-fix approach and into one that will work better for you.

“Code-and-fix” development is the most common form of development for companies with fewer than 20 employees and is therefore very common in start-ups. The phrase describes a process in which the feature set for a product is developed at the same time that the engineering team is coding it. It’s quite flexible and often works well when there are three or fewer stakeholders (typically the developer, director of marketing, and the CEO).

Once your company grows to the point where more than a handful of people are involved in the definition and development of a product, code-and-fix development leads to costly communication problems and produces a product that ships two months late with a user interface that only the developer can navigate.

Transitioning out of a code-and-fix development process, however, can be difficult. The stakeholders are typically attached to the flexibility that the style provides and are not thrilled about the prospects of adding “bureaucracy” to the process. You may also find that the management team has grown fond of talking shop with developers and then casually dropping newly acquired tech buzzwords between rounds of golf with fellow M.B.A. buddies.

To make this transition effectively, you should focus your efforts on developing clear lines of communication among all the parties involved. This will create the level of trust that is necessary as you start to expand the development process.

Here are some initial steps to consider as you develop clear lines of communication around your development process.

  1. Identify the Stakeholders

    A stakeholder is anyone in the organization who is affected by the product or has an opinion about how it should be built. In a small company, this could easily be the entire staff. As the product manager, you have the responsibility to ensure that all stakeholders are up to date and that they understand their individual responsibilities regarding the development of the product. This can usually be covered by broadcasting minutes from your weekly core product team meeting and by regular, informal one-on-one chats.

  2. Create a Core Product Team

    The core product team should consist of anyone who spends at least a quarter of his or her week working on the product. Typically, the team consists of a handful of tech folks (application, database, and QA engineers), a user interface designer, a marketing manager, a member of the sales team, and a customer service representative. This mix should give you a well-rounded set of perspectives (and fashion styles) to keep the meetings interesting.

    To be effective, a product team must be empowered to make decisions about the feature set. The draft of the initial feature set and any changes should be defined and approved by the team. This creates enough of a barrier to ensure that changes to the feature set and to the schedule are well thought out. It also increases buy-in from the people who are most affected by the changes, preventing morale problems.

    During the definition phase of a project, your core team may need to meet daily to work through all the requirements and tradeoffs. Once development starts, you should be able to meet weekly for less than an hour. These shorter meetings can be used to check on the schedule, discuss changes, and examine problems as they arise.

  3. Manage Management

    Most management teams think that the product team is the cause when a launch date slips. The product team can cause a late product launch by creating an unrealistic schedule, writing buggy code, not defining the product well from the start, etc., but this has accounted for roughly 25 percent of slipped dates that I have witnessed. The other 75 percent of slipped dates are caused by a management team that sets the launch date without getting input from the product team or changes the objective of the product midstream.

    It is hard to combat this problem, especially in a small company, but you can start to address it by actively incorporating the management team into the process. If your company is small enough, have your product team give presentations to the executive team regularly, sharing features, the current status, and problems as the product evolves. Since management teams typically have the attention span and reading skills of third-graders, be sure to keep your presentation short and visual (for example, by using graphs, mockups, etc.).

  4. Make Time for a Postmortem

    A postmortem is a meeting of the core product team after the product launch. In this meeting, the group reflects on the development process, identifying what worked and opportunities for improving future projects. Effective processes are organic and unique to an organization. The insight that you get from talking openly as a team about the successes and failures of your existing process are infinitely more helpful than academic articles (like the one you just finished reading).

Related Articles

Five ad tech upstarts to keep an eye on

AI Five ad tech upstarts to keep an eye on

8m Al Roberts
The State of Media Transformation

Digital Transformation The State of Media Transformation

8m Chris Camps
5G: The next great media disruption

Media 5G: The next great media disruption

8m Luke Richards
How brand advertisers are fighting ad fraud

Blockchain How brand advertisers are fighting ad fraud

10m Al Roberts
How QVC is managing to survive and thrive in the Amazon era

Ecommerce How QVC is managing to survive and thrive in the Amazon era

11m Al Roberts
What is intelligent content, and how can it future-proof your content marketing?

Content Marketing What is intelligent content, and how can it future-proof your content marketing?

11m Rebecca Sentance
How brands can integrate live video into their marketing strategy

Content Marketing How brands can integrate live video into their marketing strategy

12m Rebecca Sentance
Facebook goes after clickbait headlines - five tips to maintain reach

Content Marketing Facebook goes after clickbait headlines - five tips to maintain reach

12m Tereza Litsa