My question relates to UML and iterative processes such as RUP and the likes. As I understand one goes through several stages as one iteration is being realized (requirement gathering --> analysis --> design --> implementation --> testing).
During the stage of analysis, one has some sort of coarse-grained class and sequence diagrams. Then as one moves on to the design stage, those diagrams are being refined: attributes have types added, operations have return types and parameters added, associations are being turned into object-oriented-understandable relationships, etc.
Taking into account what precedes, my question is as follows:
-Do I work on the same diagrams with my UML tool and refine them (the pros of this are that I have no duplicates objects in my model and the cons are that if I realize I have to move back to analysis because something has changed the diagams are no longer available.)
-Or do I duplicate the diagrams as I move one stage further down the line (the pros of this are that I can easily go back to analysis but the cons are that I now have duplicate diagrams).
I would be very grateful if you would share your experience and advise me. What would be best practices?
Thanks in advance,