Processo de Desenvolvimento de Software



Documentos relacionados
LINHAS MESTRAS; FASES; DISCIPLINAS; PRINCÍPIOS E MELHORES PRÁTICAS.

Análise e projeto de sistemas

Proporcionar a modelagem de sistemas utilizando todos os conceitos da orientação a objeto;

2

Engenharia de Software

1.1. Definição do Problema

Modelos de Ciclo de Vida de Software

Engenharia de Software. Ciclos de Vida do Software. 1. Sistemas

BANCO DE DADOS I AULA 2. Willamys Araújo willamysaraujo7@gmail.com

Algoritmos e Programação II

Aula 1 - Introdução à disciplina e Processos de desenvolvimento de software e suas atividades básicas

Comunicação; Planejamento; Modelagem; Análise; Projeto; Construção; Teste; e Implantação.

Requisitos de Software

Manual do Processo de Planejamento da UFSC. Departamento de Planejamento SEPLAN/UFSC

T écnicas de Obtenção de Requisitos

4 Um processo para a elaboração de perguntas de questionários para a elicitação de requisitos de software

Levantamento de Requisitos

Análise e Projeto de Sistemas II. Silvério Sirotheau

Documento de Requisitos do Sistema SISFOTO Sistema de gerenciamento de eventos fotográficos Versão 1.0

01 de Agosto Inicio das Aulas. 10 a 26 Setembro - Avaliação Oficial do 1 Bimestre (data no calendário oficial)

Diagramas de Componentes e Diagramas de Deployment

Guia para Modelagem de Casos de Uso Metodologia CELEPAR

Agenda. O que é Testar? Por que testar? Quando testar? Processo de teste Níveis de teste Tipos de teste Classificação dos testes.

O Processo de Design de Interação

Projeto Integrador Gestão em TI II Gestão em Pessoas. Organograma DIRETOR DEPARTAMENTO DE T.I ANALISTA TÉCNICO

MODELAGEM MATEMÁTICA DE UM SISTEMA DE DISTRIBUIÇÃO DE ENERGIA ELÉTRICA EM MÉDIA TENSÃO 1. Gabriel Attuati 2, Paulo Sausen 3.

Universidade Paulista

OpenPDV: Sistema aberto para gerenciamento de restaurantes

Modelando sistemas em UML - Casos de uso.

Título : B1 INTRODUÇÃO. Conteúdo : INTRODUÇÃO

Análise de Sistemas Unidade IV A Análise de Sistemas Visão Geral

Interpretações de Qualidade de Software. Interpretações de Qualidade de Software. Aspectos Importantes das Definições de Qualidade

Glossário Versão 1.0 Desenvolvimento do Sistema de Gestão de Documentos Doc Manager Histórico de Revisão

Universidade do Algarve Faculdade de Ciência e Tecnologia Engenharia de Programação

Avaliação da Satisfação do Cliente de Informática

Programação de Computadores - I. Profª Beatriz Profº Israel

Termos de Referência para Serviços especializados de consultoria Individual na área de Arquitetura de Sistemas

O PROCESSO DE DESENVOLVIMENTO DE SOFTWARE

PROGRAMAÇÃO ORIENTADA A OBJETO INTRODUÇÃO

Documento de Processo

PLANEJAMENTO SIMPLIFICADO DE PROJETOS

Ferramenta 8: Fluxograma

Tipos de Banco de Dados - Apresentação

PROGRAMAÇÃO ORIENTADA A OBJETOS -PLANO DE ENSINO. Prof. Angelo Augusto Frozza, M.Sc.

7. Defina encapsulamento. R.: Encapsular é ocultar. Criar uma cápsula ao redor da classe, para proteger o que está dentro dela.

Programação Orientada a Objetos

Banco de Dados. Banco de Dados. Conceitos Básicos. Banco de Dados SGBD SGBD. Fundamentos. Fernando Fonseca Ana Carolina.

Bacharelado em Ciência da Computação 2009

Análise e Projeto de Sistema. Daniel José Ventorim Nunes (IFES Campus Cahoeiro)

- Campus Salto. Disciplina: Sistemas de Arquivos Docente: Fernando Santorsula

Gestão Ambiental Trabalho Prático Prof. Daniel Luis Garrido Monaro 2S

Programação Orientada a Objetos. Professor Leonardo Cabral - Larback

Modelagem de Sistemas Web. Modelagem de BD

Conteúdo Programático

BANCO DE DADOS. Professor: André Dutton

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini prof.andre.luis.belini@gmail.com /

Orientação a Objetos

Aula 05 Instalação e Uso do Arcabouço. Alessandro Garcia Alexander Chávez LES/DI/PUC-Rio Março 2016

Termo genérico que se aplica a vários tipos de diagramas que enfatizam interações de objetos.

ATIVIDADES PRÁTICAS SUPERVISIONADAS

Análise e Projeto. Prof. Erinaldo Sanches Nascimento

Título do Slide Máximo de 2 linhas

Qualidade de Produto. Maria Cláudia F. P. Emer

EMENTA. Curso de Projetos Microcontrolados utilizando Linguagem C.

3 Informações para Coordenação da Execução de Testes

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE

Ref: Observatório Nacional de Clima e Saúde Projeto Observatorium.

Uma Experiência com Engenharia de Requisitos baseada em Modelos de Processos *

TEORIA DAS FILAS COMO TÉCNICA MATEMÁTICA PARA REPRESENTAR O COMPORTAMENTO DE UMA SOLUÇÃO DE INTEGRAÇÃO EMPRESARIAL 1

Introdução. Qualidade de Produto. Introdução. Introdução ISO/IEC Normas

Desafios da Implantação da IDE.Bahia. Iara Musse Felix Murilo Oliveira Diego Mendes Rodrigues

Fundamentos de Teste de Software

5 - Qual é a principal vantagem de desenvolvimento de código por pares:

Qualidade de Software Normatização

Modelos Conceituais de Dados

2. Fase de Definição e Especificação de Requisitos

Relatório Técnico: Descrição do algoritmo para pesquisa automática dos egressos do curso de Ciência da Computação

SISTEMA DE CONTROLE DE MOVIMENTAÇÃO DE COLABORADORES

Projeto de Inovação Tecnológica da sala de apoio à gestão estratégica SAGE

DEVF IT Solutions. Gerenciador de Log. Documento Visão. Versão 2.0. Projeto Integrador 2015/2 Engenharia de Software

Prof. Raul Sidnei Wazlawick UFSC-CTC-INE. Fonte: Análise e Projeto de Sistemas de Informação Orientados a Objetos, 2ª Edição, Elsevier, 2010.

Oportunidades de trabalho em TI&Telecom Instituto Eldorado - Campinas

Arquiteturas para Sistemas Distribuídos I

INF014 Análise e Projeto de Sistemas Requisitos de Sistemas

APOSTILHA AULA 4 O CICLO DE VIDA DO PROJETO

Linguagens de Programação:

Melhorias de Processos segundo o PDCA Parte IV

Introdução a Banco de Dados. INTRODUÇÃO

EA976 Engenharia de Software. AULA 2 Ciclo de Vida de um Software

Rational Unified Process (RUP)

Fundamentos de Arquitetura e Organização de Computadores

Engenharia de Software. UML Unified Modeling Language

INE 5323 Banco de Dados I

Desenvolvimento de Projeto de Software Educacional para Ensino em História

RESOLUÇÃO N o RESOLVE

PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS ENGENHARIA DA COMPUTAÇÃO SMARTGATE

Transcrição:

Processo de Desenvolvimento de Software Programação Orientada a Objetos Prof. Francisco de Assis S. Santos, Dr. São José, 2015.

Processo de Desenvolvimento de Software O desenvolvimento de software é uma atividade complexa Grande número de projetos que não chegam ao fim, extrapolam recursos financeiros e de tempo. Processo de desenvolvimento de software Compreende todas as atividades necessárias para definir, desenvolver, testar e manter um software. Define quais atividades serão executadas ao longo do projeto, quando, como e por quem tais atividades serão executadas.

Componentes Humanos no Desenvolvimento Gerente de projeto Responsável pela gerência e coordenação das atividades necessárias para a construção do sistema, alem de estimar tempo e custo. Analista Possui conhecimento sobre o domínio do negocio para que possa levantar os requisitos. Projetista Avalia as alternativas de solução e gera uma especificação detalhada da solução computacional (Ex: projetista de rede, de banco de dados, etc.). Programador Responsável pela implementação do sistema. Cliente O cliente usuário e especialista no domínio do negocio e interage diretamente com o Analista para levantar os requisitos do sistema.

Interação entre as Partes

Interação entre as Partes

Modelos de Desenvolvimento de Software Modelo Cascata Modelo de Ciclo de Vida Iterativo e Incremental Prototipação Modelo Espiral

Atividades Típicas de um Processo de Desenvolvimento 1 Levantamento dos Requisitos Compreensão do problema, visando permitir que usuários e desenvolvedores tenham a mesma visão do problema a ser resolvido. 2 - Análise de requisitos (ou Especificação de requisitos) Estudo detalhado dos requisitos levantados e a construção de modelos para representar o sistema a ser construído.

Atividades Típicas de um Processo de Desenvolvimento 3 Projeto Determina como o sistema funcionará para atender os requisitos, de acordo com os recursos tecnológicos existentes. A modelagem do software pode ser realizada por um conjunto de diagramas, por exemplo, pela UML. 4 - Implementação Ocorre a tradução da descrição computacional da fase de projeto em código executável através do uso de linguagens de programação. É nessa fase que os diagramas/modelos criados ganham vida.

Atividades Típicas de um Processo de Desenvolvimento 5 Testes Para verificar a corretude do sistema, levando-se em conta a especificação feita na fase de projeto. 6 - Implantação O sistema e empacotado, distribuído e instalado no ambiente do usuário. São entregues os manuais do sistema e os usuários são treinados para utilizar o sistema.

Levantamento de Requisitos Os requisitos são apresentados em um documento com as seguintes secções: - Requisitos Funcionais: Definem as funcionalidades do sistema Ex: O sistema deve permitir que cada professor realize o lançamento de notas das turmas nas quais lecionou. À medida que o levantamento de requisitos é realizado, pode-se fazer uma modelagem das atividades encontradas, por exemplo, desenvolver diagramas de Casos de Uso pertencentes a UML.

Levantamento de Requisitos - Requisitos não-funcionais: Declaram características de qualidade que o sistema deve possuir Desempenho (tempo de resposta esperado); Portabilidade (plataformas de hardware e software nas quais o sistema será implantado) - Restrições: Impostas sobre o desenvolvimento do sistema Adequação a custos e prazos, aspectos legais (licenciamento), etc.

Projeto O projeto consiste de duas atividades principais: Projeto de arquitetura (alto nível) Consiste em distribuir as classes de objetos relacionadas ao sistema em subsistemas e seus componentes. Diagramas UML de implementação são normalmente usados nesta fase. Projeto detalhado (baixo nível) São modeladas as colaborações entre objetos, projeto da interface com o usuário e o projeto do banco de dados. Os diagramas UML usados nessa fase são: Diagrama de classes, de caso de uso, de interação, de estados e de atividades.

Linguagem de Modelagem Unificada (UML)

A Linguagem de Modelagem Unificada (UML) NÃO é um método de desenvolvimento de sistema, mas sim uma linguagem de modelagem gráfica que pode ser aplicada para descrever e documentar um projeto de software (Tonsig, 2008).

A UML tem o propósito de fornecer aos desenvolvedores de softwares uma linguagem de modelagem visual completa, de modo a alcançar os seguintes aspectos (Tonsig, 2008): Disponibilização de mecanismos de especificação que possam expressar os níveis conceituais; Independência de processos de desenvolvimento e linguagens de programação; Incentivo ao crescimento das aplicações desenvolvidas no conceito da orientação a objetos.

O processo de desenvolvimento de software não está previsto na UML, o que torna uma linguagem de modelagem e não um método, mas podem-se eleger as seis fases apresentadas para o desenvolvimento de software em que a UML pode ser aplicada: 1- Levantamento dos Requisitos; 2 Análise dos requisitos; 3 Projeto; 4 Implementação; 5- Testes; 6- Implantação.

Notações da UML Em razão de não ser possível representar um sistema em sua totalidade por meio de um único diagrama, é necessário um conjunto de recursos que expressem os diversos aspectos que constituem o sistema. Diagramas UML que serão abordados: Diagrama de casos de uso; Diagrama de classes; Diagrama de sequência.

Modelagem de Casos de Uso

Referências Instituto Federal de Santa Catarina IFSC Notas de aula do Prof. Emerson Ribeiro de Mello. Tonsig, S. L. Engenharia de Software Análise e Projeto de Sistemas 2ª ed. Rio de Janeiro, Editora Ciência Moderna, 2008.