Benefits of modeling (or how to convince your project manager!)
Do you need to convince your project manager about the benefits of modeling and model-driven processes? Maybe you could mention that modeling:
- Improves the productivity of the development team (e.g. models can be used for a semi-automatic code-generation)
- Reduces the number of defects in the final code (models facilitate early evaluation of the system)
- Capture and organize the understanding of the system (which btw, eases the integration of new team members). Models are well suited for documentation
- Permit early exploration of alternatives
- Increases the decomposition and modularization of the system
- Facilitates the system’s evolution and maintenance (e.g. by facilitating tracing back the code to the original requirements)
- Facilitates the reuse of parts of the system in new projects
Do you agree with these benefits? Which ones should be removed? Which ones added?
In the theory I agree with all the points, in the practice not.
The models must be used to trivialize more complex problems, but a very frequent error is use the modeling to complicate the developments, adding unnecessary elements / processes. Easy problems doesnt need a models!!! . The modeling also implies increasing of costs of a project (the bureaucracy ). If we build a software using the modeling, the prices of the software could increase (at least at the beginning of the project ), if the project its developed by phases, the first ones could be too expensive and that could ends with the defeat of the project.
Not all the developers are capable of understands the modeling, its necessary to explain and teach the developer, in their first steps in the modeling. Be careful with this.
Sometimes the best solution for a problem is not the best idea.
Sergi
Project Manager
I think we need to be pragmatic sometimes. Modeling should not be a boolean activity. We should be able to adapt the modeling level/precision to the characteristics of the project (see for instance what people working on agile modeling do)
It is certainly right that you need to adapt the modeling you need to do with the type of project you are running.
I would take that further by adding that you would also benefit from doing this to the various phases of the project. The type of modeling that you need to do up front, e.g., to win the contract or to model requirements or use interface, is different than the type of modeling you would need to implement a full translationist MDA approach at a later stage of development.
You ARE RIGHT, modeling can also play a different role depending ON the phase IN the development process. The comments IN this post go IN the same direction.
Can you please add links to the studies that back up these claims? – Greg
[...] all know that one of the main criticisms to modeling is the lack of empirical studies that show its supposed benefits in practice. Let´s see if Michel can settle this issue once and for all (ok, maybe that´s too [...]
[...] (in fact, one of the most popular discussion points in the portal, see, for instance, this and this previous posts) is whether MDD pays off at some point in [...]
[...] Benefits of modeling (or how to convince your project manager!) [...]