ufpe reuso de requesitos em cloud computing__artigo rnf cloud

30
UMA ANÁLISE PARA APOIO A DEFINIÇÃO DE UM PROCESSO DE REUSO DE REQUISITOS EM CLOUD COMPUTING Carlos dos Santos Portela [email protected] Universidade Federal de Pernambuco Centro de Informática Mestrado em Ciências da Computação isciplina: IN1149 - Qualidade, Processos e Gestão de Software rofessores: Alexandre Vasconcelos e Cristine Gusmão

Upload: sergiofbrandao

Post on 09-Feb-2017

122 views

Category:

Technology


1 download

TRANSCRIPT

UMA ANÁLISE PARA APOIO A DEFINIÇÃO DE UM PROCESSO DE REUSO DE REQUISITOS EM

CLOUD COMPUTINGCarlos dos Santos Portela

[email protected]

Universidade Federal de Pernambuco Centro de Informática

Mestrado em Ciências da Computação

Disciplina: IN1149 - Qualidade, Processos e Gestão de Software Professores: Alexandre Vasconcelos e Cristine Gusmão

UNIVERSIDADE FEDERAL DE PERNAMBUCO

Introdução Metodologia de Pesquisa Resultados da Pesquisa Proposta de Reutilização de RNFs

– Metodologia Feature-Oriented Domain Analysis– Processo de Reuso

Conclusões e Trabalhos Futuros Referências

2

ESTRUTURA DO ARTIGO

UNIVERSIDADE FEDERAL DE PERNAMBUCO

INTRODUÇÃO

3

Fonte: MEIRA, 2010

o dilúvio informacionalem 2010, a quantidade de informação gerada no planeta será duas vezes maior do que o armazenamento disponível para guardá-la.e a escala do gráfico está em exabytes [são dezoito zeros] e os valores envolvidos já estão na casa dos milhares de exabytes [ou zettabytes].todas as conversas telefônicas do planeta; todas as imagens de todas as câmeras; mais todos os livros digitados; etc.

UNIVERSIDADE FEDERAL DE PERNAMBUCO

Cloud Computing é baseado em uma coleção de muitos antigos e alguns novos conceitos em diversos campos de pesquisa como SOA, computação distribuída e grid, bem como a virtualização.[Youseff et al., 2010]

4

CLOUD COMPUTING

UNIVERSIDADE FEDERAL DE PERNAMBUCO

Computação na Nuvem está se tornando uma das mais importantes temáticas de pesquisa em Engenharia de Software;

Vários estudos estão sendo realizados para analisar os impactos deste novo paradigma;

Porém, há poucos trabalhos disponíveis que analisam os impactos deste no processo de desenvolvimento de software;

De acordo com Breitman (2010), um bom ponto de partida seria analisar os impactos deste novo paradigma nos requisitos (RNFs).

5

CONTEXTO

UNIVERSIDADE FEDERAL DE PERNAMBUCO

Se os RNFs não forem tratados de maneira adequada, uma série de problemas em potencial podem vim a ocorrer [Mairiza, 2007];

E no contexto de Computação na Nuvem, a negligenciação destes RNFs é ainda mais crítica pois pode afetar seriamente a qualidade do serviço;

– Implicar em eventuais penalidades previstas em SLA Objetivo da pesquisa apresentada neste artigo é:– Relatar uma revisão da literatura disponível sobre requisitos em Computação na Nuvem;– Propor uma Processo de Reuso de Requisitos para Computação na Nuvem.

6

PROPOSTA DO ARTIGO

UNIVERSIDADE FEDERAL DE PERNAMBUCO

A pesquisa foi realizada em 14 fontes de informações publicadas nos últimos cinco anos; A maioria das fontes pesquisadas são:i. artigos publicados em periódicos internacionais;ii.artigos publicados em periódicos nacionais reconhecidos;iii.livros publicados por editores reconhecidos;iv.teses e dissertações.

METODOLOGIA DE PESQUISA

7

UNIVERSIDADE FEDERAL DE PERNAMBUCO

PORTAIS DE PERIÓDICOS

8

UNIVERSIDADE FEDERAL DE PERNAMBUCO

“Nuvens são grandes repositórios de recursos virtualizados (hardware, plataformas de desenvolvimento e/ou serviços), facilmente acessíveis. Estes recursos podem ser reconfigurados dinamicamente de modo a se ajustar a cargas variadas, otimizando a utilização destes mesmos recursos. Este repositório de recursos é tipicamente explorado utilizando-se um modelo do tipo pagamento-por-uso, onde os fornecedores de infra-estrutura oferecem garantias no formato de SLAs customizadas.” [Vaquero et al., 2008]

CONCEITOS ABORDADOS

9

UNIVERSIDADE FEDERAL DE PERNAMBUCO

Requisitos Não-Funcionais podem ser definidos sob duas perspectivas diferentes [Mairiza et al., 2007]:(1) RNFs como os requisitos que descrevem as propriedades, características ou limitações que um sistema de software deve apresentar; e

(2) RNFs como os requisitos que descrevem os atributos de qualidade que o produto de software deve ter.

CONCEITOS ABORDADOS

10

UNIVERSIDADE FEDERAL DE PERNAMBUCO

– Qual a quantidade de publicações disponíveis sobre requisitos e Computação na Nuvem?

– Quais os principais requisitos de um ambiente de Computação na Nuvem?

– Qual a definição e atributos destes requisitos de Computação na Nuvem?

QUESTÕES BASES

11

UNIVERSIDADE FEDERAL DE PERNAMBUCO

PALAVRAS-CHAVE DE BUSCA

12

PALAVRAS-CHAVE SINÔNIMOS

Cloud Computing Não se aplica

Requirements

Quality Attributes, Architecture Requirements, Non-Functional Requirements, Development Constraints, Business Rules

COMBINAÇÕES

“Requirements Cloud Computing” OR “Architecture Requirements Cloud Computing” OR “Quality Attributes Cloud Computing” OR “Non-Functional Requirements Cloud Computing” OR “Development Constraints Cloud Computing” OR “Business Rules Cloud Computing”

UNIVERSIDADE FEDERAL DE PERNAMBUCO

RESULTADOS DA PESQUISA

13

TIPOS DE LITERATURA NÚMERO DE LITERATURA

Artigos publicados em períodicos internacionais 7

Artigos publicados em períodicos nacionais 2

Livros publicados por editores reconhecidos 4

Teses e dissertações 1

UNIVERSIDADE FEDERAL DE PERNAMBUCO

35 TIPOS DE RNFS

14

UNIVERSIDADE FEDERAL DE PERNAMBUCO

• Estes RNFs podem ser categorizados: SLAs, Arquitetura, Serviços, etc;

• Confiabilidade, Disponibilidade e Escalabilidade são os 3 principais tipos de RNFs em Cloud Computing;

• Alguns tipos de RNFs também são reconhecidos como atributos de outros RNFs [Mairiza et al., 2007].

ANÁLISE DOS RESULTADOS

15

UNIVERSIDADE FEDERAL DE PERNAMBUCO

• De acordo com Pimentel (2008), o reuso de software é o reuso de tudo associado a um projeto de software, inclusive conhecimento;

• No contexto de requisitos, reuso é um processo onde se faz o uso sistemático de documentos de requisitos visando reduzir o esforço dentro do ciclo de vida do software;

PROPOSTA DE REUTILIZAÇÃO

16

UNIVERSIDADE FEDERAL DE PERNAMBUCO

• Os softwares desenvolvidos para as nuvens são caracterizados por uma alta modularidade e configurabilidade, apresentando requisitos bastante comuns entre as aplicações;

• Propõe-se um processo que promova a reutilização de requisitos com base na Engenharia de Domínio.

ENGENHARIA DE DOMÍNIO

17

UNIVERSIDADE FEDERAL DE PERNAMBUCO

• Como entrada do processo de Análise de Domínio, temos informações obtidas na literatura, em artefatos de sistemas já existentes, em pesquisas de mercado, em requisitos de sistemas e em especialistas;

• Como resultado final, temos o modelo de domínio, que pode compreender sua taxonomia, seus padrões, seus modelos funcionais e sua linguagem.

ENGENHARIA DE DOMÍNIO

18

UNIVERSIDADE FEDERAL DE PERNAMBUCO

• A metodologia FODA – Feature-Oriented Domain Analysis [Kang, 1990] se originou de um estudo de diferentes abordagens de Análise de Domínio, e provê o reuso não só de requisitos como também de arquitetura;

• Para atender este objetivo, FODA se divide em três fases: Análise de Contexto, Modelagem de Domínio e Modelagem de Arquitetura.

METODOLOGIA FODA

19

UNIVERSIDADE FEDERAL DE PERNAMBUCO

• Define-se o escopo do domínio a ser explorado;

• Analisa-se os relacionamentos entre o domínio e elementos externos, e as possíveis variações são avaliadas;

• O resultado final desta fase é o documento de modelo de contexto, que define as fronteiras do domínio.

ANÁLISE DE CONTEXTO

20

UNIVERSIDADE FEDERAL DE PERNAMBUCO

• Identifica-se as similaridades e as diferenças que caracterizam as aplicações do domínio.

– Análise de características: nesta atividade se identifica as características dos sistemas que são visíveis ao consumidor ou usuário final;

– Modelagem entidade-relacional: nesta atividade se identifica e define o conhecimento de domínio que é essencial para a implementação de aplicações nesse domínio;

– Análise funcional: nesta atividade se identifica as funcionalidades em comum e diferenças funcionais das aplicações do domínio.

MODELAGEM DE DOMÍNIO

21

UNIVERSIDADE FEDERAL DE PERNAMBUCO

• É gerado um modelo de arquitetura, a partir do qual um projeto detalhado e a construção de componentes podem ser feitos;

• A arquitetura é dividida em camadas, visando facilitar o reuso;

• O escopo deste trabalho não abrange a definição de arquitetura (está fase não será adotada na proposta).

MODELAGEM ARQUITETURAL

22

UNIVERSIDADE FEDERAL DE PERNAMBUCO

PROCESSO DE REUSO

23

A fase de Engenharia de Requisitos diz respeito a fase já estabelecida na organização, que deseja desenvolver com reuso.

UNIVERSIDADE FEDERAL DE PERNAMBUCO

ENGENHARIA DE REUSO

24

A fase de Engenharia de Reuso compreende o desenvolvimento para reuso, e deve ser executada antes da primeira execução da fase de Engenharia de Requisitos.

UNIVERSIDADE FEDERAL DE PERNAMBUCO

ANÁLISE DE CONTEXTO

25

Analista do Domínio

Especialista do Domínio

Modelar Domínio

Glossário

Modelo de Contexto

(Descrição)

Modelar Contexto

Modelo de Contexto (Fontes de Informação)

Solicitação de Revisão

Elicitar Conhecimento

Identificar Fontes de

Informação

Modelo de Contexto (Diagrama de Contexto)

Revisão de Domínio

Sim

N

ão

O Modelo é satisfatório?

UNIVERSIDADE FEDERAL DE PERNAMBUCO

MODELAGEM DE DOMÍNIO

26

Especialista do Domínio

Analista do Domínio

Elicitar Conhecimento

Glossário

Modelo de Contexto

Modelo de Domínio (Características)

Analisar Características

Modelar Diagrama E-R

Modelo de Domínio (Diagrama E-R)

O Modelo é satisfatório?

Cliente

Aceitar Modelo

Não Sim

UNIVERSIDADE FEDERAL DE PERNAMBUCO

Espera-se contribuir para a comunidade de pesquisa em ES de três maneiras:(1)para melhorar a compreensão sobre a abordagem de RNFs em Computação na Nuvem; (2)para uxiliar desenvolvedores a conhecer e lidar de maneira adequada com os RNFs em projetos de softwares de Computação na Nuvem; e(3)espera-se que os principais RNFs em ambientes de Computação na Nuvem, apresentados neste trabalho possam auxiliar desenvolvedores na constituição de seus repositórios de reuso.

CONCLUSÕES

27

UNIVERSIDADE FEDERAL DE PERNAMBUCO

• Dissertação de mestrado, que pretende definir um Processo e um repositório de RNFs para Reuso em projetos de Computação na Nuvem;

• Validação em um Estudo de Caso;• Análise detalhada dos impactos desse

novo paradigma na atual Engenharia de Requisitos.

TRABALHOS FUTUROS

28

UNIVERSIDADE FEDERAL DE PERNAMBUCO

• Baca, S. (2010) “Cloud Computing: What It Is and What It Can Do for You”. Global Knowledge Training LLC.

• Breitman, K. (2010) “Computação na Nuvem”, Em: Atualizações em Informática 2010, Editado por Wagner Meira Jr. e André C. P. L. de Carvalho & PUC-Rio, Rio de Janeiro; Sociedade Brasileira de Computação, Porto Alegre.

• CAPES (2010). Documento de Área – Ciência da Computação. Disponível em http://www.capes.gov.br/images/stories/download/avaliacao/COMPUTACAO_05mar10.pdf. Último acesso em 20/10/2010.

• Kang, K. (1990). Feature-Oriented Domain Analysis (FODA). Software Engineering Institute, Carnegie Mellon University, Pittsburgh, EUA.

• Kolisco, L. (2009) “SLA in Cloud Computing”. Disponível em http://blogs.sun.com/lkolisko/entry/slas_in_cloud_computing. Último acesso em 19/10/2010.

REFERÊNCIAS

29

UNIVERSIDADE FEDERAL DE PERNAMBUCO

• Lee, J. Y., Lee, J. W., Cheun, D. W., Kim, S. D. (2009) “A Quality Model for Evaluating Software-as-a-Service in Cloud Computing”. Seventh ACIS International Conference on Software Engineering Research, Management and Applications.

• Mairiza, D., Zowghi, D., Nurmuliani, N. (2007) “An Investigation into the Notion of Non-Functional Requiriments”. University of Technology Sydney, Australia.

• Motahari-Nezhad, R. H., Stephenson, B., Singhal, S. (2009) “Outsourcing Business to Cloud Computing Services: Opportunities and Challenges”. IEEE Internet Computing, Special Issue on Cloud Computing.

• OMG (2005) “OMG Middleware Specifications”. Software Process Engineering Metamodel, v1.1.

• Pimentel, J. H. C. (2008) “Adequação de um Processo de Reuso de Requisitos a uma Empresa Desenvolvedora de Software”. Trabalho de Graduação, CIn/UFPE, Recife, Brasil.

• Silveira, M. C. S. P. (2006) “A Reutilização de Requisitos no Desenvolvimento e Adaptação de Produtos de Software”. Dissertação de Doutorado, Faculdade de Engenharia – Universidade do Porto, Portugal.

REFERÊNCIAS

30