Please enable JavaScript.
Coggle requires JavaScript to display documents.
Engenharia de Software 2 - Coggle Diagram
Engenharia de Software 2
Sistemas Críticos de segurança - Exemplos
:lock:
Sistemas críticos de segurança (safety-critical system):
Ferimentos, perda de vida ou danos ao ambiente. (Ex.: sistema de fábrica de produtos químicos; sistema controle ferroviário);
Sistema crítico de missão (mission-critical system):
Não atingir o objetivo. (Ex.: sistema autônomo de espaçonave);
Sistema crítico de negócios (business-critical system):
Falha resulta em custos para os negócios. (Ex.: sistema financeiro de clientes de um banco; sistema e-commerce);
Dimensões de confiança
:silhouettes:
Software Crítico
– Software cujas características possuem riscos inerentes a danos físicos, financeiros e pessoais.
Disponibilidade
– a capacidade do sistema disponibilizar serviços quando necessário;
Confiabilidade
– a capacidade do sistema disponibilizar serviços conforme especificado;
Segurança (safety)
– a capacidade do sistema operar sem falhas catastróficas;
Proteção (security)
– a capacidade do sistema se proteger contra invasão acidental ou deliberada.
Problemas no desenvolvimento de software
👩🏻💻
As estimativas de prazo e de custo
frequentemente são imprecisas.
A produtividade das pessoas da área de software não acompanha a demanda de serviços.
A qualidade de software é, muitas vezes, menos que
adequada.
O software existente é muito difícil de manter.
Mitos do software
Mitos dos gerentes:
os gerentes de projetos se encontram sob pressão para:
Manter orçamentos.
Evitar que os prazos estourem.
Melhorar a qualidade.
Os gerentes, quando estão com “a corda no pescoço”,
muitas vezes se agarram a um mito.
Mitos dos clientes:
Geralmente, o cliente acredita em muitos mitos sobre software, porque os gerentes e profissionais não corrigem a informação errada.
Tais mitos levam a falsas expectativas e insatisfação.
Mitos dos desenvolvedores:
Durante o começo da computação, a programação
era vista como uma forma de arte.
As velhas maneiras de comportamento e de atitude
são de difícil modificação.
:recycle:
Ciclo de vida do software
Processo de software
Um processo de software é um conjunto de atividades relacionadas que levam a produção de um produto de software
Qual processo escolher?
podemos dizer que não existe um processo ideal, a maioria das organizações desenvolve seus próprios processos.
:check:
Vantagens
O tempo de treinamento pode ser reduzido
Produtos podem ser mais uniformizados
Possibilidade de capitalizar experiências
O que deve ser analisado?
:warning:
Propriedades funcionais
:warning:
Propriedades não funcionais
Confiabilidade de Hardware
Confiabilidade de software
Confiabilidade do operador
Modelo de processo
📂
Classificação
🥇
Pesados, tradicionais, grandes ou burocráticos
Ágeis, leves, pequenos ou adaptáveis
Modelo em cascata
📉
é um exemplo de processo dirigido a planos - em princípio deve-se planejar e programar todas as atividades do processo antes de começar a trabalhar.
Estágios
📍
Análise e definição de requisitos
Projeto de sistema e software
Implementação e teste unitário
Integração e teste de sistema
Operação e manutenção
📋
Principal Problema:
A principal desvantagem do modelo em cascata é a dificuldade de acomodar a mudança depois de o processo está em curso.
Vantagens
📋
Custo reduzido para acomodar as mudanças
Mais fácil obter feedback dos clientes
É possível obter entrega e implementação rápida de um
software útil ao cliente
Desenvolvimento incremental
📌
É baseado na ideia
de desenvolver uma implementação inicial
Caracteristicas
📋
É melhor que uma abordagem em cascata para a maioria dos sistemas de negócios, e-commerce e sistemas pessoais.
Reflete a maneira como resolvemos os problemas
É mais barato e mais fácil fazer mudanças no software
durante seu desenvolvimento.
Cada incremento ou versão do sistema incorpora alguma
funcionalidade necessária, normalmente de uma lista de
prioridades e importância.
Problemas
📜
O processo não é visível.
A estrutura do sistema tende a se degradar com a adição
dos novos incrementos.
Esses problemas são críticos para sistemas de vida longa
grandes e complexos.
Fases
Método
:recycle:
Fases do ciclo de vida
Estudo de
viabilidade
Análise
Concepção
Implementação
Utilização
Teste
Manutenção