SlideShare una empresa de Scribd logo
1 de 140
Descargar para leer sin conexión
Engenharia de Requisitos

          Alberto Sim˜es
                     o
    alberto.simoes@eu.ipp.pt




Planeamento de Sistemas de Informa¸˜o
                                  ca
 Mestrado em Informa¸˜o Empresarial
                     ca
             2012/2013




       Alberto Sim˜es
                  o     Engenharia de Requisitos   1/62
Parte I

Engenharia de Requisitos




     Alberto Sim˜es
                o     Engenharia de Requisitos   2/62
Tamb´m designada por An´lise de Sistemas;
    e                  a

´
E o processo de definir as funcionalidades que o cliente
pretende que o sistema implemente, e as restri¸˜es que afetam
                                              co
a opera¸˜o e o desenvolvimento do sistema;
       ca

O objetivo da fase de an´lise ´ o de compreender os requisitos
                         a    e
do novo sistema e identifica-los de modo a desenvolver um
sistema que os satisfa¸a completamente;
                      c

A determina¸˜o de requisitos ´ um dos passos mais cr´
            ca                e                     ıticos
nas fases do ciclo de desenvolvimento de software;




                  Alberto Sim˜es
                             o     Engenharia de Requisitos      3/62
Engenharia de Requisitos

     O que ´ a Engenharia de Requisitos?
            e
     Processo que envolve a recolha e compila¸˜o dos requisitos de
                                             ca
     sistema




                      Alberto Sim˜es
                                 o     Engenharia de Requisitos      4/62
Engenharia de Requisitos

     O que ´ a Engenharia de Requisitos?
            e
     Processo que envolve a recolha e compila¸˜o dos requisitos de
                                             ca
     sistema
     Quanto custa a Engenharia de Requisitos?
     Habitualmente, cerca de 15% do custo de desenvolvimento do
     sistema.




                      Alberto Sim˜es
                                 o     Engenharia de Requisitos      4/62
Engenharia de Requisitos

     O que ´ a Engenharia de Requisitos?
            e
     Processo que envolve a recolha e compila¸˜o dos requisitos de
                                             ca
     sistema
     Quanto custa a Engenharia de Requisitos?
     Habitualmente, cerca de 15% do custo de desenvolvimento do
     sistema.
     O que ´ um processo de Engenharia de Requisitos?
            e
     Conjunto de actividades que envolve a recolha e compila¸˜o
                                                            ca
     dos requisitos de sistema.




                      Alberto Sim˜es
                                 o     Engenharia de Requisitos      4/62
Engenharia de Requisitos

     O que ´ a Engenharia de Requisitos?
            e
     Processo que envolve a recolha e compila¸˜o dos requisitos de
                                             ca
     sistema
     Quanto custa a Engenharia de Requisitos?
     Habitualmente, cerca de 15% do custo de desenvolvimento do
     sistema.
     O que ´ um processo de Engenharia de Requisitos?
            e
     Conjunto de actividades que envolve a recolha e compila¸˜o
                                                            ca
     dos requisitos de sistema.
     O que acontece quando os requisitos s˜o mal identificados?
                                            a
     Os sistemas s˜o entregues fora do prazo, sem qualidade e sem
                  a
     responder `s necessidades dos clientes.
               a




                      Alberto Sim˜es
                                 o     Engenharia de Requisitos      4/62
Engenharia de Requisitos

     O que ´ a Engenharia de Requisitos?
            e
     Processo que envolve a recolha e compila¸˜o dos requisitos de
                                             ca
     sistema
     Quanto custa a Engenharia de Requisitos?
     Habitualmente, cerca de 15% do custo de desenvolvimento do
     sistema.
     O que ´ um processo de Engenharia de Requisitos?
            e
     Conjunto de actividades que envolve a recolha e compila¸˜o
                                                            ca
     dos requisitos de sistema.
     O que acontece quando os requisitos s˜o mal identificados?
                                            a
     Os sistemas s˜o entregues fora do prazo, sem qualidade e sem
                  a
     responder `s necessidades dos clientes.
               a
     Existe algum processo de Engenharia de Requisitos ideal?
     N˜o, o processo tem de ser configurado de acordo com as
      a
     necessidades de cada organiza¸˜o.
                                  ca
                      Alberto Sim˜es
                                 o     Engenharia de Requisitos      4/62
Problemas na Engenharia de Requisitos
 Como convencer o cliente da necessidade de usar tempo e dinheiro,
 para recolher requisitos corretamente?




                       Alberto Sim˜es
                                  o     Engenharia de Requisitos     5/62
Problemas na Engenharia de Requisitos
 Como convencer o cliente da necessidade de usar tempo e dinheiro,
 para recolher requisitos corretamente?




                       Alberto Sim˜es
                                  o     Engenharia de Requisitos     5/62
Problemas na Engenharia de Requisitos
 Como garantir que os requisitos recolhidos s˜o compreendidos de
                                             a
 igual modo por cliente e membros da equipa do projeto?




                       Alberto Sim˜es
                                  o     Engenharia de Requisitos   6/62
Problemas na Engenharia de Requisitos
 Como garantir que os requisitos recolhidos s˜o compreendidos de
                                             a
 igual modo por cliente e membros da equipa do projeto?




                       Alberto Sim˜es
                                  o     Engenharia de Requisitos   6/62
Processo de Engenharia de Requisitos



     Os processos utilizados na engenharia de requisitos s˜o
                                                          a
     dependentes do dom´ de aplica¸˜o, das pessoas envolvidas
                          ınio        ca
     e das organiza¸˜o que faz o levantamento dos requisitos.
                   ca




                     Alberto Sim˜es
                                o     Engenharia de Requisitos   7/62
Processo de Engenharia de Requisitos



     Os processos utilizados na engenharia de requisitos s˜o
                                                          a
     dependentes do dom´ de aplica¸˜o, das pessoas envolvidas
                          ınio        ca
     e das organiza¸˜o que faz o levantamento dos requisitos.
                   ca

     No entanto, existem algumas atividades gen´ricas, comuns a
                                               e
     todos os processos:
         estudo de viabilidade;
         levantamento e sele¸˜o de requisitos;
                              ca
         an´lise de requisitos;
            a
         valida¸˜o de requisitos;
                ca
         gest˜o de requisitos;
              a




                       Alberto Sim˜es
                                  o     Engenharia de Requisitos   7/62
Processo de Engenharia de Requisitos


     Estudo de     Análise de
     Viabilidade   Requisitos

                                             Definição de
                                              Requisitos

                                                                   Especificação
    Relatório de   Modelos do                                      de Requisitos
    Viabilidade     Sistema
                                             Defnição dos
                                              Requisitos




                                                                   Especificação de
                   Documento de Requisitos
                                                                      Requisitos




                     Alberto Sim˜es
                                o       Engenharia de Requisitos                     8/62
Processo de Engenharia de Requisitos
Estudo de Viabilidade



       Deve decidir se um sistema deve ser ou n˜o desenvolvido.
                                               a




                        Alberto Sim˜es
                                   o     Engenharia de Requisitos   9/62
Processo de Engenharia de Requisitos
Estudo de Viabilidade



       Deve decidir se um sistema deve ser ou n˜o desenvolvido.
                                                a
       Trata-se de um estudo espec´ıfico que verifica se o sistema
             contribui para os objetivos da organiza¸˜o;
                                                    ca
             pode ser desenvolvido com a tecnologia atual;
             pede ser desenvolvido dentro do or¸amento previsto;
                                                c
             pode ser integrado com os outros sistemas em produ¸˜o;
                                                                 ca




                          Alberto Sim˜es
                                     o     Engenharia de Requisitos   9/62
Processo de Engenharia de Requisitos
Estudo de Viabilidade



       Deve decidir se um sistema deve ser ou n˜o desenvolvido.
                                                a
       Trata-se de um estudo espec´ıfico que verifica se o sistema
             contribui para os objetivos da organiza¸˜o;
                                                    ca
             pode ser desenvolvido com a tecnologia atual;
             pede ser desenvolvido dentro do or¸amento previsto;
                                                c
             pode ser integrado com os outros sistemas em produ¸˜o;
                                                                 ca
       A implementa¸˜o assenta em quest˜es `s pessoas da
                    ca                 o a
       organiza¸˜o:
               ca
             o que acontece se o sistema n˜o for implementado?
                                           a
             quais s˜o os problemas atuais com os processos?
                    a
             ser´ que o sistema proposto os ir´ resolver?
                a                             a
             quais ser˜o os problemas de integra¸˜o?
                       a                         ca
             ´ necess´ria nova tecnologia?
             e        a



                          Alberto Sim˜es
                                     o     Engenharia de Requisitos   9/62
Processo de Engenharia de Requisitos
Levantamento e Sele¸˜o de Requisitos
                   ca


  Consiste no trabalho realizado pelo pessoal t´cnico em colabora¸˜o
                                               e                 ca
  com os restantes intervenientes para determinar o dom´ da
                                                        ınio
  aplica¸˜o, as funcionalidades que devem ser suportadas e os
        ca
  constrangimentos operacionais do sistema.




                           Alberto Sim˜es
                                      o     Engenharia de Requisitos   10/62
Processo de Engenharia de Requisitos
Levantamento e Sele¸˜o de Requisitos
                   ca


  Consiste no trabalho realizado pelo pessoal t´cnico em colabora¸˜o
                                               e                 ca
  com os restantes intervenientes para determinar o dom´ da
                                                        ınio
  aplica¸˜o, as funcionalidades que devem ser suportadas e os
        ca
  constrangimentos operacionais do sistema.

  Problemas com a an´lise e sele¸˜o:
                    a           ca
       os stakeholders n˜o sabem o que pretendem;
                        a




                           Alberto Sim˜es
                                      o     Engenharia de Requisitos   10/62
Processo de Engenharia de Requisitos
Levantamento e Sele¸˜o de Requisitos
                   ca


  Consiste no trabalho realizado pelo pessoal t´cnico em colabora¸˜o
                                               e                 ca
  com os restantes intervenientes para determinar o dom´ da
                                                        ınio
  aplica¸˜o, as funcionalidades que devem ser suportadas e os
        ca
  constrangimentos operacionais do sistema.

  Problemas com a an´lise e sele¸˜o:
                    a           ca
       os stakeholders n˜o sabem o que pretendem;
                        a
       os stakeholders definem os requisitos nas suas palavras;




                           Alberto Sim˜es
                                      o     Engenharia de Requisitos   10/62
Processo de Engenharia de Requisitos
Levantamento e Sele¸˜o de Requisitos
                   ca


  Consiste no trabalho realizado pelo pessoal t´cnico em colabora¸˜o
                                               e                 ca
  com os restantes intervenientes para determinar o dom´ da
                                                        ınio
  aplica¸˜o, as funcionalidades que devem ser suportadas e os
        ca
  constrangimentos operacionais do sistema.

  Problemas com a an´lise e sele¸˜o:
                    a           ca
       os stakeholders n˜o sabem o que pretendem;
                        a
       os stakeholders definem os requisitos nas suas palavras;
       diferentes stakeholders podem ter requisitos conflituosos;




                           Alberto Sim˜es
                                      o     Engenharia de Requisitos   10/62
Processo de Engenharia de Requisitos
Levantamento e Sele¸˜o de Requisitos
                   ca


  Consiste no trabalho realizado pelo pessoal t´cnico em colabora¸˜o
                                               e                 ca
  com os restantes intervenientes para determinar o dom´ da
                                                        ınio
  aplica¸˜o, as funcionalidades que devem ser suportadas e os
        ca
  constrangimentos operacionais do sistema.

  Problemas com a an´lise e sele¸˜o:
                    a           ca
       os stakeholders n˜o sabem o que pretendem;
                        a
       os stakeholders definem os requisitos nas suas palavras;
       diferentes stakeholders podem ter requisitos conflituosos;
       os fatores pol´
                     ıticos e organizacionais podem afetar os
       requisitos do sistema;




                           Alberto Sim˜es
                                      o     Engenharia de Requisitos   10/62
Processo de Engenharia de Requisitos
Levantamento e Sele¸˜o de Requisitos
                   ca


  Consiste no trabalho realizado pelo pessoal t´cnico em colabora¸˜o
                                               e                 ca
  com os restantes intervenientes para determinar o dom´ da
                                                        ınio
  aplica¸˜o, as funcionalidades que devem ser suportadas e os
        ca
  constrangimentos operacionais do sistema.

  Problemas com a an´lise e sele¸˜o:
                    a           ca
       os stakeholders n˜o sabem o que pretendem;
                        a
       os stakeholders definem os requisitos nas suas palavras;
       diferentes stakeholders podem ter requisitos conflituosos;
       os fatores pol´
                     ıticos e organizacionais podem afetar os
       requisitos do sistema;
       os requisitos podem mudar durante o processo de an´lise,
                                                         a
       assim como o ambiente de neg´cio ou mesmo os stakeholders.
                                    o

                           Alberto Sim˜es
                                      o     Engenharia de Requisitos   10/62
Processo de Engenharia de Requisitos
Especifica¸˜o de Requisitos
         ca



       ´
       E nesta fase que se d´ a produ¸˜o do documento de
                            a        ca
       especifica¸˜o de requisitos;
                ca
       Documento com v´rios tipos de especifica¸˜es:
                         a                     co
             especifica¸˜o de requisitos do utilizador;
                      ca
             especifica¸˜o de requisitos do sistema;
                      ca
             especifica¸˜o da arquitetura do sistema;
                      ca
       Usando diferentes tipos de abordagens:
             Especifica¸˜o Textual;
                      ca
             Casos de uso (UML);
             Diagramas de Atividade (UML) (de alto n´
                                                    ıvel);
             Diagramas de Fluxo de Dados;
             Especifica¸˜o Formal;
                      ca
             Prototipagem da interface.



                             Alberto Sim˜es
                                        o     Engenharia de Requisitos   11/62
Processo de Engenharia de Requisitos
Valida¸˜o de Requisitos
      ca




       Avalia se os requisitos definem o sistema que o cliente
       realmente pretende.
       Os custos com os erros na identifica¸˜o dos requisitos s˜o
                                          ca                  a
       elevados, o que demonstra a importˆncia da valida¸˜o.
                                          a              ca

       Corrigir um erro de defini¸˜o de requisitos ap´s a
                                ca                  o
       instala¸˜o de um produto pode custar at´ 100 vezes mais
              ca                                e
       que corrigir um erro na especifica¸˜o.
                                        ca




                          Alberto Sim˜es
                                     o     Engenharia de Requisitos   12/62
Parte II

Tipologia de Requisitos




    Alberto Sim˜es
               o     Engenharia de Requisitos   13/62
Tipologia de Requisitos


     Requisitos funcionais
     funcionalidades que o sistema deve implementar: como o
     sistema dever´ responder a cada opera¸˜o, e como se dever´
                  a                       ca                  a
     comportar em determinadas situa¸˜es
                                      co




                      Alberto Sim˜es
                                 o     Engenharia de Requisitos   14/62
Tipologia de Requisitos


     Requisitos funcionais
     funcionalidades que o sistema deve implementar: como o
     sistema dever´ responder a cada opera¸˜o, e como se dever´
                  a                       ca                  a
     comportar em determinadas situa¸˜es
                                      co

     Requisitos n˜o funcionais
                   a
     constrangimentos `s funcionalidades do sistema, como
                        a
     standards, restri¸˜es de tempo, restri¸˜es do processo de
                      co                   co
     desenvolvimento, etc.
     propriedades comportamentais que o sistema deve garantir,
     como desempenho, seguran¸a, fiabilidade, etc.
                                 c




                      Alberto Sim˜es
                                 o     Engenharia de Requisitos   14/62
Tipologia de Requisitos


     Requisitos funcionais
     funcionalidades que o sistema deve implementar: como o
     sistema dever´ responder a cada opera¸˜o, e como se dever´
                  a                       ca                  a
     comportar em determinadas situa¸˜es
                                      co

     Requisitos n˜o funcionais
                   a
     constrangimentos `s funcionalidades do sistema, como
                        a
     standards, restri¸˜es de tempo, restri¸˜es do processo de
                      co                   co
     desenvolvimento, etc.
     propriedades comportamentais que o sistema deve garantir,
     como desempenho, seguran¸a, fiabilidade, etc.
                                 c

     Requisitos de dom´   ınio
     requisitos resultantes do dom´ de aplica¸˜o do sistema
                                  ınio       ca


                      Alberto Sim˜es
                                 o     Engenharia de Requisitos   14/62
Tipologia de Requisitos
Requisitos de Dom´
                 ınio


       Requisitos resultantes do dom´ de aplica¸˜o do sistema e
                                    ınio           ca
       que refletem determinada caracter´ ısticas que devem ser tidas
       em considera¸˜o durante o desenvolvimento do sistema;
                    ca
       N˜o derivam das necessidades espec´
        a                                ıficas dos utilizadores;
       Para al´m de se considerarem requisitos de dom´
               e                                       ınio, podem
       ser classificados como requisitos funcionais ou n˜o funcionais;
                                                       a




                         Alberto Sim˜es
                                    o     Engenharia de Requisitos      15/62
Tipologia de Requisitos
Requisitos de Dom´
                 ınio


       Requisitos resultantes do dom´ de aplica¸˜o do sistema e
                                    ınio           ca
       que refletem determinada caracter´ ısticas que devem ser tidas
       em considera¸˜o durante o desenvolvimento do sistema;
                    ca
       N˜o derivam das necessidades espec´
        a                                ıficas dos utilizadores;
       Para al´m de se considerarem requisitos de dom´
               e                                       ınio, podem
       ser classificados como requisitos funcionais ou n˜o funcionais;
                                                       a
  Exemplos:
       no desenvolvimento de um registo cl´
                                          ınico eletr´nico, a
                                                     o
       autentica¸˜o pode ser considerada um requisito de dom´
                ca                                            ınio
       imposto pelo enquadramento de prote¸˜o de dados pessoais;
                                            ca




                         Alberto Sim˜es
                                    o     Engenharia de Requisitos      15/62
Tipologia de Requisitos
Requisitos de Dom´
                 ınio


       Requisitos resultantes do dom´ de aplica¸˜o do sistema e
                                    ınio           ca
       que refletem determinada caracter´ ısticas que devem ser tidas
       em considera¸˜o durante o desenvolvimento do sistema;
                    ca
       N˜o derivam das necessidades espec´
        a                                ıficas dos utilizadores;
       Para al´m de se considerarem requisitos de dom´
               e                                       ınio, podem
       ser classificados como requisitos funcionais ou n˜o funcionais;
                                                       a
  Exemplos:
       no desenvolvimento de um registo cl´
                                          ınico eletr´nico, a
                                                     o
       autentica¸˜o pode ser considerada um requisito de dom´
                ca                                            ınio
       imposto pelo enquadramento de prote¸˜o de dados pessoais;
                                            ca
       num sistema de fatura¸˜o, a exporta¸˜o do registo das faturas
                            ca            ca
       em formato SAF-T pode ser considerada um requisito de
       dom´ imposto pela autoridade tribut´ria;
           ınio                              a

                         Alberto Sim˜es
                                    o     Engenharia de Requisitos      15/62
Tipologia de Requisitos
Requisitos Funcionais



       Descrevem funcionalidades que o sistema deve implementar;
       Dependem do tipo de software, das expectativas dos
       utilizadores, e do tipo de sistema onde o software ir´ ser
                                                            a
       utilizado;




                         Alberto Sim˜es
                                    o     Engenharia de Requisitos   16/62
Tipologia de Requisitos
Requisitos Funcionais



       Descrevem funcionalidades que o sistema deve implementar;
       Dependem do tipo de software, das expectativas dos
       utilizadores, e do tipo de sistema onde o software ir´ ser
                                                            a
       utilizado;
  Exemplos:
       O utilizador deve ser capaz de procurar nas bases de dados de
       todas as lojas de uma cadeia de supermercados, ou apenas
       num conjunto de lojas selecionadas;




                         Alberto Sim˜es
                                    o     Engenharia de Requisitos     16/62
Tipologia de Requisitos
Requisitos Funcionais



       Descrevem funcionalidades que o sistema deve implementar;
       Dependem do tipo de software, das expectativas dos
       utilizadores, e do tipo de sistema onde o software ir´ ser
                                                            a
       utilizado;
  Exemplos:
       O utilizador deve ser capaz de procurar nas bases de dados de
       todas as lojas de uma cadeia de supermercados, ou apenas
       num conjunto de lojas selecionadas;
       Deve ser atribu´ um c´digo unico a cada encomenda;
                      ıdo   o     ´




                         Alberto Sim˜es
                                    o     Engenharia de Requisitos     16/62
Tipologia de Requisitos
Requisitos Funcionais



       Descrevem funcionalidades que o sistema deve implementar;
       Dependem do tipo de software, das expectativas dos
       utilizadores, e do tipo de sistema onde o software ir´ ser
                                                            a
       utilizado;
  Exemplos:
       O utilizador deve ser capaz de procurar nas bases de dados de
       todas as lojas de uma cadeia de supermercados, ou apenas
       num conjunto de lojas selecionadas;
       Deve ser atribu´ um c´digo unico a cada encomenda;
                      ıdo   o     ´
       O sistema deve fornecer as ferramentas adequadas ao
       utilizador para facilitar a leitura dos documentos armazenados.


                         Alberto Sim˜es
                                    o     Engenharia de Requisitos       16/62
Tipologia de Requisitos
Requisitos N˜o Funcionais
            a


       Definem as propriedades do sistema e os seus
       constrangimentos.
       Os requisitos n˜o funcionais podem ser mais cr´
                       a                             ıticos que os
       requisitos funcionais: caso n˜o sejam cumpridos, o sistema
                                    a
       pode tornar-se in´til.
                         u




                            Alberto Sim˜es
                                       o     Engenharia de Requisitos   17/62
Tipologia de Requisitos
Requisitos N˜o Funcionais
            a


       Definem as propriedades do sistema e os seus
       constrangimentos.
       Os requisitos n˜o funcionais podem ser mais cr´
                       a                             ıticos que os
       requisitos funcionais: caso n˜o sejam cumpridos, o sistema
                                    a
       pode tornar-se in´til.
                         u
  Exemplos de propriedades s˜o:
                            a
       fiabilidade;
       tempo de resposta;
       espa¸o em disco necess´rio;
           c                 a




                            Alberto Sim˜es
                                       o     Engenharia de Requisitos   17/62
Tipologia de Requisitos
Requisitos N˜o Funcionais
            a


       Definem as propriedades do sistema e os seus
       constrangimentos.
       Os requisitos n˜o funcionais podem ser mais cr´
                       a                             ıticos que os
       requisitos funcionais: caso n˜o sejam cumpridos, o sistema
                                    a
       pode tornar-se in´til.
                         u
  Exemplos de propriedades s˜o:
                            a
       fiabilidade;
       tempo de resposta;
       espa¸o em disco necess´rio;
           c                 a
  Exemplos de constrangimentos s˜o:
                                a
       capacidade de input/output dos equipamentos;
       espa¸o em disco dispon´
           c                 ıvel;
       largura de banda;
                            Alberto Sim˜es
                                       o     Engenharia de Requisitos   17/62
Tipologia de Requisitos
Tipos de Requisitos N˜o Funcionais
                     a



       Requisitos de Produto
       Especificam como se deve comportar o produto de acordo
       com um conjunto de parˆmetros.
                               a
       ex.: velocidade de execu¸˜o, fiabilidade, etc.
                               ca




                            Alberto Sim˜es
                                       o     Engenharia de Requisitos   18/62
Tipologia de Requisitos
Tipos de Requisitos N˜o Funcionais
                     a



       Requisitos de Produto
       Especificam como se deve comportar o produto de acordo
       com um conjunto de parˆmetros.
                               a
       ex.: velocidade de execu¸˜o, fiabilidade, etc.
                               ca

       Requisitos Organizacionais
       Derivam de pol´ ıticas e procedimentos da organiza¸˜o.
                                                          ca
       ex.: regras internas, standards da organiza¸˜o, etc.
                                                  ca




                            Alberto Sim˜es
                                       o     Engenharia de Requisitos   18/62
Tipologia de Requisitos
Tipos de Requisitos N˜o Funcionais
                     a



       Requisitos de Produto
       Especificam como se deve comportar o produto de acordo
       com um conjunto de parˆmetros.
                               a
       ex.: velocidade de execu¸˜o, fiabilidade, etc.
                               ca

       Requisitos Organizacionais
       Derivam de pol´ ıticas e procedimentos da organiza¸˜o.
                                                          ca
       ex.: regras internas, standards da organiza¸˜o, etc.
                                                  ca

       Requisitos Externos
       Resultam de fatores externos ao sistema e ao seu processo de
       desenvolvimento.
       Muitas vezes correspondem a requisitos de dom´    ınio.
       ex.: requisitos de interoperabilidade, aspetos legais, etc.


                            Alberto Sim˜es
                                       o     Engenharia de Requisitos   18/62
Tipologia de Requisitos
 Tipos de Requisitos N˜o Funcionais
                      a




                                                                       Requisitos Não
                                                                        Funcionais




                Requisitos da                                           Requisitos de                                               Requisitos
                Organização                                               Produto                                                    Externos




                                 Requisitos de              Requisitos de               Requisitos de               Requisitos de
                                  Usabilidade                Eficiência                   Fiabilidade                Portabilidade



Requisitos de    Requisitos de            Requisitos dos                          Requisitos de                 Requisitos                      Requisitos
 Distribuição   Implementação           Standards Usados                       Interoperabilidade               Legislativos                     Éticos



                                            Requisitos de              Requisitos de                Requisitos de               Requisitos de
                                              Espaço                    Execução                     Privacidade                 Segurança




                                                 Alberto Sim˜es
                                                            o               Engenharia de Requisitos                                                   19/62
Tipologia de Requisitos
Especifica¸˜o de Requisitos N˜o Funcionais
         ca                 a

       Devem ser especificados na forma de objetivo.
       (inten¸˜o geral do utilizador, como facilidade de utiliza¸˜o)
             ca                                                 ca




                           Alberto Sim˜es
                                      o     Engenharia de Requisitos   20/62
Tipologia de Requisitos
Especifica¸˜o de Requisitos N˜o Funcionais
         ca                 a

       Devem ser especificados na forma de objetivo.
       (inten¸˜o geral do utilizador, como facilidade de utiliza¸˜o)
             ca                                                 ca

       Sempre que poss´ ıvel, devem ser verific´veis:
                                              a
       (devem incorporar uma medida que permita testar de forma
       objetiva se o requisito est´ corretamente implementado)
                                  a

       Tipicamente s˜o dif´
                       a     ıceis de definir com rigor, e portanto,
       dif´
          ıceis de verificar.




                           Alberto Sim˜es
                                      o     Engenharia de Requisitos   20/62
Tipologia de Requisitos
Especifica¸˜o de Requisitos N˜o Funcionais
         ca                 a

       Devem ser especificados na forma de objetivo.
       (inten¸˜o geral do utilizador, como facilidade de utiliza¸˜o)
             ca                                                 ca

       Sempre que poss´ ıvel, devem ser verific´veis:
                                              a
       (devem incorporar uma medida que permita testar de forma
       objetiva se o requisito est´ corretamente implementado)
                                  a

      Tipicamente s˜o dif´
                      a     ıceis de definir com rigor, e portanto,
      dif´
         ıceis de verificar.
  Exemplo:
      o sistema deve ser f´cil de utilizar por operadores experientes
                            a
      e organizado de tal forma que minimize erros do utilizador.




                           Alberto Sim˜es
                                      o     Engenharia de Requisitos    20/62
Tipologia de Requisitos
Especifica¸˜o de Requisitos N˜o Funcionais
         ca                 a

       Devem ser especificados na forma de objetivo.
       (inten¸˜o geral do utilizador, como facilidade de utiliza¸˜o)
             ca                                                 ca

       Sempre que poss´ ıvel, devem ser verific´veis:
                                              a
       (devem incorporar uma medida que permita testar de forma
       objetiva se o requisito est´ corretamente implementado)
                                  a

      Tipicamente s˜o dif´
                      a     ıceis de definir com rigor, e portanto,
      dif´
         ıceis de verificar.
  Exemplo:
      o sistema deve ser f´cil de utilizar por operadores experientes
                            a
      e organizado de tal forma que minimize erros do utilizador.
      os operadores experientes devem ser capazes de utilizar todas
      as fun¸˜es do sistema ap´s duas horas de forma¸˜o; depois
             co                   o                      ca
      dessa forma¸˜o, o n´mero m´dio de erros realizados pelos
                   ca       u         e
      operadores n˜o deve exceder dois por dia.
                    a
                           Alberto Sim˜es
                                      o     Engenharia de Requisitos    20/62
Tipologia de Requisitos
Medidas para Requisitos N˜o Funcionais
                         a
                 
                 transa¸˜es processadas por segundo
                        co
       Velocidade tempo de resposta para determinado evento
                  tempo de desenho do ecr˜a
                 




                           Alberto Sim˜es
                                      o     Engenharia de Requisitos   21/62
Tipologia de Requisitos
Medidas para Requisitos N˜o Funcionais
                         a
                 
                 transa¸˜es processadas por segundo
                         co
       Velocidade tempo de resposta para determinado evento
                   tempo de desenho do ecr˜
                                          a
                 

                 tamanho de disco ocupado (MB)
       Tamanho
                 largura de banda usada (MB)




                           Alberto Sim˜es
                                      o     Engenharia de Requisitos   21/62
Tipologia de Requisitos
Medidas para Requisitos N˜o Funcionais
                         a
                   
                   transa¸˜es processadas por segundo
                           co
       Velocidade tempo de resposta para determinado evento
                     tempo de desenho do ecr˜a
                   

                   tamanho de disco ocupado (MB)
       Tamanho
                   largura de banda usada (MB)
                           tempo de forma¸˜o
                                          ca
       Facilidade de uso
                           n´mero de p´ginas de documenta¸˜o
                            u          a                 ca




                           Alberto Sim˜es
                                      o     Engenharia de Requisitos   21/62
Tipologia de Requisitos
Medidas para Requisitos N˜o Funcionais
                         a
                   
                   transa¸˜es processadas por segundo
                           co
       Velocidade tempo de resposta para determinado evento
                     tempo de desenho do ecr˜  a
                   

                   tamanho de disco ocupado (MB)
       Tamanho
                   largura de banda usada (MB)
                           tempo de forma¸˜o
                                           ca
       Facilidade de uso
                           n´mero de p´ginas de documenta¸˜o
                            u            a               ca
                  
                  tempo m´dio de falha
                             e
       Confian¸a probabilidade de n˜o disponibilidade
               c                       a
                    r´cio de ocorrˆncia de falhas
                     a            e
                  




                           Alberto Sim˜es
                                      o     Engenharia de Requisitos   21/62
Tipologia de Requisitos
Medidas para Requisitos N˜o Funcionais
                         a
                   
                   transa¸˜es processadas por segundo
                           co
       Velocidade tempo de resposta para determinado evento
                     tempo de desenho do ecr˜   a
                   

                   tamanho de disco ocupado (MB)
       Tamanho
                   largura de banda usada (MB)
                           tempo de forma¸˜o ca
       Facilidade de uso
                           n´mero de p´ginas de documenta¸˜o
                             u           a                  ca
                  
                  tempo m´dio de falha
                              e
       Confian¸a probabilidade de n˜o disponibilidade
               c                       a
                    r´cio de ocorrˆncia de falhas
                     a            e
                  
                 
                 tempo de rein´ ap´s falha
                                 ıcio o
       Robustez percentagem de situa¸˜es que provocam falhas
                                          co
                    probabilidade de corrup¸˜o de dados por falha
                                             ca
                 



                           Alberto Sim˜es
                                      o     Engenharia de Requisitos   21/62
Tipologia de Requisitos
Medidas para Requisitos N˜o Funcionais
                         a
                   
                   transa¸˜es processadas por segundo
                           co
       Velocidade tempo de resposta para determinado evento
                     tempo de desenho do ecr˜   a
                   

                   tamanho de disco ocupado (MB)
       Tamanho
                   largura de banda usada (MB)
                           tempo de forma¸˜o ca
       Facilidade de uso
                           n´mero de p´ginas de documenta¸˜o
                             u           a                  ca
                  
                  tempo m´dio de falha
                              e
       Confian¸a probabilidade de n˜o disponibilidade
               c                       a
                    r´cio de ocorrˆncia de falhas
                     a             e
                  
                 
                 tempo de rein´ ap´s falha
                                  ıcio o
       Robustez percentagem de situa¸˜es que provocam falhas
                                          co
                    probabilidade de corrup¸˜o de dados por falha
                                             ca
                 

                       n´mero de plataformas alvo
                        u
       Portabilidade
                       perc. de linhas de c´digo espec´
                                            o         ıficas
                           Alberto Sim˜es
                                      o     Engenharia de Requisitos   21/62
Tipologia de Requisitos
Exerc´
     ıcios




 “Em todas as janelas o utilizador dever´ ter acesso a um bot˜o
                                        a                    a
 para aceder ` documenta¸˜o contextual.”
             a            ca




                       Alberto Sim˜es
                                  o     Engenharia de Requisitos   22/62
Tipologia de Requisitos
Exerc´
     ıcios




 “Em todas as janelas o utilizador dever´ ter acesso a um bot˜o
                                        a                    a
 para aceder ` documenta¸˜o contextual.”
             a            ca


  Requisito Funcional




                        Alberto Sim˜es
                                   o     Engenharia de Requisitos   22/62
Tipologia de Requisitos
Exerc´
     ıcios




 “Cada transa¸˜o com a base de dados n˜o pode usar mais que 100
             ca                       a
 KB de largura de banda.”




                      Alberto Sim˜es
                                 o     Engenharia de Requisitos   23/62
Tipologia de Requisitos
Exerc´
     ıcios




 “Cada transa¸˜o com a base de dados n˜o pode usar mais que 100
             ca                       a
 KB de largura de banda.”


  Requisito N˜o Funcional
             a




                       Alberto Sim˜es
                                  o     Engenharia de Requisitos   23/62
Tipologia de Requisitos
Exerc´
     ıcios




 “Para cada cliente dever´ ser armazenado o n´mero fiscal.”
                         a                   u




                       Alberto Sim˜es
                                  o     Engenharia de Requisitos   24/62
Tipologia de Requisitos
Exerc´
     ıcios




 “Para cada cliente dever´ ser armazenado o n´mero fiscal.”
                         a                   u


  Requisito N˜o Funcional (e possivelmente de dom´
             a                                   ınio)




                       Alberto Sim˜es
                                  o     Engenharia de Requisitos   24/62
Tipologia de Requisitos
Exerc´
     ıcios




 “O utilizador n˜o dever´ poder introduzir um cliente sem indicar o
                a       a
 seu n´mero fiscal.”
      u




                        Alberto Sim˜es
                                   o     Engenharia de Requisitos     25/62
Tipologia de Requisitos
Exerc´
     ıcios




 “O utilizador n˜o dever´ poder introduzir um cliente sem indicar o
                a       a
 seu n´mero fiscal.”
      u


  Requisito Funcional




                        Alberto Sim˜es
                                   o     Engenharia de Requisitos     25/62
Tipologia de Requisitos
Exerc´
     ıcios




 “O acesso ao sistema deve ser validado usando uma senha de
 seguran¸a.”
        c




                       Alberto Sim˜es
                                  o     Engenharia de Requisitos   26/62
Tipologia de Requisitos
Exerc´
     ıcios




 “O acesso ao sistema deve ser validado usando uma senha de
 seguran¸a.”
        c


  Requisito N˜o Funcional
             a




                       Alberto Sim˜es
                                  o     Engenharia de Requisitos   26/62
Tipologia de Requisitos
Exerc´
     ıcios




 “Dever´ ser poss´ alterar a senha de seguran¸a pelo pr´prio
        a        ıvel                        c         o
 utilizador.”




                       Alberto Sim˜es
                                  o     Engenharia de Requisitos   27/62
Tipologia de Requisitos
Exerc´
     ıcios




 “Dever´ ser poss´ alterar a senha de seguran¸a pelo pr´prio
        a        ıvel                        c         o
 utilizador.”


  Requisito Funcional




                        Alberto Sim˜es
                                   o     Engenharia de Requisitos   27/62
Tipologia de Requisitos
Exerc´
     ıcios




 “A interface ao utilizador deve ter um aspeto amig´vel, e cores
                                                   a
 s´brias.”
  o




                        Alberto Sim˜es
                                   o     Engenharia de Requisitos   28/62
Tipologia de Requisitos
Exerc´
     ıcios




 “A interface ao utilizador deve ter um aspeto amig´vel, e cores
                                                   a
 s´brias.”
  o


  Requisito N˜o Funcional
             a




                        Alberto Sim˜es
                                   o     Engenharia de Requisitos   28/62
Parte III

Recolha de Requisitos




   Alberto Sim˜es
              o     Engenharia de Requisitos   29/62
Recolha de Requisitos
T´cnicas para a Recolha de Requisitos
 e



  Existem v´rias t´cnicas para a recolha, sele¸˜o e especifica¸˜o de
             a    e                           ca             ca
  requisitos:
       Entrevistas
       Question´rios
               a
       An´lise Documental
         a
       Observa¸˜o
              ca
       Perspetivas
       Cen´rios
          a
       Prototipagem
  O Analista de sistemas deve saber como e quando utilizar cada
  uma, assim como as combinar.


                            Alberto Sim˜es
                                       o     Engenharia de Requisitos   30/62
Recolha de Requisitos
 Entrevistas



Processo
    Selecionar os entrevistados,
    baseado no tipo de informa¸˜o
                                ca
    necess´ria, e garantindo diferentes
           a
    perspetivas;
    Desenvolver o Gui˜o da entrevista;
                     a
    Definir Objetivos da entrevista;
    Conduzir a entrevista;
    Apresentar resultados da
    entrevista;




                             Alberto Sim˜es
                                        o     Engenharia de Requisitos   31/62
Recolha de Requisitos
 Entrevistas



Processo                                      Conte´do da Entrevista
                                                   u
    Selecionar os entrevistados,                    Quest˜es fechadas:
                                                         o
    baseado no tipo de informa¸˜o
                                ca                 “Quantas encomendas recebe por
    necess´ria, e garantindo diferentes
           a                                       telefone diariamente? ”
    perspetivas;                                   “Como s˜o feitas as encomendas? ”
                                                            a
    Desenvolver o Gui˜o da entrevista;
                     a
    Definir Objetivos da entrevista;
    Conduzir a entrevista;
    Apresentar resultados da
    entrevista;




                             Alberto Sim˜es
                                        o     Engenharia de Requisitos          31/62
Recolha de Requisitos
 Entrevistas



Processo                                      Conte´do da Entrevista
                                                   u
    Selecionar os entrevistados,                    Quest˜es fechadas:
                                                         o
    baseado no tipo de informa¸˜o
                                ca                 “Quantas encomendas recebe por
    necess´ria, e garantindo diferentes
           a                                       telefone diariamente? ”
    perspetivas;                                   “Como s˜o feitas as encomendas? ”
                                                            a
    Desenvolver o Gui˜o da entrevista;
                     a                              Quest˜es abertas:
                                                         o
    Definir Objetivos da entrevista;                “O que acha do sistema atual? ”
                                                   “Quais os problemas com que se
    Conduzir a entrevista;                         depara diariamente? ”
    Apresentar resultados da
    entrevista;




                             Alberto Sim˜es
                                        o     Engenharia de Requisitos           31/62
Recolha de Requisitos
 Entrevistas



Processo                                      Conte´do da Entrevista
                                                   u
    Selecionar os entrevistados,                    Quest˜es fechadas:
                                                         o
    baseado no tipo de informa¸˜o
                                ca                 “Quantas encomendas recebe por
    necess´ria, e garantindo diferentes
           a                                       telefone diariamente? ”
    perspetivas;                                   “Como s˜o feitas as encomendas? ”
                                                            a
    Desenvolver o Gui˜o da entrevista;
                     a                              Quest˜es abertas:
                                                         o
    Definir Objetivos da entrevista;                “O que acha do sistema atual? ”
                                                   “Quais os problemas com que se
    Conduzir a entrevista;                         depara diariamente? ”
    Apresentar resultados da
                                                    Quest˜es de prova:
                                                         o
    entrevista;
                                                   “Pode-me dar um exemplo? ”
                                                   “Pode-me explicar com mais
                                                   detalhe? ”


                             Alberto Sim˜es
                                        o     Engenharia de Requisitos           31/62
Recolha de Requisitos
 Question´rios
         a

Processo
   Conjunto de quest˜es escritas,
                    o
   usualmente enviadas para um
   grande n´mero de pessoas;
           u
   Podem ser em formato de papel ou
   eletr´nico;
        o
   Selecionar participantes
   representativos;
   Desenvolver quest˜es claras e de
                    o
   f´cil an´lise;
    a      a
   Definir estrat´gias para obter um
                e
   bom n´mero de respostas;
         u
   Mostrar o impacto do question´rio
                                a
   aos questionados;

                              Alberto Sim˜es
                                         o     Engenharia de Requisitos   32/62
Recolha de Requisitos
 Question´rios
         a

Processo                                       Cuidados
   Conjunto de quest˜es escritas,
                    o                                Come¸ar com quest˜es
                                                           c          o
   usualmente enviadas para um                       interessantes;
   grande n´mero de pessoas;
           u
                                                     Agrupar em sec¸˜es coerentes;
                                                                   co
   Podem ser em formato de papel ou
                                                     N˜o colocar perguntas importantes
                                                      a
   eletr´nico;
        o
                                                     no fim;
   Selecionar participantes
                                                     N˜o encher demasiado as p´ginas;
                                                      a                       a
   representativos;
                                                     Evitar o uso de abreviaturas;
   Desenvolver quest˜es claras e de
                    o
   f´cil an´lise;
    a      a                                         Evitar fazer perguntas
                                                     tendenciosas;
   Definir estrat´gias para obter um
                e
   bom n´mero de respostas;
         u                                           Numerar as perguntas;
   Mostrar o impacto do question´rio
                                a                    Fazer teste pr´vio ao question´rio;
                                                                   e               a
   aos questionados;
                                                     Garantir anonimato nas respostas;
                              Alberto Sim˜es
                                         o     Engenharia de Requisitos              32/62
Recolha de Requisitos
An´lise Documental
  a



       Documentos que contˆm informa¸˜o do sistema “as-is”
                          e         ca
       (estado atual!)
            Regulamentos, Relat´rios internos, Registos peri´dicos,
                               o                            o
            Formul´rios, Manuais de procedimentos, . . .
                  a




                          Alberto Sim˜es
                                     o     Engenharia de Requisitos   33/62
Recolha de Requisitos
An´lise Documental
  a



       Documentos que contˆm informa¸˜o do sistema “as-is”
                          e         ca
       (estado atual!)
            Regulamentos, Relat´rios internos, Registos peri´dicos,
                               o                            o
            Formul´rios, Manuais de procedimentos, . . .
                  a
       Procurar elementos adicionados pelos utilizadores aos
       formul´rios (notas ` margem...)
             a            a




                          Alberto Sim˜es
                                     o     Engenharia de Requisitos   33/62
Recolha de Requisitos
An´lise Documental
  a



       Documentos que contˆm informa¸˜o do sistema “as-is”
                          e         ca
       (estado atual!)
            Regulamentos, Relat´rios internos, Registos peri´dicos,
                               o                            o
            Formul´rios, Manuais de procedimentos, . . .
                  a
       Procurar elementos adicionados pelos utilizadores aos
       formul´rios (notas ` margem...)
             a            a
       Procurar elementos n˜o utilizados;
                           a




                          Alberto Sim˜es
                                     o     Engenharia de Requisitos   33/62
Recolha de Requisitos
An´lise Documental
  a



       Documentos que contˆm informa¸˜o do sistema “as-is”
                          e         ca
       (estado atual!)
            Regulamentos, Relat´rios internos, Registos peri´dicos,
                               o                            o
            Formul´rios, Manuais de procedimentos, . . .
                  a
       Procurar elementos adicionados pelos utilizadores aos
       formul´rios (notas ` margem...)
             a            a
       Procurar elementos n˜o utilizados;
                             a
       Dar particular aten¸˜o aos documentos:
                          ca
            Que descrevem a organiza¸˜o;
                                     ca
            Que descrevem os conte´dos funcionais dos v´rios cargos;
                                   u                    a
            Que relatam as atividades da organiza¸˜o;
                                                  ca
            Que constituem material publicit´rio e promocional da
                                            a
            organiza¸˜o;
                    ca


                          Alberto Sim˜es
                                     o     Engenharia de Requisitos    33/62
Recolha de Requisitos
Observa¸˜o
       ca




       Observa¸˜o dos processos a serem executados;
              ca
       Utilizadores/gestores n˜o se lembram com exatid˜o de tudo o
                              a                       a
       que fazem;
       Valida a informa¸˜o recolhida com outros m´todos;
                       ca                        e
       Ter em aten¸˜o que o comportamento das pessoas muda
                   ca
       quando est˜o a ser observadas;
                 a
       Tentar ser discreto;
       Identificar per´
                     ıodos mortos e picos;




                         Alberto Sim˜es
                                    o     Engenharia de Requisitos   34/62
Recolha de Requisitos
Perspetivas



       Forma de estruturar requisitos, mostrando as perspetivas dos
       diferentes stakeholders;

       Nenhuma perspetiva ´ a correta;
                          e

       Tipos de Perspetivas:

              Dos intervenientes
              ´
              E a vis˜o segundo as pessoas ou outros sistemas que interagem
                     a
              com o sistema;
              Do dom´  ınio
              Caracter´ ısticas e constrangimentos do dom´
                                                         ınio, que afetam os
              requisitos.



                            Alberto Sim˜es
                                       o     Engenharia de Requisitos          35/62
Recolha de Requisitos
Cen´rios
   a



       Exemplos da vida real, de como o sistema interage e pode ser
       utilizado.
       Devem incluir:
           Descri¸˜o da situa¸˜o
                 ca           ca
           (quando esta situa¸˜o ocorre, quem lida com ela, etc.)
                              ca
           Situa¸˜o de arranque
                ca
           (quais s˜o os pressupostos para que este cen´rio possa ocorrer)
                   a                                   a
           Fluxo normal dos eventos
           (quem d´ a informa¸˜o, quem a introduz, quais as a¸˜es
                    a          ca                              co
           despoletadas pelo sistema)
           Situa¸˜es de erro
                co
           (o que pode correr mal?)
           Final do cen´rio
                       a
           (estado do sistema quando o caso real termina)


                         Alberto Sim˜es
                                    o     Engenharia de Requisitos           36/62
Recolha de Requisitos
Prototipagem




       Alguns utilizadores tˆm dificuldade em visualizar o sistema;
                            e

       Pode ser util preparar prot´tipos de interfaces com o utilizador
                ´                 o
       (mockups) que permitam discutir as funcionalidades
       desejadas;

       Em casos em que a perce¸˜o do processo de transforma¸˜o e
                                  ca                          ca
       prepara¸˜o de informa¸˜o seja dif´ poder´ fazer sentido
               ca             ca        ıcil,   a
       implementar pequenos prot´tipos para simular as v´rias
                                    o                   a
       possibilidades dispon´
                            ıveis.




                         Alberto Sim˜es
                                    o     Engenharia de Requisitos        37/62
Parte IV

Especifica¸˜o de Requisitos
         ca




      Alberto Sim˜es
                 o     Engenharia de Requisitos   38/62
Especifica¸˜o de Requisitos
         ca
Linguagem Natural


       Possivelmente a forma mais simples de especificar requisitos;




                        Alberto Sim˜es
                                   o     Engenharia de Requisitos     39/62
Especifica¸˜o de Requisitos
         ca
Linguagem Natural


       Possivelmente a forma mais simples de especificar requisitos;
       Mas a forma menos fi´vel de especificar requisitos;
                          a




                        Alberto Sim˜es
                                   o     Engenharia de Requisitos     39/62
Especifica¸˜o de Requisitos
         ca
Linguagem Natural


       Possivelmente a forma mais simples de especificar requisitos;
       Mas a forma menos fi´vel de especificar requisitos;
                          a
  Problemas no uso da Linguagem Natural
  para especificar requisitos:
       Falta de clareza
       ´ ıcil
       E dif´ obter precis˜o sem tornar a leitura do documento
                          a
       dif´
          ıcil.




                        Alberto Sim˜es
                                   o     Engenharia de Requisitos     39/62
Especifica¸˜o de Requisitos
         ca
Linguagem Natural


       Possivelmente a forma mais simples de especificar requisitos;
       Mas a forma menos fi´vel de especificar requisitos;
                          a
  Problemas no uso da Linguagem Natural
  para especificar requisitos:
       Falta de clareza
       ´ ıcil
       E dif´ obter precis˜o sem tornar a leitura do documento
                          a
       dif´
          ıcil.
       Confus˜o de requisitos
             a
       Os requisitos funcionais e n˜o funcionais tendem a ser
                                   a
       misturados.




                         Alberto Sim˜es
                                    o     Engenharia de Requisitos    39/62
Especifica¸˜o de Requisitos
         ca
Linguagem Natural


       Possivelmente a forma mais simples de especificar requisitos;
       Mas a forma menos fi´vel de especificar requisitos;
                          a
  Problemas no uso da Linguagem Natural
  para especificar requisitos:
       Falta de clareza
       ´ ıcil
       E dif´ obter precis˜o sem tornar a leitura do documento
                          a
       dif´
          ıcil.
       Confus˜o de requisitos
             a
       Os requisitos funcionais e n˜o funcionais tendem a ser
                                   a
       misturados.
       Am´lgama de requisitos
           a
       V´rios requisitos diferentes s˜o muitas vezes expressos em
        a                            a
       conjunto, usando at´ a mesma frase. Isto dificulta a sua
                            e
       correta identifica¸˜o.
                        ca
                         Alberto Sim˜es
                                    o     Engenharia de Requisitos    39/62
Especifica¸˜o de Requisitos
         ca
Exemplos de m´s especifica¸oes em LN
             a           c˜




  Requisito LIBSYS
  Deve fornecer um sistema de contabilidade financeira que
  mantenha os registos dos pagamentos realizados pelos utilizadores
  do sistema. Os gestores do sistema podem configura-lo de forma a
  que os utilizadores mais frequentes possam receber descontos.




                          Alberto Sim˜es
                                     o     Engenharia de Requisitos   40/62
Especifica¸˜o de Requisitos
         ca
Exemplos de m´s especifica¸oes em LN
             a           c˜




  Requisito LIBSYS
  Deve fornecer um sistema de contabilidade financeira que
  mantenha os registos dos pagamentos realizados pelos utilizadores
  do sistema. Os gestores do sistema podem configura-lo de forma a
  que os utilizadores mais frequentes possam receber descontos.

  Problemas:
       descreve o conceito de sistema de contabilidade financeira a
       incluir no sistema de forma abstrata;
       contudo, inclui tamb´m entrada detalhada que n˜o ´
                            e                        a e
       necess´rio a este n´
             a            ıvel;



                          Alberto Sim˜es
                                     o     Engenharia de Requisitos   40/62
Especifica¸˜o de Requisitos
         ca
Exemplos de m´s especifica¸oes em LN
             a           c˜


  Requisito editor de grelhas
  Para facilitar o posicionamento de entidades num diagrama, o
  utilizador pode configurar a grelha em cent´ımetros ou polegadas,
  atrav´s de uma op¸˜o no painel de controlo. Inicialmente, a grelha
        e             ca
  est´ desativada. A grelha pode ser ativada ou desativada a
     a
  qualquer momento. Na vista “reduzir ` dimens˜o”, a grelha ter´
                                        a       a               a
  menos linhas para n˜o saturar o diagrama de linhas.
                       a




                          Alberto Sim˜es
                                     o     Engenharia de Requisitos    41/62
Especifica¸˜o de Requisitos
         ca
Exemplos de m´s especifica¸oes em LN
             a           c˜


  Requisito editor de grelhas
  Para facilitar o posicionamento de entidades num diagrama, o
  utilizador pode configurar a grelha em cent´ımetros ou polegadas,
  atrav´s de uma op¸˜o no painel de controlo. Inicialmente, a grelha
        e             ca
  est´ desativada. A grelha pode ser ativada ou desativada a
     a
  qualquer momento. Na vista “reduzir ` dimens˜o”, a grelha ter´
                                        a       a               a
  menos linhas para n˜o saturar o diagrama de linhas.
                       a

  Problemas:
       requisitos funcionais conceptuais (a necessidade da grelha);
       requisitos n˜o funcionais (as medidas da grelha);
                   a
       requisitos n˜o funcionais de interface com o utilizador
                   a
       (ativa¸˜o da grelha);
             ca


                          Alberto Sim˜es
                                     o     Engenharia de Requisitos    41/62
Especifica¸˜o de Requisitos
         ca
Alternativas ao uso da LN

       Linguagem Natural Estruturada
       Consiste em definir modelos para especificar os requisitos,
       usando estruturas fr´sicas r´
                           a       ıgidas de f´cil interpreta¸˜o.
                                              a              ca




                            Alberto Sim˜es
                                       o     Engenharia de Requisitos   42/62
Especifica¸˜o de Requisitos
         ca
Alternativas ao uso da LN

       Linguagem Natural Estruturada
       Consiste em definir modelos para especificar os requisitos,
       usando estruturas fr´sicas r´
                           a       ıgidas de f´cil interpreta¸˜o.
                                              a              ca
       Linguagem de Descri¸˜o de Projeto
                             ca
       Recorrer a uma linguagem formal, do g´nero da usada em
                                                e
       programa¸˜o ou algoritmia, mas mais abstrata, para
                ca
       especificar os requisitos.




                            Alberto Sim˜es
                                       o     Engenharia de Requisitos   42/62
Especifica¸˜o de Requisitos
         ca
Alternativas ao uso da LN

       Linguagem Natural Estruturada
       Consiste em definir modelos para especificar os requisitos,
       usando estruturas fr´sicas r´
                           a       ıgidas de f´cil interpreta¸˜o.
                                              a              ca
       Linguagem de Descri¸˜o de Projeto
                             ca
       Recorrer a uma linguagem formal, do g´nero da usada em
                                                e
       programa¸˜o ou algoritmia, mas mais abstrata, para
                ca
       especificar os requisitos.
       Nota¸˜es Gr´ficas
            co     a
       Descrever os requisitos funcionais numa linguagem gr´fica e
                                                               a
       pseudo-formal (ex: SADT ou UML), complementada com
       anota¸˜es textuais.
             co




                            Alberto Sim˜es
                                       o     Engenharia de Requisitos   42/62
Especifica¸˜o de Requisitos
         ca
Alternativas ao uso da LN

       Linguagem Natural Estruturada
       Consiste em definir modelos para especificar os requisitos,
       usando estruturas fr´sicas r´
                           a       ıgidas de f´cil interpreta¸˜o.
                                              a              ca
       Linguagem de Descri¸˜o de Projeto
                             ca
       Recorrer a uma linguagem formal, do g´nero da usada em
                                                e
       programa¸˜o ou algoritmia, mas mais abstrata, para
                 ca
       especificar os requisitos.
       Nota¸˜es Gr´ficas
            co      a
       Descrever os requisitos funcionais numa linguagem gr´fica e
                                                               a
       pseudo-formal (ex: SADT ou UML), complementada com
       anota¸˜es textuais.
             co
       Nota¸˜es Matem´ticas
            co          a
       Nota¸˜o formal, como por exemplo a teoria de conjuntos, para
            ca
       eliminar qualquer ambiguidade. Levantam problemas na
       dificuldade de compreens˜o para pessoas n˜o familiarizadas
                                 a                  a
       com as nota¸˜es usadas.
                    co
                            Alberto Sim˜es
                                       o     Engenharia de Requisitos   42/62
Especifica¸˜o de Requisitos
         ca
Documento de Requisitos




       ´
       E uma declara¸˜o oficial das funcionalidades do sistema, tendo
                    ca
       como principal destinat´rio quem vai desenvolver o software;
                              a

       Resulta dos requisitos acordados entre as partes;

       N˜o ´ um documento de projeto do sistema: deve descrever O
        a e
       que o sistema deve fazer, e n˜o como deve ser feito;
                                    a




                          Alberto Sim˜es
                                     o     Engenharia de Requisitos    43/62
Especifica¸˜o de Requisitos
         ca
Documento de Requisitos




       Descreve os requisitos para os stakeholders:
            expresso em termos que eles os compreendam;
            compreens´ de diferentes pontos de vista;
                       ıvel
            revistos pelos pr´prios stakeholders;
                             o
            claro e n˜o amb´
                     a       ıguo;
       Descreve os requisitos para quem vai desenvolver o software:
            t˜o preciso e espec´
             a                  ıfico quanto poss´
                                                ıvel;
            expresso em termos que eles compreendam;
            facilitador de integra¸˜o de novos membros na equipa;
                                  ca
       Regista requisitos para o futuro:
            essencial para a evolu¸˜o do sistema;
                                  ca
       Pode servir de documento contratual.



                          Alberto Sim˜es
                                     o     Engenharia de Requisitos   44/62
Especifica¸˜o de Requisitos
         ca
Documento de Requisitos - standard IEEE/ANSI 830-1993




       Introdu¸˜o
              ca
            Objetivos do documento
            ˆ
            Ambito do produto
            Defini¸˜o e abreviaturas
                  ca
            Referˆncias
                 e
       Descri¸˜o Geral
             ca
            Perspetivas e fun¸˜es do produto
                              co
            Carater´
                   ısticas dos utilizadores
            Constrangimentos gerais
            Pressupostos e dependˆncias
                                     e
       Requisitos
       Apˆndices
         e



                          Alberto Sim˜es
                                     o     Engenharia de Requisitos   45/62
Especifica¸˜o de Requisitos
         ca
Prototipagem da Interface



       Esquematizar interfaces para as fun¸˜es principais do software;
                                          co




                            Alberto Sim˜es
                                       o     Engenharia de Requisitos    46/62
Especifica¸˜o de Requisitos
         ca
Prototipagem da Interface



       Esquematizar interfaces para as fun¸˜es principais do software;
                                          co

       Servem como mecanismo de recolha e negocia¸˜o de
                                                 ca
       requisitos;




                            Alberto Sim˜es
                                       o     Engenharia de Requisitos    46/62
Especifica¸˜o de Requisitos
         ca
Prototipagem da Interface



       Esquematizar interfaces para as fun¸˜es principais do software;
                                          co

       Servem como mecanismo de recolha e negocia¸˜o de
                                                 ca
       requisitos;
       Servem tamb´m como especifica¸˜o dos requisitos:
                  e                ca
             apresentam um conjunto de informa¸˜o que deve estar
                                                ca
             dispon´
                   ıvel;
             apresentam um conjunto de bot˜es/menus que correspondem
                                            o
             a funcionalidades que devem ser implementadas;




                            Alberto Sim˜es
                                       o     Engenharia de Requisitos    46/62
Especifica¸˜o de Requisitos
         ca
Prototipagem da Interface



       Esquematizar interfaces para as fun¸˜es principais do software;
                                          co

       Servem como mecanismo de recolha e negocia¸˜o de
                                                 ca
       requisitos;
       Servem tamb´m como especifica¸˜o dos requisitos:
                  e                ca
             apresentam um conjunto de informa¸˜o que deve estar
                                                ca
             dispon´
                   ıvel;
             apresentam um conjunto de bot˜es/menus que correspondem
                                            o
             a funcionalidades que devem ser implementadas;
       Cuidados!
             usar uma ferramenta de desenho que n˜o se assemelhe
                                                     a
             demasiado a um produto final;
             caso contr´rio, cliente poder´ ter impress˜o que o software
                       a                  a            a
             est´ pronto!
                a


                            Alberto Sim˜es
                                       o     Engenharia de Requisitos      46/62
Especifica¸˜o de Requisitos
         ca
Prototipagem da Interface - Exemplo



               - +                                          Adicionar Funcionário
                     Nome :       ...

                Morada :          ...




                Telefone :        ...

                                                                    Data de Nascimento                   March 2009
                      Sexo       Masculino
                                                                                         S M     T   W    T   F   S
                                 Feminino
                                                                                         1   2   3   4    5   6   7
                                                                                         8   9 10 11 12 13 14
                                                                                         15 16 17 18 19 20 21
                                                                                         22 23 24 25 26 27 28
                                                                                         29 30 31
                              Adicionar          Cancelar




                                            Alberto Sim˜es
                                                       o           Engenharia de Requisitos                           47/62
Especifica¸˜o de Requisitos
         ca
Especifica¸˜o Textual
         ca




       Embora a linguagem natural seja amb´  ıgua, ´ imprescind´
                                                   e           ıvel
       uma descri¸˜o textual dos requisitos;
                 ca
       Complementa os prot´tipos de interface ou os diagramas
                          o
       UML;
       Devem ser descritos de forma organizada, e estruturada,
       usando linguagem clara;
       Evitar o uso de g´ inform´tica;
                        ıria    a
       Devem ser descritos usando a forma ativa dos verbos
       (presente, n˜o passado).
                   a




                         Alberto Sim˜es
                                    o     Engenharia de Requisitos    48/62
Especifica¸˜o de Requisitos
         ca
Especifica¸˜o Textual - Exemplo
         ca


    3. Edi¸˜o de diagramas.
          ca




                           Alberto Sim˜es
                                      o     Engenharia de Requisitos   49/62
Especifica¸˜o de Requisitos
         ca
Especifica¸˜o Textual - Exemplo
         ca


    3. Edi¸˜o de diagramas.
          ca
  3.5 Adicionar um nodo num diagrama.




                           Alberto Sim˜es
                                      o     Engenharia de Requisitos   49/62
Especifica¸˜o de Requisitos
         ca
Especifica¸˜o Textual - Exemplo
         ca


    3. Edi¸˜o de diagramas.
          ca
  3.5 Adicionar um nodo num diagrama.
3.5.1 O editor deve permitir que o utilizador adicione nodos de
      determinado tipo ao seu diagrama.




                           Alberto Sim˜es
                                      o     Engenharia de Requisitos   49/62
Especifica¸˜o de Requisitos
         ca
Especifica¸˜o Textual - Exemplo
         ca


    3. Edi¸˜o de diagramas.
          ca
  3.5 Adicionar um nodo num diagrama.
3.5.1 O editor deve permitir que o utilizador adicione nodos de
      determinado tipo ao seu diagrama.
3.5.2 A sequˆncia de a¸˜es para adicionar um nodo deve ser:
            e         co
            O utilizador seleciona o tipo de nodo a ser adicionado.
            O utilizador move o cursor para uma posi¸˜o aproximada para
                                                      ca
            o nodo, no diagrama, indicando que o s´ ımbolo deve ser
            adicionado nesse ponto.
            O utilizador posteriormente deve arraste o s´ımbolo para a sua
            posi¸˜o final.
                ca




                           Alberto Sim˜es
                                      o     Engenharia de Requisitos         49/62
Especifica¸˜o de Requisitos
         ca
Especifica¸˜o Textual - Exemplo
         ca


    3. Edi¸˜o de diagramas.
          ca
  3.5 Adicionar um nodo num diagrama.
3.5.1 O editor deve permitir que o utilizador adicione nodos de
      determinado tipo ao seu diagrama.
3.5.2 A sequˆncia de a¸˜es para adicionar um nodo deve ser:
            e         co
            O utilizador seleciona o tipo de nodo a ser adicionado.
            O utilizador move o cursor para uma posi¸˜o aproximada para
                                                      ca
            o nodo, no diagrama, indicando que o s´ ımbolo deve ser
            adicionado nesse ponto.
            O utilizador posteriormente deve arraste o s´ımbolo para a sua
            posi¸˜o final.
                ca
3.5.3 An´lise L´gica: O utilizador ´ a melhor pessoa para decidir onde
         a     o                   e
      colocar um nodo no diagrama. Esta abordagem d´ controlo direto
                                                       a
      sobre a sele¸˜o e posicionamento dos nodos.
                  ca

                           Alberto Sim˜es
                                      o     Engenharia de Requisitos         49/62
Especifica¸˜o de Requisitos
         ca
Diagramas




      A especifica¸˜o textual dever´ ser complementada com
                  ca               a
      diagramas;
      Existem diferentes nota¸˜es:
                             co
            Diagramas   de   Fluxo de Dados;
            Diagramas   de   Caso de Uso (UML);
            Diagramas   de   Atividade (UML);
            Diagramas   de   Sequˆncia (UML);
                                  e
            ...




                             Alberto Sim˜es
                                        o     Engenharia de Requisitos   50/62
Parte V

Diagramas de Caso de Uso




     Alberto Sim˜es
                o     Engenharia de Requisitos   51/62
Diagramas de Caso de Uso
Atores




                 Alberto Sim˜es
                            o     Engenharia de Requisitos   52/62
Diagramas de Caso de Uso
Ator



                 Representado por um stick-man, acompanhado
                 de um nome;




                 Alberto Sim˜es
                            o     Engenharia de Requisitos   53/62
Diagramas de Caso de Uso
Ator



                 Representado por um stick-man, acompanhado
                 de um nome;
                 O nome do ator dever´ ser f´cil de compreender
                                        a     a
                 pelo cliente e pela equipa de desenvolvimento;




                 Alberto Sim˜es
                            o     Engenharia de Requisitos   53/62
Diagramas de Caso de Uso
Ator



                 Representado por um stick-man, acompanhado
                 de um nome;
                 O nome do ator dever´ ser f´cil de compreender
                                        a     a
                 pelo cliente e pela equipa de desenvolvimento;
                 Nem todos os seres humanos que interagem com
                 o sistema s˜o atores (alguns fazem parte do
                             a
                 pr´prio sistema);
                   o




                 Alberto Sim˜es
                            o     Engenharia de Requisitos   53/62
Diagramas de Caso de Uso
Ator



                 Representado por um stick-man, acompanhado
                 de um nome;
                 O nome do ator dever´ ser f´cil de compreender
                                        a     a
                 pelo cliente e pela equipa de desenvolvimento;
                 Nem todos os seres humanos que interagem com
                 o sistema s˜o atores (alguns fazem parte do
                             a
                 pr´prio sistema);
                   o
                 Nem todos os atores s˜o seres humanos (por
                                       a
                 exemplo, outros sistemas que interagem com o
                 sistema a ser desenvolvido);




                 Alberto Sim˜es
                            o     Engenharia de Requisitos   53/62
Diagramas de Caso de Uso
Ator



                 Representado por um stick-man, acompanhado
                 de um nome;
                 O nome do ator dever´ ser f´cil de compreender
                                        a     a
                 pelo cliente e pela equipa de desenvolvimento;
                 Nem todos os seres humanos que interagem com
                 o sistema s˜o atores (alguns fazem parte do
                             a
                 pr´prio sistema);
                   o
                 Nem todos os atores s˜o seres humanos (por
                                       a
                 exemplo, outros sistemas que interagem com o
                 sistema a ser desenvolvido);
                 Por exemplo, o pr´prio rel´gio do sistema pode
                                  o        o
                 ser visto como um ator, que despoleta a¸˜es a
                                                         co
                 determinadas horas;

                 Alberto Sim˜es
                            o     Engenharia de Requisitos   53/62
Diagramas de Caso de Uso
Generaliza¸˜o de Atores
          ca

                                           Alguns atores s˜o capazes de realizar
                                                          a
                                           todas as opera¸˜es que outros atores;
                                                         co
                                           Por exemplo, ´ t´
                                                         e ıpico que um
                                           administrador possa realizar todas as
                                           opera¸˜es de um utilizador normal (e
                                                co
                                           outras espec´
                                                       ıficas);
                                           O chefe de caixa num supermercado
                                           tipicamente tamb´m ´ caixa: para
                                                            e e
                                           al´m de fazer o que um caixa faz, tem
                                             e
                                           capacidade de realizar outras
                                           opera¸˜es;
                                                 co
                                   Nestes casos, usa-se uma seta de
                                   generaliza¸˜o (com um triˆngulo como
                                              ca             a
                                   ponta), que parte do ator mais gen´rico,
                                                                      e
                                   em dire¸˜o ao ator mais espec´
                                           ca                   ıfico;
                          Alberto Sim˜es
                                     o      Engenharia de Requisitos         54/62
Diagramas de Caso de Uso
Casos de Uso



                 Um caso de uso, ou uma tarefa, ´ representado
                                                e
                 dentro de uma oval;




                 Alberto Sim˜es
                            o     Engenharia de Requisitos   55/62
Diagramas de Caso de Uso
Casos de Uso



                 Um caso de uso, ou uma tarefa, ´ representado
                                                e
                 dentro de uma oval;
                        Pode ser t˜o simples como permitir que o
                                   a
                        utilizador realize login;
                        Pode ser t˜o complicado como executar uma
                                   a
                        transa¸˜o distribu´ por v´rias bases de dados
                               ca           ıda   a
                        globais;




                 Alberto Sim˜es
                            o     Engenharia de Requisitos        55/62
Diagramas de Caso de Uso
Casos de Uso



                 Um caso de uso, ou uma tarefa, ´ representado
                                                e
                 dentro de uma oval;
                        Pode ser t˜o simples como permitir que o
                                   a
                        utilizador realize login;
                        Pode ser t˜o complicado como executar uma
                                   a
                        transa¸˜o distribu´ por v´rias bases de dados
                               ca           ıda   a
                        globais;
                 ´
                 E uma intera¸˜o completa, que inclui a
                              ca
                 introdu¸˜o de dados no sistema (ou pelo menos
                        ca
                 o pedido de determinada funcionalidade), e o
                 retorno por parte do sistema;




                 Alberto Sim˜es
                            o     Engenharia de Requisitos        55/62
Diagramas de Caso de Uso
Casos de Uso



                   Um caso de uso, ou uma tarefa, ´ representado
                                                  e
                   dentro de uma oval;
                           Pode ser t˜o simples como permitir que o
                                      a
                           utilizador realize login;
                           Pode ser t˜o complicado como executar uma
                                      a
                           transa¸˜o distribu´ por v´rias bases de dados
                                  ca           ıda   a
                           globais;
                   ´
                   E uma intera¸˜o completa, que inclui a
                                ca
                   introdu¸˜o de dados no sistema (ou pelo menos
                          ca
                   o pedido de determinada funcionalidade), e o
                   retorno por parte do sistema;
               Um caso de uso ´ qualquer coisa que providencia um
                               e
               resultado mensur´vel para o utilizador ou um sistema
                               a
               externo

                    Alberto Sim˜es
                               o     Engenharia de Requisitos        55/62
Diagramas de Caso de Uso
Linhas de Comunica¸˜o
                  ca




                                         Relacionam os atores com os casos
                                         de uso com que interagem;
                                         Tipicamente os diagramas n˜o
                                                                   a
                                         representam a ordem pela qual esta
                                         intera¸˜o ´ feita;
                                               ca e
                                         Uma linha de comunica¸˜o significa
                                                                ca
                                         apenas que o ator est´ envolvido
                                                              a
                                         em determinado uso do sistema;




                        Alberto Sim˜es
                                   o     Engenharia de Requisitos      56/62
Diagramas de Caso de Uso
Limites do Sistema




                                      Embora exista uma separa¸˜o ca
                                      impl´ıcita entre atores e casos de
                                      uso, ´ habitual colocar estes
                                            e
                                      ultimos numa caixa;
                                      ´
                                      Habitualmente nesta caixa ´e
                                      inscrito o nome do sistema;




                     Alberto Sim˜es
                                o     Engenharia de Requisitos             57/62
Diagramas de Caso de Uso
Descri¸˜o dos Casos de Uso
      ca


  Cada caso de uso dever´ ser acompanhado de uma descri¸˜o
                         a                              ca
  detalhada do processo (como a defini¸˜o de um requisito).
                                     ca




                             Alberto Sim˜es
                                        o     Engenharia de Requisitos   58/62
Diagramas de Caso de Uso
Descri¸˜o dos Casos de Uso
      ca


  Cada caso de uso dever´ ser acompanhado de uma descri¸˜o
                         a                              ca
  detalhada do processo (como a defini¸˜o de um requisito).
                                     ca

            Caso de uso:   criar novo utilizador no blog
               Objetivo:   um utilizador solicitou ao administrador um utilizador no blog
   Condi¸˜o de Sucesso:
        ca                 um novo utilizador ´ criado para o autor
                                                e
     Condi¸˜o de Falha:
           ca              ´ rejeitada a requisi¸˜o de novo utilizador
                           e                    ca
         Principal Ator:   administrador
    Atores Secund´rios:
                   a       BD de credenciais
               Processo:
                               1. O administrador escolhe a op¸˜o de criar novo utilizador;
                                                              ca
                               2. O administrador escolhe o tipo de utilizador;
                               3. O administrador preenche formul´rio com dados do utilizador;
                                                                 a
                               4. Os detalhes do utilizador s˜o verificados na BD de credenciais;
                                                             a
                               5. O utilizador do blog ´ criado;
                                                       e
                               6. S˜o enviados os detalhes do utilizador por e-mail para o utilizador;
                                   a

             Extens˜es:
                   o
                             4.1. A BD de credenciais n˜o verifica os detalhes do utilizador;
                                                       a
                             4.2. A requisi¸˜o de novo utilizador ´ rejeitada;
                                           ca                     e




                                      Alberto Sim˜es
                                                 o         Engenharia de Requisitos                      58/62
Diagramas de Caso de Uso
Rela¸˜es entre Casos de Uso
    co


  Considere-se o seguinte cen´rio:
                             a




  N˜o h´ rela¸˜o entre os dois casos de uso?
   a a       ca




                              Alberto Sim˜es
                                         o     Engenharia de Requisitos   59/62
Diagramas de Caso de Uso
Rela¸˜es entre Casos de Uso
    co


  Considere-se o seguinte cen´rio:
                             a




  N˜o h´ rela¸˜o entre os dois casos de uso?
   a a       ca
       Os casos de uso podem partilhar opera¸˜es;
                                            co
       Por exemplo, para criar um utilizador no blog, ou um wiki
       pessoal, ser´ necess´rio validar a identidade do utilizador;
                   a       a
       Podemos colocar essa opera¸˜o em evidˆncia.
                                 ca         e

                              Alberto Sim˜es
                                         o     Engenharia de Requisitos   59/62
Diagramas de Caso de Uso
Rela¸˜es entre Casos de Uso
    co




                              Alberto Sim˜es
                                         o     Engenharia de Requisitos   60/62
Aula 02 - Engenharia de Requisitos
Aula 02 - Engenharia de Requisitos
Aula 02 - Engenharia de Requisitos
Aula 02 - Engenharia de Requisitos
Aula 02 - Engenharia de Requisitos
Aula 02 - Engenharia de Requisitos
Aula 02 - Engenharia de Requisitos
Aula 02 - Engenharia de Requisitos

Más contenido relacionado

La actualidad más candente

Exercícios - Herança - Java
Exercícios - Herança - JavaExercícios - Herança - Java
Exercícios - Herança - JavaArthur Emanuel
 
Introducao a Arquitetura de Software
Introducao a Arquitetura de SoftwareIntroducao a Arquitetura de Software
Introducao a Arquitetura de SoftwareUFPA
 
Processos e threads
Processos e threadsProcessos e threads
Processos e threadsSilvino Neto
 
Documentação do software
Documentação do softwareDocumentação do software
Documentação do softwarecifjovo02
 
Análise e Projeto de Sistemas
Análise e Projeto de SistemasAnálise e Projeto de Sistemas
Análise e Projeto de SistemasGuilherme
 
1 requisitos funcionais e não funcionais ok
1  requisitos funcionais e não funcionais ok1  requisitos funcionais e não funcionais ok
1 requisitos funcionais e não funcionais okMarcos Morais de Sousa
 
Lista de exercicios algoritmos resolvida-
Lista de exercicios   algoritmos  resolvida-Lista de exercicios   algoritmos  resolvida-
Lista de exercicios algoritmos resolvida-Mauro Pereira
 
Pseudocódigo ou Portugol (Lógica de Programação)
Pseudocódigo ou Portugol (Lógica de Programação)Pseudocódigo ou Portugol (Lógica de Programação)
Pseudocódigo ou Portugol (Lógica de Programação)Gercélia Ramos
 
Software Engineering unit 3
Software Engineering unit 3Software Engineering unit 3
Software Engineering unit 3Abhimanyu Mishra
 
Requirements documentation standards ieee830
Requirements documentation standards   ieee830Requirements documentation standards   ieee830
Requirements documentation standards ieee830Abdul Basit
 
Eng.ª do Software - 9. Verificação e validação
Eng.ª do Software - 9. Verificação e validaçãoEng.ª do Software - 9. Verificação e validação
Eng.ª do Software - 9. Verificação e validaçãoManuel Menezes de Sequeira
 
Requirement Analysis
Requirement AnalysisRequirement Analysis
Requirement AnalysisSADEED AMEEN
 
Aula 1 - Introdução a Engenharia de Software
Aula 1 -  Introdução a Engenharia de SoftwareAula 1 -  Introdução a Engenharia de Software
Aula 1 - Introdução a Engenharia de SoftwareLeinylson Fontinele
 

La actualidad más candente (20)

UML
UMLUML
UML
 
Exercicios - Java Swing
Exercicios - Java SwingExercicios - Java Swing
Exercicios - Java Swing
 
engenharia-de-requisitos
engenharia-de-requisitosengenharia-de-requisitos
engenharia-de-requisitos
 
Exercícios - Herança - Java
Exercícios - Herança - JavaExercícios - Herança - Java
Exercícios - Herança - Java
 
Introducao a Arquitetura de Software
Introducao a Arquitetura de SoftwareIntroducao a Arquitetura de Software
Introducao a Arquitetura de Software
 
Processos e threads
Processos e threadsProcessos e threads
Processos e threads
 
Documentação do software
Documentação do softwareDocumentação do software
Documentação do software
 
Diagramas de componentes
Diagramas de componentesDiagramas de componentes
Diagramas de componentes
 
Análise e Projeto de Sistemas
Análise e Projeto de SistemasAnálise e Projeto de Sistemas
Análise e Projeto de Sistemas
 
1 requisitos funcionais e não funcionais ok
1  requisitos funcionais e não funcionais ok1  requisitos funcionais e não funcionais ok
1 requisitos funcionais e não funcionais ok
 
Lista de exercicios algoritmos resolvida-
Lista de exercicios   algoritmos  resolvida-Lista de exercicios   algoritmos  resolvida-
Lista de exercicios algoritmos resolvida-
 
Exemplo de Plano de testes
Exemplo de Plano de testes Exemplo de Plano de testes
Exemplo de Plano de testes
 
Pseudocódigo ou Portugol (Lógica de Programação)
Pseudocódigo ou Portugol (Lógica de Programação)Pseudocódigo ou Portugol (Lógica de Programação)
Pseudocódigo ou Portugol (Lógica de Programação)
 
Web Engineering
Web EngineeringWeb Engineering
Web Engineering
 
Software Engineering unit 3
Software Engineering unit 3Software Engineering unit 3
Software Engineering unit 3
 
Requirements documentation standards ieee830
Requirements documentation standards   ieee830Requirements documentation standards   ieee830
Requirements documentation standards ieee830
 
Eng.ª do Software - 9. Verificação e validação
Eng.ª do Software - 9. Verificação e validaçãoEng.ª do Software - 9. Verificação e validação
Eng.ª do Software - 9. Verificação e validação
 
Sistema acadêmico
Sistema acadêmicoSistema acadêmico
Sistema acadêmico
 
Requirement Analysis
Requirement AnalysisRequirement Analysis
Requirement Analysis
 
Aula 1 - Introdução a Engenharia de Software
Aula 1 -  Introdução a Engenharia de SoftwareAula 1 -  Introdução a Engenharia de Software
Aula 1 - Introdução a Engenharia de Software
 

Destacado

Engenharia de requisitos
Engenharia de requisitosEngenharia de requisitos
Engenharia de requisitosMailson Queiroz
 
3 unidade eng economica
3 unidade eng economica3 unidade eng economica
3 unidade eng economicaMoises Souza
 
Es capítulo 4 - engenharia de requisitos
Es   capítulo 4  - engenharia de requisitosEs   capítulo 4  - engenharia de requisitos
Es capítulo 4 - engenharia de requisitosFelipe Oliveira
 
Engenharia de Requisitos - Aula 2
Engenharia de Requisitos - Aula 2Engenharia de Requisitos - Aula 2
Engenharia de Requisitos - Aula 2Tiago Barros
 
Engenharia Requisitos - Método RON
Engenharia Requisitos - Método RONEngenharia Requisitos - Método RON
Engenharia Requisitos - Método RONEduardo Castro
 
Fundamentos de Engenharia de Requisitos
Fundamentos de Engenharia de RequisitosFundamentos de Engenharia de Requisitos
Fundamentos de Engenharia de RequisitosBarbara Lima
 
Engenharia de Requisitos
Engenharia de RequisitosEngenharia de Requisitos
Engenharia de RequisitosTiago Barros
 
Eng.ª do Software - 3. Processos da engenharia de requisitos
Eng.ª do Software - 3. Processos da engenharia de requisitosEng.ª do Software - 3. Processos da engenharia de requisitos
Eng.ª do Software - 3. Processos da engenharia de requisitosManuel Menezes de Sequeira
 
Engenharia de requisitos para metodos ageis dissertacao
Engenharia de requisitos para metodos ageis   dissertacaoEngenharia de requisitos para metodos ageis   dissertacao
Engenharia de requisitos para metodos ageis dissertacaotsblackboy
 
Gerenciamento de requisitos - NeoTalks - 05.05.2016
Gerenciamento de requisitos - NeoTalks - 05.05.2016Gerenciamento de requisitos - NeoTalks - 05.05.2016
Gerenciamento de requisitos - NeoTalks - 05.05.2016Carlos Giovani Rodrigues
 
Técnicas de Elicitação de Requisitos
Técnicas de Elicitação de RequisitosTécnicas de Elicitação de Requisitos
Técnicas de Elicitação de RequisitosNoaldo Sales
 
Como hospedar seu site
Como hospedar seu siteComo hospedar seu site
Como hospedar seu siteWilliam Silva
 

Destacado (20)

Engenharia de requisitos
Engenharia de requisitosEngenharia de requisitos
Engenharia de requisitos
 
3 unidade eng economica
3 unidade eng economica3 unidade eng economica
3 unidade eng economica
 
Engenharia De Requisitos
Engenharia De RequisitosEngenharia De Requisitos
Engenharia De Requisitos
 
Es capítulo 4 - engenharia de requisitos
Es   capítulo 4  - engenharia de requisitosEs   capítulo 4  - engenharia de requisitos
Es capítulo 4 - engenharia de requisitos
 
Engenharia de Requisitos - Aula 2
Engenharia de Requisitos - Aula 2Engenharia de Requisitos - Aula 2
Engenharia de Requisitos - Aula 2
 
Gerência de Requisitos
Gerência de RequisitosGerência de Requisitos
Gerência de Requisitos
 
Engenharia Requisitos - Método RON
Engenharia Requisitos - Método RONEngenharia Requisitos - Método RON
Engenharia Requisitos - Método RON
 
Fundamentos de Engenharia de Requisitos
Fundamentos de Engenharia de RequisitosFundamentos de Engenharia de Requisitos
Fundamentos de Engenharia de Requisitos
 
Engenharia de Requisitos
Engenharia de RequisitosEngenharia de Requisitos
Engenharia de Requisitos
 
Eng.ª do Software - 3. Processos da engenharia de requisitos
Eng.ª do Software - 3. Processos da engenharia de requisitosEng.ª do Software - 3. Processos da engenharia de requisitos
Eng.ª do Software - 3. Processos da engenharia de requisitos
 
Engenharia de Requisitos
Engenharia de RequisitosEngenharia de Requisitos
Engenharia de Requisitos
 
Engenharia de requisitos para metodos ageis dissertacao
Engenharia de requisitos para metodos ageis   dissertacaoEngenharia de requisitos para metodos ageis   dissertacao
Engenharia de requisitos para metodos ageis dissertacao
 
Dojo de Requisitos
Dojo de RequisitosDojo de Requisitos
Dojo de Requisitos
 
Artigo Transp Sw
Artigo Transp SwArtigo Transp Sw
Artigo Transp Sw
 
Gerenciamento de requisitos - NeoTalks - 05.05.2016
Gerenciamento de requisitos - NeoTalks - 05.05.2016Gerenciamento de requisitos - NeoTalks - 05.05.2016
Gerenciamento de requisitos - NeoTalks - 05.05.2016
 
Técnicas de Elicitação de Requisitos
Técnicas de Elicitação de RequisitosTécnicas de Elicitação de Requisitos
Técnicas de Elicitação de Requisitos
 
Como hospedar seu site
Como hospedar seu siteComo hospedar seu site
Como hospedar seu site
 
06 Requisitos
06 Requisitos06 Requisitos
06 Requisitos
 
Smarts and Smarter
Smarts and SmarterSmarts and Smarter
Smarts and Smarter
 
Engenharia de requisitos 5/5
Engenharia de requisitos 5/5Engenharia de requisitos 5/5
Engenharia de requisitos 5/5
 

Similar a Aula 02 - Engenharia de Requisitos

Utilização da Engenharia de Requisitos: Onde, quando e como utilizar
Utilização da Engenharia de Requisitos: Onde, quando e como utilizarUtilização da Engenharia de Requisitos: Onde, quando e como utilizar
Utilização da Engenharia de Requisitos: Onde, quando e como utilizarOpencadd Advanced Technology
 
Engenharia de requisitos introdução
Engenharia de requisitos   introduçãoEngenharia de requisitos   introdução
Engenharia de requisitos introduçãoSilmar De Freitas
 
Aula 01 - Introdução Engenharia de requisitos - Prof.ª Cristiane Fidelix
Aula 01 - Introdução Engenharia de requisitos - Prof.ª Cristiane FidelixAula 01 - Introdução Engenharia de requisitos - Prof.ª Cristiane Fidelix
Aula 01 - Introdução Engenharia de requisitos - Prof.ª Cristiane FidelixCris Fidelix
 
Aula 03 - Verificação e Validação de Requisitos.pptx
Aula 03 - Verificação e Validação de Requisitos.pptxAula 03 - Verificação e Validação de Requisitos.pptx
Aula 03 - Verificação e Validação de Requisitos.pptxLucianaRecartCardoso
 
Os aspectos mais relevantes da Engenharia de Requisitos
Os aspectos mais relevantes da Engenharia de RequisitosOs aspectos mais relevantes da Engenharia de Requisitos
Os aspectos mais relevantes da Engenharia de RequisitosJosé Vieira
 
Análise de sistemas análise de requisitos
Análise de sistemas   análise de requisitosAnálise de sistemas   análise de requisitos
Análise de sistemas análise de requisitosMá Puia
 
Engenharia de software apostila analise de requisitos ii
Engenharia de software   apostila analise de requisitos iiEngenharia de software   apostila analise de requisitos ii
Engenharia de software apostila analise de requisitos iirobinhoct
 
UnP Eng. Software - Aula 25
UnP Eng. Software - Aula 25UnP Eng. Software - Aula 25
UnP Eng. Software - Aula 25Hélio Medeiros
 
Modelos e etapas do processo de software.pdf
Modelos e etapas do processo de software.pdfModelos e etapas do processo de software.pdf
Modelos e etapas do processo de software.pdfIvanFontainha
 
Aula 1 introducao
Aula 1   introducaoAula 1   introducao
Aula 1 introducaolicardino
 
Engenharia de Requisitos
Engenharia de RequisitosEngenharia de Requisitos
Engenharia de RequisitosCloves da Rocha
 
Curso de Engenharia de Requisitos
Curso de Engenharia de RequisitosCurso de Engenharia de Requisitos
Curso de Engenharia de RequisitosGrupo Treinar
 
TCC - "Sistema Automático de Medição do Diâmetro Interno de Rotores Via Calib...
TCC - "Sistema Automático de Medição do Diâmetro Interno de Rotores Via Calib...TCC - "Sistema Automático de Medição do Diâmetro Interno de Rotores Via Calib...
TCC - "Sistema Automático de Medição do Diâmetro Interno de Rotores Via Calib...Carlos Alberto
 
04 - Reqxxxxxxxxxxxxxxxxxxxxxxxuisitos.ppt
04 - Reqxxxxxxxxxxxxxxxxxxxxxxxuisitos.ppt04 - Reqxxxxxxxxxxxxxxxxxxxxxxxuisitos.ppt
04 - Reqxxxxxxxxxxxxxxxxxxxxxxxuisitos.pptIedaRosanaKollingWie
 

Similar a Aula 02 - Engenharia de Requisitos (20)

Utilização da Engenharia de Requisitos: Onde, quando e como utilizar
Utilização da Engenharia de Requisitos: Onde, quando e como utilizarUtilização da Engenharia de Requisitos: Onde, quando e como utilizar
Utilização da Engenharia de Requisitos: Onde, quando e como utilizar
 
Engenharia de requisitos introdução
Engenharia de requisitos   introduçãoEngenharia de requisitos   introdução
Engenharia de requisitos introdução
 
Aula 01 - Introdução Engenharia de requisitos - Prof.ª Cristiane Fidelix
Aula 01 - Introdução Engenharia de requisitos - Prof.ª Cristiane FidelixAula 01 - Introdução Engenharia de requisitos - Prof.ª Cristiane Fidelix
Aula 01 - Introdução Engenharia de requisitos - Prof.ª Cristiane Fidelix
 
Aula 03 - Verificação e Validação de Requisitos.pptx
Aula 03 - Verificação e Validação de Requisitos.pptxAula 03 - Verificação e Validação de Requisitos.pptx
Aula 03 - Verificação e Validação de Requisitos.pptx
 
Os aspectos mais relevantes da Engenharia de Requisitos
Os aspectos mais relevantes da Engenharia de RequisitosOs aspectos mais relevantes da Engenharia de Requisitos
Os aspectos mais relevantes da Engenharia de Requisitos
 
Aula3 engenharia requisitos
Aula3 engenharia requisitosAula3 engenharia requisitos
Aula3 engenharia requisitos
 
Análise de sistemas análise de requisitos
Análise de sistemas   análise de requisitosAnálise de sistemas   análise de requisitos
Análise de sistemas análise de requisitos
 
Engenharia de software apostila analise de requisitos ii
Engenharia de software   apostila analise de requisitos iiEngenharia de software   apostila analise de requisitos ii
Engenharia de software apostila analise de requisitos ii
 
UnP Eng. Software - Aula 25
UnP Eng. Software - Aula 25UnP Eng. Software - Aula 25
UnP Eng. Software - Aula 25
 
Qualidade e Teste de Software
Qualidade e Teste de SoftwareQualidade e Teste de Software
Qualidade e Teste de Software
 
Modelos e etapas do processo de software.pdf
Modelos e etapas do processo de software.pdfModelos e etapas do processo de software.pdf
Modelos e etapas do processo de software.pdf
 
Aula 1 introducao
Aula 1   introducaoAula 1   introducao
Aula 1 introducao
 
Engenharia de Requisitos
Engenharia de RequisitosEngenharia de Requisitos
Engenharia de Requisitos
 
Análise de Sistemas Orientado a Objetos - 01
Análise de Sistemas Orientado a Objetos - 01Análise de Sistemas Orientado a Objetos - 01
Análise de Sistemas Orientado a Objetos - 01
 
27001 consulta publica
27001 consulta publica27001 consulta publica
27001 consulta publica
 
Curso de Engenharia de Requisitos
Curso de Engenharia de RequisitosCurso de Engenharia de Requisitos
Curso de Engenharia de Requisitos
 
TCC - "Sistema Automático de Medição do Diâmetro Interno de Rotores Via Calib...
TCC - "Sistema Automático de Medição do Diâmetro Interno de Rotores Via Calib...TCC - "Sistema Automático de Medição do Diâmetro Interno de Rotores Via Calib...
TCC - "Sistema Automático de Medição do Diâmetro Interno de Rotores Via Calib...
 
04 - Reqxxxxxxxxxxxxxxxxxxxxxxxuisitos.ppt
04 - Reqxxxxxxxxxxxxxxxxxxxxxxxuisitos.ppt04 - Reqxxxxxxxxxxxxxxxxxxxxxxxuisitos.ppt
04 - Reqxxxxxxxxxxxxxxxxxxxxxxxuisitos.ppt
 
Aula1 introducao engsw
Aula1 introducao engswAula1 introducao engsw
Aula1 introducao engsw
 
Wellington Vasconcelos - Priorização de requisitos
Wellington Vasconcelos - Priorização de requisitosWellington Vasconcelos - Priorização de requisitos
Wellington Vasconcelos - Priorização de requisitos
 

Más de Alberto Simões

Language Identification: A neural network approach
Language Identification: A neural network approachLanguage Identification: A neural network approach
Language Identification: A neural network approachAlberto Simões
 
Making the most of a 100-year-old dictionary
Making the most of a 100-year-old dictionaryMaking the most of a 100-year-old dictionary
Making the most of a 100-year-old dictionaryAlberto Simões
 
Dictionary Alignment by Rewrite-based Entry Translation
Dictionary Alignment by Rewrite-based Entry TranslationDictionary Alignment by Rewrite-based Entry Translation
Dictionary Alignment by Rewrite-based Entry TranslationAlberto Simões
 
EMLex-A5: Specialized Dictionaries
EMLex-A5: Specialized DictionariesEMLex-A5: Specialized Dictionaries
EMLex-A5: Specialized DictionariesAlberto Simões
 
Aula 04 - Introdução aos Diagramas de Sequência
Aula 04 - Introdução aos Diagramas de SequênciaAula 04 - Introdução aos Diagramas de Sequência
Aula 04 - Introdução aos Diagramas de SequênciaAlberto Simões
 
Aula 01 - Planeamento de Sistemas de Informação
Aula 01 - Planeamento de Sistemas de InformaçãoAula 01 - Planeamento de Sistemas de Informação
Aula 01 - Planeamento de Sistemas de InformaçãoAlberto Simões
 
Building C and C++ libraries with Perl
Building C and C++ libraries with PerlBuilding C and C++ libraries with Perl
Building C and C++ libraries with PerlAlberto Simões
 
Processing XML: a rewriting system approach
Processing XML: a rewriting system approachProcessing XML: a rewriting system approach
Processing XML: a rewriting system approachAlberto Simões
 
Arquitecturas de Tradução Automática
Arquitecturas de Tradução AutomáticaArquitecturas de Tradução Automática
Arquitecturas de Tradução AutomáticaAlberto Simões
 
Extracção de Recursos para Tradução Automática
Extracção de Recursos para Tradução AutomáticaExtracção de Recursos para Tradução Automática
Extracção de Recursos para Tradução AutomáticaAlberto Simões
 

Más de Alberto Simões (20)

Source Code Quality
Source Code QualitySource Code Quality
Source Code Quality
 
Language Identification: A neural network approach
Language Identification: A neural network approachLanguage Identification: A neural network approach
Language Identification: A neural network approach
 
Google Maps JS API
Google Maps JS APIGoogle Maps JS API
Google Maps JS API
 
Making the most of a 100-year-old dictionary
Making the most of a 100-year-old dictionaryMaking the most of a 100-year-old dictionary
Making the most of a 100-year-old dictionary
 
Dictionary Alignment by Rewrite-based Entry Translation
Dictionary Alignment by Rewrite-based Entry TranslationDictionary Alignment by Rewrite-based Entry Translation
Dictionary Alignment by Rewrite-based Entry Translation
 
EMLex-A5: Specialized Dictionaries
EMLex-A5: Specialized DictionariesEMLex-A5: Specialized Dictionaries
EMLex-A5: Specialized Dictionaries
 
Modelação de Dados
Modelação de DadosModelação de Dados
Modelação de Dados
 
Aula 04 - Introdução aos Diagramas de Sequência
Aula 04 - Introdução aos Diagramas de SequênciaAula 04 - Introdução aos Diagramas de Sequência
Aula 04 - Introdução aos Diagramas de Sequência
 
Aula 01 - Planeamento de Sistemas de Informação
Aula 01 - Planeamento de Sistemas de InformaçãoAula 01 - Planeamento de Sistemas de Informação
Aula 01 - Planeamento de Sistemas de Informação
 
Building C and C++ libraries with Perl
Building C and C++ libraries with PerlBuilding C and C++ libraries with Perl
Building C and C++ libraries with Perl
 
PLN em Perl
PLN em PerlPLN em Perl
PLN em Perl
 
Classification Systems
Classification SystemsClassification Systems
Classification Systems
 
Redes de Pert
Redes de PertRedes de Pert
Redes de Pert
 
Dancing Tutorial
Dancing TutorialDancing Tutorial
Dancing Tutorial
 
Processing XML: a rewriting system approach
Processing XML: a rewriting system approachProcessing XML: a rewriting system approach
Processing XML: a rewriting system approach
 
Sistemas de Numeração
Sistemas de NumeraçãoSistemas de Numeração
Sistemas de Numeração
 
Álgebra de Boole
Álgebra de BooleÁlgebra de Boole
Álgebra de Boole
 
Arquitecturas de Tradução Automática
Arquitecturas de Tradução AutomáticaArquitecturas de Tradução Automática
Arquitecturas de Tradução Automática
 
Extracção de Recursos para Tradução Automática
Extracção de Recursos para Tradução AutomáticaExtracção de Recursos para Tradução Automática
Extracção de Recursos para Tradução Automática
 
Dicionário Aberto
Dicionário AbertoDicionário Aberto
Dicionário Aberto
 

Aula 02 - Engenharia de Requisitos

  • 1. Engenharia de Requisitos Alberto Sim˜es o alberto.simoes@eu.ipp.pt Planeamento de Sistemas de Informa¸˜o ca Mestrado em Informa¸˜o Empresarial ca 2012/2013 Alberto Sim˜es o Engenharia de Requisitos 1/62
  • 2. Parte I Engenharia de Requisitos Alberto Sim˜es o Engenharia de Requisitos 2/62
  • 3. Tamb´m designada por An´lise de Sistemas; e a ´ E o processo de definir as funcionalidades que o cliente pretende que o sistema implemente, e as restri¸˜es que afetam co a opera¸˜o e o desenvolvimento do sistema; ca O objetivo da fase de an´lise ´ o de compreender os requisitos a e do novo sistema e identifica-los de modo a desenvolver um sistema que os satisfa¸a completamente; c A determina¸˜o de requisitos ´ um dos passos mais cr´ ca e ıticos nas fases do ciclo de desenvolvimento de software; Alberto Sim˜es o Engenharia de Requisitos 3/62
  • 4. Engenharia de Requisitos O que ´ a Engenharia de Requisitos? e Processo que envolve a recolha e compila¸˜o dos requisitos de ca sistema Alberto Sim˜es o Engenharia de Requisitos 4/62
  • 5. Engenharia de Requisitos O que ´ a Engenharia de Requisitos? e Processo que envolve a recolha e compila¸˜o dos requisitos de ca sistema Quanto custa a Engenharia de Requisitos? Habitualmente, cerca de 15% do custo de desenvolvimento do sistema. Alberto Sim˜es o Engenharia de Requisitos 4/62
  • 6. Engenharia de Requisitos O que ´ a Engenharia de Requisitos? e Processo que envolve a recolha e compila¸˜o dos requisitos de ca sistema Quanto custa a Engenharia de Requisitos? Habitualmente, cerca de 15% do custo de desenvolvimento do sistema. O que ´ um processo de Engenharia de Requisitos? e Conjunto de actividades que envolve a recolha e compila¸˜o ca dos requisitos de sistema. Alberto Sim˜es o Engenharia de Requisitos 4/62
  • 7. Engenharia de Requisitos O que ´ a Engenharia de Requisitos? e Processo que envolve a recolha e compila¸˜o dos requisitos de ca sistema Quanto custa a Engenharia de Requisitos? Habitualmente, cerca de 15% do custo de desenvolvimento do sistema. O que ´ um processo de Engenharia de Requisitos? e Conjunto de actividades que envolve a recolha e compila¸˜o ca dos requisitos de sistema. O que acontece quando os requisitos s˜o mal identificados? a Os sistemas s˜o entregues fora do prazo, sem qualidade e sem a responder `s necessidades dos clientes. a Alberto Sim˜es o Engenharia de Requisitos 4/62
  • 8. Engenharia de Requisitos O que ´ a Engenharia de Requisitos? e Processo que envolve a recolha e compila¸˜o dos requisitos de ca sistema Quanto custa a Engenharia de Requisitos? Habitualmente, cerca de 15% do custo de desenvolvimento do sistema. O que ´ um processo de Engenharia de Requisitos? e Conjunto de actividades que envolve a recolha e compila¸˜o ca dos requisitos de sistema. O que acontece quando os requisitos s˜o mal identificados? a Os sistemas s˜o entregues fora do prazo, sem qualidade e sem a responder `s necessidades dos clientes. a Existe algum processo de Engenharia de Requisitos ideal? N˜o, o processo tem de ser configurado de acordo com as a necessidades de cada organiza¸˜o. ca Alberto Sim˜es o Engenharia de Requisitos 4/62
  • 9. Problemas na Engenharia de Requisitos Como convencer o cliente da necessidade de usar tempo e dinheiro, para recolher requisitos corretamente? Alberto Sim˜es o Engenharia de Requisitos 5/62
  • 10. Problemas na Engenharia de Requisitos Como convencer o cliente da necessidade de usar tempo e dinheiro, para recolher requisitos corretamente? Alberto Sim˜es o Engenharia de Requisitos 5/62
  • 11. Problemas na Engenharia de Requisitos Como garantir que os requisitos recolhidos s˜o compreendidos de a igual modo por cliente e membros da equipa do projeto? Alberto Sim˜es o Engenharia de Requisitos 6/62
  • 12. Problemas na Engenharia de Requisitos Como garantir que os requisitos recolhidos s˜o compreendidos de a igual modo por cliente e membros da equipa do projeto? Alberto Sim˜es o Engenharia de Requisitos 6/62
  • 13. Processo de Engenharia de Requisitos Os processos utilizados na engenharia de requisitos s˜o a dependentes do dom´ de aplica¸˜o, das pessoas envolvidas ınio ca e das organiza¸˜o que faz o levantamento dos requisitos. ca Alberto Sim˜es o Engenharia de Requisitos 7/62
  • 14. Processo de Engenharia de Requisitos Os processos utilizados na engenharia de requisitos s˜o a dependentes do dom´ de aplica¸˜o, das pessoas envolvidas ınio ca e das organiza¸˜o que faz o levantamento dos requisitos. ca No entanto, existem algumas atividades gen´ricas, comuns a e todos os processos: estudo de viabilidade; levantamento e sele¸˜o de requisitos; ca an´lise de requisitos; a valida¸˜o de requisitos; ca gest˜o de requisitos; a Alberto Sim˜es o Engenharia de Requisitos 7/62
  • 15. Processo de Engenharia de Requisitos Estudo de Análise de Viabilidade Requisitos Definição de Requisitos Especificação Relatório de Modelos do de Requisitos Viabilidade Sistema Defnição dos Requisitos Especificação de Documento de Requisitos Requisitos Alberto Sim˜es o Engenharia de Requisitos 8/62
  • 16. Processo de Engenharia de Requisitos Estudo de Viabilidade Deve decidir se um sistema deve ser ou n˜o desenvolvido. a Alberto Sim˜es o Engenharia de Requisitos 9/62
  • 17. Processo de Engenharia de Requisitos Estudo de Viabilidade Deve decidir se um sistema deve ser ou n˜o desenvolvido. a Trata-se de um estudo espec´ıfico que verifica se o sistema contribui para os objetivos da organiza¸˜o; ca pode ser desenvolvido com a tecnologia atual; pede ser desenvolvido dentro do or¸amento previsto; c pode ser integrado com os outros sistemas em produ¸˜o; ca Alberto Sim˜es o Engenharia de Requisitos 9/62
  • 18. Processo de Engenharia de Requisitos Estudo de Viabilidade Deve decidir se um sistema deve ser ou n˜o desenvolvido. a Trata-se de um estudo espec´ıfico que verifica se o sistema contribui para os objetivos da organiza¸˜o; ca pode ser desenvolvido com a tecnologia atual; pede ser desenvolvido dentro do or¸amento previsto; c pode ser integrado com os outros sistemas em produ¸˜o; ca A implementa¸˜o assenta em quest˜es `s pessoas da ca o a organiza¸˜o: ca o que acontece se o sistema n˜o for implementado? a quais s˜o os problemas atuais com os processos? a ser´ que o sistema proposto os ir´ resolver? a a quais ser˜o os problemas de integra¸˜o? a ca ´ necess´ria nova tecnologia? e a Alberto Sim˜es o Engenharia de Requisitos 9/62
  • 19. Processo de Engenharia de Requisitos Levantamento e Sele¸˜o de Requisitos ca Consiste no trabalho realizado pelo pessoal t´cnico em colabora¸˜o e ca com os restantes intervenientes para determinar o dom´ da ınio aplica¸˜o, as funcionalidades que devem ser suportadas e os ca constrangimentos operacionais do sistema. Alberto Sim˜es o Engenharia de Requisitos 10/62
  • 20. Processo de Engenharia de Requisitos Levantamento e Sele¸˜o de Requisitos ca Consiste no trabalho realizado pelo pessoal t´cnico em colabora¸˜o e ca com os restantes intervenientes para determinar o dom´ da ınio aplica¸˜o, as funcionalidades que devem ser suportadas e os ca constrangimentos operacionais do sistema. Problemas com a an´lise e sele¸˜o: a ca os stakeholders n˜o sabem o que pretendem; a Alberto Sim˜es o Engenharia de Requisitos 10/62
  • 21. Processo de Engenharia de Requisitos Levantamento e Sele¸˜o de Requisitos ca Consiste no trabalho realizado pelo pessoal t´cnico em colabora¸˜o e ca com os restantes intervenientes para determinar o dom´ da ınio aplica¸˜o, as funcionalidades que devem ser suportadas e os ca constrangimentos operacionais do sistema. Problemas com a an´lise e sele¸˜o: a ca os stakeholders n˜o sabem o que pretendem; a os stakeholders definem os requisitos nas suas palavras; Alberto Sim˜es o Engenharia de Requisitos 10/62
  • 22. Processo de Engenharia de Requisitos Levantamento e Sele¸˜o de Requisitos ca Consiste no trabalho realizado pelo pessoal t´cnico em colabora¸˜o e ca com os restantes intervenientes para determinar o dom´ da ınio aplica¸˜o, as funcionalidades que devem ser suportadas e os ca constrangimentos operacionais do sistema. Problemas com a an´lise e sele¸˜o: a ca os stakeholders n˜o sabem o que pretendem; a os stakeholders definem os requisitos nas suas palavras; diferentes stakeholders podem ter requisitos conflituosos; Alberto Sim˜es o Engenharia de Requisitos 10/62
  • 23. Processo de Engenharia de Requisitos Levantamento e Sele¸˜o de Requisitos ca Consiste no trabalho realizado pelo pessoal t´cnico em colabora¸˜o e ca com os restantes intervenientes para determinar o dom´ da ınio aplica¸˜o, as funcionalidades que devem ser suportadas e os ca constrangimentos operacionais do sistema. Problemas com a an´lise e sele¸˜o: a ca os stakeholders n˜o sabem o que pretendem; a os stakeholders definem os requisitos nas suas palavras; diferentes stakeholders podem ter requisitos conflituosos; os fatores pol´ ıticos e organizacionais podem afetar os requisitos do sistema; Alberto Sim˜es o Engenharia de Requisitos 10/62
  • 24. Processo de Engenharia de Requisitos Levantamento e Sele¸˜o de Requisitos ca Consiste no trabalho realizado pelo pessoal t´cnico em colabora¸˜o e ca com os restantes intervenientes para determinar o dom´ da ınio aplica¸˜o, as funcionalidades que devem ser suportadas e os ca constrangimentos operacionais do sistema. Problemas com a an´lise e sele¸˜o: a ca os stakeholders n˜o sabem o que pretendem; a os stakeholders definem os requisitos nas suas palavras; diferentes stakeholders podem ter requisitos conflituosos; os fatores pol´ ıticos e organizacionais podem afetar os requisitos do sistema; os requisitos podem mudar durante o processo de an´lise, a assim como o ambiente de neg´cio ou mesmo os stakeholders. o Alberto Sim˜es o Engenharia de Requisitos 10/62
  • 25. Processo de Engenharia de Requisitos Especifica¸˜o de Requisitos ca ´ E nesta fase que se d´ a produ¸˜o do documento de a ca especifica¸˜o de requisitos; ca Documento com v´rios tipos de especifica¸˜es: a co especifica¸˜o de requisitos do utilizador; ca especifica¸˜o de requisitos do sistema; ca especifica¸˜o da arquitetura do sistema; ca Usando diferentes tipos de abordagens: Especifica¸˜o Textual; ca Casos de uso (UML); Diagramas de Atividade (UML) (de alto n´ ıvel); Diagramas de Fluxo de Dados; Especifica¸˜o Formal; ca Prototipagem da interface. Alberto Sim˜es o Engenharia de Requisitos 11/62
  • 26. Processo de Engenharia de Requisitos Valida¸˜o de Requisitos ca Avalia se os requisitos definem o sistema que o cliente realmente pretende. Os custos com os erros na identifica¸˜o dos requisitos s˜o ca a elevados, o que demonstra a importˆncia da valida¸˜o. a ca Corrigir um erro de defini¸˜o de requisitos ap´s a ca o instala¸˜o de um produto pode custar at´ 100 vezes mais ca e que corrigir um erro na especifica¸˜o. ca Alberto Sim˜es o Engenharia de Requisitos 12/62
  • 27. Parte II Tipologia de Requisitos Alberto Sim˜es o Engenharia de Requisitos 13/62
  • 28. Tipologia de Requisitos Requisitos funcionais funcionalidades que o sistema deve implementar: como o sistema dever´ responder a cada opera¸˜o, e como se dever´ a ca a comportar em determinadas situa¸˜es co Alberto Sim˜es o Engenharia de Requisitos 14/62
  • 29. Tipologia de Requisitos Requisitos funcionais funcionalidades que o sistema deve implementar: como o sistema dever´ responder a cada opera¸˜o, e como se dever´ a ca a comportar em determinadas situa¸˜es co Requisitos n˜o funcionais a constrangimentos `s funcionalidades do sistema, como a standards, restri¸˜es de tempo, restri¸˜es do processo de co co desenvolvimento, etc. propriedades comportamentais que o sistema deve garantir, como desempenho, seguran¸a, fiabilidade, etc. c Alberto Sim˜es o Engenharia de Requisitos 14/62
  • 30. Tipologia de Requisitos Requisitos funcionais funcionalidades que o sistema deve implementar: como o sistema dever´ responder a cada opera¸˜o, e como se dever´ a ca a comportar em determinadas situa¸˜es co Requisitos n˜o funcionais a constrangimentos `s funcionalidades do sistema, como a standards, restri¸˜es de tempo, restri¸˜es do processo de co co desenvolvimento, etc. propriedades comportamentais que o sistema deve garantir, como desempenho, seguran¸a, fiabilidade, etc. c Requisitos de dom´ ınio requisitos resultantes do dom´ de aplica¸˜o do sistema ınio ca Alberto Sim˜es o Engenharia de Requisitos 14/62
  • 31. Tipologia de Requisitos Requisitos de Dom´ ınio Requisitos resultantes do dom´ de aplica¸˜o do sistema e ınio ca que refletem determinada caracter´ ısticas que devem ser tidas em considera¸˜o durante o desenvolvimento do sistema; ca N˜o derivam das necessidades espec´ a ıficas dos utilizadores; Para al´m de se considerarem requisitos de dom´ e ınio, podem ser classificados como requisitos funcionais ou n˜o funcionais; a Alberto Sim˜es o Engenharia de Requisitos 15/62
  • 32. Tipologia de Requisitos Requisitos de Dom´ ınio Requisitos resultantes do dom´ de aplica¸˜o do sistema e ınio ca que refletem determinada caracter´ ısticas que devem ser tidas em considera¸˜o durante o desenvolvimento do sistema; ca N˜o derivam das necessidades espec´ a ıficas dos utilizadores; Para al´m de se considerarem requisitos de dom´ e ınio, podem ser classificados como requisitos funcionais ou n˜o funcionais; a Exemplos: no desenvolvimento de um registo cl´ ınico eletr´nico, a o autentica¸˜o pode ser considerada um requisito de dom´ ca ınio imposto pelo enquadramento de prote¸˜o de dados pessoais; ca Alberto Sim˜es o Engenharia de Requisitos 15/62
  • 33. Tipologia de Requisitos Requisitos de Dom´ ınio Requisitos resultantes do dom´ de aplica¸˜o do sistema e ınio ca que refletem determinada caracter´ ısticas que devem ser tidas em considera¸˜o durante o desenvolvimento do sistema; ca N˜o derivam das necessidades espec´ a ıficas dos utilizadores; Para al´m de se considerarem requisitos de dom´ e ınio, podem ser classificados como requisitos funcionais ou n˜o funcionais; a Exemplos: no desenvolvimento de um registo cl´ ınico eletr´nico, a o autentica¸˜o pode ser considerada um requisito de dom´ ca ınio imposto pelo enquadramento de prote¸˜o de dados pessoais; ca num sistema de fatura¸˜o, a exporta¸˜o do registo das faturas ca ca em formato SAF-T pode ser considerada um requisito de dom´ imposto pela autoridade tribut´ria; ınio a Alberto Sim˜es o Engenharia de Requisitos 15/62
  • 34. Tipologia de Requisitos Requisitos Funcionais Descrevem funcionalidades que o sistema deve implementar; Dependem do tipo de software, das expectativas dos utilizadores, e do tipo de sistema onde o software ir´ ser a utilizado; Alberto Sim˜es o Engenharia de Requisitos 16/62
  • 35. Tipologia de Requisitos Requisitos Funcionais Descrevem funcionalidades que o sistema deve implementar; Dependem do tipo de software, das expectativas dos utilizadores, e do tipo de sistema onde o software ir´ ser a utilizado; Exemplos: O utilizador deve ser capaz de procurar nas bases de dados de todas as lojas de uma cadeia de supermercados, ou apenas num conjunto de lojas selecionadas; Alberto Sim˜es o Engenharia de Requisitos 16/62
  • 36. Tipologia de Requisitos Requisitos Funcionais Descrevem funcionalidades que o sistema deve implementar; Dependem do tipo de software, das expectativas dos utilizadores, e do tipo de sistema onde o software ir´ ser a utilizado; Exemplos: O utilizador deve ser capaz de procurar nas bases de dados de todas as lojas de uma cadeia de supermercados, ou apenas num conjunto de lojas selecionadas; Deve ser atribu´ um c´digo unico a cada encomenda; ıdo o ´ Alberto Sim˜es o Engenharia de Requisitos 16/62
  • 37. Tipologia de Requisitos Requisitos Funcionais Descrevem funcionalidades que o sistema deve implementar; Dependem do tipo de software, das expectativas dos utilizadores, e do tipo de sistema onde o software ir´ ser a utilizado; Exemplos: O utilizador deve ser capaz de procurar nas bases de dados de todas as lojas de uma cadeia de supermercados, ou apenas num conjunto de lojas selecionadas; Deve ser atribu´ um c´digo unico a cada encomenda; ıdo o ´ O sistema deve fornecer as ferramentas adequadas ao utilizador para facilitar a leitura dos documentos armazenados. Alberto Sim˜es o Engenharia de Requisitos 16/62
  • 38. Tipologia de Requisitos Requisitos N˜o Funcionais a Definem as propriedades do sistema e os seus constrangimentos. Os requisitos n˜o funcionais podem ser mais cr´ a ıticos que os requisitos funcionais: caso n˜o sejam cumpridos, o sistema a pode tornar-se in´til. u Alberto Sim˜es o Engenharia de Requisitos 17/62
  • 39. Tipologia de Requisitos Requisitos N˜o Funcionais a Definem as propriedades do sistema e os seus constrangimentos. Os requisitos n˜o funcionais podem ser mais cr´ a ıticos que os requisitos funcionais: caso n˜o sejam cumpridos, o sistema a pode tornar-se in´til. u Exemplos de propriedades s˜o: a fiabilidade; tempo de resposta; espa¸o em disco necess´rio; c a Alberto Sim˜es o Engenharia de Requisitos 17/62
  • 40. Tipologia de Requisitos Requisitos N˜o Funcionais a Definem as propriedades do sistema e os seus constrangimentos. Os requisitos n˜o funcionais podem ser mais cr´ a ıticos que os requisitos funcionais: caso n˜o sejam cumpridos, o sistema a pode tornar-se in´til. u Exemplos de propriedades s˜o: a fiabilidade; tempo de resposta; espa¸o em disco necess´rio; c a Exemplos de constrangimentos s˜o: a capacidade de input/output dos equipamentos; espa¸o em disco dispon´ c ıvel; largura de banda; Alberto Sim˜es o Engenharia de Requisitos 17/62
  • 41. Tipologia de Requisitos Tipos de Requisitos N˜o Funcionais a Requisitos de Produto Especificam como se deve comportar o produto de acordo com um conjunto de parˆmetros. a ex.: velocidade de execu¸˜o, fiabilidade, etc. ca Alberto Sim˜es o Engenharia de Requisitos 18/62
  • 42. Tipologia de Requisitos Tipos de Requisitos N˜o Funcionais a Requisitos de Produto Especificam como se deve comportar o produto de acordo com um conjunto de parˆmetros. a ex.: velocidade de execu¸˜o, fiabilidade, etc. ca Requisitos Organizacionais Derivam de pol´ ıticas e procedimentos da organiza¸˜o. ca ex.: regras internas, standards da organiza¸˜o, etc. ca Alberto Sim˜es o Engenharia de Requisitos 18/62
  • 43. Tipologia de Requisitos Tipos de Requisitos N˜o Funcionais a Requisitos de Produto Especificam como se deve comportar o produto de acordo com um conjunto de parˆmetros. a ex.: velocidade de execu¸˜o, fiabilidade, etc. ca Requisitos Organizacionais Derivam de pol´ ıticas e procedimentos da organiza¸˜o. ca ex.: regras internas, standards da organiza¸˜o, etc. ca Requisitos Externos Resultam de fatores externos ao sistema e ao seu processo de desenvolvimento. Muitas vezes correspondem a requisitos de dom´ ınio. ex.: requisitos de interoperabilidade, aspetos legais, etc. Alberto Sim˜es o Engenharia de Requisitos 18/62
  • 44. Tipologia de Requisitos Tipos de Requisitos N˜o Funcionais a Requisitos Não Funcionais Requisitos da Requisitos de Requisitos Organização Produto Externos Requisitos de Requisitos de Requisitos de Requisitos de Usabilidade Eficiência Fiabilidade Portabilidade Requisitos de Requisitos de Requisitos dos Requisitos de Requisitos Requisitos Distribuição Implementação Standards Usados Interoperabilidade Legislativos Éticos Requisitos de Requisitos de Requisitos de Requisitos de Espaço Execução Privacidade Segurança Alberto Sim˜es o Engenharia de Requisitos 19/62
  • 45. Tipologia de Requisitos Especifica¸˜o de Requisitos N˜o Funcionais ca a Devem ser especificados na forma de objetivo. (inten¸˜o geral do utilizador, como facilidade de utiliza¸˜o) ca ca Alberto Sim˜es o Engenharia de Requisitos 20/62
  • 46. Tipologia de Requisitos Especifica¸˜o de Requisitos N˜o Funcionais ca a Devem ser especificados na forma de objetivo. (inten¸˜o geral do utilizador, como facilidade de utiliza¸˜o) ca ca Sempre que poss´ ıvel, devem ser verific´veis: a (devem incorporar uma medida que permita testar de forma objetiva se o requisito est´ corretamente implementado) a Tipicamente s˜o dif´ a ıceis de definir com rigor, e portanto, dif´ ıceis de verificar. Alberto Sim˜es o Engenharia de Requisitos 20/62
  • 47. Tipologia de Requisitos Especifica¸˜o de Requisitos N˜o Funcionais ca a Devem ser especificados na forma de objetivo. (inten¸˜o geral do utilizador, como facilidade de utiliza¸˜o) ca ca Sempre que poss´ ıvel, devem ser verific´veis: a (devem incorporar uma medida que permita testar de forma objetiva se o requisito est´ corretamente implementado) a Tipicamente s˜o dif´ a ıceis de definir com rigor, e portanto, dif´ ıceis de verificar. Exemplo: o sistema deve ser f´cil de utilizar por operadores experientes a e organizado de tal forma que minimize erros do utilizador. Alberto Sim˜es o Engenharia de Requisitos 20/62
  • 48. Tipologia de Requisitos Especifica¸˜o de Requisitos N˜o Funcionais ca a Devem ser especificados na forma de objetivo. (inten¸˜o geral do utilizador, como facilidade de utiliza¸˜o) ca ca Sempre que poss´ ıvel, devem ser verific´veis: a (devem incorporar uma medida que permita testar de forma objetiva se o requisito est´ corretamente implementado) a Tipicamente s˜o dif´ a ıceis de definir com rigor, e portanto, dif´ ıceis de verificar. Exemplo: o sistema deve ser f´cil de utilizar por operadores experientes a e organizado de tal forma que minimize erros do utilizador. os operadores experientes devem ser capazes de utilizar todas as fun¸˜es do sistema ap´s duas horas de forma¸˜o; depois co o ca dessa forma¸˜o, o n´mero m´dio de erros realizados pelos ca u e operadores n˜o deve exceder dois por dia. a Alberto Sim˜es o Engenharia de Requisitos 20/62
  • 49. Tipologia de Requisitos Medidas para Requisitos N˜o Funcionais a  transa¸˜es processadas por segundo co Velocidade tempo de resposta para determinado evento tempo de desenho do ecr˜a  Alberto Sim˜es o Engenharia de Requisitos 21/62
  • 50. Tipologia de Requisitos Medidas para Requisitos N˜o Funcionais a  transa¸˜es processadas por segundo co Velocidade tempo de resposta para determinado evento tempo de desenho do ecr˜ a  tamanho de disco ocupado (MB) Tamanho largura de banda usada (MB) Alberto Sim˜es o Engenharia de Requisitos 21/62
  • 51. Tipologia de Requisitos Medidas para Requisitos N˜o Funcionais a  transa¸˜es processadas por segundo co Velocidade tempo de resposta para determinado evento tempo de desenho do ecr˜a  tamanho de disco ocupado (MB) Tamanho largura de banda usada (MB) tempo de forma¸˜o ca Facilidade de uso n´mero de p´ginas de documenta¸˜o u a ca Alberto Sim˜es o Engenharia de Requisitos 21/62
  • 52. Tipologia de Requisitos Medidas para Requisitos N˜o Funcionais a  transa¸˜es processadas por segundo co Velocidade tempo de resposta para determinado evento tempo de desenho do ecr˜ a  tamanho de disco ocupado (MB) Tamanho largura de banda usada (MB) tempo de forma¸˜o ca Facilidade de uso n´mero de p´ginas de documenta¸˜o u a ca  tempo m´dio de falha e Confian¸a probabilidade de n˜o disponibilidade c a r´cio de ocorrˆncia de falhas a e  Alberto Sim˜es o Engenharia de Requisitos 21/62
  • 53. Tipologia de Requisitos Medidas para Requisitos N˜o Funcionais a  transa¸˜es processadas por segundo co Velocidade tempo de resposta para determinado evento tempo de desenho do ecr˜ a  tamanho de disco ocupado (MB) Tamanho largura de banda usada (MB) tempo de forma¸˜o ca Facilidade de uso n´mero de p´ginas de documenta¸˜o u a ca  tempo m´dio de falha e Confian¸a probabilidade de n˜o disponibilidade c a r´cio de ocorrˆncia de falhas a e   tempo de rein´ ap´s falha ıcio o Robustez percentagem de situa¸˜es que provocam falhas co probabilidade de corrup¸˜o de dados por falha ca  Alberto Sim˜es o Engenharia de Requisitos 21/62
  • 54. Tipologia de Requisitos Medidas para Requisitos N˜o Funcionais a  transa¸˜es processadas por segundo co Velocidade tempo de resposta para determinado evento tempo de desenho do ecr˜ a  tamanho de disco ocupado (MB) Tamanho largura de banda usada (MB) tempo de forma¸˜o ca Facilidade de uso n´mero de p´ginas de documenta¸˜o u a ca  tempo m´dio de falha e Confian¸a probabilidade de n˜o disponibilidade c a r´cio de ocorrˆncia de falhas a e   tempo de rein´ ap´s falha ıcio o Robustez percentagem de situa¸˜es que provocam falhas co probabilidade de corrup¸˜o de dados por falha ca  n´mero de plataformas alvo u Portabilidade perc. de linhas de c´digo espec´ o ıficas Alberto Sim˜es o Engenharia de Requisitos 21/62
  • 55. Tipologia de Requisitos Exerc´ ıcios “Em todas as janelas o utilizador dever´ ter acesso a um bot˜o a a para aceder ` documenta¸˜o contextual.” a ca Alberto Sim˜es o Engenharia de Requisitos 22/62
  • 56. Tipologia de Requisitos Exerc´ ıcios “Em todas as janelas o utilizador dever´ ter acesso a um bot˜o a a para aceder ` documenta¸˜o contextual.” a ca Requisito Funcional Alberto Sim˜es o Engenharia de Requisitos 22/62
  • 57. Tipologia de Requisitos Exerc´ ıcios “Cada transa¸˜o com a base de dados n˜o pode usar mais que 100 ca a KB de largura de banda.” Alberto Sim˜es o Engenharia de Requisitos 23/62
  • 58. Tipologia de Requisitos Exerc´ ıcios “Cada transa¸˜o com a base de dados n˜o pode usar mais que 100 ca a KB de largura de banda.” Requisito N˜o Funcional a Alberto Sim˜es o Engenharia de Requisitos 23/62
  • 59. Tipologia de Requisitos Exerc´ ıcios “Para cada cliente dever´ ser armazenado o n´mero fiscal.” a u Alberto Sim˜es o Engenharia de Requisitos 24/62
  • 60. Tipologia de Requisitos Exerc´ ıcios “Para cada cliente dever´ ser armazenado o n´mero fiscal.” a u Requisito N˜o Funcional (e possivelmente de dom´ a ınio) Alberto Sim˜es o Engenharia de Requisitos 24/62
  • 61. Tipologia de Requisitos Exerc´ ıcios “O utilizador n˜o dever´ poder introduzir um cliente sem indicar o a a seu n´mero fiscal.” u Alberto Sim˜es o Engenharia de Requisitos 25/62
  • 62. Tipologia de Requisitos Exerc´ ıcios “O utilizador n˜o dever´ poder introduzir um cliente sem indicar o a a seu n´mero fiscal.” u Requisito Funcional Alberto Sim˜es o Engenharia de Requisitos 25/62
  • 63. Tipologia de Requisitos Exerc´ ıcios “O acesso ao sistema deve ser validado usando uma senha de seguran¸a.” c Alberto Sim˜es o Engenharia de Requisitos 26/62
  • 64. Tipologia de Requisitos Exerc´ ıcios “O acesso ao sistema deve ser validado usando uma senha de seguran¸a.” c Requisito N˜o Funcional a Alberto Sim˜es o Engenharia de Requisitos 26/62
  • 65. Tipologia de Requisitos Exerc´ ıcios “Dever´ ser poss´ alterar a senha de seguran¸a pelo pr´prio a ıvel c o utilizador.” Alberto Sim˜es o Engenharia de Requisitos 27/62
  • 66. Tipologia de Requisitos Exerc´ ıcios “Dever´ ser poss´ alterar a senha de seguran¸a pelo pr´prio a ıvel c o utilizador.” Requisito Funcional Alberto Sim˜es o Engenharia de Requisitos 27/62
  • 67. Tipologia de Requisitos Exerc´ ıcios “A interface ao utilizador deve ter um aspeto amig´vel, e cores a s´brias.” o Alberto Sim˜es o Engenharia de Requisitos 28/62
  • 68. Tipologia de Requisitos Exerc´ ıcios “A interface ao utilizador deve ter um aspeto amig´vel, e cores a s´brias.” o Requisito N˜o Funcional a Alberto Sim˜es o Engenharia de Requisitos 28/62
  • 69. Parte III Recolha de Requisitos Alberto Sim˜es o Engenharia de Requisitos 29/62
  • 70. Recolha de Requisitos T´cnicas para a Recolha de Requisitos e Existem v´rias t´cnicas para a recolha, sele¸˜o e especifica¸˜o de a e ca ca requisitos: Entrevistas Question´rios a An´lise Documental a Observa¸˜o ca Perspetivas Cen´rios a Prototipagem O Analista de sistemas deve saber como e quando utilizar cada uma, assim como as combinar. Alberto Sim˜es o Engenharia de Requisitos 30/62
  • 71. Recolha de Requisitos Entrevistas Processo Selecionar os entrevistados, baseado no tipo de informa¸˜o ca necess´ria, e garantindo diferentes a perspetivas; Desenvolver o Gui˜o da entrevista; a Definir Objetivos da entrevista; Conduzir a entrevista; Apresentar resultados da entrevista; Alberto Sim˜es o Engenharia de Requisitos 31/62
  • 72. Recolha de Requisitos Entrevistas Processo Conte´do da Entrevista u Selecionar os entrevistados, Quest˜es fechadas: o baseado no tipo de informa¸˜o ca “Quantas encomendas recebe por necess´ria, e garantindo diferentes a telefone diariamente? ” perspetivas; “Como s˜o feitas as encomendas? ” a Desenvolver o Gui˜o da entrevista; a Definir Objetivos da entrevista; Conduzir a entrevista; Apresentar resultados da entrevista; Alberto Sim˜es o Engenharia de Requisitos 31/62
  • 73. Recolha de Requisitos Entrevistas Processo Conte´do da Entrevista u Selecionar os entrevistados, Quest˜es fechadas: o baseado no tipo de informa¸˜o ca “Quantas encomendas recebe por necess´ria, e garantindo diferentes a telefone diariamente? ” perspetivas; “Como s˜o feitas as encomendas? ” a Desenvolver o Gui˜o da entrevista; a Quest˜es abertas: o Definir Objetivos da entrevista; “O que acha do sistema atual? ” “Quais os problemas com que se Conduzir a entrevista; depara diariamente? ” Apresentar resultados da entrevista; Alberto Sim˜es o Engenharia de Requisitos 31/62
  • 74. Recolha de Requisitos Entrevistas Processo Conte´do da Entrevista u Selecionar os entrevistados, Quest˜es fechadas: o baseado no tipo de informa¸˜o ca “Quantas encomendas recebe por necess´ria, e garantindo diferentes a telefone diariamente? ” perspetivas; “Como s˜o feitas as encomendas? ” a Desenvolver o Gui˜o da entrevista; a Quest˜es abertas: o Definir Objetivos da entrevista; “O que acha do sistema atual? ” “Quais os problemas com que se Conduzir a entrevista; depara diariamente? ” Apresentar resultados da Quest˜es de prova: o entrevista; “Pode-me dar um exemplo? ” “Pode-me explicar com mais detalhe? ” Alberto Sim˜es o Engenharia de Requisitos 31/62
  • 75. Recolha de Requisitos Question´rios a Processo Conjunto de quest˜es escritas, o usualmente enviadas para um grande n´mero de pessoas; u Podem ser em formato de papel ou eletr´nico; o Selecionar participantes representativos; Desenvolver quest˜es claras e de o f´cil an´lise; a a Definir estrat´gias para obter um e bom n´mero de respostas; u Mostrar o impacto do question´rio a aos questionados; Alberto Sim˜es o Engenharia de Requisitos 32/62
  • 76. Recolha de Requisitos Question´rios a Processo Cuidados Conjunto de quest˜es escritas, o Come¸ar com quest˜es c o usualmente enviadas para um interessantes; grande n´mero de pessoas; u Agrupar em sec¸˜es coerentes; co Podem ser em formato de papel ou N˜o colocar perguntas importantes a eletr´nico; o no fim; Selecionar participantes N˜o encher demasiado as p´ginas; a a representativos; Evitar o uso de abreviaturas; Desenvolver quest˜es claras e de o f´cil an´lise; a a Evitar fazer perguntas tendenciosas; Definir estrat´gias para obter um e bom n´mero de respostas; u Numerar as perguntas; Mostrar o impacto do question´rio a Fazer teste pr´vio ao question´rio; e a aos questionados; Garantir anonimato nas respostas; Alberto Sim˜es o Engenharia de Requisitos 32/62
  • 77. Recolha de Requisitos An´lise Documental a Documentos que contˆm informa¸˜o do sistema “as-is” e ca (estado atual!) Regulamentos, Relat´rios internos, Registos peri´dicos, o o Formul´rios, Manuais de procedimentos, . . . a Alberto Sim˜es o Engenharia de Requisitos 33/62
  • 78. Recolha de Requisitos An´lise Documental a Documentos que contˆm informa¸˜o do sistema “as-is” e ca (estado atual!) Regulamentos, Relat´rios internos, Registos peri´dicos, o o Formul´rios, Manuais de procedimentos, . . . a Procurar elementos adicionados pelos utilizadores aos formul´rios (notas ` margem...) a a Alberto Sim˜es o Engenharia de Requisitos 33/62
  • 79. Recolha de Requisitos An´lise Documental a Documentos que contˆm informa¸˜o do sistema “as-is” e ca (estado atual!) Regulamentos, Relat´rios internos, Registos peri´dicos, o o Formul´rios, Manuais de procedimentos, . . . a Procurar elementos adicionados pelos utilizadores aos formul´rios (notas ` margem...) a a Procurar elementos n˜o utilizados; a Alberto Sim˜es o Engenharia de Requisitos 33/62
  • 80. Recolha de Requisitos An´lise Documental a Documentos que contˆm informa¸˜o do sistema “as-is” e ca (estado atual!) Regulamentos, Relat´rios internos, Registos peri´dicos, o o Formul´rios, Manuais de procedimentos, . . . a Procurar elementos adicionados pelos utilizadores aos formul´rios (notas ` margem...) a a Procurar elementos n˜o utilizados; a Dar particular aten¸˜o aos documentos: ca Que descrevem a organiza¸˜o; ca Que descrevem os conte´dos funcionais dos v´rios cargos; u a Que relatam as atividades da organiza¸˜o; ca Que constituem material publicit´rio e promocional da a organiza¸˜o; ca Alberto Sim˜es o Engenharia de Requisitos 33/62
  • 81. Recolha de Requisitos Observa¸˜o ca Observa¸˜o dos processos a serem executados; ca Utilizadores/gestores n˜o se lembram com exatid˜o de tudo o a a que fazem; Valida a informa¸˜o recolhida com outros m´todos; ca e Ter em aten¸˜o que o comportamento das pessoas muda ca quando est˜o a ser observadas; a Tentar ser discreto; Identificar per´ ıodos mortos e picos; Alberto Sim˜es o Engenharia de Requisitos 34/62
  • 82. Recolha de Requisitos Perspetivas Forma de estruturar requisitos, mostrando as perspetivas dos diferentes stakeholders; Nenhuma perspetiva ´ a correta; e Tipos de Perspetivas: Dos intervenientes ´ E a vis˜o segundo as pessoas ou outros sistemas que interagem a com o sistema; Do dom´ ınio Caracter´ ısticas e constrangimentos do dom´ ınio, que afetam os requisitos. Alberto Sim˜es o Engenharia de Requisitos 35/62
  • 83. Recolha de Requisitos Cen´rios a Exemplos da vida real, de como o sistema interage e pode ser utilizado. Devem incluir: Descri¸˜o da situa¸˜o ca ca (quando esta situa¸˜o ocorre, quem lida com ela, etc.) ca Situa¸˜o de arranque ca (quais s˜o os pressupostos para que este cen´rio possa ocorrer) a a Fluxo normal dos eventos (quem d´ a informa¸˜o, quem a introduz, quais as a¸˜es a ca co despoletadas pelo sistema) Situa¸˜es de erro co (o que pode correr mal?) Final do cen´rio a (estado do sistema quando o caso real termina) Alberto Sim˜es o Engenharia de Requisitos 36/62
  • 84. Recolha de Requisitos Prototipagem Alguns utilizadores tˆm dificuldade em visualizar o sistema; e Pode ser util preparar prot´tipos de interfaces com o utilizador ´ o (mockups) que permitam discutir as funcionalidades desejadas; Em casos em que a perce¸˜o do processo de transforma¸˜o e ca ca prepara¸˜o de informa¸˜o seja dif´ poder´ fazer sentido ca ca ıcil, a implementar pequenos prot´tipos para simular as v´rias o a possibilidades dispon´ ıveis. Alberto Sim˜es o Engenharia de Requisitos 37/62
  • 85. Parte IV Especifica¸˜o de Requisitos ca Alberto Sim˜es o Engenharia de Requisitos 38/62
  • 86. Especifica¸˜o de Requisitos ca Linguagem Natural Possivelmente a forma mais simples de especificar requisitos; Alberto Sim˜es o Engenharia de Requisitos 39/62
  • 87. Especifica¸˜o de Requisitos ca Linguagem Natural Possivelmente a forma mais simples de especificar requisitos; Mas a forma menos fi´vel de especificar requisitos; a Alberto Sim˜es o Engenharia de Requisitos 39/62
  • 88. Especifica¸˜o de Requisitos ca Linguagem Natural Possivelmente a forma mais simples de especificar requisitos; Mas a forma menos fi´vel de especificar requisitos; a Problemas no uso da Linguagem Natural para especificar requisitos: Falta de clareza ´ ıcil E dif´ obter precis˜o sem tornar a leitura do documento a dif´ ıcil. Alberto Sim˜es o Engenharia de Requisitos 39/62
  • 89. Especifica¸˜o de Requisitos ca Linguagem Natural Possivelmente a forma mais simples de especificar requisitos; Mas a forma menos fi´vel de especificar requisitos; a Problemas no uso da Linguagem Natural para especificar requisitos: Falta de clareza ´ ıcil E dif´ obter precis˜o sem tornar a leitura do documento a dif´ ıcil. Confus˜o de requisitos a Os requisitos funcionais e n˜o funcionais tendem a ser a misturados. Alberto Sim˜es o Engenharia de Requisitos 39/62
  • 90. Especifica¸˜o de Requisitos ca Linguagem Natural Possivelmente a forma mais simples de especificar requisitos; Mas a forma menos fi´vel de especificar requisitos; a Problemas no uso da Linguagem Natural para especificar requisitos: Falta de clareza ´ ıcil E dif´ obter precis˜o sem tornar a leitura do documento a dif´ ıcil. Confus˜o de requisitos a Os requisitos funcionais e n˜o funcionais tendem a ser a misturados. Am´lgama de requisitos a V´rios requisitos diferentes s˜o muitas vezes expressos em a a conjunto, usando at´ a mesma frase. Isto dificulta a sua e correta identifica¸˜o. ca Alberto Sim˜es o Engenharia de Requisitos 39/62
  • 91. Especifica¸˜o de Requisitos ca Exemplos de m´s especifica¸oes em LN a c˜ Requisito LIBSYS Deve fornecer um sistema de contabilidade financeira que mantenha os registos dos pagamentos realizados pelos utilizadores do sistema. Os gestores do sistema podem configura-lo de forma a que os utilizadores mais frequentes possam receber descontos. Alberto Sim˜es o Engenharia de Requisitos 40/62
  • 92. Especifica¸˜o de Requisitos ca Exemplos de m´s especifica¸oes em LN a c˜ Requisito LIBSYS Deve fornecer um sistema de contabilidade financeira que mantenha os registos dos pagamentos realizados pelos utilizadores do sistema. Os gestores do sistema podem configura-lo de forma a que os utilizadores mais frequentes possam receber descontos. Problemas: descreve o conceito de sistema de contabilidade financeira a incluir no sistema de forma abstrata; contudo, inclui tamb´m entrada detalhada que n˜o ´ e a e necess´rio a este n´ a ıvel; Alberto Sim˜es o Engenharia de Requisitos 40/62
  • 93. Especifica¸˜o de Requisitos ca Exemplos de m´s especifica¸oes em LN a c˜ Requisito editor de grelhas Para facilitar o posicionamento de entidades num diagrama, o utilizador pode configurar a grelha em cent´ımetros ou polegadas, atrav´s de uma op¸˜o no painel de controlo. Inicialmente, a grelha e ca est´ desativada. A grelha pode ser ativada ou desativada a a qualquer momento. Na vista “reduzir ` dimens˜o”, a grelha ter´ a a a menos linhas para n˜o saturar o diagrama de linhas. a Alberto Sim˜es o Engenharia de Requisitos 41/62
  • 94. Especifica¸˜o de Requisitos ca Exemplos de m´s especifica¸oes em LN a c˜ Requisito editor de grelhas Para facilitar o posicionamento de entidades num diagrama, o utilizador pode configurar a grelha em cent´ımetros ou polegadas, atrav´s de uma op¸˜o no painel de controlo. Inicialmente, a grelha e ca est´ desativada. A grelha pode ser ativada ou desativada a a qualquer momento. Na vista “reduzir ` dimens˜o”, a grelha ter´ a a a menos linhas para n˜o saturar o diagrama de linhas. a Problemas: requisitos funcionais conceptuais (a necessidade da grelha); requisitos n˜o funcionais (as medidas da grelha); a requisitos n˜o funcionais de interface com o utilizador a (ativa¸˜o da grelha); ca Alberto Sim˜es o Engenharia de Requisitos 41/62
  • 95. Especifica¸˜o de Requisitos ca Alternativas ao uso da LN Linguagem Natural Estruturada Consiste em definir modelos para especificar os requisitos, usando estruturas fr´sicas r´ a ıgidas de f´cil interpreta¸˜o. a ca Alberto Sim˜es o Engenharia de Requisitos 42/62
  • 96. Especifica¸˜o de Requisitos ca Alternativas ao uso da LN Linguagem Natural Estruturada Consiste em definir modelos para especificar os requisitos, usando estruturas fr´sicas r´ a ıgidas de f´cil interpreta¸˜o. a ca Linguagem de Descri¸˜o de Projeto ca Recorrer a uma linguagem formal, do g´nero da usada em e programa¸˜o ou algoritmia, mas mais abstrata, para ca especificar os requisitos. Alberto Sim˜es o Engenharia de Requisitos 42/62
  • 97. Especifica¸˜o de Requisitos ca Alternativas ao uso da LN Linguagem Natural Estruturada Consiste em definir modelos para especificar os requisitos, usando estruturas fr´sicas r´ a ıgidas de f´cil interpreta¸˜o. a ca Linguagem de Descri¸˜o de Projeto ca Recorrer a uma linguagem formal, do g´nero da usada em e programa¸˜o ou algoritmia, mas mais abstrata, para ca especificar os requisitos. Nota¸˜es Gr´ficas co a Descrever os requisitos funcionais numa linguagem gr´fica e a pseudo-formal (ex: SADT ou UML), complementada com anota¸˜es textuais. co Alberto Sim˜es o Engenharia de Requisitos 42/62
  • 98. Especifica¸˜o de Requisitos ca Alternativas ao uso da LN Linguagem Natural Estruturada Consiste em definir modelos para especificar os requisitos, usando estruturas fr´sicas r´ a ıgidas de f´cil interpreta¸˜o. a ca Linguagem de Descri¸˜o de Projeto ca Recorrer a uma linguagem formal, do g´nero da usada em e programa¸˜o ou algoritmia, mas mais abstrata, para ca especificar os requisitos. Nota¸˜es Gr´ficas co a Descrever os requisitos funcionais numa linguagem gr´fica e a pseudo-formal (ex: SADT ou UML), complementada com anota¸˜es textuais. co Nota¸˜es Matem´ticas co a Nota¸˜o formal, como por exemplo a teoria de conjuntos, para ca eliminar qualquer ambiguidade. Levantam problemas na dificuldade de compreens˜o para pessoas n˜o familiarizadas a a com as nota¸˜es usadas. co Alberto Sim˜es o Engenharia de Requisitos 42/62
  • 99. Especifica¸˜o de Requisitos ca Documento de Requisitos ´ E uma declara¸˜o oficial das funcionalidades do sistema, tendo ca como principal destinat´rio quem vai desenvolver o software; a Resulta dos requisitos acordados entre as partes; N˜o ´ um documento de projeto do sistema: deve descrever O a e que o sistema deve fazer, e n˜o como deve ser feito; a Alberto Sim˜es o Engenharia de Requisitos 43/62
  • 100. Especifica¸˜o de Requisitos ca Documento de Requisitos Descreve os requisitos para os stakeholders: expresso em termos que eles os compreendam; compreens´ de diferentes pontos de vista; ıvel revistos pelos pr´prios stakeholders; o claro e n˜o amb´ a ıguo; Descreve os requisitos para quem vai desenvolver o software: t˜o preciso e espec´ a ıfico quanto poss´ ıvel; expresso em termos que eles compreendam; facilitador de integra¸˜o de novos membros na equipa; ca Regista requisitos para o futuro: essencial para a evolu¸˜o do sistema; ca Pode servir de documento contratual. Alberto Sim˜es o Engenharia de Requisitos 44/62
  • 101. Especifica¸˜o de Requisitos ca Documento de Requisitos - standard IEEE/ANSI 830-1993 Introdu¸˜o ca Objetivos do documento ˆ Ambito do produto Defini¸˜o e abreviaturas ca Referˆncias e Descri¸˜o Geral ca Perspetivas e fun¸˜es do produto co Carater´ ısticas dos utilizadores Constrangimentos gerais Pressupostos e dependˆncias e Requisitos Apˆndices e Alberto Sim˜es o Engenharia de Requisitos 45/62
  • 102. Especifica¸˜o de Requisitos ca Prototipagem da Interface Esquematizar interfaces para as fun¸˜es principais do software; co Alberto Sim˜es o Engenharia de Requisitos 46/62
  • 103. Especifica¸˜o de Requisitos ca Prototipagem da Interface Esquematizar interfaces para as fun¸˜es principais do software; co Servem como mecanismo de recolha e negocia¸˜o de ca requisitos; Alberto Sim˜es o Engenharia de Requisitos 46/62
  • 104. Especifica¸˜o de Requisitos ca Prototipagem da Interface Esquematizar interfaces para as fun¸˜es principais do software; co Servem como mecanismo de recolha e negocia¸˜o de ca requisitos; Servem tamb´m como especifica¸˜o dos requisitos: e ca apresentam um conjunto de informa¸˜o que deve estar ca dispon´ ıvel; apresentam um conjunto de bot˜es/menus que correspondem o a funcionalidades que devem ser implementadas; Alberto Sim˜es o Engenharia de Requisitos 46/62
  • 105. Especifica¸˜o de Requisitos ca Prototipagem da Interface Esquematizar interfaces para as fun¸˜es principais do software; co Servem como mecanismo de recolha e negocia¸˜o de ca requisitos; Servem tamb´m como especifica¸˜o dos requisitos: e ca apresentam um conjunto de informa¸˜o que deve estar ca dispon´ ıvel; apresentam um conjunto de bot˜es/menus que correspondem o a funcionalidades que devem ser implementadas; Cuidados! usar uma ferramenta de desenho que n˜o se assemelhe a demasiado a um produto final; caso contr´rio, cliente poder´ ter impress˜o que o software a a a est´ pronto! a Alberto Sim˜es o Engenharia de Requisitos 46/62
  • 106. Especifica¸˜o de Requisitos ca Prototipagem da Interface - Exemplo - + Adicionar Funcionário Nome : ... Morada : ... Telefone : ... Data de Nascimento March 2009 Sexo Masculino S M T W T F S Feminino 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Adicionar Cancelar Alberto Sim˜es o Engenharia de Requisitos 47/62
  • 107. Especifica¸˜o de Requisitos ca Especifica¸˜o Textual ca Embora a linguagem natural seja amb´ ıgua, ´ imprescind´ e ıvel uma descri¸˜o textual dos requisitos; ca Complementa os prot´tipos de interface ou os diagramas o UML; Devem ser descritos de forma organizada, e estruturada, usando linguagem clara; Evitar o uso de g´ inform´tica; ıria a Devem ser descritos usando a forma ativa dos verbos (presente, n˜o passado). a Alberto Sim˜es o Engenharia de Requisitos 48/62
  • 108. Especifica¸˜o de Requisitos ca Especifica¸˜o Textual - Exemplo ca 3. Edi¸˜o de diagramas. ca Alberto Sim˜es o Engenharia de Requisitos 49/62
  • 109. Especifica¸˜o de Requisitos ca Especifica¸˜o Textual - Exemplo ca 3. Edi¸˜o de diagramas. ca 3.5 Adicionar um nodo num diagrama. Alberto Sim˜es o Engenharia de Requisitos 49/62
  • 110. Especifica¸˜o de Requisitos ca Especifica¸˜o Textual - Exemplo ca 3. Edi¸˜o de diagramas. ca 3.5 Adicionar um nodo num diagrama. 3.5.1 O editor deve permitir que o utilizador adicione nodos de determinado tipo ao seu diagrama. Alberto Sim˜es o Engenharia de Requisitos 49/62
  • 111. Especifica¸˜o de Requisitos ca Especifica¸˜o Textual - Exemplo ca 3. Edi¸˜o de diagramas. ca 3.5 Adicionar um nodo num diagrama. 3.5.1 O editor deve permitir que o utilizador adicione nodos de determinado tipo ao seu diagrama. 3.5.2 A sequˆncia de a¸˜es para adicionar um nodo deve ser: e co O utilizador seleciona o tipo de nodo a ser adicionado. O utilizador move o cursor para uma posi¸˜o aproximada para ca o nodo, no diagrama, indicando que o s´ ımbolo deve ser adicionado nesse ponto. O utilizador posteriormente deve arraste o s´ımbolo para a sua posi¸˜o final. ca Alberto Sim˜es o Engenharia de Requisitos 49/62
  • 112. Especifica¸˜o de Requisitos ca Especifica¸˜o Textual - Exemplo ca 3. Edi¸˜o de diagramas. ca 3.5 Adicionar um nodo num diagrama. 3.5.1 O editor deve permitir que o utilizador adicione nodos de determinado tipo ao seu diagrama. 3.5.2 A sequˆncia de a¸˜es para adicionar um nodo deve ser: e co O utilizador seleciona o tipo de nodo a ser adicionado. O utilizador move o cursor para uma posi¸˜o aproximada para ca o nodo, no diagrama, indicando que o s´ ımbolo deve ser adicionado nesse ponto. O utilizador posteriormente deve arraste o s´ımbolo para a sua posi¸˜o final. ca 3.5.3 An´lise L´gica: O utilizador ´ a melhor pessoa para decidir onde a o e colocar um nodo no diagrama. Esta abordagem d´ controlo direto a sobre a sele¸˜o e posicionamento dos nodos. ca Alberto Sim˜es o Engenharia de Requisitos 49/62
  • 113. Especifica¸˜o de Requisitos ca Diagramas A especifica¸˜o textual dever´ ser complementada com ca a diagramas; Existem diferentes nota¸˜es: co Diagramas de Fluxo de Dados; Diagramas de Caso de Uso (UML); Diagramas de Atividade (UML); Diagramas de Sequˆncia (UML); e ... Alberto Sim˜es o Engenharia de Requisitos 50/62
  • 114. Parte V Diagramas de Caso de Uso Alberto Sim˜es o Engenharia de Requisitos 51/62
  • 115. Diagramas de Caso de Uso Atores Alberto Sim˜es o Engenharia de Requisitos 52/62
  • 116. Diagramas de Caso de Uso Ator Representado por um stick-man, acompanhado de um nome; Alberto Sim˜es o Engenharia de Requisitos 53/62
  • 117. Diagramas de Caso de Uso Ator Representado por um stick-man, acompanhado de um nome; O nome do ator dever´ ser f´cil de compreender a a pelo cliente e pela equipa de desenvolvimento; Alberto Sim˜es o Engenharia de Requisitos 53/62
  • 118. Diagramas de Caso de Uso Ator Representado por um stick-man, acompanhado de um nome; O nome do ator dever´ ser f´cil de compreender a a pelo cliente e pela equipa de desenvolvimento; Nem todos os seres humanos que interagem com o sistema s˜o atores (alguns fazem parte do a pr´prio sistema); o Alberto Sim˜es o Engenharia de Requisitos 53/62
  • 119. Diagramas de Caso de Uso Ator Representado por um stick-man, acompanhado de um nome; O nome do ator dever´ ser f´cil de compreender a a pelo cliente e pela equipa de desenvolvimento; Nem todos os seres humanos que interagem com o sistema s˜o atores (alguns fazem parte do a pr´prio sistema); o Nem todos os atores s˜o seres humanos (por a exemplo, outros sistemas que interagem com o sistema a ser desenvolvido); Alberto Sim˜es o Engenharia de Requisitos 53/62
  • 120. Diagramas de Caso de Uso Ator Representado por um stick-man, acompanhado de um nome; O nome do ator dever´ ser f´cil de compreender a a pelo cliente e pela equipa de desenvolvimento; Nem todos os seres humanos que interagem com o sistema s˜o atores (alguns fazem parte do a pr´prio sistema); o Nem todos os atores s˜o seres humanos (por a exemplo, outros sistemas que interagem com o sistema a ser desenvolvido); Por exemplo, o pr´prio rel´gio do sistema pode o o ser visto como um ator, que despoleta a¸˜es a co determinadas horas; Alberto Sim˜es o Engenharia de Requisitos 53/62
  • 121. Diagramas de Caso de Uso Generaliza¸˜o de Atores ca Alguns atores s˜o capazes de realizar a todas as opera¸˜es que outros atores; co Por exemplo, ´ t´ e ıpico que um administrador possa realizar todas as opera¸˜es de um utilizador normal (e co outras espec´ ıficas); O chefe de caixa num supermercado tipicamente tamb´m ´ caixa: para e e al´m de fazer o que um caixa faz, tem e capacidade de realizar outras opera¸˜es; co Nestes casos, usa-se uma seta de generaliza¸˜o (com um triˆngulo como ca a ponta), que parte do ator mais gen´rico, e em dire¸˜o ao ator mais espec´ ca ıfico; Alberto Sim˜es o Engenharia de Requisitos 54/62
  • 122. Diagramas de Caso de Uso Casos de Uso Um caso de uso, ou uma tarefa, ´ representado e dentro de uma oval; Alberto Sim˜es o Engenharia de Requisitos 55/62
  • 123. Diagramas de Caso de Uso Casos de Uso Um caso de uso, ou uma tarefa, ´ representado e dentro de uma oval; Pode ser t˜o simples como permitir que o a utilizador realize login; Pode ser t˜o complicado como executar uma a transa¸˜o distribu´ por v´rias bases de dados ca ıda a globais; Alberto Sim˜es o Engenharia de Requisitos 55/62
  • 124. Diagramas de Caso de Uso Casos de Uso Um caso de uso, ou uma tarefa, ´ representado e dentro de uma oval; Pode ser t˜o simples como permitir que o a utilizador realize login; Pode ser t˜o complicado como executar uma a transa¸˜o distribu´ por v´rias bases de dados ca ıda a globais; ´ E uma intera¸˜o completa, que inclui a ca introdu¸˜o de dados no sistema (ou pelo menos ca o pedido de determinada funcionalidade), e o retorno por parte do sistema; Alberto Sim˜es o Engenharia de Requisitos 55/62
  • 125. Diagramas de Caso de Uso Casos de Uso Um caso de uso, ou uma tarefa, ´ representado e dentro de uma oval; Pode ser t˜o simples como permitir que o a utilizador realize login; Pode ser t˜o complicado como executar uma a transa¸˜o distribu´ por v´rias bases de dados ca ıda a globais; ´ E uma intera¸˜o completa, que inclui a ca introdu¸˜o de dados no sistema (ou pelo menos ca o pedido de determinada funcionalidade), e o retorno por parte do sistema; Um caso de uso ´ qualquer coisa que providencia um e resultado mensur´vel para o utilizador ou um sistema a externo Alberto Sim˜es o Engenharia de Requisitos 55/62
  • 126. Diagramas de Caso de Uso Linhas de Comunica¸˜o ca Relacionam os atores com os casos de uso com que interagem; Tipicamente os diagramas n˜o a representam a ordem pela qual esta intera¸˜o ´ feita; ca e Uma linha de comunica¸˜o significa ca apenas que o ator est´ envolvido a em determinado uso do sistema; Alberto Sim˜es o Engenharia de Requisitos 56/62
  • 127. Diagramas de Caso de Uso Limites do Sistema Embora exista uma separa¸˜o ca impl´ıcita entre atores e casos de uso, ´ habitual colocar estes e ultimos numa caixa; ´ Habitualmente nesta caixa ´e inscrito o nome do sistema; Alberto Sim˜es o Engenharia de Requisitos 57/62
  • 128. Diagramas de Caso de Uso Descri¸˜o dos Casos de Uso ca Cada caso de uso dever´ ser acompanhado de uma descri¸˜o a ca detalhada do processo (como a defini¸˜o de um requisito). ca Alberto Sim˜es o Engenharia de Requisitos 58/62
  • 129. Diagramas de Caso de Uso Descri¸˜o dos Casos de Uso ca Cada caso de uso dever´ ser acompanhado de uma descri¸˜o a ca detalhada do processo (como a defini¸˜o de um requisito). ca Caso de uso: criar novo utilizador no blog Objetivo: um utilizador solicitou ao administrador um utilizador no blog Condi¸˜o de Sucesso: ca um novo utilizador ´ criado para o autor e Condi¸˜o de Falha: ca ´ rejeitada a requisi¸˜o de novo utilizador e ca Principal Ator: administrador Atores Secund´rios: a BD de credenciais Processo: 1. O administrador escolhe a op¸˜o de criar novo utilizador; ca 2. O administrador escolhe o tipo de utilizador; 3. O administrador preenche formul´rio com dados do utilizador; a 4. Os detalhes do utilizador s˜o verificados na BD de credenciais; a 5. O utilizador do blog ´ criado; e 6. S˜o enviados os detalhes do utilizador por e-mail para o utilizador; a Extens˜es: o 4.1. A BD de credenciais n˜o verifica os detalhes do utilizador; a 4.2. A requisi¸˜o de novo utilizador ´ rejeitada; ca e Alberto Sim˜es o Engenharia de Requisitos 58/62
  • 130. Diagramas de Caso de Uso Rela¸˜es entre Casos de Uso co Considere-se o seguinte cen´rio: a N˜o h´ rela¸˜o entre os dois casos de uso? a a ca Alberto Sim˜es o Engenharia de Requisitos 59/62
  • 131. Diagramas de Caso de Uso Rela¸˜es entre Casos de Uso co Considere-se o seguinte cen´rio: a N˜o h´ rela¸˜o entre os dois casos de uso? a a ca Os casos de uso podem partilhar opera¸˜es; co Por exemplo, para criar um utilizador no blog, ou um wiki pessoal, ser´ necess´rio validar a identidade do utilizador; a a Podemos colocar essa opera¸˜o em evidˆncia. ca e Alberto Sim˜es o Engenharia de Requisitos 59/62
  • 132. Diagramas de Caso de Uso Rela¸˜es entre Casos de Uso co Alberto Sim˜es o Engenharia de Requisitos 60/62