Arquitetura de Software: Sistemas RNA e Ava...

27
Arquitetura de Software: Sistemas RNA e Ava Edulivre 1 Ana Claudia Costa, Rharon Maia, Wolgrand Cardoso

Transcript of Arquitetura de Software: Sistemas RNA e Ava...

Arquitetura de Software: Sistemas RNA e Ava Edulivre

1Ana Claudia Costa, Rharon Maia, Wolgrand Cardoso

• Surgiu na década de 80 e hoje é amplamenteusado.

• Permite que projetistas de softwareidentifiquem aspectos importantes no iníciodo projeto.

• Torna o desenvolvimento de sistemas maisfácil de ser gerenciado.

• Arquitetura de software é utilizada emdiversos projetos do LAVID/UFPB, como porexemplo EduLivre e RNA 2

Arquitetura de Software

“a estrutura ou estruturas do sistema, queincluem componentes de software, aspropriedades externamente visíveis dessescomponentes, e as relações entre eles.“

[BASS, 2003]

3

Conceito – Arquitetura de Software

• Modelo em camadas

• Modelo cliente-servidor

4

Estilos Arquiteturais

• Modelo composto por um conjunto de camadas.

• Cada camada fornece um conjunto de serviços.

• Também conhecido como modelo de máquina abstrata.

5

Modelo em camadas

• Baseado em clientes, servidores e serviços.• Servidores fornecem serviços para os demais

subsistemas.• Clientes são os consumidores dos serviços

fornecidos pelos servidores.• Caso não estejam na mesma máquina é

utilizada uma rede para permitir a comunicação entre clientes e servidores.

6

Modelo cliente-servidor

“um framework é a abstração eimplementação para uma aplicação em um dadodomínio do problema”. [MATTSON, 2002]

• É uma parte que pode ser usada em diversos projetos e que em conjunto com outros componentes, completam uma aplicação.

7

Conceito - Framework

• Facilidade de detecção de erros.• Otimização de recursos.• Maior produtividade • Inclui código.

8

Framework

O que é Rede Nordestina Audiovisual (RNA)?

• É um portal de compartilhamento da produção audiovisual, focando em curtas-metragens em alta resolução.

• Surgiu com a preocupação de criar um portal diferenciado:• um conteúdo selecionado;• disponibilização de download em dois formatos;• fórum com as principais temáticas, permitindo que o usuário entre

em comunicação com um público mais específico por se tratar deescopo apenas nacional ou até mesmo com os produtores.

9

10

11

Caso de Uso do RNA

Projeto e AVA EDULIVRE

• Desenvolvimento de tecnologias educacionais livres.

• Ambiente Virtual de Aprendizagem.– Alunos e professores do ensino primário.– Escolas públicas.– Inclusão digital.

Projeto e AVA EDULIVRE

Casos de Uso do AVA EDULIVRE

Visão de Componentes

• “É uma descrição da implementação dos módulos e suas dependências”.

Visão de Componentes

Preparar os dados a serem apresentados na interface

Responsável pela interação com o usuário.

Implementam funções que usam os DAOs para acessar a base de

dadosObtém conexões e faz consultas na

base de dados

Possui classes que abstrai as tabelas do BD para Objetos.

Possui os dados persistentes do sistema

Visão de Implementação

• Quando explodimos os pacotes do diagrama de implementação, conseguimos enxergar as classes do código do sistema e as relações entre elas então chegamos à visão de implementação do software.

Visão de Implementação do AVA EDULIVRE

Visão de Implementação do RNA

20

Visão de dados – RNA e EduLivre

• Dá uma base para compreender a distribuição do banco do sistema.

• Banco de dados semelhantes.• SGBD utilizado: PostgreSql.

21

Visão de dados – RNA E AVA EDULIVRE

22

Visão de Implantação

• Dá uma base para compreender a distribuição física do sistema.

• Ilustra a distribuição do processamento em um conjunto de nós do sistema, incluindo a distribuição física e dos processos.

23

Visão de Implantação

• Outras arquiteturas poderiam ter sido utilizadas, mas optamos por usar a MVC.

• Arquitetura é fundamental para que o software possa ser implementado de forma mais organizada.

24

Considerações Finais

• BASS, L. et al. Software Architecture in Practice. 2003.• BRAGA, Wolgrand C. Jr. Modelagem e Implementação de um Repositório de Dados Multimídia para o

Projeto EDULIVRE. Universidade Federal da Paraíba. João Pessoa, PB, 2010.• BREDEMEYER, Dana e MALAN, Ruth. Software Architecture: Central Concerns, Key Decisions.• CHEN, Yao et al. A Ten-Year Survey of Software Architecture. 2010• GERMOGLIO, Guilherme. Fundamentos da Arquitetura de Software. Disponível em <

http://cnx.org/content/m17524/latest/ >. Ultimo acesso em 18 de outubro de 10.• GUEDES, Rharon M. Modelagem e Implementação de um Repositório de Dados Multimídia para o

Projeto Rede Nacional de Audiovisual – RNA. Instituto Federal da Paraíba. João Pessoa, PB, 2010. • LEAL, Sidney. Arquiteturas de Sistemas WEB. Disponível em <

http://karolina.com.br/aulas/DWA/Aula%2006%20Sidney.pdf >. Ultimo acesso em 18 de outubro de 2010.• MATTSSON, Michael & BOSCH, Jan. Framework Composition: Problems, Causes and Solutions. University

of Karlskrona/Ronneby, Department of Computer Science and Business Administration. 2002• NETO, Kanji H. Desenvolvimento de Sistemas WEB Utilizando Arquitetura em Três Camadas. Disponível

em < http://inf.unisul.br/~ines/workcomp/cd/pdfs/2905.pdf >. Ultimo acesso em 18 de outubro de 2010.• PRESSMAN, Roger S. Engenharia de Software. 6ª edição.• SHAHID, Arshad A. Survey of Software Architecture Description and Usage in Software Industry of

Pakistan. International Conference on Emerging Technologies. 2009• SHAW, Mary and CLEMENTS, Paul. The Golden Age of Software Architecture. IEEE Sofware, pp.31-39,

Março/Abril de 2006.• SOMMERVILLE, Ian. Engenharia de Software. 8ª edição, editora Pearson Addison-Wesley, 2007. São Paulo.25

Referências

• Ana Claudia - [email protected]• Rharon Maia - [email protected]• Wolgrand Cardoso - [email protected]

26

Contatos

27

Perguntas?