Universidade Federal de Campina Grande – UFCG

Centro de Engenharia Elétrica e Informática - CEEI

Curso de Ciência da Computação – CCC

Departamento de Sistemas e Computação – DSC


Projeto em Computação I

Período 2011.1

Avisos:

Professor: Francilene Procópio Garcia

Avaliação AQUI

 
       

Objetivos da disciplina

As disciplinas de Projeto em Computação (I e II) têm como objetivos familiarizar o aluno com o desenvolvimento de software relativamente grande que exija a utilização de um processo de desenvolvimento.

É também objetivo das disciplinas familiarizar o aluno com técnicas de gerência de projetos de desenvolvimento. Busca-se uma aproximação do desenvolvimento completo de um produto real de software, desde sua concepção até sua implantação, ou alternativamente, busca-se uma aproximação de atividades reais de desenvolvimento em que um produto existente sofre manutenção e evolução.

Ementa da disciplina

Desenvolvimento de um projeto prático em computação. O projeto estará sob a orientação do professor (gerência do projeto) e do cliente (alvos da aplicação). Definição do problema. Análise de requisitos. Estudo de viabilidade. Análise do domínio do problema. Projeto arquitetural. Projeto de baixo nível. Implementação. Testes. Cronograma de execução. Proposta de bibliografia. Produção de relatórios de acompanhamento sobre o trabalho.

 Alunos/Projetos


Equipes

Título Projeto / Cliente

Sucesso é...

José Rafael Farias

Renato Almeida

Solon Aguiar

Medidor de Controle de Tensão (MCT) / Eloi Rocha Neto / Smartiks Tecnologia

Desenvolvimento do MCTCore interagindo com o sistema SCADA e desconsiderando requisitos não-funcionais de replicação. Também é critério de sucesso o desenvolvimento da versão inicial dos módulos de apresentação (exibir anomalias/violações de tensão no MCTAlarms e listar anomalias/violações de tensão no MCTViewer).

Antonio Alexandre Costa

Felipe Barbosa Ramos

Rafael Figueiredo Pinheiro

Raul Sampaio Correia

Sistema de entrega de anúncios publicitários móveis personalizados / Marco Rosner / Embedded

Entrega do WebService e da aplicação móvel, na qual a aplicação no servidor recebe as informações necessárias do dispositivo móvel e este por sua vez recebe o anúncio publicitário mais adequado ao seu perfil e, em seguida, o usuário fornece um feedback em relação ao interesse sobre o anúncio.

Alysson Filgueira Milanez

Augusto Q. de Macêdo

Demétrio Gomes Mestre

Easy Lab Correction / Adalberto Cajueiro

A infra-estrutura provida para gerenciamento de alunos, equipes, monitores, roteiros e prazos de entrega, e a correção automática fazem do EasyLabCorrection uma ferramenta auxiliar promissora para o ensino de programação.

Andressa Bezerra

Camila Pascoal

Renata Andrade

Sistema de bate-papo para redes sociais / Eloi Rocha Neto / Melon Tech

Ter no Turingo um sistema de bate-papo escalável (concebido para que a quantidade de servidores alocados seja determinada pela quantidade de requisições) e que suporte centenas de milhares de conversas simultâneas. O bate-papo é entre turistas e empresas (coordenado através de uma série de regras de negócios).

Daniel Gondim

Diego Maia

Filipe Costa

Matheus Brasileiro

Gerador de Bases do Sadi / Eloi Rocha Neto / Smartiks Tecnologia

Entrega de sistema web com interface amigável que gerencie o cadastramento/aprovação de novos projetos e seus equipamentos de acordo com padrões definidos no sistema SADI (deve haver integração com o sistema já existente) e geração da base.

Também faz parte do sucesso do sistema a customização de visualização hierárquica dos itens que irão compor o novo projeto.

Davi Serrano

Jonathan Lincoln

Arthur Ribeiro

GeoGas / Carlos Eduardo e Leandro Balby

A meta é obter um software que com acesso web possa fazer uso dos dados da ANP, carregando-os no dispositivo acessado. Tais dados ainda devem ser manipulados para uma melhor apresentação de acordo com alguns perguntas chaves (Preço, Localidade, entre outras), que servirão como filtros para o usuário. O software ainda deve integrar-se ao sistema de posicionamento global (GPS), caso disponível no dispositivo.

Aislan Monteiro

Dhyego Gama

Ramon Lopes

CRM para MPEs / Karyna / K2 Tecnologia

Entregas nos prazos de versões incrementais de um software CRM com interface simples

(instalação e uso por leigos em informática) que atenda aos requisitos de armazenamento de dados e históricos de compras dos clientes da K2 e, que seja facilmente configurável para outras empresas e tipos de produtos ou serviços.

O software entregue deverá ainda, permitir a manutenção e evolução por outras equipes de desenvolvimento.

Arthur Garcia

Gean Barros

Von Brauner

SEI-TUR / Ulrich Schiel / Marcel de Andrade Sales (South Sales)

Sistema SEI-Tur atual, em produção, com o incremento das seguintes funcionalidades: provedor de serviços, módulo de cliente de serviços individuais e módulo de composição de serviços para criação de roteiro.

Danielle Chaves

Danilo Roberto

Hebert Duarte

Niedja Roberta

TV Phone /André Rodrigues / Signove

Obter um sistema que permita que os usuários realizem chamadas telefônicas utilizando recursos da TV que estará conectado ao seu celular. Ainda consideramos como sucesso conseguir realizar todas as entregas dentro dos prazos e com as devidas funcionalidades.

Delano Hélio Oliveira

Natã Venâncio

SigaPET / Joseana

Sistema em uso com as seguintes funcionalidades: Cadastro e Acesso de usuários com diferentes perfis; Gestão de atividades (cadastro e acompanhamento); e Geração de relatórios (textuais e gráficos).

Daniel Lucena Pires

Fernando Fagundes

George Marcelo

NEW SGE / Vicente Araújo / Escola Virgem de Lourdes

Colocar em uso um sistema de controle acadêmico funcionando e integrado ao sistema atual. O sistema atual que funciona em delfi será descontinuado.

Jeysibel Dantas

Paulo Victor

Pedro Barbosa

Android_BRisa UPnP Framework / Leandro

Portar o BRisa UPnP Framework e suas aplicações e ferramentas para a plataforma Android. Desenvolver pelo menos um aplicativo utilizando o framework para Android.

Lucas Medeiros

Otacílio Lacerda

Vitor Avelino

Biblioteca Digital / Adriano A. Santos / LightInfocon

Entregar e validar boa parte (>50%) das funcionalidades relacionadas no escopo da Biblioteca Digital (conforme especificação da CONARQ).

Alunos Matriculados (41):

AISLAN MONTEIRO DE LIMA

ALYSSON FILGUEIRA MILANEZ

ANDRESSA BEZERRA FERREIRA

ANTONIO ALEXANDRE MOURA COSTA

ARTHUR DE SOUZA RIBEIRO

ARTHUR GARCIA DE CARVALHO

AUGUSTO QUEIROZ DE MACEDO

CAMILA DA SILVA PASCOAL

DANIEL GONDIM ERNESTO DE MELO

DANIEL LUCENA PIRES

DANIELLE CHAVES DE MEDEIROS

DANILO ROBERTO DE SOUSA LEANDR

DAVI OLIVEIRA SERRANO DE ANDRA

DELANO HELIO OLIVEIRA

DEMETRIO GOMES MESTRE

DHYEGO HERBERT GAMA

DIEGO CLIMERIO MAIA

FELIPE BARBOSA ARAUJO RAMOS

Fernando Fagundes de Andrade

FILIPE DA SILVA COSTA

GEAN PAULO PEREIRA M DE BARROS

GEORGE MARCELO RODRIGUES ALVES

HEBERT JOSE ALVES DUARTE

JEYSIBEL DE SOUSA DANTAS

JONATHAN LINCOLN GANDHI A P BR

JOSE RAFAEL DE FARIAS BRITO

LUCAS MEDEIROS DE AZEVEDO

MATHEUS BRASILEIRO CAMPOS

NATA VENANCIO DE MELO

NIEDJA ROBERTA LUCENA SOARES

OTACILIO FREITAS DE LACERDA

PAULO VICTOR SILVA OURIQUES

PEDRO YOSSIS SILVA BARBOSA

RAFAEL FIGUEIREDO PINHEIRO

RAMON LOPES BRASILEIRO

RAUL SAMPAIO CORREIA

RENATA BRAGA DE ANDRADE

RENATO ALMEIDA DE FREITAS

SOLON BARBOSA DE AGUIAR NETO

VITOR AVELINO DUTRA MAGALHAES

VON BRAUNER MEDEIROS DE SOUZA  

 

Projetos Ofertados para 2011.1:

Descrição

Cliente

Easy Lab Correction (Continuidade em Projeto I):

Suporte e Manutenção: Acompanhar a implantação do sistema e seu devido uso durante esse período na disciplina de LEDA; Retirar bugs e/ou adicionar funcionalidades mais urgentes (de acordo com o cliente) na versão em uso.

Produtização: Realizar um Review e Atualização de Testes de todas as suites existentes; Refatorar e Documentar o código; Documentar o sistema através de um relatório que explicite problemas e soluções providas pelo sistema atualmente.

Evolução: Adicionar o corretor de roteiros online; Adicionar um chat online, para discussão de notas e correções; Adicionar outras funcionalidades sugeridas pelo cliente.

Adalberto Cajueiro

GoldenDocDocument Manager. Solução voltada para o gerenciamento de conteúdo, o GoldenDoc permite que documentos (Legislação Estadual,  Estatutos, Leis, Projetos, Mapas, Contratos, Processos, Relatórios de Prestação de Contas, Formulários, Convênios entre outros) sejam disponibilizados para consulta na Internet e/ou em uma intranet. O GoldenDoc é um conjunto de frameworks, de tecnologia aberta, para a implantação de soluções voltadas para gerenciamento de informações focando a captação, ajustes, distribuição e organização dos conteúdos para apoio aos processos operacionais. Essas informações podem ser estruturadas ou não, procedentes de sistemas de Imagem, Gerenciamento de Documentos, sistemas legados, bancos de dados, arquivos nos diretórios e de qualquer outro arquivo digital como som e vídeo.

 

Pretende-se desenvolver um port (melhorado) da versão já existente em ASP e VB para a plataforma .NET, com C#. A atividade central do projeto é criar um serviço web de document manager. Na versão existente, há um alto acoplamento entre a camada de negocio e a interface, com isso engessa a possibilidade do desenvolvedor criar interfaces ricas com os recursos provindos da ferramenta.

 

Adriano A. Santos / LightInfocon

Biblioteca Digital. Este termo é aplicado a sistemas informatizados que possibilitam a gerência de mídias digitais na web. A CONARQ (Conselho Nacional de Arquivos) disponibilizou uma resolução com um conjunto de práticas que uma biblioteca digital deve aplicar. Com base nisso, deseja-se desenvolver uma biblioteca digital com a especificação da CONARQ e com o banco de dados LightBase. A documentação de especificação já está bem resolvida. Deseja-se, ao final do projeto, submeter a Biblioteca Digital ao Portal do Software Público.

Adriano A. Santos / LightInfocon

MCT – Medidor de Controle de Tensão. O MCT é em um sistema de monitoramento de tensões de barramentos para tempo real e pós-operação. Seu principal objetivo consiste em notificar operadores sobre as tensões que ultrapassam seus limites de normalidade e permitir que os mesmos cadastrem as ações/justificativas, que poderão ser analisadas pela pós-operação através de relatórios. No contexto do MCT, quando uma tensão ultrapassa seu limite de normalidade, dois tipos de notificações podem ser gerados: anomalias e violações de tensão. As anomalias ocorrem quando as grandezas elétricas ultrapassam o limite de normalidade e cuja duração seja inferior ou igual a sete minutos, enquanto que as violações serão geradas quando o tempo supera os sete minutos.

Três módulos compõem o sistema: (1)MCTCore - Módulo de aquisição de dados do sistema SCADA, armazenamento, monitoração e notificação de anomalias e violações de tensão. (2) MCTViewer- Módulo de apresentação de relatórios e cadastro de ações/justificativas. (3) MCTAlarms - Módulo de emissão de alarmes para operadores.

Para Projeto I, o escopo contempla: Desenvolvimento do módulo MCTCore (sem se preocupar com os requisitos de replicação); Versão inicial do MCTAlarms (apenas exibindo as anomalias e violações de tensão); e Versão inicial do MCTVIewer (apenas listando as anomalias e violações de tensão).

Tecnologias recomendadas: Java e GWT (MCTViewer), Java (MCTAlarms) e C (MCTCore).

Eloi Rocha Neto / Smartiks Tecnologia

Gerador de Bases do Sadi. O gerador de bases será um complemento de um projeto já existente chamado Sadi, que consiste em um sistema de auditoria de bases de dados de sistemas SCADA/EMS. O desenvolvimento do Gerador de Bases tem como objetivo garantir que a lista de pontos enviada pelos integradores de bases esteja no padrão definido pela empresa cliente. A lista de pontos contém os pontos de supervisão de cada equipamento do projeto a ser executado.

Devido à grande quantidade de equipamentos e de pontos de supervisão, a elaboração manual dessa lista de pontos apresenta diversos problemas; entre eles: código dos equipamentos descritos incorretamente; descrição dos pontos fora do padrão pela empresa contratante; vários erros de digitação.

Além desses problemas, dois outros merecem destaque:  integradores entregam com atraso a lista de pontos; dificuldade em avaliar e corrigir eventuais erros na lista de pontos, dependendo do tipo de erro, consultas são necessárias para definir qual deve ser a correção a ser feita.

Utilizar a informação existente no Sadi em um módulo complementar, para que integradores possam gerar a lista de pontos, é essencial para aperfeiçoar o trabalho dos integradores e da empresa cliente.

Em Projeto I, pretende-se desenvolver o Gerador de Bases com uma interface web simples. O foco consistirá na criação do projeto, elaboração da árvore hierárquica e geração da base. A interface web deverá utilizar uma árvore.

Tecnologias recomendadas: Java e GXT para a interface web.

Eloi Rocha Neto / Smartiks Tecnologia

Sistema de bate-papo para redes sociais. Desenvolver um sistema de bate-bapo para o Turingo. O Turingo é uma rede social na área de turismo que será lançada brevemente.  Os usuários do Turingo são turistas e empresas interessadas em oferecer seus serviços. Um dos maiores requisitos do Turingo é ser escalável, dessa forma, ele foi concebido para que a quantidade de servidores alocados seja determinada pela quantidade de requisições.

Deseja-se construir um chat semelhante ao do facebook, entretanto os requisitos são diferentes: o chat deve ser entre empresas e turistas; um conjunto de regras de negócio serão aplicadas para definir quais empresas estão habilitadas para conversar com turistas, essas regras irão variar em função do montante pago por uma empresa, da quantidade de conversas simultâneas, dos lugares que a empresa oferece serviços, etc; relatórios estatísticos sobre a utilização do chat.

O sistema de bate-papos deve suportar centenas de milhares de conversas simultâneas.

Para Projeto I, pretende-se: Interface gráfica do chat; Teste de carga; e Integração com o Turingo.

Tecnologias recomendadas: Php, Jabber (alternativas podem ser discutidas).

Eloi Rocha Neto / Melon Tech

Aplicação móvel para o Turingo. Deseja-se construir uma versão da rede social Turingo para dispositivos móveis que usem iOS ou android.

O Turingo é uma rede social na área de turismo que será lançada brevemente.  Os usuários do Turingo são turistas e empresas interessadas em oferecer seus serviços. Entre as principais funcionalidades, podemos destacar: visualizar atualizações, seguir turistas, exibir oportunidades para os turistas, procurar lugares ou turistas ou empresas, visualizar fotos, fazer comentários, votar em comentários, fotos, etc. A comunicação entre a aplicação móvel e o backend do turingo será via REST.

Em Projeto I, pretende-se: Desenvolvimento da versão em iOS. Parcial das funcionalidades: Procurar lugares ou turistas; Visualizar atualizações; Visualizar lugares que foram ou querem ir; Visualizar turistas que foram ou querem ir para um lugar; Editar os lugares que foram ou querem ir; Visualizar publicidade; Criar conta de turista e empresa; Visualizar álbuns; e Editar perfil do turista.

Eloi Rocha Neto / Melon Tech

New SGE - Sistema de Lançamento e Processamento de Notas (Continuidade). Desenvolvimento do Módulo de Gerenciamento de Notas dos Níveis Fundamental I, Fundamental II e Ensino Médio do Novo Sistema de Gestão Escolar da Escola Virgem de Lourdes.

Vicente Araújo / Escola Virgem de Lourdes

Geração de Conteúdo para Tablets: Desenvolvimento de Aplicativos para iOS (Apple - iPad), Android (Google), Palm OS (HP), Windows Mobile (Nokia e outros) para geração e publicação de material didático instrucional e educacional em tablets e outros dispositivos móveis (Appl iPad, Samsung Galaxy Tab, entre outros).

Vicente Araújo / Núcleo de Informática de Tecnologias Educacionais da Fundação PaqTcPB

Sistema Georeferenciado para Visualização e Consulta aos Dados do Programa de Monitoramento da Qualidade dos Combustíveis. A Agência Nacional de Petróleo, Gás Natural e Biocombustíveis (ANP) é o órgão regulador das atividades que integram a indústria do petróleo e gás natural e a dos biocombustíveis no Brasil. Uma das atribuições da ANP é proteger os interesses dos consumidores quanto à qualidade dos derivados de petróleo comercializados em todo o território brasileiro (Lei do Petróleo). Com este objetivo, a ANP mantém dois programas para monitorar constantemente a conformidade da gasolina, etanol e óleo diesel e dos óleos lubrificantes comercializados nos postos revendedores do Brasil: o Programa de Monitoramento da Qualidade dos Combustíveis Líquidos – PMQC e o Programa de Monitoramento da Qualidade dos Lubrificantes – PMQL. Os resultados obtidos no PMQC e no PMQL são importante ferramenta de orientação para a área de fiscalização da ANP e também subsidiam ações dos Ministérios Públicos, Procons e Secretarias de Fazenda que tenham convênios com a ANP. A ANP disponibiliza dados dos postos de combustível de todo o país através de sua página na web (http://www.anp.gov.br), porém a apresentação desses dados não é tão amigável, nem muito difundida.

A proposta desse projeto é fazer uma aplicação móvel para melhorar a apresentação desses dados, assim como permitir algumas ações extras envolvendo geoprocessamento. A aplicação deverá comunicar ao usuário os postos dentro do raio requisitado, referente a um endereço ou posição geográfica (latitude e longitude). Para os dados que a ANP não divulga será feita uma busca na web para encontrar fontes de dados externas válidas para povoar o banco de dados da aplicação e também para mantê-lo atualizado.

Também é desejável do sistema em um segundo momento, que este seja integrado para todos os usuários, de forma a que venham trocar informações, como é de costumeiro hoje em dia pelos clientes mais informados (clientes estes, publico alvo nosso). Vale ressaltar que essa integração será feita de forma a parte, pois o sistema de apresentação dos dados da ANP não deve estar vinculado a nenhum tipo de propaganda, mas apenas em divulgação dos dados fornecidos pelo site. Desse modo, desejamos que uma rede social se comunique com a aplicação da ANP e seja criada para fins de ajudar os clientes.

 

Carlos Eduardo e Leandro Balby

Sistema Web para Gestão do grupo PET Computação – GePET (continuidade). O projeto consiste na produção de um Sistema Web para Gestão do grupo PET Computação, visando facilitar a gerência das atividades do grupo, como a geração de certificados e a produção e armazenamento de relatórios de forma automática.

Joseana

TV Phone. A ideia é permitir que o usuário faça chamadas telefônicas convencionais, inclusive videoCalls, usando os recursos da TV, ou seja, o áudio e vídeo da chamada são apresentados na TV (mainBox ligado a TV) assim como a voz do usuário é capturada por microfone conectado a ela.

Em Projeto I, pretende-se: Especificar um protocolo de sinalização de fluxo de telefonia entre o celular e o mainBox; Implementar o protocolo especificado; e Implementar uma aplicação no mainBox que utiliza o protocolo especificado para simular um telefone real na TV.

André Rodrigues / Signove

Sistema de entrega de anúncios publicitários móveis personalizados.  Pretende-se desenvolver uma aplicação que tem por objetivo mostrar que é possível maximizar os lucros dos anunciantes através da entrega direta, personalizada e oportunista do anúncio publicitário móvel, sem a necessidade de um monitoramento invasivo. O sistema se divide em duas etapas, a primeira (Projeto I) envolve o desenvolvimento de uma aplicação servidor e de uma aplicação móvel. A aplicação móvel obterá informações do contexto do usuário e passará essas informações para a aplicação servidora que, por sua vez, irá inferir através das informações do perfil do usuário, estatísticas de domínio específico (estatísticas de marketing), contexto e meta-dados do anúncio publicitário móvel, qual anúncio melhor se encaixa no gosto do usuário dado a atual situação do mesmo e envia o anúncio para a aplicação móvel que apresentará o anúncio personalizado para o usuário.

Por fim, o usuário oferecerá um feedback se tal anúncio foi realmente do seu interesse, em caso positivo, o perfil do usuário será atualizado com a sub-categoria daquele anúncio, em caso negativo, o sistema deve aprender que não deve enviar anúncios daquela sub-categoria pra aquele usuário.

Marco Rosner / Embedded

 SEI-Tur: Um ambiente de criação de roteiros turísticos e a negócios. O SEI-Tur (Serviços Especias de Informação para o Turismo) é um sistema desenvolvido, com suporte financeiro do CNPq, para desenvolver um ambiente integrado de suporte ao planejamento de viagens, sejam elas de turismo ou a negócios.

O sistema permite a organização integrada de um roteiro de viagem, incluindo os deslocamentos, hospedagem, alimentação de planejamento de atividades locais.

Seguindo o princípio da Web Semântica baseada em Arquiteturas Orientadas a Serviços  (SOA) para cada elemento do roteiro deverá ser localizado o serviço Web (Web Serviçe) adequado para a criação de um serviço composto realizando todo o roteiro.

Este Projeto terá como objetivo principal reavaliar o sistema desenvolvido implantando funcionalidades de serviços Web e incluindo o contexto geográfico na determinação dos componentes do roteiro.

Ulrich Schiel / Marcel de Andrade Sales (South Sales)

Extensão do Sistema Operacional de Bibliotecas (SOBi) para uma biblioteca digital de projetos. O SOBi é um sistema em desenvolvimento há algum tempo, tendo sido aperfeiçoado e dotado de mais funcionalidades.

O sistema realiza funcionalidades de cadastro de documentos (SECADA) seguindo os padrões bibliotecários e protocolos de comunicação (MARC, DC, Z39.50), controle de empréstimos (SEMP), serviços de consultas e reservas (SECON e SERES), subsistema de propostas de aquisição (SAQUI). Exceto o serviço de empréstimos, todos serviços podem ser realizados tanto em desktop como pela web.

Este Projeto terá como objetivo principal estender o sistema para se tornar uma fonte pesquisa mais ampla para pesquisadores, incluindo documentos digitais e não digitais, além de dados sobre pesquisadores, projetos e publicações.

Ulrich Schiel

JudLaw – Um Sistema Gerenciador de Conhecimento Legal. Os Sistemas de Gerenciamento de Conhecimento Legal (SGCL) são sistemas cuja base de dados é composta por fontes do Direito (ou fontes jurídicas), quais sejam, normas jurídicas (dispositivos legais) e documentos jurídicos (sentenças e acórdãos). Uma das funções mais importantes de um SGCL é armazenar as informações de forma estruturada, tendo como base um modelo pré-determinado.

Para este projeto pretende-se desenvolver o Módulo de Extração de Informação. As fontes jurídicas disponíveis são atualmente distribuídas em um formato não-estruturado, não compreensível para um computador. Nesse contexto, a aplicação de técnicas de Extração de Informação (EI) para a extração automática de informações relevantes dos documentos é fundamental, visando ao armazenamento estruturado dos documentos. Uma das fases da EI é o casamento de padrões, na qual são estabelecidas relações entre as informações contidas nos documentos com os campos (slots) de um template definido para o domínio de interesse.

Foi desenvolvido em uma pesquisa de Mestrado na UFCG um modelo das fontes jurídicas brasileiras (ITMJudLaw) em conjunto com sua descrição formal, utilizando a Forma Estendida de Backus-Naur (EBNF). Pretende-se utilizar essa descrição como template para a Extração de Informação de fontes do Direito, na fase de casamento de padrões.

Ulrich Schiel / Halley de Ferreira Solano de Freitas

Sistema CRM para MPEs. Desenvolver um sistema simples, incremental para CRM para automatizar relacionamentos com clientes de uma MPE. Os módulos a serem desenvolvidos (gradativamente) da solução são: 1) cadastro de clientes (nome, endereço, fone, necessidades, preferências, responsável pelo cadastro, ...); 2) Histórico de cada cliente (contatos realizados, compras feitas, solicitações ou ações pendentes - inclusive automáticas, ...); 3) Alarme de pendências (em função de tempo ou evento); Financeiro (compras efetuados, condições de pagamento, pagamentos de cada cliente, ...); e, 4) Relatórios (por cliente, por produto ou serviço vendido, por período, por responsável na empresa, ...). Preferivelmente, o sistema usará/modificará soluções Open Source, no sentido de simplificá-las (reduzir funcionalidade) e adaptá-las às necessidades da K2 Tecnologia Ltda. O desenvolvimento deverá facilitar repasse para outras equipes no futuro para efeito de treinamento de usuários, suporte, manutenção e evolução.

Karyna / K2

Tecnologia

BRisa UPnP Framework (continuidade). BRisa é um framework que permite o fácil desenvolvimento de aplicações que precisam fazer descoberta de dispositivos e serviços em uma rede. Com o BRisa é possível controlar equipamentos residenciais (televisores, portas, janelas, lampadas, cameras de segurança, ar-condicionados, aparelhos de som etc.) que sigam o padrão UPnP. O UPnP é um protocolo padronizado e já adotado por grandes empresas, mais de 800 empresas, tais como Nokia, Sony, Microsoft, Sun, Intel, IBM, Motorola, Samsung e muitas outras.

Este projeto traz como foco o desenvolvimento de aplicações baseadas no padrão UPnP e utilizando o framework BRisa para a plataforma Android. O primeiro desafio será colocar em funcionamento o referido framework para em seguida executar aplicações simples com base neste framework. Alcançada esta etapa, os alunos desenvolverão aplicações multimídia e outras relacionadas à proposta do UPnP utilizando o referido framework.

BRisa UPnP Framework / Leandro

Esqueleto para fechamento de Projeto

Aqui

Conduta Recomendada no Projeto

Sugere-se que as equipes sigam o processo  XP1. Quaisquer necessidades de ajustes, favor consultar o professor.

Os alunos participantes em projetos de computação devem estar atentos aos seguintes aspectos chaves para o sucesso no desenvolvimento e na gerência do ciclo de desenvolvimento de sistemas de software:

BD10268_ Estude bem o processo XP1 antes de começar o seu projeto.

BD10268_ Defina bem como o processo é gerenciado.

BD10268_ Escolha o papel das pessoas do projeto:

o   Comece o seu planejamento pela definição de papéis e datas envolvidas

BD10268_ Defina quando e onde será a reunião semanal obrigatória de acompanhamento

BD10268_ Defina alguns aspectos operacionais do processo:

BD10268_ Planejar o semestre (o cronograma)

BD10268_ Executar o projeto com altas chances de sucesso!

BD10268_   No final do semestre, preparar e entregar uma cópia completa (zipada) de tudo que foi realizado, incluindo código, home page, documentos, artefatos, relatório final.

O que se espera dos alunos

Aceitar responsabilidades em quantidade aproximadamente igual entre os alunos da equipe

BD10268_ Manter a home page do projeto

BD10268_ Participar de todas as reuniões de acompanhamento da equipe

BD10268_ Participar de todas as reuniões de acompanhamento da disciplina

BD10268_ Liderar a equipe de desenvolvimento pelo menos uma vez no semestre

BD10268_ Participar da elaboração do relatório final

O que se espera do gerente

Dedicar pelo menos 2 ou 3 horas por semana pensando na gerência do projeto, mesmo que você tenha outras atribuições de programador

Ter certeza que cada pessoa do time tenha tarefas alocadas

Conversar com cada membro do time, pelo menos 1 vez por dia sobre o andamento   das tarefas. Bastam alguns minutos

Manter o Big Chart atualizado

Identificar problemas com o cumprimento dos milestones o mais rapidamente possível e bolar planos de recuperação

BD10268_  Liderar a reunião semanal de acompanhamento (1 hora)

BD10268_  Manter a home page do projeto atualizada

BD10268_  Ver detalhes no processo XP1

 

Datas Importantes

(Todas as avaliações serão na sala CD-107, seguindo a ordem de apresentação dos Grupos descrita na tabela acima. Cada grupo terá 20 minutos para sua apresentação).

Evento (*)

Data

Definição projetos/equipes

02 Março

Avaliação Planejamento (Estórias de uso, Requisitos Não Funcionais, Projeto Arquitetural, Plano de Releases, Plano da Iteração UM, Site do Projeto publicado + Ambiente de Trabalho organizado)

04 Abril

Avaliação (em pares) do Projeto Arquitetural

11 Abril

Avaliação Iteração 1

25 Abril

Avaliação Iteração 2

09 Maio

Avaliação Iteração 3

23 Maio

Avaliação Iteração 4

06 Junho

Avaliação Iteração 5

27 Junho

(*) Observe que deverão ser entregues duas (máximo três) Releases, cabendo ao cliente definir com as equipes quais iterações fecham Releases.

 

Evento

Fevereiro

Março

Abril

Maio

Junho

Aulas

14, 16, 21, 23, 28

02

 

 

 

Definição projetos/equipes

      

02

 

 

 

Avaliação Planejamento (duas etapas)

 

04   11

 

 

Avaliação Iteração 1

 

                 25

 

 

Avaliação Iteração 2

 

 

  09

 

Avaliação Iteração 3

 

 

          23

 

Avaliação Iteração 4

 

 

 

06

Avaliação Iteração 5

 

 

 

         27

 

Avaliação

A avaliação será contínua e evolutiva. O sucesso (definido com o cliente) do projeto será o sucesso da equipe – na sua forma mais visível. A atividade de gerência do projeto impactará no sucesso do projeto. O acompanhamento do professor da disciplina, através de check list (quinzenal), servirá de feedback para a equipe se aprimorar.

 

Links Interessantes

XP - eXtreme Programming, difundido por Kent Beck. XP procura colocar em prática quatro valores: comunicação, feedback, simplicidade e coragem. Links: http://www.extremeprogramming.org/; http://xprogramming.com/

 

Código Aberto. "Open Source" trata-se hoje de um estilo de software - não deve ser confundido com um processo. Porém, existem condutas diferenciadas para se gerenciar tarefas numa comunidade destas e, muitas destas condutas são aplicadas também em projetos que não visam o código aberto. Em particular, códigos abertos são gerados por equipes distribuídas geograficamente, e os testes são concorrentes, onde muitas pessoas enviam dicas de como os criadores podem achar e eliminar bugs. Links: www.tuxedo.org/~esr/writings/cathedral-bazaar e http://code.google.com/intl/pt-BR/

 

Desenvolvimento Adaptativo. Este tipo de metodologia, apresentada no livro de Jim Highsmith -  Adaptive Software Development (Dorset House, 1999), não oferece uma prática detalhada como XP, mas sugere uma base fundamental sobre a importância de se tratar desenvolvimento de software na forma de processos adaptativos.

 

Scrum. Este método apresenta uma conduta que busca pela estabilização dos requisitos através de uma subdivisão do projeto em "sprints" de 30 dias cada. Cada sprint deve definir uma dada funcionalidade que deve ser obtida em 30 dias. Todo o processo deve apresentar um planejamento iterativo. Links: http://www.mountaingoatsoftware.com/ e http://sprintometer.com/

 

Desenvolvimento Orientado à Funcionalidade. (Feature Driven Development) FDD foi desenvolvido já a algum tempo por Peter Coad, guro de OO. Como outras metodologias adaptativas, foca na entrega de pequenas iterações com a presença de alguma funcionalidade tangível - em geral, ocorrem ao longo de duas semanas. FDD apresenta cinco processos: três deles (desenvolver um modelo, construir uma lista de funcionalidades e planejar cada uma delas) são realizados no início de cada projeto. Os dois últimos (projeto de cada funcionalidade e sua construção) são completados dentro de cada iteração. Mais informações: Coad's Java Modeling in Color with UML (Prentice Hall, 1999).

 

*    Arquitetura (1).

*    Arquitetura (2).

*    Arquitetura (3).