Modelagem: Ajuda a visualizar um sistema como ele é ou como se deseja que ele seja.
Especificação de um sistema: Levantar as necessidades dos clientes e trabalhar as funcionalidades para modelar o sistema, melhorando a comunicação entre cliente e desenvolvedor.
Exemplo de desenvolvimento de sistema: Sistema de cadastro.
Principais técnicas de levantamento de dados: Entrevistas, questionários de pesquisa, análise de documentação, prototipação descartável e sessões JAD (Joint Application Design). Exemplo: Sessões JAD são reuniões para levantamento de requisitos.
Qualidade e Requisitos
Produtividade: Nível de satisfação na execução de um sistema.
Confiabilidade: Certeza de que o software realiza exatamente o que se propõe a fazer.
Manutenibilidade: Facilidade de realizar a manutenção do sistema.
Prototipagem: Desenvolvimento de um sistema simplificado para sanar dúvidas do usuário (protótipo descartável) ou para evoluir aumentando a complexidade ao longo do tempo.
Requisitos: Necessidades que se pretende atender junto ao cliente. Exemplo: Envio de e-mail com confirmação.
Tipos de requisitos:
Implícito: Necessidade percebida pelo desenvolvedor.
Explícito: Necessidade declarada pelo usuário.
Histórico e Metodologias
Crise do Software: Na década de 70, os sistemas eram caros, demorados e falhos. Surgiram ferramentas de apoio, evoluindo da análise essencial para a estruturada e, posteriormente, para a orientada a objetos.
Análise Estruturada: Conjunto de técnicas e ferramentas para auxiliar na definição do sistema. Principais ferramentas: DFD, DD, DER, DTE e Especificação de Processos.
DFD (Diagrama de Fluxo de Dados): Ferramenta que facilita o entendimento do sistema entre usuário e desenvolvedor.
Conceitos de DFD:
Processo: Sequência lógica de ações (passo a passo).
Fluxo de Dados: Envio de informações.
Depósito de Dados: Local onde os dados são armazenados.
Gestão de Projetos e Modelagem
PMI: Instituto de Gerenciamento de Projetos.
Projeto: Esforço temporário realizado para criar um produto ou serviço único.
PMBOK: Guia de boas práticas para gerenciamento de projetos.
Stakeholders: Partes interessadas envolvidas no projeto.
Sponsor: Patrocinador executivo responsável pelo projeto.
Escopo: Definição clara do que deve e do que não deve ser feito no projeto.
Gestão de Projetos: Habilidades essenciais incluem planejamento, organização e gestão estratégica.
UML (Unified Modeling Language): Linguagem de modelagem universal para facilitar a comunicação entre usuário e desenvolvedor.
Caso de Uso: Funcionalidades do sistema. Exemplo: Cadastrar usuário, cadastrar doação.