Hi Akanksha,
You are right generally the data in cube will be huge and is business critical and cannot be deleted.
We can add a new field by following the normal procedure.
However if the business wants the history data to be populated/filled, then we need to do some additional development.
One way is to create a self-loop (transformation from the cube to the cube itself) ZCUBE -> ZCUBE and then write a lookup to populate the new field history data. In this case it is necessary that the new field data is stored in another DSO/master etc from where we can do a lookup and populate the data.
This way the data is not deleted, the existing objects are not impacted, but we will have to create a new transformation. Also make sure to activate all the transformations to and from the cube when you make the changes and add the new field.
Hope this helps,
- Jordan