Development Practices
Himanshu Dhiman
November 25, 2017

Every product goes through a certain process involving multiple stages while its development phase. Software products are developed going through multiple cycles of Requirements, Design, Development, Testing and Releases and this whole cycle is known as a Software Development Life Cycle (SDLC). But here the question arises that only following an SDLC can give you a good product?

Currently, I am working on ‘CodeTrek‘, and I have been working on it since it kept its roots in the outer world for ColoredCow. Following the SDLC to develop it was an obvious concern. The idea of CodeTrek was evolving each day, requirements were increasing, new designs were getting proposed and the development started to pace up. During the initial phase of CodeTrek development, we followed our WordPress release management plan. Later, some changes in the release plans were applied as needed to deliver the urgent end to end deliveries. We faced some ups and downs while implementing the changes, but because of the contribution and support of the whole team, it helped us to take all challenges in a positive direction. Somewhere, launching our own product also gave us an opportunity to improve our development models to develop a software in a more efficient manner. We started utilizing GitHub and Slack channel more for communication, so that the whole team remain updated with the process of execution, and know, that what is been delivered and what is coming in next release for the product. Keeping the team updated, was our motivation because everyone always remains excited to know ‘Whats next’ in the product.

As the releases started getting more better, I personally felt that we are taking the product and the process in a right direction, in a right way which leads to increase the whole team’s confidence. Today, what lead us to deliver an effective product in the market was an efficient structure, communication and immense support of the whole team. In my opinion following the SDLC is not the only constraint, but having a supportive environment, mindful team, a model keeping SDLC as a platform, and improving that model is something, towards which we focus more. Now, we have a more stable and efficient structure to develop a software and more mature ways to handle the complexities during the development, and since we always focus towards learning, we will be improving more.