Dissertação

{en_GB=A Development Framework for Normalized Systems} {} EVALUATED

{pt=Os sistemas de informação têm de evoluir gradualmente ao longo do tempo de forma a responder à constante mudança de requisitos e circunstâncias em que os mesmos são inseridos. Esta volatilidade provoca não só um aumento contínuo da complexidade arquitetural como também uma degradação da qualidade de software. A teoria dos Sistemas Normalizados aborda este problema através da sistematização do desenvolvimento de sistemas de informação com o objetivo de capacitar os mesmos com a referida capacidade de evolução, garantindo que cada nova funcionalidade introduzida possa ser implementada através de um número limitado de alterações que não dependem do tamanho do sistema. A teoria é suportada por uma arquitetura de software que inclui um conjunto de cinco elementos distintos. Um desses elementos é o elemento Workflow, que representa o comportamento de um processo de negócio com base em máquinas de estado. Esta dissertação propõe uma nova arquitetura de software para Sistemas Normalizados que se baseia na separação entre uma perspetiva estrutural e uma perspetiva comportamental. Na perspetiva comportamental, são usadas regras e eventos como elementos granulares que podem ser combinado para formar padrões de comportamento complexo, garantindo ao mesmo tempo uma baixa interdependência entre esses elementos. Embora a arquitetura proposta seja agnóstica em relação à tecnologia subjacente, nesta dissertação foi desenvolvido um protótipo baseado na plataforma .NET e linguagem C#. Esta implementação inclui também uma extensão ao ambiente de desenvolvimento Visual Studio, a fim de fornecer um conjunto de ferramentas de auxílio ao desenvolvimento, usando geração de código., en=Information systems need to evolve continuously to adapt to the varying requirements and circumstances of the dynamic environment in which they run. This volatility gradually leads to an increase in architectural complexity and a decrease in software quality. The theory of Normalized Systems addresses this problem by developing information systems that can evolve over time, guaranteeing that each new feature can be implemented with a limited number of changes that does not depend on the actual size of the system. The theory is supported by a software architecture that includes a set of five distinct elements to implement the application logic. One of those elements is the workflow element, which represents a sequence of actions implementing process behavior based on state machines. This dissertation proposes a new architecture for Normalized Systems that is based on a structural perspective and a behavioral perspective. In the behavioral perspective, rules and events are used as fine-grained elements to build complex behavior, while guaranteeing low coupling between all elements. Although the proposed architecture is agnostic with respect to the underlying technology, a prototype implementation based on the .NET Framework and the C# language was developed. This implementation also extends Visual Studio in order to provide a set of development plugins and advanced code-generation capabilities.}
{pt=Arquiteturas de Software, Sistemas Normalizados, Workflow, Processos de Negócio, Regras ECA, en=Software Architectures, Normalized Systems, Workflow, Business Processes, ECA Rules}

Julho 5, 2016, 14:0

Publicação

Obra sujeita a Direitos de Autor

Orientação

ORIENTADOR

Diogo Manuel Ribeiro Ferreira

Departamento de Engenharia Informática (DEI)

Professor Auxiliar