Why features fail?
Image by Pablo by Buffer

Why features fail?

Unclear requirements

Each product company follows a different path for adding new features. Some follow industry(customer) requirements and some rely heavily on their Research and Development division to come up with new feature. Any path you follow, it's very important to have clear understanding of the requirements. This issue is seen by software industry so many times but companies still do this mistake, again and again. Starting feature development from a single line or with some feature that someone read or has seen at competitor's product is not valid approach. Positive discussions are very important to clear the foggy picture; this may include listening to others and understanding their comments, suggestions before choosing a feature for development. All this means you need to have open mindset. Scope of the feature must be identified and various feasibility studies must be carried out before finalizing the feature.

Half-baked ideas

Often it happens that R&D team of the company is working on a prototype which has great potential in the market. However, the prototype developed by R&D team works best only in a specific environment or only with specific data set. If this kind of feature is taken in product development, it is certainly going to fail, no explanation needed! It's evident. Features which work in specific environment or with specific data must be built incrementally. Real life data should be collected that can be used by R&D team to validate how far the output deviates from the lab data set and accordingly should update the direction of the research.

Incorrect technical assessment

It's crucial to perform a technical assessment of the tools, language and the platform that will be chosen for the development of a feature. Insufficient technical assessment can turn into disastrous situation once the product development is started, development team will try to make it work by all means. Sometimes it also happens that development of a feature is almost complete but the core functionality is not working properly. But due to the deadlines, team tries to complete other work thinking that the small problem will be fixed later. Technical assessment has various aspects that should be considered, e.g. performance, scalability, available libraries, and licenses.

In such cases, the feature development may complete but if not done correctly, it would be detrimental to the company financially in terms of supporting the infrastructure or licenses. Or can be even worse - rewriting the entire feature!

First (Rush) to market strategy

Most startups, even the large companies, want to deliver the feature into market before their competitors. To catch the wave or to become thought leader in the domain, this is one of the important factors but can result in a misery if the feature development is not planned correctly. First to market is important strategy but the factor which supersedes it, is the quality, you don't want to be an example of how NOT to do a thing. Incremental update is an amazing way of delivering the features with great quality where features are built gradually using the real life data and validation done by the users.

If you could not meet the deadline with the quality, then be open and discuss with customer and tell them to hold on for some time. No customer wants a broken feature!

Inadequate planning

That part will not be used by the customer and we can mark it as P2 (Known issue)

If you ever hear this statement in the meeting then it's time to push the feature delivery to the next sprint/release. As mentioned in the earlier point, you do not want to become an example of how not to do certain thing. Making sure that the feature works correctly and is robust is very important and if it's not happening then push the feature to the next release. Contemplate the feature requirements with team, be skeptic about feature planning and try to locate the problem due to which quality was not achieved and most importantly embrace the failure. There are multiple points to think upon, and meeting with open minds will succeed to spot the exact root cause. Pushing the team to complete the feature delivery to tight deadlines will never achieve the quality. Keeping enough time for every part of the development life cycle is very important.

These are not the only reasons but are certainly the one's due to which features would fail.

Ashish Swami

Building cloud-native software | Go, JavaScript, Java

5 年

Agree with most of the points. Thanks for consolidating. Just a thought - Feature success may not always be directly proportional to the time spent in discussions and execution. More importantly, stakeholders - UX, dev and test engineers need to come up with "right questions" at "right time". That can potentially lead to a successful feature built in competitive deadlines!

回复
Bipin Patil

Senior Technical lead

5 年

Nice ! good article Sachin

回复

Nice article...Thanks for sharing

回复

要查看或添加评论,请登录

Sachin Gorade的更多文章

  • Common misunderstandings of Software Developers

    Common misunderstandings of Software Developers

    Software development is a complicated subject. There are many things we have to learn almost every day and it is…

    1 条评论
  • Integration tests vs Unit tests

    Integration tests vs Unit tests

    There are various types of testing which happens in the software development process. Unit testing, Integration…

    3 条评论
  • Why Interfaces are recommend by Spring?

    Why Interfaces are recommend by Spring?

    Spring framework has become the central part of every Java based micro-service application. Spring beans work with…

    4 条评论
  • What makes REST API really usable?

    What makes REST API really usable?

    REST APIs are the most critical part of every application today, be it a blog or an application which is running on…

    8 条评论
  • Micro-services and DRY (Don't repeat yourself)

    Micro-services and DRY (Don't repeat yourself)

    DRY is one of the basic principles of software which not only programmers but the DBA, technical writers and everyone…

  • Add real value, don't be workaholic!

    Add real value, don't be workaholic!

    Friday night, 10 pm and keyboard typing sound can be heard on the floor. The one who is creating that noise in the…

社区洞察

其他会员也浏览了