Skip to content

Instantly share code, notes, and snippets.

@dieissonmartins
Last active April 13, 2019 20:06
Show Gist options
  • Save dieissonmartins/256e0195fccb992765a5724ed25d285f to your computer and use it in GitHub Desktop.
Save dieissonmartins/256e0195fccb992765a5724ed25d285f to your computer and use it in GitHub Desktop.
PROJETOS DE SISTEMAS DE TI
-processo de desenvolvimento de um sistema
-levantamento dos requisitos
-manutenção do software
Tópico 1: Métodos e Metodologias
- planejamento
- elaboração do projeto
"Em outras palavras, com um projeto bem elaborado, o sistema atenderá as expectativas e as necessidades de quem o encomendou"
- objetivo do sistema a ser produzido
- programador tem de sair da frente do computador e conversar com as pessoas. Somente dessa forma ele poderá construir um bom sistema de informação.
Metodologia
-passos e as etapas para a realização de um trabalho.
-formas de trabalho organizadas para planejar, construir, implantar, avaliar e manter sistemas de informação.
Processo de Desenvolvimento de um Sistema
1- A quantidade de funcionalidades que os sistemas devem conter.
2- Os cuidados com as informações que são recebidas pelo sistema.
3- As preocupações com segurança, facilidade de uso e outras variáveis.
Etapas do Desenvolvimento de Sistemas
- Planejamento
- Avaliação eManutenção
- Implantação
- Construção
Etapa 1 ‒ Planejamento
- Entendimento do perfil e das necessidades do cliente
- Levantamento dos requisitos
- Identificação dos recursos e custos
- Avaliação da viabilidade
- Elaboração do cronograma preliminar de trabalho.
Modelos
- Modelo Cascata
- Modelo Incremental
- Modelo Iterativo
- Modelo de Prototipação
- Modelo Espiral.
Modelo Cascata é bastante útil quando os requisitos do cliente são bem-definidos no início do projeto e, por isso, não esperamos mudanças ao longo do processo de desenvolvimento.
Existem dois tipos de manutenção:
• Corretiva, para resolução de eventuais problemas.
• Evolutiva, para desenvolvimento de melhorias e novas funcionalidades.
Modelo Incremental, partes do sistema são desenvolvidas em paralelo e integradas posteriormente.
Esse modelo também é usado em situações em que precisamos apresentar partes do sistema funcionando em um tempo curto.
Modelo Iterativo é útil quando existem mudanças ao longo do projeto. Nesse caso, as mudanças podem ser absorvidas nas próximas versões. Por outro lado, se o processo não for bem gerenciado, o desenvolvimento pode ser longo, e a entrega de versões inacabadas pode tornar-se constante.
Modelo Iterativo promove um processo de vários ciclos sucessivos ou iterações. Tais ciclos aprofundam o conhecimento do sistema tanto para o desenvolvedor quanto para o cliente. Nesse modelo, uma nova versão do produto é produzida em cada etapa.
Modelo de Prototipação grande participação do cliente. Com isso, chegamos mais perto do produto final a cada ciclo. Outro ponto positivo é a rapidez do modelo em mostrar um resultado ao cliente, mesmo que inacabado.
Modelo Espiral segue uma linha similar a do Modelo Incremental. Desse modo, o desenvolvimento de partes do projeto ocorre em paralelo, mas com a disponibilização rápida de partes funcionais para avaliação e testes.
------------------------------------------------------------------------------------------------------------------------------------
Engenharia de Software
- Conceito de Engenharia de Software
- Fases da Análise Estruturada.
Engenharia de Software é uma disciplina da computação que abrange a definição, a especificação, o desenvolvimento e a manutenção de sistemas de informação.
Análise estruturada
- Análise estruturada é uma metodologia de trabalho que se destaca na Engenharia de Software. Nesse contexto, a análise estruturada visa organizar o desenvolvimento do projeto e ampliar a comunicação com o usuário.
- Seis fases
1) Concepção do software
2) Estudo de viabilidade
3) Projeto lógico
4) Projeto físico
5) Implantação
6) Manutenção
1- - Quais informações serão disponibilizadas na saída?
- Quais informações serão necessárias na entrada?
- Como o sistema será acessado?
- Quais benefícios trará para seus usuários(organização ou pessoas físicas)?
- Quais funcionalidades terá?
- Para que o sistema será desenvolvido?
2- - Analisar a disponibilidade de recursos – financeiros, técnicos e humanos – para o desenvolvimento do sistema.
- Custo e o prazo de desenvolvimento.
3- - Desenho das atividades que serão cobertas pelo sistema.
- Diagramas
- Os diagramas de fluxo das atividades do sistema
- O conhecido Diagrama de Fluxo de Dados (DFD), que veremos mais adiante.
4- Definir os equipamentos e os programas necessários no decorrer do projeto.
- linguagens utilizadas na programação
- bancos de dados
- ambientes de desenvolvimento e testes
- emuladores
- determinados os computadores
- dispositivos requeridos para desenvolver, testar, implantar etc.
5- Momento em que o sistema será disponibilizado para os usuários.
6- Prever atualizações em seu sistema. Tais atualizações devem trazer novas funcionalidades, garantir a compatibilidade com novos sistemas operacionais e equipamentos, ou corrigir erros.
Tipos de Requisitos
- Funcionais
- Não funcionais
Técnicas para Levantamento de Requisitos
- Entrevista
- Workshop
- Questionário
- Brainstorming
- Observação
- Prototipação
-----
Ambientes de Desenvolvimento e Softwares de Apoio
- vision
- project
Leitura Recomendada
Amplie seu conhecimento com algumas leituras.
PILONE, Dan; MILES, Russ. Use a cabeça! Desenvolvimento de software. Rio de Janeiro: Alta Books, 2008.
PRESSMAN, Roger S.; MAXIM, Bruce R.: Engenharia de software: uma abordagem profissional. Porto Alegre: AMGH, 2016.
SHORE, B.Introduction to computer information systems. Toronto: Harcourt Canada, 1988.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment