Erro ao criar miniatura: Arquivo não encontrado

Objetivo da aula


  • Sugerir programas que ajudam a criar Mockups
  • Explicar uma técnica de detalhamento de projetos
  • Mostrar projetos anteriores que servem como benchmarking
  • Identificar um projeto modelo
  • Sugerir passos para o levantamento de dados para construção do software
  • Entender Requisitos Funcionais


Mockup

Roteiro

  • mxecução do Mockup a partir do link na Wiki
  • Explicação da navegação baseada nos requisitos
  • Orientações em sala sobre possíveis melhorias/adaptações
  • Exemplos de Editores


Sugestões de ferramentas CASE (Mockup)


  • Criaçãp de Protótipos de Interface gráfica
    • Adobe
    • Pencil Project
    • Pencil Project
    • Web Site Wireframe Tool
    • Hot Gloo
    • Dub - Denim
    • Mockingbird
    • MockFlow
    • Prototype Composer
    • fluidIA
    • Adobe
    • Cacoo
    • Lumzy
    • Axure
    • Mockup
    • ForeUI
    • Fluid UI


Exemplos



Motivação


  • Vídeo de anos atrás...
  • As vagas na área de Tecnologia de Informação continuam cada vez mais amplas
    • Nos últimos anos surgiram muitas oportunidades diferentes em torno de SI, em praticamente todas as áreas


  • Entender sobre o problema que queremos resolver passa a ser a primeira necessidade
    • O 5W2H ajuda a organizar esse processo ....


Usando o 5W2H para definir Requisitos Funcionais


  • Entre os 7 conjuntos de perguntas, algumas nos permitem tratar dos requisitos funcionais com mais profundidade:

What

  • Qual o objetivo deste projeto?
    • Quando se escreve o objetivo, propósito, já conseguimos enxergar alguns serviços possíveis para a aplicação
  • Quais soluções similares existem no mercado?
    • Depois de pesquisar e encontrar soluções similares, eventualmente copiamos algumas funcionalidades.


Why

  • Porque usar o sistema específico?
    • Quando avaliamos outros sistemas que se comunicarão com o nosso, no mínimo, a ação de conectar nosso sistema ao outros já é uma nova funcionalidade.


  • Porque usar o hardware específico?
    • Quando avaliamos outros hardwares que se comunicarão com o nosso, efetivamente teremos que criar uma função para falar com esse hardware.


Who

  • Quem poderá operar o sistema?
    • Quando imaginamos quem pode usar o nosso sistema, sejam pessoas, sistemas ou hardwares, identificamos que deverão ser criadas interfaces específicas.


Where

  • Por onde os dados serão inseridos?
    • Quando definimos as entradas implica que deverão haver funcionalidades que façam esse papel
  • Onde os dados serão externalizados, publicados?
    • De mesma forma, quando definimos as saídas implica que deverão haver funcionalidades que também façam esse papel.


How

  • Como será dividido o desenvolvimento do sistema?
    • Após a definição das funcionalidades. se chegar a um número razoável, pode levar à divisão do sistema em fases para um melhor controle
  • Enumere e descreva as funcionalidades?
    • Aqui efetivamente irão descrever todas as funcionalidades ou requisitos funcionais que o sistema deverá ter. Pode chegar a dezenas ou centenas.
      • Funcionalidade 01:
      • Funcionalidade 02:
      • Funcionalidade 03:
      • Funcionalidade 04:
      • Funcionalidade 05:
      • Funcionalidade 06:
      • ...
      • Funcionalidade 0n:



How much

  • Quantas pessoas deverão ser usadas (Equipe) ?
    • Quando relaciono no How quantos requisitos terei que construir, me leva a ter uma ideia mais clara de quantas pessoas necessitaremos.
  • Qual deverá ser o preço de aquisição do seu software para o usuário final (Valor de mercado)?
    • Uma forma de definir o preço de um SI é avaliando quantos requisitos ele tem.


Requisitos


  • O que são requisitos de um software?
    • Serviços (funcionalidades) de um software e restrições sob as quais o mesmo deve operar ou ser desenvolvido


  • Características:
    • O termo “requisito” pode ser escrito diferentes formas:
      • “Declaração em linguagem natural sobre um serviço ou uma restrição.”
      • “Uma definição formal sobre uma função do software.”
    • Um requisito pode ser apresentado em diferentes níveis de detalhe:
      • Requisitos do Usuário
        • Lista das funcionalidades e restrições do software.
      • Requisitos para o Software
        • Detalhes técnicos sobre cada requisito do usuário.
    • Os requisitos são organizados em duas classes:
      • Funcionais
        • Funcionalidades do software
      • Não Funcionais
        • Restrições ou condições para o software


  • Levantamento de requisitos é útil para:
    • Identificar as necessidades dos usuários
    • Verificar a viabilidade de implementar estas necessidades
    • Distribuir as funções do sistema entre as pessoas, o hardware, o software e outros elementos do sistema
    • Criar um modelo do sistema que será utilizado nas fases de desenvolvimento seguintes


  • Técnicas para levantamento de dados
    • O sucesso de um projeto depende diretamente do levantamento de dados
    • O levantamento de dados é tão importante no desenvolvimento do projeto que seu resultado pode colaborar ou comprometer o desempenho do projeto
    • Para realizá-lo em um sistema de informação, existem diversas técnicas de levantamento de dados
    • Dependendo das características do projeto, essas técnicas podem ser aplicadas de forma isolada ou em conjunto
    • Abaixo, algumas dessas técnicas:
      • Entrevistas: Identificar as pessoas que serão entrevistadas buscando especialistas no assunto.
      • Questionários: Gerar perguntas organizadas com o objetivo de levantar dados para uma pesquisa ou estudo, cujas respostas são fornecidas pelo informante sem a orientação direta do pesquisador;
      • Revisão de documentação: Utilizar várias fontes de informação como:manuais de procedimentos, documentação, manuais de projeto, relatórios, diagramas e outros;
      • Análise de observação: Observar os usuários em seu ambiente de trabalho enquanto eles executam suas atividades. Pode ser usada para confirmar os resultados de uma entrevista, identificar documentos que devem ser analisados etc.
      • Brainstorm: Termo do Inglês que significa “tempestade de ideias”. É uma metodologia que objetiva explorar as ideias de um grupo de pessoas a fim de obter as melhores soluções. Não há julgamento ou autocrítica. Todas as idéias são aceitas, mesmo aquelas que parecem ser absurdas. Tem-se como objetivo principal fazer com que o grupo libere o seu conhecimento e criatividade. O resultado da técnica Brainstorm tem o seu mérito distribuído porque foi obtido usando as ideias de todo o grupo envolvido.


Requisitos funcionais

  • Especificam ações que um sistema deve executar, sem levar em consideração restrições físicas
  • Melhor descrito quando são usados casos de uso
  • Descrevem a funcionalidade ou os serviços do sistema
  • Depende do tipo de software, possíveis usuários e o tipo de sistema em que o software é usado
  • Requisitos funcionais dos usuários podem ser declarações de alto nível a respeito do que o sistema deve fazer
  • Devem descrever detalhadamente os serviços do sistema
  • Exemplos:
    • Um sistema acadêmico fictício deve:
      • Matricular os alunos
      • Montar uma turma para cada grupo de alunos
      • Alocar a turma em salas
      • Gerar Diário
      • Controlar frequência e faltas
      • Calcular pontuação do aluno
      • Gerar relatório de aprovados e reprovados
      • CRUD professor
      • Gerar grade horária
      • CRUD tarefas para alunos
      • Gerar grade das matérias (Linha do tempo)
      • CRUD monitores
      • CRUD disciplina


Exemplos






Seminários:
Temas GSI003 - 2021-2