27
29 de Abril de 2002 1 / 27 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado “Uma Extensão do Fluxo de Análise e Projeto do RUP para o Desenvolvimento de Aplicações Web” Por Ricardo André C. de Souza Orientador: Prof. Alexandre Marcos L. Vasconcelos

27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

Embed Size (px)

Citation preview

Page 1: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 1 / 27

UFPE - Universidade Federal de PernambucoCentro de Informática

Pós-Graduação em Ciência da Computação

Dissertação de Mestrado

“Uma Extensão do Fluxo de Análise e Projeto do RUPpara o Desenvolvimento de Aplicações Web”

PorRicardo André C. de Souza

Orientador: Prof. Alexandre Marcos L. Vasconcelos

Page 2: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 2 / 27

Roteiro

Introdução Engenharia de Software para Web Extensões de UML RUP – Rational Unified Process Extensão do Fluxo de Análise e Projeto Estudo de Caso – A Aplicação Web SIG@UFPE Conclusão

Page 3: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 3 / 27

Introdução

Motivação

Grande demanda pelo desenvolvimento de aplicações Web;

Características específicas de aplicações Web;

Adaptações em processos genéricos de desenvolvimento de software;

Page 4: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 4 / 27

Introdução

Escopo

Engenharia de Software para Web;

RUP – Rational Unified Process Genérico; Adaptável; Reúne o melhor de várias técnicas de

desenvolvimento de software; Aceito nos meios acadêmico e comercial; UML (Unified Modeling Language) é parte integrante;

Page 5: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 5 / 27

Introdução

Objetivos

Extensão do Fluxo de Análise e Projeto do RUP ;

Atender aplicações Web no padrão arquitetural em Camadas;

Page 6: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 6 / 27

Engenharia de Software para Web

Objetivos

Estabelecimento e uso de abordagens científicas, de engenharia, e gerenciamento para dar suporte ao processo de desenvolvimento de aplicações Web;

Técnicas sistemáticas e disciplinadas para alcançar aplicações Web de alta qualidade;

Incorporação de princípios bem sucedidos da Engenharia de Software tradicional, adaptando-os para a natureza mais aberta e flexível de aplicações Web;

Page 7: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 7 / 27

Engenharia de Software para Web

Aplicações Web versus Aplicações Tradicionais

Principais diferenças referem-se a questões sobre:

Navegação;

Interface Gráfica;

Implementação;

Page 8: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 8 / 27

Extensões de UML

Definição

Maneira ordenada de adicionar nova semântica para a notação de UML;

Permite a inclusão de novos atributos, diferentes semânticas e restrições adicionais a elementos da modelagem;

Expressa em termos de:

Estereótipo – extensão do vocabulário da linguagem;

Tagged Value – extensão para uma propriedade de um elemento do modelo;

Restrição – extensão da semântica da linguagem;

Page 9: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 9 / 27

Extensões de UML

Abordagens para Aplicações Web

WAE (Web Application Extension); OOHDM + UML; Framework W2000;

Page 10: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 10 / 27

RUP – Rational Unified Process

Conceitos Chaves

Responsável – papel desempenhado por um indivíduo ou uma equipe no contexto do projeto;

Atividade – unidade de trabalho que produz um resultado significante no contexto do projeto;

Artefato – peça de informação que é produzida, modificada ou usada pelo processo de desenvolvimento de software;

Fluxo – seqüência de atividades que produz um resultado de valor observável;

Subfluxo – agrupamento de atividades, responsáveis envolvidos, artefatos de entrada e artefatos produzidos;

Page 11: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 11 / 27

RUP – Rational Unified Process

Características

Dirigido a Casos de Uso O processo de desenvolvimento segue um fluxo de

ações para realização de Casos de Uso; Centrado na Arquitetura

O RUP fornece uma maneira metódica e sistemática para projetar, desenvolver e validar a arquitetura;

Iterativo e Incremental Iterações referem-se a passos no fluxo de

desenvolvimento, e Incrementos a evoluções do produto;

Page 12: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 12 / 27

RUP – Rational Unified Process

Fluxos e Fases

Page 13: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 13 / 27

Extensão do Fluxo de Análise e Projeto

Page 14: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 14 / 27

Extensão do Fluxo de Análise e Projeto

Atividades do Fluxo Estendido

Page 15: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 15 / 27

Extensão do Fluxo de Análise e Projeto

Subfluxo Projetar Camada de Apresentação

Page 16: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 16 / 27

Extensão do Fluxo de Análise e Projeto

Atividade Projetar Navegação

Consiste na criação do Modelo Navegacional, com os seguintes propósitos:

Identificar como o usuário caminha (navega) na aplicação para utilizar as funcionalidades oferecidas;

Criar subsídios para o projeto das Interfaces Gráficas da aplicação;

Identificar os elementos necessários para criação da Camada de Apresentação da aplicação no fluxo de Implementação;

Page 17: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 17 / 27

Extensão do Fluxo de Análise e Projeto

Atividade Projetar Navegação – Artefatos de Entrada

Modelo de Casos de Uso – descreve as funcionalidades que a aplicação fornece para os usuários;

O Modelo Navegacional deve contemplar as navegações necessárias para satisfazer os Casos de Uso deste modelo;

Realizações de Caso de Uso – descreve a colaboração de objetos para um particular Caso de Uso, é representado por diagramas de interação de UML;

O Modelo Navegacional deve suportar as interações entre o usuário e a aplicação, descritas neste artefato;

Page 18: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 18 / 27

Extensão do Fluxo de Análise e Projeto

Atividade Projetar Navegação – Artefatos de Entrada

Modelo de Análise (Conceitual) – contém as classes de Análise (básicas) da aplicação, seus atributos e associações, é o resultado do processo de análise dos Casos de Uso;

O Modelo Navegacional é uma variação (visão) deste modelo, com ênfase nos aspectos de navegação e de apresentação da aplicação;

Guia de Projeto Navegacional – consiste no método proposto para criação do Modelo Navegacional de aplicações Web;

Page 19: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 19 / 27

Extensão do Fluxo de Análise e Projeto

Atividade Projetar GUI (Graphic User Interface)

Consiste em projetar as Interfaces Gráficas da aplicação de acordo com as necessidades navegacionais;

A aparência das Interfaces Gráficas deve obedecer ao padrão de apresentação (fonte, cor, botão, etc) adotado pela organização;

Artefato de Entrada – Modelo Navegacional; Artefato Produzido – Templates GUI;

Esboço das Interfaces Gráficas derivadas dos elementos do Modelo Navegacional que representam páginas cliente e formulários;

Page 20: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 20 / 27

Extensão do Fluxo de Análise e Projeto

Método para criação do Modelo Navegacional

Primeiro Passo: Identificar as Classes Navegacionais;

Derivadas das classes básicas do Modelo Conceitual; Segundo Passo: Identificar os Caminhos Navegacionais;

Derivados das associações entre as classes básicas do Modelo Navegacional;

Influenciados pela multiplicidade da origem das associações;

Satisfazem operações de manutenção;

Page 21: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 21 / 27

Extensão do Fluxo de Análise e Projeto

Método para criação do Modelo Navegacional

Terceiro Passo: Criar os Caminhos Navegacionais;

Contempla todas as funcionalidades oferecidas pelas classes navegacionais;

Baseado no padrão arquitetural Thick Web Client;

Segue um padrão proposto para a operação de Inclusão;

Segue um padrão proposto para as demais operações de manutenção;

Page 22: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 22 / 27

Estudo de Caso – A Aplicação Web SIG@UFPE

Objetivos da Aplicação

O Sistema de Informações e Gestão Acadêmica da UFPE visa atender o principal serviço oferecido pela universidade – o ensino em todos os níveis (graduação, pós-graduação, extensão);

Desenvolvido em módulos que correspondem a etapas (fases) do ano letivo;

Prioridade no módulo que controla o Planejamento de Matrícula e Matrícula;

Page 23: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 23 / 27

Estudo de Caso – A Aplicação Web SIG@UFPE

Principais Funções da Aplicação

Especificação das Atividades Acadêmicas a ofertar; Intenção de Matrícula; Definição das Atividades Acadêmicas ofertadas; Criação de Turmas e Subturmas; Matrícula em Atividade Acadêmica; Matrícula em Turma;

Page 24: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 24 / 27

Estudo de Caso – A Aplicação Web SIG@UFPE

Execução do Subfluxo Projetar Camada de Apresentação

Realização da Atividade Projetar Navegação; Realização da Atividade Projetar GUI; Exemplo de Projeto Navegacional Demonstração Aplicação SIG@UFPE

Page 25: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 25 / 27

Conclusão

Contribuições

Adequação da metodologia de desenvolvimento de software RUP;

Extensão do fluxo de Análise e Projeto do RUP para considerar mais apropriadamente o desenvolvimento de aplicações Web;

Criação do Subfluxo Projetar Camada de Apresentação; Recomendações para execução de Atividades já existentes; Método para criação do Modelo Navegacional; Estudo de Caso sobre a aplicação Web SIG@UFPE; Configurações na ferramenta de modelagem Rational Rose;

Page 26: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 26 / 27

Conclusão

Trabalhos Correlatos Aplicações Web são um tipo de sistema hipermídia; Métodos para o desenvolvimento de sistemas hipermídia:

HDM – Hypermedia Design Method

RMM – Relationship Management Methodology

OOHDM – Object-Oriented Hypermedia Design Method

WSDM – Web Site Design Method

RNA – Relationship-Navigational Analysis

UPHD – Unified Process-based Hypermedia Systems Development

Page 27: 27 29 de Abril de 20021 UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado

29 de Abril de 2002 27 / 27

Conclusão

Trabalhos Futuros

Refinar a atividade Projetar GUI para tratar questões relativas à organização e aparência das interfaces gráficas;

Automatizar a criação da Camada de Apresentação, com base no Modelo Navegacional;

Adaptar os demais fluxos de desenvolvimento do RUP e estudar a necessidade de adequação dos fluxos de suporte;

Adequar outros processo genéricos de desenvolvimento de software como o Open e o Catalysis;