I promised in my last post “Cost Estimating Rewrite of Legacy Applications” that I would be producing a list of considerations for preparing estimates for legacy application rewrites – this is the post! The suggestions on my list are really slanted toward the independent developers who are apt to find themselves in many an unfamiliar territory.
- Is the industry using the application familiar to you or your development team?
- What is your / your teams experience with applications in the industry?
- Is ALL of the legacy app source code available?
- Can the legacy app “play nicely” with the new app — or must the new totally replace the existing immediately?
- What is the ratio of data entry and processing to reporting?
- Are there existing interfaces to external functionality for which no source or documentation is available?
- What are the time constraints for the project?
- What is the total size of source to be recreated? How many bytes? How many lines?
- Relational database or non-relational?
- How many tables involved?
- How about relationships between tables?
- What might you NOT know about?
- Is the new application to start fresh (empty data files), or will some data transfer/cleanup/modification be required?
Each of the above considerations (listed in no particular order by the way) are especially appropriate to the re-creation of an existing legacy application. I’m sure there are other considerations not listed, and I would welcome your comment and suggestions. Also, as with all software development whether a brand new app or rewrite of an existing app, all the considerations of application purpose, user experience, industry expectations and the myriad of other design considerations should be added to the considerations.
In a future post I will expand upon the above list with additional comment.