Summary: | === Model Driven Development is a software engineering process based on systems' domain modeling. Each unsuccessful software project has it's own unique failure causes, but all successful projects are similar at all. There are many elements that make a well done project; one of them is modeling. Right chosen models have huge influence on how problems are treated for providing solutions. Models can be specified in different precision levels. In complex software systems to figure out what should be modeled and how to do it isn't an easy issue. This work proposes rules on what elements, attributes and modeling views must be observed during the software development process. Our goal is to define rules based on well known literature concepts, as Model Driven Architecture. For validating the propositions and show how them can be applied, this work contains a self applying description for web based applications and Praxis Synergia software development process === O desenvolvimento dirigido por modelos é o processo pelo qual sistemas de software são construídos a partir de representações sobre seus domínios. O não sucesso de projetos de software tem relação a aspectos únicos e específicos de cada projeto, mas todos os projetos de sucesso são semelhantes em vários aspectos. Existem vários elementos que contribuem para um projeto bem-sucedido; um desses componentes é a utilização da modelagem. A escolha dos modelos a serem criados tem profunda influência sobre a maneira como um determinado problema é atacado e como uma solução é definida. Cada modelo pode ser expresso em diferentes níveis de precisão. Determinar o que modelar e como modelar em sistemas complexos não é uma tarefa fácil. Este trabalho propõe a definição de diretrizes sobre quais elementos, atributos e visões de dados para análise e modelagem devem ser observados durante o desenvolvimento de um software. A meta de trabalho é que as definições sejam fundamentadas em técnicas e conceitos consagrados pela literatura, como os conceitos sobre Model Driven Architecture. Para validar as definições sugeridas e exemplificar como as mesmas podem ser aplicadas, este trabalho prevê também a descrição de sua aplicação no processo Praxis Synergia, para o contexto de aplicações web.
|