A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Professor Andre Moura moura.professor@gmail.com O.O.H.D.M. Requisitos Professor Andre Moura moura.professor@gmail.com.

Apresentações semelhantes


Apresentação em tema: "Professor Andre Moura moura.professor@gmail.com O.O.H.D.M. Requisitos Professor Andre Moura moura.professor@gmail.com."— Transcrição da apresentação:

1 Professor Andre Moura moura.professor@gmail.com
O.O.H.D.M. Requisitos Professor Andre Moura

2 O.O.H.D.M. Object Oriented Hypermedia Design Method/Model (Método de Design Hipermídia Orientado a Objeto) Idealizado na PUC-RJ por Daniel Schwabe e Gustavo Rossi. Descendente direto do HDM (Hypermedia Design Method) Método indicado para auxiliar no desenvolvimento de aplicações hipermídia de pequena, média e grande escala.

3 Introdução Pode ser utilizado como forma de comunicação entre projetistas, implementadores e usuários. Permite a implementação em diversos ambientes de hardware e software, seja Orientado a Objetos ou não. Pode ser complementado com a utilização de Design Patterns (Padrões de Projeto), e Framekorks (esqueleto de aplicações, Arquiteturas reusáveis). Propõe o processo de engenharia de desenvolvimento em cinco etapas: Levantamento de Requisitos, Modelagem Conceitual, Modelagem Navegacional, Projeto Interface Abstrata e implementação.

4 Introdução

5 Ciclo de Desenvolvimento

6 Ciclo de Desenvolvimento

7 Levantamento de Requisitos
Obter o máximo possível de informações sobre o domínio da aplicação. Também conhecido como Elicitação de Requisitos. Consiste essa etapa: Identificação de Classes de Atores e suas Tarefas; Especificação de cenários; Especificação de Uses Cases; Especificação de UIDs (User Interaction Diagram); Validação dos Uses Cases e UIDs.

8 Levantamento de Requisitos
Que material está disponível? Material já organizado e formatado Material “bruto” em diversos formatos, sem organização: deve-se então Estruturar estes Não há (praticamente nenhum) material disponível: deve- se então Produzir e Estruturar estes Quais os tópicos principais a serem abordados? Como os tópicos estão relacionados entre si? Quais as categorias de usuários a serem atendidas? Quais as tarefas principais a serem apoiadas? Que tarefas correspondem a que categorias de usuários? Os recursos disponíveis são compatíveis com as informações levantadas? Existem questões legais (copyright) envolvidas?

9 Identificação de Atores e Tarefas
Identificar as reais necessidades dos usuários. Como??? Interação do projetista com o domínio da aplicação. De que forma???? Análise documentos Interações com usuários (entrevista, brainstorming, tempo, disponibilidade) Porque??? Para identificar os reais atores e suas tarefas

10 Identificação de Atores e Tarefas
Agente que interage com o sistema Não é um usuário individual, mas sim um papel que desempenha Um ator pode representar vários papeis Um papel pode ser representado por vários atores Ex.: Escola=Aluno, Professor Museu=Visitante, Pesquisador Tarefa: Objetivo que o usuário deseja alcançar São potenciais Cenários Escola, ator Aluno=Pesquisar suas notas através de seu código

11 Especificação dos Cenários
Cenário é uma descrição textual que explica em detalhes as tarefas que o usuário deseja realizar. Pode ser elaborada pelo usuário ou pelo projetista. Especifica as informações que serão trocadas entre o usuário e a aplicação. Não aborda-se aspectos de Interface e Navegação. Descrevem as tarefas do ponto de vista do usuário que a realiza.

12 Especificação dos Cenários
Cenário: C1 – Visualizar minhas notas através de meu código de aluno Contexto: Sendo um aluno da Universo BH, no curso de Graduação em Análise de Sistemas, gostaria de saber quais as minhas notas nas disciplinas que cursei durante o curso. Objetivo: Visualizar as notas por meio do código do aluno Ações: Através da informação do código do aluno e de minha senha, o sistema me retornará as disciplinas do curso, o nome dos professores e o conceito final que obtive em cada uma delas.

13 Especificação dos Cenários
Cenário 1 (usuário 1): - Ler matérias sobre esportes Contexto: Sou um admirador de atividades ligadas ao esporte. Quero estar bem informado sobre tênis, meu esporte favorito. Objetivo: Ler notícias relacionadas ao tênis Descrição: Quero encontrar matérias sobre tênis. Para isto, eu seleciono a seção “esportes” e espero obter uma lista com as matérias existentes sobre este assunto. Caso exista uma matéria relacionada ao tênis, eu a seleciono e a aplicação retorna o texto da matéria e o nome do autor. Seria interessante ter as opções de imprimir a matéria e de enviá-la a um amigo.

14 Especificação dos Cenários
Cenário 2 (usuário 1): - Ler matérias de uma seção Contexto: Gosto de estar atualizado lendo matérias de um jornal Objetivo: Ler matérias Descrição: Escolho uma seção e a aplicação me retorna todas as matérias desta seção. A lista de matérias deve conter a data de publicação, o título e um resumo de cada matéria. Se tiver interesse em ler a matéria completa, eu a seleciono e vejo o seu conteúdo e o nome do seu autor. Quero ver também, caso exista, uma lista de matérias relacionadas à matéria que eu selecionei, e ter a possibilidade de acessar informações sobre o autor, como por exemplo, seu nome completo, foto e biografia. Se desejar ler uma outra matéria da mesma seção, retorno à lista de matérias e seleciono outra.

15 Especificação dos Use Cases
Um Use Cases, é uma maneira de se utilizar a aplicação. Não são abordados funcionamentos internos da aplicação. Originam-se dos Cenários. Um Use Case pode englobar diversos Cenários. Isso ocorre quando estes especificam uma mesma tarefa. Um Cenário pode ser visualizado como uma Instância de um Use Case.

16 Especificação dos Use Cases
Use case:Visualizar minhas notas através do código do aluno Cenários: C1/... Descrição: O usuário entra com o seu código de aluno Se não souber seu código de aluno, pode pesquisá-lo (use case Pesquisar código de aluno). O usuário entra com a sua senha O sistema faz a verificação do código e senha. Se a senha ou código for inválido, o sistema informa que os dados são inválidos e retorna a pedir o código e senha. Caso os dados informados sejam válidos, o sistema retorna a opção de visualizar as suas notas, para escolha do usuário. Usuário escolhe a opção visualiza notas. O sistema retorna a lista de disciplinas com o nome do professor e o conceito adquirido em cada uma delas, e se está em Aprovado ou Reprovado.

17 Especificação dos Use Cases
Use Case 1: Ler matérias de uma seção Cenários: 1.2/2.3/... Descrição: O usuário seleciona uma das seções apresentadas pela aplicação. A aplicação retorna uma lista das matérias da seção selecionada, contendo a data de publicação, o título e o resumo de cada matéria. O usuário seleciona a matéria de interesse. A aplicação retorna o título, a data de publicação, o conteúdo da matéria, o nome do autor e uma lista das matérias relacionadas, caso exista. Se desejar, o usuário pode imprimir a matéria ou enviá-la a um amigo. O usuário solicita informações sobre o autor. A aplicação retorna o nome, a foto e a biografia do autor. Se o usuário tiver interesse em ler outra matéria da mesma seção, pode retornar ao passo 3.

18 Especificação dos UIDs
User Interaction Diagram ou Diagrama de Interação do Usuário. Representa graficamente as troca de informações (interação) entre os usuários e a aplicação, independente da forma como isso ocorre na interface. Para cada Use Case é especificado um UID. Não leva-se em consideração Interface e Navegação. Representa um conjunto de estados de interação conectados por transições.

19 Especificação dos UIDs
Item de Dado É uma informação única que aparece durante a interação. Escrito em letra minúscula Quando acompanhado do domínio utiliza-se dois pontos “:” Os domínios tem a primeira letra em Maiúsculo e devem ser descritos pelo projetista. Ex.: Vídeo, Imagem, Som, etc Quando não especificado o domínio de um item de dado o default, Texto, é assumido. Quando o domínio for Enumerado (opções fornecidas pela aplicação), seus valores são descritos entre chaves “{...}” e separados por vírgula “,” O nome do item de dado pode ser suprimido quando seu domínio for do tipo Som, Vídeo ou Imagem.

20 Especificação dos UIDs
Item de Dado. Exemplos:

21 Especificação dos UIDs
Estruturas Coleção de informações relacionas entre si. Essas informações podem ser: itens de dados, estruturas ou conjunto de itens de dados. O nome da estrutura é obrigatório e tem a primeira letra em Maiúsculo. A especificação da estrutura é entre parênteses e seus elementos separados por vírgula. Exemplos: Aluno(código:Número,nome,cidade,estado) Professor(código:Número,nome,foto:Imagem, )

22 Especificação dos UIDs
Conjunto Representa um conjunto de itens de dados ou estruturas. Sua multiplicidade é esboçada por um valor mínimo e um máximo com a seguinte notação: mín..máx A multiplicidade default é 1-para-N e tem a notação “...” Exemplos: ...Aluno(código:Número,nome,cidade,estado) 1..2 telefones 1..10 cnpj:Número ...Professor(código:Número,nome,foto:Imagem, )

23 Especificação dos UIDs
Dados Opcionais Representa um item de dado ou estrutura opcional. Pode possuir multiplicidade Um dado opcional é identificado pelo ponto de interrogação “?” Um item de dado opcional também pode ser representado por uma cardinalidade 0..N Quando se estiver representando uma Entrada do usuário que seja Opcional, utiliza-se um retângulo de linha pontilhada. Exemplos: ...Aluno(código:Número,nome,:Imagem?,cidade,estado) 1..2 telefones_alternativos? ...Cliente(nome,cpf:Número,endereço,end_coml?)

24 Especificação dos UIDs
Entrada de Usuário Especifica um item de dado ou estrutura que é inserida pelo usuário durante a execução da aplicação A digitação de valor pelo usuário é representado por um retângulo de linha contínua Itens de dados dependentes entre si podem ser feitos usando-se os conectivos: E/OU (pelo menos 1), OU (somente um) Quando o usuário deve escolher entre opções oferecidas, define- se como Entrada Enumerada. As opções são colocadas entre colchetes “[...]” e separadas por vírgula “,” Quando houver a possibilidade de mais de uma escolha, utiliza- se a notação de multiplicidade com mín..máx

25 Especificação dos UIDs
Entrada de Usuário Exemplos:

26 Especificação dos UIDs
Estado da Interação Esboça um momento da interação entre o usuário e a aplicação Um estado da interação é representado por uma elipse de linha contínua Exemplos:

27 Especificação dos UIDs
Texto É a representação da exibição de um texto explicativo e/ou informativo ao usuário. A notação é apresentar o texto a ser exibido entre aspas “...” Exemplo:

28 Especificação dos UIDs
Saída do Sistema Representa uma informação retornada pela aplicação. É tudo o que aparece fora de retângulos e dentro de um estado Exemplo:

29 Especificação dos UIDs
Estado Inicial da Interação Representa o estado inicial da aplicação é uma transição sem precedentes. Exemplo:

30 Especificação dos UIDs
Estados Alternativos da Interação Ocorre quando um estado produz mais de uma saída do sistema como resposta a uam requisição. Exemplo:

31 Especificação dos UIDs
Sub-estados de um Estado da Interação Ocorre quando há exlusão mútua de partes de um estado da interação. Quando ocorrer o usuário deverá optar por um ou por outro estado da interação. Exemplo:

32 Especificação dos UIDs
Chamada de outro UID Usado para indicar a mudança de foco da interação para outro UID. Se após a execução da UID chamada não ocorrer a transição para um novo foco, haverá o retorno automático do foco da interação para o estado precedente a chamada do outro UID. É representado por uma elipse de linha contínua e com um sombreamento em interior. É identificado pelo termo “UID” seguido do nome do UID que será chamado. Os Landmarks, mais conhecidos como ícones de navegação são exemplos de chamada de outro UID.

33 Especificação dos UIDs
Chamada de outro UID Exemplo:

34 Especificação dos UIDs
Chamada a partir de outro UID Representa que o foco da interação foi transferido de outro UID para o UID atual. Ao final da execução deste o foco da interação retornará para o UID que o chamou. Semelhante a interrupção do S.O. Exemplo:

35 Especificação dos UIDs
Transição Indicam a mudança do foco da interação. Para que ocorra uma transição no mínimo uma informação deve ser requisitada ao sitema para que este devolva uma resposta. Notações de transição:

36 Especificação dos UIDs
Transição

37 Especificação dos UIDs
Transição Exemplo de transição com Seleção de Elemento:

38 Especificação dos UIDs
Transição Exemplo de transição com Seleção de Opção:

39 Especificação dos UIDs
Transição Exemplo de transição com Seleção de Opção:

40 Especificação dos UIDs
Transição Exemplo de transição com Seleção de Opção:

41 Especificação dos UIDs
Transição Exemplo de transição com Condição:

42 Especificação dos UIDs
Transição Exemplo de transição com Seleção de Elemento e Opção:

43 Especificação dos UIDs
Transição Exemplo de transição com Seleção de Elementos de conjuntos diferentes e Opção:

44 Especificação dos UIDs
Transição Exemplo de transição com Seleção de Opção e Condição:

45 Especificação dos UIDs
Pré-Condição e Pós-Condição Utilizado quando um UID só pode ser visualizado de for preenchida uma condição de Pré ou Pós. Pré-condição ocorrem antes da interação do UID Pós-condição ocorrem depois da execução do UID Para ambos os casos as informações são inseridas dentro de retângulos de linha contínua, abaixo do UID e com a identificação de Pré-condição ou Pós-condição.

46 Especificação dos UIDs
Pré-Condição e Pós-Condição Exemplo:

47 Especificação dos UIDs

48 Especificação dos UIDs
Notas Textuais Utilizado quando não houver a possibilidade de se representar graficamente algum informação de cunho importante para o UID. Pode ser utilizado também para se ressaltar algum aspecto importante do UID.

49 Especificação dos UIDs
Notas Textuais Exemplo:

50 Especificação dos UIDs
UIDs parametrizados Utilizado para representar UIDs que possuem a mesma sequência de interação, porém com informações diferentes. Neste caso as informações a serem parametrizadas, são apresentadas dentro do estado da interação com a notação de Parâmentro N, onde N é o número do parâmetro.

51 Especificação dos UIDs
UIDs parametrizados Exemplo:

52 Especificação dos UIDs
Exemplos de UIDs

53 Especificação dos UIDs
Exemplos de UIDs

54 Especificação dos UIDs
Relacionamento entre UIDs É construído após a elaboração de todos os UIDs - Tem o objetivo de representar os relacionamentos mais significativos, bem como representar alguns relacionamentos que não foram descritos nos UIDs, mas que constam nos Use Cases. - Podem ser de três tipos: Inclui Estende Precede A notação utilizada é: <<inclui>>, <<estende>>, <<precede>>

55 Especificação dos UIDs
Relacionamento Inclui Usado para indicar que um UID está contido em outro, que um UID faz parte do outro UID. Mas como eu sei que dever ser Inclui??? Quando as interações definidas no UID incluído não fizerem sentido de serem executadas sozinhas. Exemplo:

56 Especificação dos UIDs
Relacionamento Estende Indica que um determinado UID pode ser estendido. Utilizado quando um UID apresenta um comportamento alternante ou opcional. O UID estendido pode ser executado sozinho ou em qualquer outro ponto da aplicação. Exemplo:

57 Especificação dos UIDs
Relacionamento Precede Usado quando a execução de um UID depende de outro. Indica que um determinado UID somente poderá ser executado se o outro UID for executado com sucesso. Exemplo:

58 Especificação dos UIDs
Representação do UID inicial Representa as tarefas a serem executadas quando a aplicação é inicializada. Quando for necessário se representar esse UID utiliza-se o relacionamento Inclui. É possível incluir nesse UID inicial tantas, quantas, UIDs forem necessárias para iniciar a aplicação. Exemplo:

59 Especificação dos UIDs
Validação entre UIDs Última etapa da fase de Levantamento de Requisitos É feita através da interação entre designers, projetistas e usuário Cada Use Case e UID é apresentado ao usuário, para apreciação e simulação de funcionamento da aplicação Cada sugestão, inconsistência e problemas são anotados Esses testes são necessários para que o usuário chegue a um consenso O número de testes será definido pelo tempo disponível e também pela disponibilidade do usuário.


Carregar ppt "Professor Andre Moura moura.professor@gmail.com O.O.H.D.M. Requisitos Professor Andre Moura moura.professor@gmail.com."

Apresentações semelhantes


Anúncios Google