Buscar

def7cdec-89eb-4e47-84be-26f49ff297cc

Prévia do material em texto

WBA0446_v1.0
CASE 
As principais ferramentas 
no ciclo de 
desenvolvimento de 
softwares
Introdução às 
ferramentas para o 
desenvolvimento de 
software
Bloco 1
André Olímpio
Ciclo do desenvolvimento de software
Testes.
Implantação.
Manutenção.
Levantamento e 
análise de requisitos.
Modelagem.
Implementação.
1
2
3
4
5
6
Levantamento e análise de requisitos
• Efetuar a coleta de dados.
• Analisar se todos os dados coletados são aceitáveis.
• Identificar todas as necessidades dos usuários no
sistema de software a ser desenvolvido.
• Elaborar uma proposta de solução.
Modelagem
• Transformar os resultados, obtidos na etapa anterior, em
documentos capazes de serem interpretados pelos
profissionais envolvidos no processo de desenvolvimento.
• Nesta etapa, que toda a estruturação do software é
realizada.
• Engloba a modelagem do sistema e também do banco de
dados.
Modelagem
• Modelagem do banco de dados.
• Modelagem do sistema de software 
(desenvolvimento dos diagramas da UML).
• Documentação do software.
• Manual do usuário.
• Help do sistema.
• Definição do cronograma de implementação.
Figura 1 - UML
Fonte: alexmillos/iStock.com.
Implementação
• Codificação por meio de uma linguagem de programação
escolhida pela equipe de desenvolvimento.
• Codificar de forma rigorosamente igual a modelada.
• O desenvolvedor deve ter a iniciativa de sempre buscar
respostas para seus desafios.
• Criar códigos reaproveitáveis.
Testes
• É a investigação do software, a fim de fornecer
informações sobre sua qualidade em relação ao contexto
em que este deve operar.
• Encontrar seus defeitos (bugs) e corrigi-los antes da
entrega definitiva do software.
• Os testes finais devem ser realizados pelos usuários do
sistema e não pelos desenvolvedores.
Implantação
• Deve ser gradativa e o acompanhamento por parte dos
desenvolvedores deve ser rigoroso.
• Não existe implantação sem treinamento.
• Deve trabalhar a mudança de paradigma.
• Não pode causar traumas aos usuários.
• O novo software deve substituir o já existente.
Manutenção
• Entrega da versão definitiva do software.
• Deve ser realizada obrigatoriamente pela equipe de
desenvolvimento.
• Existem dois tipos de manutenção:
 Corretiva: para corrigir possíveis erros.
Agregativa: para agregar novos recursos ao
sistema atual.
Fonte: elaborada pelo autor.
Arquitetura de um sistema de software
Figura 2 – Arquitetura 
APLICAÇÃO SGBD
Arquitetura de um sistema de software
• Composta por:
 Hardware: dispositivos necessários que permitem a
interação humana com a arquitetura.
 Software: SGBD e a aplicação.
 Peopleware: usuário final, DBA e desenvolvedor.
Ferramentas CASE para 
levantamento de requisitos do 
sistema
Bloco 2
André Olímpio
ALM
• Em inglês: Application Lifecycle Management.
• Em português: gerenciamento do ciclo de vida de um
sistema de software.
• Inicia-se na concepção do sistema.
• Finaliza quando houver a descontinuidade deste
software.
Requisitos
• É um descritivo formal de cada necessidade que o cliente
tenha e que deva ser resolvida por meio de uma
funcionalidade do sistema.
• Classificado em duas categorias:
 Funcional.
 Não funcional.
Entendendo os requisitos
Fonte: elaborada pelo autor.
Figura 3 - Requisitos 
Domínio do 
problema.
Domínio 
da 
solução.
Necessidades:
Características:
Requisitos:
Requisitos de negócio
(necessidades do cliente).
Recursos e comportamentos
(necessidades do sistema).
• Funcionais -> regras de negócio.
• Não funcionais -> qualidade.
Ferramenta CASE: RE-Tools
• Open source.
• Captura por meio de múltiplas referências:
 Modelagem de requisitos não funcionais.
 Modelagem orientada a agentes.
 Modelagem de processo de negócios.
 Suporte a UML.
Ferramenta CASE: JIRA
• Identificação e mapeamento de requisitos.
• Visualização da ligação entre requisitos de negócio e o
problema do mundo real.
• Criação e visualização de uma hierarquia de requisitos.
• Licença paga.
Ferramenta CASE: Visure Requirement
• Licença paga.
• Muito utilizado em ambiente regulamentado:
 Setor automotivo.
 Setor aeroespacial.
 Dispositivos médicos.
 Gerência de energia elétrica.
• Integração com outras ferramentas deste segmento e pacote
Microsoft Office.
Ferramentas CASE para 
desenvolvimento de sistema 
de software
Bloco 3
André Olímpio
Ferramenta CASE: DB-Main
• Ferramenta freeware.
• Análise de requisitos em modelos de BD.
• Estrutura modelo entidade-relacionamento.
• Normalização, integração e otimização de esquemas de
dados.
• Geração de códigos em linguagem SQL, a partir dos
modelos.
Ferramenta CASE: BrModelo
• Licença freeware.
• Gerenciamento de toda estrutura de modelagem de um banco
de dados relacional.
• Permite criar todos os modelos ER (Entidade-Relacionamento):
 Lógico.
 Conceitual.
• Permite criar automaticamente um modelo a partir do outro.
Ferramenta CASE: DB Design
• Open source.
• Multiplataforma.
• Permite modelar, criar e fazer a manutenção de um sistema
de banco de dados em um único ambiente.
• Permite compatibilidade direta com SGBD como o MySQL.
Ferramenta CASE: ERwin
• Licença paga.
• Gera um modelo prático de fácil implementação.
• Conectividade direta com SGBD.
• Permite modelar banco de dados de grande porte
(Datawarehouse).
UX
• Em inglês: User eXperience.
• Em português: experiência do usuário.
• Ferramenta para criar um protótipo da interface com o
usuário final da aplicação.
• Esse protótipo também é chamado de wireframe.
• Definir de forma antecipada toda a estrutura dos
componentes da interface.
Ferramenta CASE: Axure
• Muito popular neste segmento.
• Licença paga.
• Permite a criação de wireframes clicáveis e interativos.
• Permite criação de protótipos para diferentes situações e
níveis de abstração.
• Compartilhamento em nuvem do projeto.
Ferramenta CASE: Sketch
• Licença paga.
• Direcionado para usuário do MacOS.
• Interface muito intuitiva. 
• Vasta lista de plug-ins.
• Sketch Mirror: pré-visualizador da interface.
Programação orientada a objetos
• Trata-se um conjunto de classes que definirão os
objetos presentes em um sistema de software.
• Cada classe determina:
 Comportamento (definido nos métodos).
 Estados possíveis (atributos) de um objeto.
 Relacionamento deste com outros objetos.
Principais conceitos da 
orientação a objetos:
Abstração.
Atributo.
Classe.
Encapsulamento.
Evento.
Herança.
Método.
Objeto (instância de uma classe).
Polimorfismo.
Ferramenta CASE: Visual Paradigm
• Licença paga.
• Possui versão gratuita mais enxuta, chamada community.
• Geração automática de códigos em POO, a partir do
diagrama de classes da UML.
• Possibilidade de engenharia reversa.
Teoria em Prática
Bloco 4
André Olímpio
Sistema: parquímetro
• Gerenciamento de estacionamento em 
vias públicas.
• Uma cidade de 300 mil habitantes, que 
apresenta uma frota aproximada de 100 
mil carros. 
• Creditar valores para serem utilizados 
com pagamento.
• Integração para pagamentos via cartões 
de crédito.
Norte para solução...
• Identificar os requisitos funcionais e não 
funcionais.
• Quais são as ferramentas CASE para auxiliar 
na modelagem e estruturação de software?
• Vale lembrar que este software fará 
integrações com outros sistemas por meio de 
API’s. 
• Descrever a infraestrutura de back end e de 
front end do sistema.
Dica do Professor
Bloco 5
André Olímpio
Outra Ferramenta CASE (ASTAH)
• Inicialmente, chamada de JUDE.
• É um software para modelagem de 
sistemas por meio da construção de 
diagramas da UML.
• Portabilidade para outras plataformas 
que possuam máquina virtual Java 
instalada.
• Muito utilizado pelos desenvolvedores. 
Referências
• SOMMERVILLE, I. Engenharia de Software. 10. ed. São
Paulo: Pearson Education do Brasil, 2018.
• PRESSMAN, R. S. Engenharia de Software: uma abordagem
profissional. 8. ed. Porto Alegre:AMGH, 2016.
Bons estudos!

Continue navegando

Outros materiais