When to rewrite a code base from scratch

后端 未结 18 643
悲哀的现实
悲哀的现实 2020-12-12 10:35

I think back to Joel Spolsky\'s article about never rewriting code from scratch. To sum up his argument: The code doesn\'t get rusty, and while it may not look pretty afte

18条回答
  •  谎友^
    谎友^ (楼主)
    2020-12-12 10:45

    I have been part of a small dedicated team that has rewritten code from scratch including reverse engineering business rules of the earlier code. The original application was web service written in C++ (with regular crashes and severe memory leaks) and a ASP.Net 1.0 web application and the replacement was a C# 2.0 asmx based web service and an ASP.Net 2.0 web application with Ajax. That said some of the things the team did and explained to management

    1. We supported the existing code base in production until the new code was ready.
    2. The management agreed that the rewrite (first release) would introduce no new features but just implement existing features. We added only 1-2 new features at the end.
    3. The small team was comprised of very experienced developers with excellent understand ability and cooperation.
    4. It was harder to get C++ talent in the organisation and C# was seen as a better alternative for future maintenance.
    5. We agreed to an aggressive timeframe but at the same time were confident and highly motivated to work in C# 2.0, ASP.Net 2.0 etc.
    6. We had a team leader to shield us from upper management and we followed scrum like process.

    The project was highly successful. It was very stable and much better performing. Later it was easier to add new features. So I believe that code rewrite can be successfully done given right resource and circumstances.

提交回复
热议问题