.
Melhores práticas
Enquadramento de sistemas
- Enquadrar o projeto dentre 4 tipos possíveis
- Entender o universo e a potencialidade de novas aplicações
Tipos de sistemas
- Quando pretendemos desenvolver uma nova aplicação é importante que saibamos enquadrá-la com relação à propriedade e ao grau de inovação.
- Normalmente cada projeto se enquadra em um dos tipos a seguir.
Ideia Radical

- Escopo cujo benchmarking mostra que não existe proposta igual ou que a solução mais parecida ainda está longe da definição do projeto encontrado.
- Dinâmica:
- A. Se for de médio ou grande porte, requer:
- ===> Projeto e Telas de Navegação (Mockup)
- B. Se for de pequeno porte, requer:
- ===> Projeto, Mockup e Banco de Dados.
- A. Se for de médio ou grande porte, requer:
Ideia Incremental

- Escopo cujo benchmarking mostra que existe proposta parecida e que este projeto pretende:
- manter o escopo básico e criar funções adicionais inovadoras.
- Dinâmica:
- Se for de médio ou grande porte, requer:
- ===> Projeto e Banco de Dados
- Se for de pequeno porte, requer:
- ===> Projeto, Mockup (com detalhamento das funções adicionais) e Banco de Dados.
- Se for de médio ou grande porte, requer:
Prototipagem
- O escopo descreverá a proposta de construção de um sistema completo, com todas as funcionalidades possíveis para se tornar um produto profissional porém a implementação é uma pequena parte do todo.
- Eventualmente pode ser aplicado a um open-source que pode ser continuado

- Se for de médio ou grande porte, requer:
- ===> Projeto e Demonstração
- Se for de pequeno porte, requer:
- ===> Projeto Mockup (com detalhamento das funções adicionais) e Banco de Dados.
Engenharia Reversa

- Projeto que pretende usar uma solução existente e contribuir para sua evolução ou desenvolver um sistema com funcionalidades muito próximas do original.
- Como já existe um sistema pronto, se for de médio ou grande porte, requer:
- Projeto, criação de algum diferencial e Banco de Dados
- Como já existe um sistema pronto, se for de pequeno porte, requer:
- Projeto, criação de algum diferencial, detalhamento de todo o sistema e Banco de Dados
Enquadramento
- Como se enquadra um sistema em pequeno, médio ou grande porte?
- Avaliando as seguintes características:
-
A. Definição dos requisitos técnicos
-
B. Definição dos número de integrações
-
C. Grau de Inovação
-
D. Complexidade do projeto
Iniciando um sistema
-
1. Problema a ser definido
-
2. Dar nome ao projeto/aplicação
-
3. Escrever escopo do projeto
-
4. Montar o Canvas
-
5. Executar Etapa de Requisitos
-
6. Responder 5W2H
Passo 1

- Seleção do projeto:
- ==> Brainstorm
- Discussão sobre ideias, necessidades ou problemas
- ==> Nome e escopo do projeto
- Criação do link no site
- ==> Template: 5W2H
- Canvas
Passo 2
- Aquisição dos dados
- Estudo profundo
- Discussões
- Entrevistas
- Observações
- Requisitos Funcionais
- Requisitos Não-Funcionais
- Escrita do 5W2H
Passo 3
- Análise
- Discussão em grupo de todos os detalhes possíveis
- Conclusão do 5W2H
Passo 4
- Projeto:
- Documentação
- Diagramas
- DFD
- DER
- DD
Passo 5
- Protótipo
- Definição do escopo reduzido
- Definição das datas de entrega
- Implementação
- Apresentação no dia planejado
- ou
- Competição
- URI, NEPS ou Minimaratona
- Inscrição no site
- Treinamento
- MiniMaratona no dia planejado
- URI, NEPS ou Minimaratona
Passo 6
- Apresentação ou demonstração?
- Definição da Data
- Apenas um apresenta
- Professor aplica perguntas aos demais integrantes
Questões
- 01. Com relação ao problema para o qual irá modelar um sistema como pretende coletar dados para aprofundar o máximo possível sobre ele?
- 02. Descreva sucintamente as tecnologias que poderão ajudar a resolver seu problema.
- 03. Quais especialistas sobre o assunto você conhece ou ouviu falar que poderá ajudar a conhecer mais sobre as possíveis soluções para seu problema?
- 04. Você sabia que inovação tecnológica não quer dizer invenção? O que é então?
- 05. Cite um exemplo de inovação tecnológica em uma das áreas a seguir: Internet, Redes Sociais, Armazenamento ou IA.
- 06. Descreva um exemplo de operação, por exemplo, num sistema acadêmico.
- 07. Descreva um exemplo de operação, por exemplo, num site de comércio eletrônico.
- 08. O problema que pretende resolver pode ser enquadrado em qual dos tipos de sistemas?
- 09. O que é um SDK?
Levantamento de Requisitos
- Requisitos funcionais
- Especificam ações que um sistema deve executar, sem levar em consideração restrições físicas
- 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
- Devem descrever detalhadamente os serviços do sistema
- Exemplos de Requisitos Funcionais num sistema como o Bancário:
- Cadastrar senha
- Acessar conta
- Gerar extrato
- Sacar dinheiro
- Fazer transferência
- Efetuar pagamentos
- Visualizar saldo
- Consultar taxas

- Requisitos
- 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
Benchmarking

- Benchmarking de projetos
- Dentre os muitos projetos que constam no link abaixo:
- estão exemplos de ideias de antigos alunos.
- Sinta-se a vontade para entender o que outras equipes propuseram.
Trabalho

- Desenvolver 5W2H para o projeto em grupo
- Número de integrantes: 5
- 1. Escolher problema a ser resolvido (Ok)
- 2. Reunir a equipe (Ok)
- 3. Definir nome para o projeto (Ok)
- 4. Solicitar link ao professor para publicação da pesquisa (Ok)
- 4. Pesquisar a respeito do problema
- 5. Preencher informações conforme orientações do link
- 6. Verificar data de entrega na página principal