• Nenhum resultado encontrado

No desenvolvimento de sistemas de informação o uso de objetos simplifica a complexidade desses sistemas por tratá-los como uma composição de partes, que são objetos que encapsulam dados e comportamento e se comunicam. Assim, utilizado a orientação a objetos para desenvolver um sistema de informação, inicialmente são identificados os objetos e, posteriormente, a estrutura e o comportamento desses objetos são definidos e detalhados. De maneira análoga, utilizando a orientação a objetos para definir processos, os processos são identificados com objetos abstraindo os seus componentes. Posteriormente, os processos são detalhados, definindo-se os seus componentes como objetos. Em seguida, são definidos atributos, comportamento e relacionamentos para os objetos processo, que são os processos e os seus componentes, e o protocolo para a troca de mensagens entre eles.

A arquitetura de processo fornece uma sintaxe e uma semântica que permitem analisar a complexidade dos processos e representar os seus modelos em níveis distintos de abstração e de detalhes e agrupar esses modelos em visões que representam os diversos objetivos dos interessados nessa arquitetura.

O uso de visões na definição da arquitetura de processo e da fábrica de software possibilita definir conjuntos de modelos de acordo com objetivos específicos. A fábrica de software é definida a partir das visões informação, infra-estrutura, qualidade, processo e negócio. A arquitetura de processo implementa a visão processo definida para a fábrica de software por meio das visões estrutural, comportamental, organizacional e automação. Os modelos de processos que compõem as visões da arquitetura de processo operacional definem uma fábrica de software baseada em processo.

O uso do MOF para organizar a arquitetura de processo possibilitou definir os modelos para representar as visões dessa arquitetura em níveis distintos de abstração e de detalhes. Desta forma, a arquitetura de processo é representada por uma arquitetura conceitual composta por meta-modelos de processos, por uma arquitetura de referência composta por modelos de processos padrão e por uma arquitetura operacional composta por modelos de processos, em conjunto ou individualmente. Os modelos de processos da arquitetura operacional são instanciados por meio de um projeto de software, definindo o que se denominou neste trabalho de arquitetura instanciada.

A troca de mensagens interliga os objetos processo. A interação entre objetos processo é realizada por meio das suas interfaces conectadas por uma via de comunicação. Um objeto processo envia uma mensagem, de acordo com um protocolo, que é interpretada pelo objeto

167

processo para quem a mensagem se destina. Para haver essa interpretação, um mediador de protocolos pode ser necessário.

Em termos conceituais, como proposto neste trabalho, o protocolo define o formato da mensagem. Na implementação da visão computação da arquitetura de processo, o protocolo abrange o formato das mensagens e os métodos para implementá-las. Os métodos são responsáveis por alterar e acessar atributos dos objetos. Por exemplo, ao receber uma mensagem para comunicar uma reunião entre os gerentes das fábricas de software é automaticamente realizada a inserção desse comunicado na agenda desses gerentes.

O uso de diagramas de seqüência da UML para representar a seqüência de mensagens trocadas entre os objetos processo permite visualizar a interação entre esses objetos no tempo. Esses diagramas podem ser utilizados para o gerenciamento manual ou automático das interações e para definir os mediadores necessários para a interação entre os protocolos.

A integração entre processos é auxiliada por mediadores que atuam quando há distinções entre as definições nos modelos de processo, incluindo o vocabulário do domínio e do contexto da arquitetura de processo, e nos protocolos para comunicação entre os processos. O uso de mediadores permite que os modelos de processos padrão da arquitetura de referência sejam especializados de acordo com características e particularidades de cada fábrica de software. Os mediadores atuam para que a integração ocorra apesar das distinções entre a arquitetura operacional das fábricas de software integradas. Assim, a fábrica de software pode manter a sua cultura organizacional e utilizar o seu conhecimento histórico de projetos quando se integra com outras fábricas por meio da arquitetura de processo.

Os experimentos auxiliaram a verificar que a existência de uma equipe de gerência geral composta por gerentes das fábricas de software integradas facilita a tomada de decisões estratégicas no âmbito do projeto ou que envolvam as fábricas de software integradas de maneira geral. Essa equipe também coordena o projeto como um todo e é responsável pelo acompanhamento do cronograma geral do projeto.

Os experimentos também auxiliaram a verificar que a arquitetura de processo favorece o reuso de artefatos e o desenvolvimento de software centrado em arquitetura. Artefatos foram reusados no âmbito de cada experimento, como ocorreu com os componentes de software e os documentos gerados nas provas de conceitos e os padrões de documentos. Centrado em arquitetura, porque a definição da arquitetura do software iniciou na fase de requisitos e foi finalizada na fase de arquitetura, orientando o desenvolvimento do sistema de software até a fase de integração dos seus módulos.

168

fábricas de software para que desenvolvam projetos cooperativos de software. Porém, a arquitetura de processo pode ser utilizada pelas fábricas de software para definir os seus processos de maneira a serem menos suscetíveis a diversidade de demandas. Isto porque, uma fábrica de software define os seus modelos de processos padrão e os especializa de acordo com cada projeto de software que ela desenvolve, gerando arquiteturas operacionais específicas. Uma fábrica de software ter os seus próprios modelos de processos padrão auxilia na formação de uma cultura de processos, facilitando o uso e a especialização dos modelos de processos e a sistematização das atividades.

Os modelos de processos padrão da arquitetura de referência e os modelos de processos da arquitetura operacional podem ser definidos a partir de modelos de qualidade específicos. Assim, a arquitetura de processo pode ser utilizada para preparar fábricas de software para certificação ou simplesmente para definir e organizar os seus processos. A preparação conjunta de fábricas de software para certificação tem sido utilizada pela possibilidade de redução de custos no preparo e na avaliação das fábricas de software.

De acordo com a análise dos resultados dos experimentos e como conclusão desse trabalho é possível deduzir que a arquitetura de referência contém os modelos de processos considerados essenciais para que conjuntos de fábricas de software de pequeno porte se integram para desenvolver projetos cooperativos de software.