1psl – ufla - especializaçãojunier amorim – eng. computação sistema gerenciador de...

28
1 PSL – UFLA - Especialização Junier Amorim – Eng. Computação Sistema Gerenciador de Sistema Gerenciador de Componentes para Reuso Componentes para Reuso - SGCR - - SGCR -

Upload: adelino-ferreira-barreto

Post on 07-Apr-2016

216 views

Category:

Documents


0 download

TRANSCRIPT

1PSL – UFLA - Especialização Junier Amorim – Eng. Computação

Sistema Gerenciador de Sistema Gerenciador de Componentes para ReusoComponentes para Reuso

- SGCR -- SGCR -

PSL – UFLA - Especialização 2 Junier Amorim – Eng. Computação

SumárioSumário

1. A equipe de trabalho2. Componente de Software3. Problemática encontrada em um ambiente de

desenvolvimento colaborativo4. O SGCR5. Testes6. Demonstração7. Conclusão8. Considerações finais

PSL – UFLA - Especialização 3 Junier Amorim – Eng. Computação

1. A equipe de trabalho1. A equipe de trabalho

PSL – UFLA - Especialização 4 Junier Amorim – Eng. Computação

1. A equipe de trabalho1. A equipe de trabalho Integrantes:

Orientador: Prof. Mário Luiz Orientando: Junier Amorim (Eng. Compt)

Funções desempenhadas: analista, projetista, arquiteto e programador.

Comunicação: Skype, MSN, e-mail e Moodle

Repositório: Googlecode

PSL – UFLA - Especialização 5 Junier Amorim – Eng. Computação

2. Componente de Software2. Componente de Software

PSL – UFLA - Especialização 6 Junier Amorim – Eng. Computação

2. Componente de Software2. Componente de Software O que é um componente?

Mais amplo do que classes (POO); É um provedor de serviços que não se

preocupa com o local onde está sendo executado (distribuído) ou com a linguagem de programação;

É uma entidade executável independente que pode ser construída a partir de um ou mais objetos executáveis;

[SZYPERSKI, 2002]

PSL – UFLA - Especialização 7 Junier Amorim – Eng. Computação

2. Componente de Software2. Componente de Software Necessidade de possuir interfaces bem

definidas; Possibilidade de visualizar o

funcionamento como uma “caixa-preta”;

PSL – UFLA - Especialização 8 Junier Amorim – Eng. Computação

2. Componente de Software2. Componente de Software

Por que reinventar ????? Prazos Custos Pessoal Qualidade

PSL – UFLA - Especialização 9 Junier Amorim – Eng. Computação

2. Componente de Software2. Componente de Software Solução: REUTILIZAR partes ou

a totalidade de um software na construção de outro;

Componentes podem ser reutilizados;

Engenharia de Software baseada em Componentes (ESBC): Engenharia de Software baseada no reuso mais intenso => Surgiu da frustração do pouco reuso na POO [Pressman, 2005];

Preocupação com a qualidade dos componentes gerados.

PSL – UFLA - Especialização 10 Junier Amorim – Eng. Computação

2. Componente de Software2. Componente de Software

PSL – UFLA - Especialização 11 Junier Amorim – Eng. Computação

3. Problemática encontrada em um 3. Problemática encontrada em um ambiente de desenvolvimento ambiente de desenvolvimento

colaborativocolaborativo

PSL – UFLA - Especialização 12 Junier Amorim – Eng. Computação

3. Problemática encontrada em um 3. Problemática encontrada em um ambiente de desenvolvimento colaborativoambiente de desenvolvimento colaborativo

O que o cliente quer é algo realmente novo ?

PSL – UFLA - Especialização 13 Junier Amorim – Eng. Computação

3. Problemática encontrada em um 3. Problemática encontrada em um ambiente de desenvolvimento colaborativoambiente de desenvolvimento colaborativo

Quando um programador demora muito tempo para encontrar uma solução implementada, ele termina por desenvolver uma solução própria

[PRESSMAN, 2005]

PSL – UFLA - Especialização 14 Junier Amorim – Eng. Computação

3. Problemática encontrada em um 3. Problemática encontrada em um ambiente de desenvolvimento colaborativoambiente de desenvolvimento colaborativo

A busca pelo componente deve gerar resultados rápidos, evitando a reconstrução de componentes.

PSL – UFLA - Especialização 15 Junier Amorim – Eng. Computação

4. O SGCR4. O SGCR

PSL – UFLA - Especialização 16 Junier Amorim – Eng. Computação

4. O SGCR4. O SGCR

Sistema Gerenciador de Componentes para Reuso

Objetivo principal: agrupar, de maneira segura e eficiente, todas as informações (metadados) dos componentes armazenados em um sistema de controle de versão (Subversion), além de possibilitar a obtenção dos mesmos.

PSL – UFLA - Especialização 17 Junier Amorim – Eng. Computação

4. O SGCR4. O SGCR

PSL – UFLA - Especialização 18 Junier Amorim – Eng. Computação

4. O SGCR4. O SGCR

Características do sistema: Flexibilidade e robustez Multiplataforma Controle de acesso Integração com o Subversion Fácil manutenção (arquitetura bem definida)

PSL – UFLA - Especialização 19 Junier Amorim – Eng. Computação

4. O SGCR4. O SGCR Servidor de

aplicação: Tomcat 6.0.10 (container JSP)

JAVA 1.6 BD:

PostgreSQL8.2 Framework

SVN: SVNKit Hibernate

(annotations)

MyFaces 1.1.5

SVNKit

PSL – UFLA - Especialização 20 Junier Amorim – Eng. Computação

4. O SGCR4. O SGCR

Arquitetura bem definida em camadas:

21PSL – UFLA - Especialização Junier Amorim – Eng. Computação

5. Testes5. Testes

PSL – UFLA - Especialização 22 Junier Amorim – Eng. Computação

5. Testes5. Testes

Metodologia Implantação do sistema em ambiente

corporativo durante 15 dias Usuários (grupo controlado) reportaram bugs

e sugestões Sugestão documentada para versão futura

(interação com o Maven)

PSL – UFLA - Especialização 23 Junier Amorim – Eng. Computação

6. Demonstração6. Demonstração

Screenshots

PSL – UFLA - Especialização 24 Junier Amorim – Eng. Computação

7. Conclusão7. Conclusão

PSL – UFLA - Especialização 25 Junier Amorim – Eng. Computação

7. Conclusão7. Conclusão Aplicabilidade comprovada do sistema; O reuso em série exige a organização e

documentação dos componentes gerados; Simplicidade e Utilidade; Reaproveitamento do sucesso do

Subversion; Arquitetura bem definida: possibilidade de

incorporar novas funcionalidades;

PSL – UFLA - Especialização 26 Junier Amorim – Eng. Computação

8. Considerações Finais8. Considerações Finais

PSL – UFLA - Especialização 27 Junier Amorim – Eng. Computação

8. Considerações Finais8. Considerações Finais Os recursos economizados com o reuso de

componentes são fundamentais para colocar um projeto dentro de um cronograma planejado;

Surge a necessidade do papel do Gerente de Configuração, que torna-se responsável pelo gerenciamento dos componentes produzidos e que estão em condições de serem reutilizados;

Um componente deve possuir uma estrutura bem definida, seguindo padrões de qualidade e boa documentação para ser considerado reutilizável.

PSL – UFLA - Especialização 28 Junier Amorim – Eng. Computação

Obrigado !Obrigado !