What is the right workflow for software development ?
Photo by Boudewijn Huysmans on Unsplash

What is the right workflow for software development ?

Each company that develop an IT product operates in a different problem domain, but I think we can mention 4 steps that are present in each workflow: feature request, development, deployment/delivery and quality assurance.

Feature request can come directly from your software end user or from the client who is the software owner. Is Your workflow and project management tool includes design phase and how it is connected with development step ?

Feature Requests

Do not paste client or end user feature requests one-to-one, what is needed must be digested by You and reformulated within a dedicated document which is called software specification. One thing that never fail and is stronger than thousands words is business diagram, a visual representation of feature logic. Because at the end, the most time consuming part is when You deliver and the work is not accepted, if You haven't provided right structure for feature You will be not able to proof that what You did is right. In general it doesn't goes about who has right but about being able to hear what Your client needs.

Development

The standard unit of work has frame of 2 weeks and we call it sprint (time-boxed period when a team works to complete a set amount of work), to manage that I am using software called jira, one of the most powerful features it has, is a possibility to define Your own workflow with transitions between task states.

Article content
jira workflow

By default jira has todo status that represents a task that needs to be done, but I think it is missing the essential part which is preparations, and let's not confuse it with discovery. Discovery phase happens in step one(feature request), in step two(development) people are assigned with tasks which needs to cover functional requirements, we can say that they prepare a task that will cover implementation of feature request.

Preparation and approval phase is specially important when working on software new features or complex business logic, most of the time task needs to be reviewed by architect or project owner. Would it be possible for project owner to review such a task ? That's interesting question and it refers to term called conceptual integrity, in short it indicates and show if software concept is radiating through all layers of software and development/releasing cycle.

Do You think it is possible for no coder to look on any task and understand what is the goal of the task ? Answer is definitely yes if the team is using the same vocabulary across the whole project.

Insights

Having well structured workflow helps not only in management of remote team or making people spending less time on figuring out why task is blocked. It allows You to start analyzing each step of Your process and identifying bottlenecks. For example, jira is storing an information about transition between task statuses, You could measure if adding preparation phase in Your workflow will reduce appearance of commented status which indicate that client is not happy with delivered work.

You workflow is everything, and analyzing it will help You to discover behaviors and repetitive patterns that make Your workflow less efficient.


To view or add a comment, sign in

More articles by Igor Miazek

Others also viewed

Explore content categories