Artigo: Quality-Based Software Reuse
Introdução Reuso de software tem sido utilizado para reduzir custo de desenvolvimento e melhorar qualidade. Reuso só tem foco nas funcionalidade Propriedades não funcionais (qualidade) também devem ser consideradas Dificuldade de incorporar requerimentos de qualidade em métodos de reuso: A qualidade é difícil de reconhecer já que é uma informações transversal
Introdução Para resolver utiliza: NFRs Goal-orietated requirementes Programação orientado a aspecto (AOP) Reuso de software Gerenciamento de qualidade Define um processo que usa uma biblioteca para achar características de qualidade e aplica descrição funcional do software.
Goals, Aspectos e Reuso Os NFR são tratados como softgoals Utiliza um grafo de dependências entre goals, mostrando influencia positiva e negativa entre eles.
Goals, Aspectos e Reuso Goals Interesses do stackholders Requisitos orientado a goal é focado em goals que são “precusores dos requisitos”
Goals, Aspectos e Reuso Utiliza modelo de goal que representa goal, tarefas e softgoal
Goals, Aspectos e Reuso Aspecto: Diferença entre Programação Estruturada e Programação Orientada a Aspecto (AOP) Em AOP a responsabilidade onde um aspecto é necessitado depende do próprio aspecto.
Goals, Aspectos e Reuso Aspecto É simples utilizar linguagem orientada a aspecto para resolver as informações transversais Os NFR serão representados utilizando aspecto
Goals, Aspectos e Reuso Reuso: Krueger define processos chaves para reutilizar artefatos de software: Classificação: organiza as informações armazenadas para possibilitar pesquisa. Abstração: ajuda entendimento tirando detalhes de baixo nível e de implementação. Seleção: Ser possível escolher um artefato para reutilizar. Especialização: Um artefato pode ser modificado para poder ser reutilizado. Integração: Unir o artefato com o contexto que está sendo inserido.
Representação dirigida a goal e aspecto Obstáculos para reutilizar qualidade de software: Uso de catálogos não são suficientes para suportar reuso de qualidade já que não faz relação clara com as funcionalidades  As linguagens de representação de software não inclui conceitos não funcionais.  A seleção de um ponto especifico onde o NFR está sendo usado só é possivel se tiver um link entre os pontos que contem a NFR A especialização de um NFR em outro contexto também é complexo divido a transversalidade. A integração deve ter uma interface bem definida tanto para o elemento reutilizado quanto o novo contexto.
Representação Orienteda a objetivo e aspecto Aspecto de goal Tem representação gráfica chamada V-graph Relacionar modelos representando requisitos funcionais e modelos representando NFR. Utilizado para elícita aspectos.  Esse graficos ajuda integração,  especialização e seleção mas não suporta classificação e abstração .
Representação Orienteda a objetivo e aspecto Linguagem para organizar qualidades (Q7) Contemplar classificação e abstração.  A linguagem não só suporta características de qualidade como relaciona descrições funcionais.  Para isso é necessário representação para: Função, tópicos, tipos de qualidade, pré-condição, poincuts, estruturas de contribuição e operacionalização de qualidade.  Para resolver foi utilizado a classificação 5W2H.
Representação Orienteda a objetivo e aspecto Linguagem para organizar qualidades (Q7) Why? O que está querendo ser reutilizado Who? O destino principal do atributo de qualidade What? Seria o topico no NFR framework Where? O endereço especifico da qualidade do artefato. When? Indica a pré-condição mantida antes da operacionalização  How? Operacionalização dos NR How much? São os links de contribuição entre as operacionalizações e os NFR.
Representação Orienteda a objetivo e aspecto Linguagem para organizar qualidades (Q7)
Representação Orienteda a objetivo e aspecto Linguagem para organizar qualidades (Q7) ` Provê relacionamento especifico entre funcionalidades e preocupações de qualidade
Processo de reuso de qualidade
Processo de reuso de qualidade A rotina  test  avalia atraves da clausula “when” se algum goal se aplica a qualidade A rotina  match  verifica se um goal equilavale a uma especificação de um  poincut  de um softgoal  A rotina  weave  verifica as contribuições entre g e s
Reuso de Usabilidade O objetivo é reutilizar a qualidade usabilidade presente em “Media Shop” e aplicar num outro sistema, “Web Based Training (WBT)” Foi feito um levantamento de relação entre goals e softgoals para as tarefas e operacionalização de tarefas.  Foi produzido um V-Graph que merge a descrição do requisitos com abstrações da implementação. A partir dele foi classificado e gerado a biblioteca.
Reuso de Usabilidade Abstração da biblioteca representada em Q7
Reuso de Usabilidade Parte funcional da WBT representada em Q7
Reuso de Usabilidade Seguindo o processo definido, o primeiro passo é usar uma query (why = “Usabilidade”)
Reuso de Usabilidade Realiza a especialização, atualizando os poincuts
Reuso de Usabilidade Realiza a integração automaticamente.
Conclusão Foi apresentado um método o reuso de qualidade de software. Existem ainda alguns problemas: Escalabilidade

Luana - Aula 10 artigo 2

  • 1.
  • 2.
    Introdução Reuso desoftware tem sido utilizado para reduzir custo de desenvolvimento e melhorar qualidade. Reuso só tem foco nas funcionalidade Propriedades não funcionais (qualidade) também devem ser consideradas Dificuldade de incorporar requerimentos de qualidade em métodos de reuso: A qualidade é difícil de reconhecer já que é uma informações transversal
  • 3.
    Introdução Para resolverutiliza: NFRs Goal-orietated requirementes Programação orientado a aspecto (AOP) Reuso de software Gerenciamento de qualidade Define um processo que usa uma biblioteca para achar características de qualidade e aplica descrição funcional do software.
  • 4.
    Goals, Aspectos eReuso Os NFR são tratados como softgoals Utiliza um grafo de dependências entre goals, mostrando influencia positiva e negativa entre eles.
  • 5.
    Goals, Aspectos eReuso Goals Interesses do stackholders Requisitos orientado a goal é focado em goals que são “precusores dos requisitos”
  • 6.
    Goals, Aspectos eReuso Utiliza modelo de goal que representa goal, tarefas e softgoal
  • 7.
    Goals, Aspectos eReuso Aspecto: Diferença entre Programação Estruturada e Programação Orientada a Aspecto (AOP) Em AOP a responsabilidade onde um aspecto é necessitado depende do próprio aspecto.
  • 8.
    Goals, Aspectos eReuso Aspecto É simples utilizar linguagem orientada a aspecto para resolver as informações transversais Os NFR serão representados utilizando aspecto
  • 9.
    Goals, Aspectos eReuso Reuso: Krueger define processos chaves para reutilizar artefatos de software: Classificação: organiza as informações armazenadas para possibilitar pesquisa. Abstração: ajuda entendimento tirando detalhes de baixo nível e de implementação. Seleção: Ser possível escolher um artefato para reutilizar. Especialização: Um artefato pode ser modificado para poder ser reutilizado. Integração: Unir o artefato com o contexto que está sendo inserido.
  • 10.
    Representação dirigida agoal e aspecto Obstáculos para reutilizar qualidade de software: Uso de catálogos não são suficientes para suportar reuso de qualidade já que não faz relação clara com as funcionalidades As linguagens de representação de software não inclui conceitos não funcionais. A seleção de um ponto especifico onde o NFR está sendo usado só é possivel se tiver um link entre os pontos que contem a NFR A especialização de um NFR em outro contexto também é complexo divido a transversalidade. A integração deve ter uma interface bem definida tanto para o elemento reutilizado quanto o novo contexto.
  • 11.
    Representação Orienteda aobjetivo e aspecto Aspecto de goal Tem representação gráfica chamada V-graph Relacionar modelos representando requisitos funcionais e modelos representando NFR. Utilizado para elícita aspectos. Esse graficos ajuda integração, especialização e seleção mas não suporta classificação e abstração .
  • 12.
    Representação Orienteda aobjetivo e aspecto Linguagem para organizar qualidades (Q7) Contemplar classificação e abstração. A linguagem não só suporta características de qualidade como relaciona descrições funcionais. Para isso é necessário representação para: Função, tópicos, tipos de qualidade, pré-condição, poincuts, estruturas de contribuição e operacionalização de qualidade. Para resolver foi utilizado a classificação 5W2H.
  • 13.
    Representação Orienteda aobjetivo e aspecto Linguagem para organizar qualidades (Q7) Why? O que está querendo ser reutilizado Who? O destino principal do atributo de qualidade What? Seria o topico no NFR framework Where? O endereço especifico da qualidade do artefato. When? Indica a pré-condição mantida antes da operacionalização How? Operacionalização dos NR How much? São os links de contribuição entre as operacionalizações e os NFR.
  • 14.
    Representação Orienteda aobjetivo e aspecto Linguagem para organizar qualidades (Q7)
  • 15.
    Representação Orienteda aobjetivo e aspecto Linguagem para organizar qualidades (Q7) ` Provê relacionamento especifico entre funcionalidades e preocupações de qualidade
  • 16.
    Processo de reusode qualidade
  • 17.
    Processo de reusode qualidade A rotina test avalia atraves da clausula “when” se algum goal se aplica a qualidade A rotina match verifica se um goal equilavale a uma especificação de um poincut de um softgoal A rotina weave verifica as contribuições entre g e s
  • 18.
    Reuso de UsabilidadeO objetivo é reutilizar a qualidade usabilidade presente em “Media Shop” e aplicar num outro sistema, “Web Based Training (WBT)” Foi feito um levantamento de relação entre goals e softgoals para as tarefas e operacionalização de tarefas. Foi produzido um V-Graph que merge a descrição do requisitos com abstrações da implementação. A partir dele foi classificado e gerado a biblioteca.
  • 19.
    Reuso de UsabilidadeAbstração da biblioteca representada em Q7
  • 20.
    Reuso de UsabilidadeParte funcional da WBT representada em Q7
  • 21.
    Reuso de UsabilidadeSeguindo o processo definido, o primeiro passo é usar uma query (why = “Usabilidade”)
  • 22.
    Reuso de UsabilidadeRealiza a especialização, atualizando os poincuts
  • 23.
    Reuso de UsabilidadeRealiza a integração automaticamente.
  • 24.
    Conclusão Foi apresentadoum método o reuso de qualidade de software. Existem ainda alguns problemas: Escalabilidade