Introdução a Processos de Software (2024)
Document Details
Uploaded by LavishSydneyOperaHouse5391
Universidade Estadual de Montes Claros
Tags
Summary
This document introduces basic concepts and terminology related to software processes. It discusses motivations, challenges, and methodologies for software development. It covers various aspects, from requirements elicitation and analysis to design, implementation, and validation.
Full Transcript
Introdução: Processos de software DISCIPLINA: PROCESSOS DE SOFTWARE Objetivos Apresentar os conceitos básicos e terminologia u3lizada em processos de so6ware 2 Processos vs. Requisitos 3 M otivação Por que utili...
Introdução: Processos de software DISCIPLINA: PROCESSOS DE SOFTWARE Objetivos Apresentar os conceitos básicos e terminologia u3lizada em processos de so6ware 2 Processos vs. Requisitos 3 M otivação Por que utilizar processos? Processo é sinônimo de Engenharia de Software? Existe um processo de software ideal? Utilizar processos garante que o software desenvolvido tem alta qualidade? 4 M otivação Por que u3lizar processos? Padronização, estabilidade, controle e organização Processo é sinônimo de Engenharia de So6ware? Sim e não! Existe um processo de so6ware ideal? Não! Cada so9ware tem caracterísp://www.inf.pucrs.br/munddos/docs/TI1.pdf 8 Principais desafios do desenvolvimento de software2 Novos ambiente de desenvolvimento Outsourcing e ambientes fisicamente distribuídos Gerenciamento de riscos Capacitação de pessoal Planejamento Padrões de desenvolvimento de so>ware Cer@ficação Aprendizagem organizacional Produ@vidade e mo@vação 2http://www.inf.pucrs.br/munddos/docs/TI1.pdf 9 O que é processo de so-ware? 10 Processo de Software:definições Um conjunto de atividades necessárias e relacionadas para o desenvolvimento de software (Sommerville) É uma metodologia para as atividades, ações e tarefas necessárias para desenvolver um software de alta qualidade (Pressman) Um conjunto de políticas, estruturas organizacionais, tecnologias, procedimentos e artefatos necessários para conceber, implantar e manter um produto de software (Fuggeta 2000) É um conjunto de atividades de engenharia necessário para transformar requisitos do usuário/cliente em software (Humphrey, 1989) 11 Processo de Software ELICITAÇÃO ESPECIFICAÇÃO E ANÁLISE PROBLEMA PROJETO SOLUÇÃO IMPLEMENTAÇÃO VALIDAÇÃO... 12 Elicitação de Requisitos Elicitação de requisitos Compreensão do problema Entender o domínio que deve ser automatizado Objetivos Usuários e desenvolvedores tenham a mesma visão do problema a ser resolvido Requisito É uma condição ou capacidade que deve ser alcançada ou possuída por um sistema ou componente deste para satisfazer um contrato, padrão, especificação ou outros documentos formalmente impostos (Maciaszek, 2000) Engenharia de Requisitos O processo de descobrir, analisar, documentar e verificar os requisitos Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 13 Especificação e Análise Estudo detalhado dos requisitos elicitados e a construção de modelos É necessário saber o que o sistema proposto deve fazer para definir como esse sistema irá fazê-lo “Quebrar” um sistema em seus componentes e estudar como tais componentes interagem com o objeZvo de entender como esse sistema funciona Pode ser subdivido em duas fases Análise de domínio Análise de aplicação Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 14 Projeto (Design) Como o sistema funcionará para atender os requisitos, de acordo com os recursos tecnológicos existentes Descrição da estrutura de software a ser implementada Considera os aspectos físicos e dependentes de implementação E.g., arquitetura do sistema, padrão de interface gráfica, a linguagem de programação, o gerenciador de banco de dados, dentre outros Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 15 Implementação O sistema é codificado Em um processo OO, a implementação envolve a criação do código- fonte correspondente às classes de objetos do sistema u