A few days ago someone made me some questions about the software developmente process. In this context, there was a question that caught my attention, was this: is there any change after or during the development phase? (I think that question it points to the phases of analysis and design, then, the question will be more precise in this way: Is there any change for the artifacts built in the analysis/design phase, DURING the development phase?)
In my personal, and self-effacing opinion, AFTER the development phase should not exist any change, because the next thing to do is the deployment phase, and this deployment phase drives us to an production enviroment, where the client can try and work with the product. But, what about DURING the development phase? Here is my thought:
The software development process SHOULD NOT BE like disjoint phases, this is the reason and the main stream in the iteratives approaches/methodologies. I mean, in the development stage/phase we can need iterate to analysis or design stage/phase to address new issues during system development.
Personally, I don't believe in the perfect analysis and design for a software, and this is one of the weakest (perhaps the weaker) point of software engineering. Then, is highly probable that, in almost all software projects we require any change as we progress...
But not everything is a waste of time: synchronizing our diagrams to code we can have a faithfull translation from diagrams to code, and if we require, then make any change in the logic (code) and build again our diagrams. Summarizing, I'm talking about Model Driven Development and Reverse Engineering. I hope I can talk you a little about these topics in the next posts.
What do you think? Any comment would be apreciated. Doubts? Questions?
No hay comentarios.:
Publicar un comentario