Engenharia de Software Sistemas Distribuídos



Documentos relacionados
Engenharia de Software Sistemas Distribuídos

Engenharia de Software. Enunciado da Quarta Parte do Projecto

Engenharia de Software. Enunciado da Quarta Parte do Projecto

Engenharia de Software. Enunciado da Primeira Parte do Projecto

Arquitecturas de Software Licenciatura em Engenharia Informática e de Computadores

Engenharia de Software. Enunciado da Segunda Parte do Projecto

Escola Superior de Tecnologia de Setúbal. Projecto Final

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio

Modelo Cascata ou Clássico

Regulamento de Vigilâncias de Provas Escritas de Avaliação do DEEC

Engenharia de Software e Sistemas Distribuídos. Enunciado Geral do Projecto

5. Métodos ágeis de desenvolvimento de software

Desenvolvimento de uma Aplicação WEB para monitorização de BD Oracle

Engenharia de Software e Sistemas Distribuídos. Enunciado Geral do Projecto

MANUAL DE INSTRUÇÕES

Um sistema SMS 1 simplificado

Ministério das Finanças Instituto de Informática. Departamento de Sistemas de Informação

Universidade do Minho Licenciatura em Engenharia Informática

DEPARTAMENTO DE MATEMÁTICA E CIÊNCIAS EXPERIMENTAIS

Aprend.e Sistema integrado de formação e aprendizagem

PLATAFORMA INFORMÁTICA DE REQUISIÇÃO DE POLICIAMENTO DE ESPETÁCULOS DESPORTIVOS (PIRPED)

Manual do Gestor da Informação do Sistema

Computadores Portáteis. Regulamento de utilização

PHC Serviços CS. A gestão de processos de prestação de serviços

Programação 2ºSemestre MEEC /2011. Programação 2º Semestre 2010/2011 Enunciado do projecto

COLIBRI Ambiente Colaborativo Multimédia MÓDULO MOODLE. Rui Ribeiro FCCN - Dezembro 2010

SYNCING.NET 2.0 Instalação & Configuração

02 - Usando o SiteMaster - Informações importantes

VM Card. Referência das Definições Web das Funções Avançadas. Manuais do Utilizador

Introdução à Programação B Licenciatura em Engenharia Informática. Enunciado do trabalho prático. Quem quer ser milionário? 20 de Dezembro de 2007

Documento de Análise e Projeto VideoSystem

Servidores Virtuais. Um servidor à medida da sua empresa, sem investimento nem custos de manutenção.

Administração da disciplina

Apresenta. SofStore o mais novo aliado no gerenciamento do seu negócio

Base de Dados para Administrações de Condomínios

Relatório de Análise de Requisitos

Manual utilização. Dezembro Instituto Politécnico de Viseu

COMPUTAÇÃO e PROGRAMAÇÃO

OFICIAL DA ORDEM MILITAR DE CRISTO MEDALHA DE EDUCAÇÃO FÍSICA E BONS SERVIÇOS. Circular n.º 023-A/2014 Portal F.P.T. - Inscrições (Aditamento)

Serviço a Pedido ( On Demand ) da CA - Termos e Política de Manutenção Em vigor a partir de 1 de Setembro de 2010

Manual do Ambiente Moodle para Professores

PROJ. Nº LLP NL-ERASMUS-ECUE

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO. SISTEMAS DE GESTÃO DE BASE DE DADOS Microsoft Access TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO

Múltiplos Estágios processo com três estágios Inquérito de Satisfação Fase II

A SÈTIMA. O nosso principal objectivo

ISO 9000:2000 Sistemas de Gestão da Qualidade Fundamentos e Vocabulário. As Normas da família ISO As Normas da família ISO 9000

Certificação da Qualidade dos Serviços Sociais. Procedimentos

Java Mail Server. Manual do Utilizador

PHC dteamcontrol Interno

Plataforma de Gestão de Actualizações de Software Descrição do Problema

Departamento de Informática

Trabalhos Práticos. Programação II Curso: Engª Electrotécnica - Electrónica e Computadores

PHC dcontroldoc. O acesso a diversos tipos de ficheiros

Índice. Enquadramento do curso 3 Estrutura Programática 4. Primeiros passos com o e-best Learning 6. Actividades e Recursos 11

Sistemas Operativos /2006. Trabalho Prático v1.0

WEBSITE DEFIR PRO

INSTITUTO SUPERIOR DE ENGENHARIA DO PORTO

Trabalho de Desenvolvimento de Sistemas de Software GereComSaber 1ª Fase

Plano de Gerenciamento do Projeto

PHC dteamcontrol Externo

DESPACHO N. GR.02105/2010

DECLARAÇÃO DE RISCO DE INVESTIMENTO (OTC) De 15 de Fevereiro de 2012

Novo Formato de Logins Manual de Consulta

Programa de Parcerias e Submissão de Propostas 2014/15

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

Google Drive. Passos. Configurando o Google Drive

Bases de Dados. Lab 1: Introdução ao ambiente

OFICIAL DA ORDEM MILITAR DE CRISTO MEDALHA DE EDUCAÇÃO FÍSICA E BONS SERVIÇOS. Circular n.º 029/2014 PORTAL FPT Abertura aos atletas

Como organizar um processo de planejamento estratégico

Acronis Servidor de Licença. Manual do Utilizador

Como aplicar permissões aos seus utilizadores?

SUMÁRIO Acesso ao sistema... 2 Atendente... 3

Manual de Publicaça o no Blog da Aça o TRIBOS nas Trilhas da Cidadania

MANUAL DO USUÁRIO SORE Sistema Online de Reservas de Equipamento. Toledo PR. Versão Atualização 26/01/2009 Depto de TI - FASUL Página 1

Introdução aos Algoritmos e Estruturas de Dados 2011/2012

Comunicação documentos de transporte AT via Webservice Singest Sistema Integrado de Gestão Cambragest Serviços de Gestão e Software

Guia rápido de criação e gestão de um espaço no SAPO Campus

EDUTec Learning. José Paulo Ferreira Lousado

GIAE VERSÃO JUNHO DE 2011 MUITO IMPORTANTE

Rock In Rio - Lisboa

Transcrição:

Engenharia de Software Sistemas Distribuídos 2 o Semestre de 2009/2010 FEARSe Requisitos para a 1 a entrega 18 de Março de 2010

1 Introdução O projecto conjunto das disciplinas de Engenharia de Software (ES) e Sistemas Distribuídos (SD) tem como contexto o FEARSe, descrito em mais detalhe no enunciado geral. Neste enunciado são descritos os requisitos pretendidos para a primeira entrega do projecto, regras para o seu desenvolvimento, entrega e avaliação. 2 Requisitos funcionais da primeira entrega A aplicação FEARS, desenvolvida e em utilização no IST, é uma aplicação de gestão de sugestões para projectos. Este sistema permite que utilizadores, registados ou não, realizem um conjunto diverso de funcionalidades. Qualquer utilizador da aplicação pode consultar as sugestões existentes para cada projecto e ver os comentários que lhes estão associados. Um utilizador registado pode submeter novas sugestões para um dos projectos definidos, votar em sugestões existentes (o número de votos disponíveis para cada utilizador usar é fixo para cada projecto e cada sugestão só pode ter um voto por cada utilizador) e fazer comentários relativos a uma sugestão existente. Um administrador do FEARS é um utilizador registado com privilégios especiais, que lhe permitem gerir projectos e administradores da aplicação. Um administrador de projecto é um utilizador registado que tem privilégios adicionais para os projectos dos quais é administrador: ao fazer comentários, um administrador de projecto pode adicionalmente definir o novo estado de uma sugestão. Foram identificados as seguintes novas funcionalidades que se pretendem suportar na aplicação: Arquivamento de sugestões completas/rejeitadas (ver https://fears.ist.utl.pt/#project2&viewfeature25); Marcação de sugestões como duplicadas (ver https://fears.ist.utl.pt/#project2&viewfeature26). As subsecções seguintes descrevem os requisitos funcionais a satisfazer na primeira entrega. A aplicação deve apresentar mensagens de erro adequadas sempre que tal se revele necessário. 2.1 Arquivamento de uma sugestão completa ou rejeitada Num sistema de gestão de sugestões em uso corrente é normal que exista uma quantidade não desprezável de sugestões que, tendo já sido concretizadas ou rejeitadas há tempo suficiente, são irrelevantes para a generalidade dos utilizadores e apenas introduzem entropia na utilização normal da aplicação. 2

Por este motivo, pretende-se que um administrador possa arquivar sugestões, desde que completas ou rejeitadas. As sugestões arquivadas devem continuar acessíveis, com a possibilidade de o utilizador ver listadas todas as sugestões arquivadas para um dado projecto, mas não devem ser apresentadas na listagem Todos. 2.2 Marcação de uma sugestão como duplicada de outra Como se pode verificar consultando as sugestões existentes na aplicação FEARS em uso no IST, podem surgir sugestões para um projecto que são muito semelhantes ou até completamente idênticas a outras sugestões já existentes para esse projecto: sugestões duplicadas. Como o FEARS não permite apagar uma sugestão, a prática actual dos administradores de projecto para lidar com estes duplicados é rejeitar a sugestão duplicada, adicionando-lhe um comentário a indicar que a sugestão foi rejeitada por ser um duplicado de outra. Esta forma de resolver o problema, no entanto, é propensa a erros e omissões. Por isso, pretende-se fornecer agora uma forma simples de indicar sugestões que sejam duplicados de outra sugestão. Naturalmente, apenas os administradores de um projecto podem indicar sugestões duplicadas para esse projecto. O comportamento pretendido para esta funcionalidade é semelhante ao dos sistemas de bug tracking, em que é indicado num comentário ao bug identificado como duplicado que este foi considerado duplicado com um link para o bug original (e vice-versa). Assim, uma sugestão identificada como duplicada deve ser marcada como rejeitada e automaticamente arquivada. Adicionalmente, devem ser acrescentados comentários de duplicação às duas sugestões envolvidas, indicando o sucedido. Cada um destes comentários deve permitir ainda a navegação para a outra sugestão envolvida. A informação de duplicados pode vir a ser relevante para futuros desenvolvimentos, não devendo por isso ficar apenas dispersa nos comentários que dela resultam. 3 Requisitos não-funcionais da primeira entrega No contexto do FEARSe, a aplicação FEARS passará a fazer parte de um sistema distribuído. Neste sentido, e antes de começar o desenvolvimento das restantes aplicações do sistema, faz sentido uma refactorização do código da aplicação para facilitar a disponibilização da sua funcionalidade através de diferentes mecanismos (como, por exemplo, interface web, ou web services). Do ponto de vista arquitectural, actualmente a aplicação FEARS está organizada em duas camadas: uma camada de domínio (suportada pela Fénix Framework) e uma camada de apresentação (assente no Google Web Toolkit). Pretende-se agora introduzir uma camada de abstracção entre o domínio e a camada de apresentação, utilizando os serviços da STEP Framework. 3

4 Desenvolvimento A plataforma de desenvolvimento e execução do projecto é o Java SE 6 e restante software indicado para as disciplinas de ES e SD. 4.1 Ponto de partida O desenvolvimento desta primeira entrega deve ter como base a aplicação FEARS disponibilizada na página das disciplinas, utilizando as mesmas tecnologias para desenvolvimento de aplicações web (Fénix Framework, STEP Framework e Google Web Toolkit) e seguindo as melhores práticas de cada uma delas. 4.2 Múltiplos domínios Uma vez que o FEARS é apenas um de vários sistemas que vão constituir o sistema FEARSe a implementar ao longo do semestre, é necessário defini-lo como um sub-projecto chamado FeaRS. Os restantes sistemas, a desenvolver oportunamente, serão também sub-projectos dentro de um projecto de topo cujo nome é FeaRSe. A figura 1 resume a estrutura de directórios a seguir. 1 4.3 Divisão de trabalho e coordenação da equipa Nesta primeira entrega cada grupo tem liberdade para gerir o trabalho como considerar mais apropriado. No entanto, as principais decisões tomadas serão tidas em conta na avaliação do trabalho realizado. Sugere-se que: Todos os elementos do grupo tenham responsabilidades atribuídas de forma equilibrada; Todos os elementos do grupo desenvolvam trabalho em todas as camadas da aplicação a desenvolver; Sigam uma abordagem pair programming, em que cada tarefa a realizar é feita por dois elementos do grupo; Todo o código desenvolvido deve ser mantido sobre controlo de versões, no repositório CVS disponibilizado para o efeito. O uso de uma ferramenta deste tipo é crucial dado que todos os elementos do grupo vão desenvolver trabalho sobre a mesma base de código. No entanto, o uso desta facilidade não dispensa a comunicação dentro do grupo. 1 Directórios apresentados assim são gerados automaticamente durante o processo de construção. O directório a cinza é uma cópia apenas para facilitar o uso do Eclipse. 4

Figura 1: Estrutura de directórios do projecto FEARSe. 4.4 Grupos inscritos apenas a SD As tecnologias a utilizar nesta primeira entrega foram alvo de estudo nas aulas laboratoriais de ES: Lab 02: Fénix Framework Lab 03: STEP framework Lab 04: Google Web Toolkit O FEARS utiliza a Fénix Framework e o Google Web Toolkit. Por isso, mesmo os alunos inscritos apenas em SD necessitarão de se familiarizar com estas tecnologias para desenvolver o trabalho pedido. Os grupos de alunos inscritos apenas em SD devem implementar o descrito na subsecção 2.1, podendo implementá-la recorrendo a uma interface linha-de-comando em vez de a integrarem na interface Web do FEARS. 2 Devem ainda satisfazer parcialmente o pedido na secção 3, restringindo a refactorização pedida apenas ao código das seguintes funcionaliadades: 2 Para os grupos que pretendam integrar a funcionalidade pedida na interface Web do FEARS sugere-se a assistência e/ou estudo do Lab 04 (semana de 18 a 24 de Março), cujos conteúdos estão disponíveis na página de ES. Poderão comparecer em qualquer turno laboratorial de ES, desde que este tenha capacidade física para tal. 5

Login (e logout) do sistema; Obter a listagem de projectos; Obter informação detalhada de um projecto; Pesquisa de sugestões; Obter a listagem de sugestões; Obter a informação detalhada de uma sugestão; Adicionar comentário a uma sugestão. Todos os restantes requisitos desta primeira entrega são idênticos. 5 Entrega A primeira entrega tem duração de dez dias úteis, sendo a hora limite de entrega as 20:00 do dia 31 de Março. As regras para o processo de entrega do trabalho através do repositório de CVS do grupo estão descritas no documento Utilização do CVS no projecto (ver http:// disciplinas.ist.utl.pt/leic-es/2009-2010/proj/regrascvs.html. A etiqueta a colocar para indicar a entrega da primeira fase do projecto é RELEASE_1. A ausência da etiqueta será interpretada como não tendo sido entregue. O alvo create-war deve efectuar as operações necessárias para produzir uma aplicação que possa ser instalada num servidor web, isto é, o resultado de invocar ant create-war deve ser o ficheiro fears.war no directório dist. 6 Avaliação Esta primeira fase do projecto termina com: Visualização do projecto; Avaliação do código desenvolvido. O primeiro ponto é realizado nas aulas de laboratório na semana seguinte à entrega do projecto. Consiste numa demonstração das funcionalidades do projecto e na discussão pedagógica com os elementos do grupo sobre as decisões tomadas e a sua influência na qualidade do trabalho realizado. 6

O grupo deve preparar a demonstração num PC do laboratório, obtendo o projecto a partir do repositório CVS, efectuando o deploy e exercitando as várias funcionalidades desenvolvidas. a a A utilização do Eclipse é facultativa, pelo que fica ao critério de cada grupo decidir sobre a sua utilização ou não. A segunda parte da avaliação é realizada pelo corpo docente e consiste na avaliação do projecto do ponto de vista da correcção da solução e do cumprimento das normas de utilização da arquitectura, seguindo os seguintes critérios: 40% Introdução da camada de serviços 40% Implementação de novas funcionalidades 10% Respeito pela arquitectura 10% Estilo de codificação FIM DO ENUNCIADO 7