We are starting a new project with a new customer. We have a legacy application
ID: 642310 • Letter: W
Question
We are starting a new project with a new customer.
We have a legacy application circa 1997 that we are planning on using to satisfy the customer's business requirements.
I have been on the fence as to whether this is really the right course both for our company, and for the customer.
I don't want to rewrite the app for no reason, but I feel that this older technology MFC, VC6 - has outlived its usefulness.
If I am honest with myself - I don't want to spend any more of my career on the legacy app either.
To that end, I have justified to myself that I should present to management a plan to develop a new, fresh solution based on current methodologies.
1) Am I wrong for doing thinking this is a good idea. 2) If not - how can I sell it to the business. There are definite advantages from the ongoing support perspective for the customer (more people with skill-sets in newer technologies - which in this case would probably be .NET with an XML or Lua based configuration)
I'll be happy to answer any follow-on questions to clarify my intent.
Explanation / Answer
Any project always has a number of possibilities which you have to decide between. Generally, companies are interested in mitigating the risk of a project (as this will determine how much money they are going to make in the long term).
By using "newer" technologies you may reduce risk in that generally newer technologies (newer than 1997 anyway!) tend to be better documented and supported in terms of their internet presence (e.g. Stackoverflow).
Your staff may be motivated by taking on a new and exciting project with good prospects of learning something interesting. (Who doesn't like something new?)
Customers tend to be impressed by "bling" as much as anyone else. If you can impress the customer while remaining under budget you will increase the prospect of repeat work.
Is there the possibility of reselling the new software to other customers
Conversely, if your legacy project has a good track record, fulfills the requirement and can be maintained by existing staff with no extra training, this may be a big hurdle to overcome. You may run into supportability issues:
Will this software run on the customer's environment?
Is there a problem hiring staff with the skills to maintain / develop this software? (Could be expensive)
"Technical debt" of legacy systems is also a risk - how easy is it to change, maintain and test the existing product?
You have to weigh up the pros and cons. As always, it will tend to be a management decision, but they will generally be swayed by monetary arguments.
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.