2011 unimep engenharia de software. 2011 unimep 2template documentation4/20/2014 aula de...

29
2011 UNIMEP Engenharia de Software

Upload: internet

Post on 17-Apr-2015

103 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEP

Engenharia de Software

Page 2: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEP2 Template Documentation 04/11/23

Aula de Apresentação

Introduções: professores e alunos

Expectativas

Ementa

Objetivos da disciplina

Conteúdo programático

Metodologia de ensino

Critérios de Avaliação

Bibliografia

Page 3: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEP3 Template Documentation 04/11/23

Ementa

Conceito de Engenharia de Software

Crise e mitos do software

Paradigmas da Engenharia de Software

Principais atividades da Engenharia de Software

Classificação das metodologias de desenvolvimento de software

Qualidade de Software.

Page 4: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEP4 Template Documentation 04/11/23

Objetivos da disciplina

Ter base conceitual acerca dos sistemas de informação e das questões que os envolvem

Distinguir os diferentes tipos de sistemas de informação

Compreender os diferentes modelos de desenvolvimento de sistemas de informação

Compreender as funcionalidades básicas da Engenharia de Requisitos

Page 5: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEP5 Template Documentation 04/11/23

Conteúdo Programático

SEMANASCONTEÚDO PROGRAMÁTICO (TÓPICOS)ATIVIDADES DIRIGIDAS EXTRA-CLASSE

Fev/24 Apresentação DisciplinaAtividade dirigida extra-classe: Pesquisar livros da bibliografia

Mar/03 Software e Engenharia de SoftwareAtividade dirigida extra-classe: resumir os conceitos de engenharia de software

Mar/10 Processos de SoftwareAnálise de Requisitos de SoftwareAtividade dirigida extra-classe: Criar um padrão de documento de requisitos

Mar/17 Engenharia de Requisitos – Parte 1 Atividade dirigida extra-classe: Melhorar o documento de requisitos

Mar/24 Engenharia de Requisitos – Parte 2Atividade dirigida extra-classe: Finalizar o padrão de documento de requisitos

Mar/31Gestão de configuração de softwareAtividade dirigida extra-classe: Pesquisar sw de gestão de configuração

Abr/07 Gestão do projeto de softwareLaboratório: Requisitos de Software e Uso de ferramentas: Gantt Project, MSProject, Subversion, Rational Requirement ComposerAtividade dirigida extra-classe: Reproduzir a instalação do laboratório

Abr/14 Prova 1Abr/21 Recesso acadêmico (e administrativo com compensação de horas)Abr/28 Introdução ao RUP e Modelagem UML – Parte 1

Atividade dirigida extra-classe: Pesquisar os principais livros de UML

Page 6: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEP6 Template Documentation 04/11/23

Conteúdo Programático

SEMANASCONTEÚDO PROGRAMÁTICO (TÓPICOS)ATIVIDADES DIRIGIDAS EXTRA-CLASSE

Mai/05 Modelagem UML – Parte 2Projeto de SoftwareUso de ferramentas: Jude, Rational Rose, EclipseAtividade dirigida extra-classe: Reproduzir a instalação do laboratório durante a semana (computador pessoal ou da UNIMEP)

Mai/12 Verificação e Validação de SoftwareGerenciamento de Processo e Configuração de SoftwareAtividade dirigida extra-classe:

Mai/19 Governança em TICMM, CMMI, ISO, ITIL, COBiTAtividade dirigida extra-classe: Pesquisar sobre certificações de governança em TI

Mai/26 Metodologias ÁgeisAtividade dirigida extra-classe: Pesquisar na biblioteca livros sobre metodologias ágeis

Jun/02 Preparação do trabalhoJun/09 Prova 2Jun/16 Apresentação do trabalho

PSUBJun/23 Recesso acadêmico (e administrativo com compensação de horas)

Jun/30 Encerramento

Page 7: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEP7 Template Documentation 04/11/23

A avaliação acadêmica será efetuada através de duas provas escritas (60% do peso da nota) com 10 questões (dissertativas), sem consulta e um trabalho (40% do peso da nota), sendo que o último será realizado em grupo de alunos

Ao final, a seguinte tabela de conversão será usada para os conceitos

0% - 20% - Conceito E

20% - 40% Conceito D

50% - 70% - Conceito C

80% - 90% - Conceito B

100% - Conceito A

Metodologia de Ensino e Critérios de Avaliação

Page 8: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEP

Bibliografia Básica

PRESSMAN, R. Software Engineering - A practitioner´s approach. 5ª Edição. New York: McGraw-Hill, 2001.

SOMMERVILLE, I. Engenharia de Software. São Paulo: Addison-Wesley, 2003.

WEISFELD, M. The Object-Oriented Thought Process. 2ª Edição. Indianapolis: Sams Publishing, 2005.

BOOCH, G., RUMBAUGH, J. e JACOBSON, I. UML – Guia do Usuário. Rio de Janeiro: Campus, 2000.

JACOBSON, Ivar; BOOCH, Grady; RUMBAUGH, James; The Unified Software Development Process. Massachusetts: Addison-Wesley, 1999.

Page 9: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEP

Aula 06 - Gestão de configuração de software

Page 10: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEP

O que é Gestão de configuração de software ?

Roger Pressman, em seu livro Software Engineering: A Practitioner's Approach, afirma que a gerência de configuração de software (GCS) é o:

“Conjunto de atividades projetadas para controlar as mudanças pela identificação dos produtos do trabalho que serão alterados, estabelecendo um relacionamento entre eles, definindo o mecanismo para o gerenciamento de diferentes versões destes produtos, controlando as mudanças impostas, e auditando e relatando as mudanças realizadas. “

Page 11: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEP

O que é Gestão de configuração de software ? Gerência de Configuração de Software, Gerência de Configuração

ou ainda Gestão de Configuração de Software é uma área da engenharia de software responsável por fornecer o apoio para o desenvolvimento de software. Suas principais atribuições são o controle de versão, o controle de mudança e a auditoria das configurações.

Em outras palavras, a Gerência de Configuração de Software tem como objetivo responder as seguintes perguntas:

–O que mudou e quando?

–Por que mudou?

–Quem fez a mudança?

–Podemos reproduzir esta mudança?

Cada uma dessas perguntas corresponde a uma das atividades realizadas pela Gerência de Configuração de Software. O controle de versão é capaz de dizer o que mudou e quando mudou. O controle de mudanças é capaz de atribuir os motivos a cada uma das mudanças. A Auditoria por sua vez responde as duas últimas perguntas: Quem fez a mudança e podemos reproduzir a mudança?

Page 12: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEP

Gestão de configuração de software: Fase de Projeto

Page 13: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEP

Gestão de configuração de software: Fase de Desenvolvimento

Page 14: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEP

Gestão de configuração de software: Fase de Testes

Page 15: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEP

Gestão de configuração de software: Fase de Produção

Page 16: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEP

GCS do Ponto de Vista das Ferramentas de Apoio

Do ponto de vista das ferramentas existentes, a GCS é formada pelas seguintes atividades:

Page 17: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEP

Controle de Versão

É a espinha dorsal de toda a gerência de configuração, apoiando as atividades de controle de mudança e integração contínua. Fornece os seguintes serviços:

Identificação, armazenamento e gerenciamento dos itens de configuração e de suas versões durante todo o ciclo de vida do software;

Histórico de todas as alterações efetuadas nos itens de configuração;

Criação de rótulos e ramificações no projeto;

Recuperação de uma configuração em um determinado momento desejado do tempo.

Page 18: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEP

Controle de Mudança

Fornece um serviço complementar ao oferecido pelo sistema de controle de versão. O foco desse tipo de ferramenta é nos procedimentos pelos quais as mudanças de um ou mais itens de configuração são propostas, avaliadas, aceitas e aplicadas.

Oferece serviços para identificar, rastrear, analisar e controlar as mudanças nos itens de configuração.

Page 19: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEP

Integração Contínua

Para as necessidades da GCS, bastaria um controle de construção de software que cuidasse da identificação, empacotamento e preparação de uma baseline para a entrega a um cliente externo ou interno, tornando-a uma release ou uma build respectivamente.

A idéia de utilizar uma integração contínua, entretanto, vai um pouco mais além. O objetivo é garantir que as mudanças no projeto são construídas, testadas e relatadas tão logo quanto possível depois de serem introduzidas.

Em projetos de software, a construção do software é feita pela recuperação da configuração correta no sistema de controle de versão e a construção dos arquivos executáveis e de instalação do produto. Este processo é executado geralmente após cada mudança publicada no sistema de controle de versão ou em intervalos de tempo pré-definidos.

Page 20: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEP

Ferramentas de Apoio

Page 21: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEPTemplate Documentation 04/11/23

Page 22: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEPTemplate Documentation 04/11/23

O que é ?

Subversion (ou svn) é um sistema de controle de versão criado para substituir o CVS. Ele permite que você recupere versões antigas de seus arquivos, ou examinar as mudanças feitas neles durante um período de tempo. Ele também permite a criação de contas de acesso, e os repositórios podem ser acessados mesmo de fora da Rede (desde que o computador tenha o programa Subversion instalado).

Uma das principais utilizações do Subversion é para trabalhos em grupo. Com ele, você pode definir quais pessoas terão acesso ao repositório.

Page 23: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEPTemplate Documentation 04/11/23

Como faço para acessar ?

Existem atualmente diversos sites que disponibilizam o serviço de SVN, como outros software de controle de versão, de forma gratuita e de qualidade. Os mais famosos são:

SourceForge - http://sourceforge.net

Google Code - http://code.google.com

OBS: Para poder usar qualquer um dos dois serviços, o projeto hospedado deve estar sobre um licença de Software Livre.

Page 24: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEPTemplate Documentation 04/11/23

Usando o Google Code e Google Project Hosting

Um repositório é lugar onde se guarda, arquiva, coleciona artefatos. Traduzindo. Nada mais é do que o local onde você vai guardar o seu projeto. Na prática, é um diretório, uma pasta qualquer guardada ou no seu computador, ou no seu pendrive, ou em um servidor na China.

Page 25: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEPTemplate Documentation 04/11/23

Cadastro no Google Project Hosting

Page 26: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEP

Criando um novo projeto

Page 27: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEP

Adicionando membros do projeto

Page 28: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEP

Exercício

Criar o plano de Gestão de configuração de software para seu grupo;

Criar o repositório do seu projeto no Google Project Hosting;

Carregar os documentos de requisitos, plano de projeto alto-nível e diagramas de caso de uso no Google Project Hosting;

Page 29: 2011 UNIMEP Engenharia de Software. 2011 UNIMEP 2Template Documentation4/20/2014 Aula de Apresentação Introduções: professores e alunos Expectativas Ementa

2011 UNIMEP

Bibliografia, Referências e Material adicional

Livro Subversion, editora O'Reilly

Google Code Hosting HOWTO, Fernando Bertoldi, http://ine5383fernando.googlecode.com/files/tutorialGoogleCode.html

http://www.pronus.eng.br/artigos_tutoriais/gerencia_configuracao/gerencia_configuracao.php?pagNum=0

http://pt.wikipedia.org/wiki/Ger%C3%AAncia_de_configura%C3%A7%C3%A3o_de_software