Você está na página 1de 12

Aula 3 [31/08/2023]

@August 31, 2023

Exercício 1
Faça o diagrama de caso de uso do sistema de um
celular “antigo”. Utilize o draw.io.

Aula 3 [31/08/2023] 1
Inclusão
A inclusão de um caso de uso indica que para o
caso de uso apontado (a ação indicada com uma

Aula 3 [31/08/2023] 2
seta) acontecer, é necessário existir o caso de uso
de origem. Além disso, indica que a “ação” é uma
consequência obrigatória.
Exemplo

Aplicando no exercício 1

Aula 3 [31/08/2023] 3
Extensão
A extensão de um caso de uso indica que para o
caso de uso apontado pode acontecer ou não
indica que a “ação” é uma consequência que não
ocorre sempre.
Exemplo

Aula 3 [31/08/2023] 4
Aplicando no exercício 1

Aula 3 [31/08/2023] 5
Exercício 2
Faça o diagrama de caso de uso de um sistema de
consulta médica.

Aula 3 [31/08/2023] 6
Modelos de processo de software
O desenvolvimento de software pode ser caracterizado como um ciclo de
solução do
problema, com 4 estágios distintos:

1. Situação atual → Representa o estado atual das coisas

2. A definição do Problema → Identifica o problema específico a ser


resolvido

Aula 3 [31/08/2023] 7
3. Desenvolvimento técnico → Resolve o problema com a aplicação de
alguma tecnologia

4. Integração da Solução → Entrega os resultados (e.g., documentos,


programas, dados).

Modelo Sequencial Linear


Modelo queda d’água, modelo cascata.

Fases:

Modelagem de Engenharia de Sistemas/Informação

Análise de requisitos de software

Projeto

Geração de código

Teste

Manutenção

Modelo Clássico
Cascata: requer uma abordagem sistemática, sequencial

Caracterísiticas:

Fornece uma sequência à execução dos procedimentos

Amplamente usado na Engenharia de Software

Muito melhor do que ter um processo aleatório

Problemas:

Aula 3 [31/08/2023] 8
Projetos reais raramente seguem o fluxo proposto pelo modelo

O modelo não acomoda incerteza, o cliente deve estabelecer todos


os requisitos de maneira explícita

Uma versão executável do programa não fica disponível até o


término do projeto

Etapas:

1. Engenharia de Sistemas e Análise:

Estabelecimento dos requisitos para todo o sistema

Coleta dos requisitos em nível do sistema

2. Análise de requisitos de software:

Intensificação da coleta de requisitos, com foco no software

Compreensão da informação, função, desempenho e interface


exigidos

💡 Requisitos são validados com os clientes

3. Projeto:

Concentra quatro atributos:

1. Estrutura de dados

2. Arquitetura de software

3. Detalhes procedimentais

4. Caracterização de interface

💡 Representação do software que pode ser avaliada quanto


à quantidade antes da codificação

4. Codificação:

Tradução do projeto numa fonte entendível por máquina

5. Testes:

Aula 3 [31/08/2023] 9
Concentra-se nos aspectos lógicos internos do software e nos
aspectos funcionais externos para descobrir erros e manter
consistência entre entrada e saída

6. Manutenção:

Reaplica as etapas anteriores durante o ciclo de vida do


programa
Modelo de Prototipagem
Utilizado quando os requisitos de entrada, processamento e saída não
foram definidos detalhadamente.

O desenvolvedor cria um modelo do software que será implementado:

1. Um protótipo em papel ou digital que retrata a interação homem-


máquina

2. Algum subconjunto da função exigida do software desejado

3. Um programa existente que executa parte ou toda a função desejada,


mas que ainda será melhorado

O paradigma de software começa na definição de requisitos

O desenvolvedor e o cliente definem, juntos, objetivos do software,


identificam necessidades conhecidas e marcam áreas que precisam
de mais informações

Aula 3 [31/08/2023] 10
Um rápido projeto é desenvolvido

O cliente/usuário avalia esse protótipo a fim de refinar os requisitos


definidos

Interações ocorrem à proporção dos ajustes no protótipo aos moldes


do cliente, enquanto permitem ao desenvolvedor entender melhor o
que precisa ser feito

O prótotipo pode servir como um “primeiro sistema”

É usado quando:

O cliente não identifica com detalhes os requisitos de entrada,


processamento e saída

Há insegurança acerca do desempenho do algoritmo ou da interação


HomemXMáquina

Problemas:

O cliente vê apenas um software funcional, desprezando o fato do


protótipo ser apenas um protótipo (feito às pressas), nenhum controle
de qualidade é considerado seriamente nessa etapa

O desenvolvedor abre mão de certas coisas para aprensentar um


software funcional, às vezes usa um algoritmo ineficiente para
mostrar apenas o que é possível

Modelo Espiral
Abrange as melhores características do ciclo de vida Clássico e da
Prototipação

Abordagem evolutiva/evolucionária

Define 4 importantes atividades:

1. Planejamento → Determinação dos objetivos, alternativas e


restrições

2. Análise dos riscos → Análise de alternativas e identificação/resolução


de riscos

3. Engenharia → Desenvolvimento do produto no “nível seguinte”

4. Avaliação do cliente → Avaliação dos resultados da engenharia

Aula 3 [31/08/2023] 11
É considerado o mais realista para desenvolvimento de software em larga
escala

Aula 3 [31/08/2023] 12

Você também pode gostar