camposmf@gmail.com
Todo material disponível neste sítio pode ser utilizado livremente desde que referenciado devidamente!
O material, em ppt, disponível neste sítio pode ser utilizado apenas para fins acadêmicos e desde que se cite devidamente a fonte. Os outros artefatos, softwares e publicações estão disponíveis na internet, em particular nos sítios ; www.therationaledge.com, www.craiglarman.com e www.deitel.com.
O Curso está previsto para seguir o roteiro proposto. Para a realização das atividades programadas, os casos contidos na apostila Modelagem, Sistemas e Informação: casos, conceitos e complexidades serão considerados como referênca.
O curso se inicia com a apresentação do contexto histórico do processo de modelagem de sistemas de informação;o, passando, considerando o paradigma estruturado, ao paradigma orientado a objetos dos dias de hoje. Também está inserida, à título de introdução, a apresentação de Introdução ao Engenharia de Requisitos, processo fundamental para a iniciação da modelagem de sistemas de informação. A leitura da Modelagem de Domínio, do livro do UML e Padrões do Larmam, fundamenta esta fase introdutória.
O processo de modelagem de sistemas orientados a objetos pressupõe o entendimento de conceitos básicos de Orientação a Objetos, de processos e de UML. Desta forma, a leitura do primeiro capítulo de UML e Padrões(Larman), do terceiro capítulo do Deitel(6 edição), o capítulo sobre a estrutura do UP(processo unificado), também do Larman e artigo sobre UML, fundamentam este tópico. As apresentações sobre orientação a objetos, estrutura da UML e estrutura do RUP ilustram estes conceitos. Uma bela introdução ao pensamento orientado a objetos está acessível em A Laboratory for Teaching Object Oriented Thinking por Kent Beck e Ward Cunnunigham.
O curso de UML se inicia com a apresentação dos diagramas de Caso de Uso. Os Casos de Uso são diagramas centrais nos processos de desenvolvimento baseados em RUP. Entretanto, não existe um formato único para descrever Casos de Uso, existem alguns padrões que podem ser aplicados, como por exemplo(artigo da conferência Sugar Loaf e Capítulo 06 de UML e Padrões do Larman). Em seguida, é apresentado o diagrama de atividade (artigo) que pode auxiliar na especificação, de forma complementar, dos Casos de Uso.
O passo porterior a especificação dos Casos de Uso é a especificação dos Diagramas de Classe de Domínio classes (clique aqui para ler o artigo sobre classes) e os respectivos conceitos de relações. Os Diagramas de Classe podem ser derivados dos Casos de Uso, este processo é especificado no artigo Use Case to Code: Part I. Os Diagramas de Interação, no nível do sistema, são tratados nesta apresentação. Para a elaboração dos Diagramas de Interação Completos é necessária a leitura do artigo Use Case to Code: Part II. Diretrizes para a boa aplicação dos Casos de Uso em código O.O. podem ser encontradas no artigo Performing Use Case Realization: the case for high cohesion e low coupling de Ezequiel Cuellar. Um documento básico sobre estes diagramas encontra-se no artigo UML’s Sequence Diagram.
Para realizar a etapa de elaboração do Diagrama de Seqüência Completo outros conhecimentos são importantes tais como: os de arquitetura de software(apresentação, pacotes, nós e componentes e SAD) e padrões( apresentação e capítulo do Larman). A especificação dos Diagramas de Seqüência fica completa com a especificação de contratos. Uma literatura inicial sobre arquitetura de software também está disponível nos artigos de Kruchten , Garlan e Paulo Merson .
Para realizar a passagem do mundo dos objetos para o mundo das tabelas e relações é necessário realizar o Mapeamento Objeto Relacional (MOR) de forma a persistir os objetos criados na aplicação.Uma boa literatura sobre o assunto pode ser encontrada na página do Scott Ambler.A documentação do projeto Hibernate também é bem rica.
Além deste material, o sítio possui o metamodelo da UML 2.0. A ferramenta Jude pode ser baixada neste endereço, neste caso é necessário realizar um cadastro. É bom lembrar, entretanto da ferramenta ArgoUML é software livre e pode ser baixado a partir do sítio www.argouml.org.
Para ter o gosto inicial da programação Orientada a Objetos a apresentação de Iniciação ao Java foi adicionada. A apostila de Iniciação ao Java encontra-se disponível no endereço www.camposmf.eti.br. Duas fontes são importantes para quem deseja aprofundar conceitos de Java: Thinking in Java do Bruce Eckel e o Tutorial da Sun, ambos em inglês.
Bom proveito!
Márcio F. Campos.