When is a software product dead?
All software products are designed with a particular shelf life in mind. This shelf life means the amount of time the software survives without being ported to a different technology.
We can say that a software product is dead when
1. We have to port the solution into a different technology to be usable.
2. We have to re-architect for a major feature upgrade to keep its usability.
3. There are no more users using the software.
4. The back end services if any, cannot be supported and will be retired.
when one or more than one of these happen, we can declare that our beloved software product has reached its end of life. All software products go through following common stages. These are not the stages in a software development life cycle which ends at maintenance.
1. Concept
2. Risk assessment
3. Technology stack assessment/design
4. Development
5. Testing
6. Deployment
7. Maintenance
8. Implementing new features + maintenance.
After a few iterations of the above the product reaches stability and can be considered to be mature. This is when the product is not actively developed on and only minor enhancements or bug fixes will be performed. Then after a little while the product becomes less useful and will require more effort to maintain it. Which is when it has to be identified as it reaching its end of life. At this stage a new one can be developed or this re-architected to give more shelf life.
It is required to identify and accept the end of life of the product and start planning for the stages after it.
Namaste
Nrupal