Implementing new required feature after software release

Posted by TiagoBrenck on Programmers See other posts from Programmers or by TiagoBrenck
Published on 2013-10-25T12:22:11Z Indexed on 2013/10/25 16:10 UTC
Read the original article Hit count: 256

Fake Scenario

There is a software that was released 1 year ago. The software is to map and register all kind of animals on our planet. When the software was released, the client only needed to know the scientific name of the animal, a flag if it is in risk of extinction and a scale of dangerous(that is a fake software and specification, I don't want to discuss this here).

There are already 100.000 animals records saved on DB.

New Feature

One year later, the client wants a new feature. It is really important to him to know the animals classes, and this is a required field. So he asks me to put a field to input the animal class, and this field is required. Or maybe where this animal was discovered.

Problem

I have already 100.000 recorded animals without a class or where it was discovered, but I need to insert a new column to storage this information and this column can't be null. I don't have a default value for this situation (there isn't a default animal class or where it was discovered). I don't want to keep the requirement rule only on my software, my DB must have this requirement too(I like to keep business rules on DB too).

What are the alternatives to solve this situation?

I am on a situation that this new feature cannot be previewed or reviewed for the existing records. The time already passed and I can't go back on time to get it

© Programmers or respective owner

Related posts about database-design

Related posts about Maintenance