Engenharia de Software

Tamanho: px
Começar a partir da página:

Download "Engenharia de Software"

Transcrição

1 UNIVERSIDADE DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre 1 o Teste, 4 de Abril de 2017 Duração: 90 minutos Nome: Número: Este teste tem um conjunto de 8 perguntas de escolha múltipla, e um conjunto de 2 perguntas de resposta aberta. Escreva o seu número em todas as folhas da prova. O tamanho das respostas deve ser limitado ao espaço fornecido para cada questão. Pode responder a lápis. Em cima da mesa devem estar apenas: enunciado, material de escrita e cartão de aluno. Apenas são permitidas folhas de rascunho fornecidas pelos docentes que devem ser devolvidas no final. A utilização de de qualquer aparelho electrónico (tais como telemóveis, calculadoras, etc) implica a anulação imediata do teste. Leia cuidadosamente as perguntas de escolha múltipla e coloque na grelha a letra correspondente à resposta correta para cada pergunta. Por favor, use apenas letras maiúsculas. Se não responder a uma determinada pergunta, marque a resposta com um X. A classificação das perguntas de escolha múltipla é feita da seguinte forma: uma resposta correta vale 0,6; uma resposta errada vale -0,2; uma pergunta não respondida vale 0. Por isso, no caso de não saber responder a uma determinada pergunta é preferível deixar a pergunta por responder. Para cada pergunta deve escolher a que considera mais correta. Respostas às questões de escolha múltipla (componente teórica): Não preencher. Reservado para a correcção. 9: 10: 11:

2 Número: Pág. 2/8 Perguntas de escolha múltipla 1. A Engenharia de Software é uma disciplina da engenharia que se ocupa com os aspectos do desenvolvimento de software. Os métodos utilizados nesta disciplina A) São um conjunto de atividades cujo objetivo é apenas o desenvolvimento de software. B) São uma representação simplificada de um processo de desenvolvimento software, apresentada a partir de uma perspectiva específica. C) São abordagens estruturadas para o desenvolvimento de software, incluindo modelos e processos de desenvolvimento de software. D) Estudam apenas a teoria e os fundamentos de desenvolvimento de software. 2. Das seguintes frases, uma não descreve o funcionamento da metodologia Scrum. A) O Product Owner e o Scrum Master são elementos das equipas de desenvolvimento. B) O Scrum Master é o representante dos clientes (stakeholders) na equipa. C) Scrum é uma metodologia incremental e iterativa para desenvolvimento de software. D) Cada sprint começa com uma reunião, Sprint Planning, para definir o que vai ser implementado durante esse sprint. 3. Existem situações para as quais a Integração Contínua (Continuous Integration, CI) necessita de ser realizada de forma faseada, porque A) É necessário reduzir a colaboração através do aumento dos ciclos de desenvolvimento isolados. B) A integração contínua obriga a que o software seja testado frequentemente. C) Alguns sistemas demoram bastante tempo a compilar e a testar. D) A manutenção de infraestrutura de integração contínua própria requer custos elevados. 4. Sobre inspeções (inspections), qual das seguintes afirmações é verdadeira? A) Inspections são a forma menos eficaz de verificar a qualidade do software. B) Inspections é uma técnica de procura de defeitos em artefatos de software usando um processo bem definido (por exemplo, recorrendo a checklists). C) Inspections não podem ser usadas para analisar documentos de requisitos. D) É pouco provável que inspections ajudem a encontrar potenciais problemas em documentos de arquitetura de software.

3 Número: Pág. 3/8 5. Mocks vs. Stubs A) Mocks são utilizados para testes de comportamento (behavioral testing) e stubs para testes de estado (state testing) B) Stubs são utilizados para testes de comportamento (behavioral testing) e Mocks para testes de estado (state testing) C) A utilização de Stubs implica a especificação de um conjunto de expectativas. D) Apenas Mocks são considerados test doubles. 6. Qual a finalidade do seguinte comando git checkout -b teste A) Cria o branch teste, como uma cópia do branch actual, e move-se para esse branch. B) Verifica a existência de conflitos entre o branch actual, por exemplo o master, e o branch teste. C) Move-se para o branch teste que já existe no repositório local. D) Cria uma versão do branch teste no servidor remoto. 7. Na gestão de riscos, durante o desenvolvimento de software, a análise de riscos serve para A) Apenas listar os potenciais riscos do projeto. B) Priorizar e quantificar a probabilidade e o impacto dos riscos. C) Criar um plano de contingência para os riscos identificados. D) Monitorizar as alterações no impacto e probabilidade de o risco acontecer. 8. A Fénix Framework usa um dos Padrões em Aplicações Empresariais (Patterns of Enterprise Application Architecture) estudados A) Table Data Gateway. B) Row Data Gateway. C) Active Record. D) Data Mapper.

4 Número: Pág. 4/8 Perguntas sobre a componente prática O projeto ADVENTURE BUILDER que está a ser desenvolvido na disciplina de Engenharia de Software tem como funcionalidade principal a integração de diversos fornecedores de serviços com vista à oferta de atividades de lazer.

5 Número: Pág. 5/8 9. (1.7) Considere código abaixo que implementa o comportamento do método process da classe BookRoomState. Analisando esse método indique os casos de teste (não a sua implementação), utilizando as técnicas de partição de equivalência e análise de valores de fronteira. public void process() { try { getadventure().setroomconfirmation( HotelInterface.reserveRoom( Room.Type.SINGLE, getadventure().getbegin(), getadventure().getend())); catch (HotelException he) { getadventure().setstate(state.undo); return; catch (RemoteAccessException rae) { incnumofremoteerrors(); if (getnumofremoteerrors() == MAX_REMOTE_ERRORS) getadventure().setstate(state.undo); return; getadventure().setstate(state.confirmed); Solução: sucesso : HotelInterface.reserveRoom devolve uma String válida, o estado final é CONFIRMED. sucesso com máximo de falhas remotas : HotelInterface.reserveRoom devolve MAX_REMOTE_ERRORS - 1 RemoteAccessException seguido de uma String válida, o estado final é CONFIRMED. mesmo estado com uma falha remota : HotelInterface.reserveRoom devolve uma RemoteAccessException, o estado final é BOOK_ROOM. mesmo estado com máximo falhas remotas : HotelInterface.reserveRoom devolve MAX_REMOTE_ERRORS - 1 RemoteAccessException, o estado final é BOOK_ROOM. undo com uma excepção do hotel : HotelInterface.reserveRoom devolve uma HotelException, o estado final é UNDO. undo com máximo de falhas remotas : HotelInterface.reserveRoom devolve MAX_REMOTE_ERRORS RemoteAccessException, o estado final é UNDO. undo com uma falha remota e uma excepção do hotel : HotelInterface.reserveRoom devolve uma RemoteAccessException e uma HotelException, o estado final é UNDO.

6 Número: Pág. 6/8

7 Número: Pág. 7/8 10. (2.0) Implemente o caso de teste de sucesso que definiu na alínea anterior, aquele em que nunca acontece nenhum erro, e o caso de teste em que o número de RemoteAccessException é igual a MAX_REMOTE_ERRORS, recorrendo à framework JMockit considerando que HotelInterface é mocked. public void successbookroom(@mocked final HotelInterface hotelinterface) { String ROOM_CONFIRMATION = "ROOM_CONFIRMATION"; new StrictExpectations() { { HotelInterface.reserveRoom(Type.SINGLE, arrival, departure); this.result = ROOM_CONFIRMATION; ; this.adventure.process(); Assert.assertEquals(State.CONFIRMED, public void maxremoteaccessexception(@mocked final HotelInterface hotelinterface) { new StrictExpectations() { { HotelInterface.reserveRoom(Type.SINGLE, arrival, departure); this.result = new RemoteAccessException(); this.times = BookRoomState.MAX_REMOTE_ERRORS; ; for (int i = 0; i < BookRoomState.MAX_REMOTE_ERRORS; i++) { this.adventure.process(); Assert.assertEquals(State.UNDO, this.adventure.getstate().getvalue());

8 Número: Pág. 8/8 11. (1.5) Altere o domínio da aplicação do módulo Broker do ADVENTURE BUILDER, com recurso à Fénix Framework, de forma a que a informação seja adequadamente persistida. Modele a especificação do domínio usando a Domain Modeling Language (DML). NOTA: Necessita de modelar a relação das seguintes classes: Adventure e AdventureState, e as subclasses desta última, BookRoomState e ConfirmedState. Considere apenas os atributos de identificação e as datas de início e fim em Adventure, e o atributo com o número de erros em AdventureState. Não precisa de modelar operações (transações) por parte dos clientes nas contas. Solução: class Adventure { String ID; LocalDate begin; LocalDate end; class AdventureState { int numofremoteerrors; class ConfirmedState extends AdventureState; class BookRoomState extends AdventureState; relation AdventureHasState { Adventure playsrole adventure { multiplicity 0..1; AdventureState playsrole state { multiplicity 1..1; versão A C B C B A A B D B D A D A B D A B C A D A C D C D D D B C B D D B C A

Engenharia de Software

Engenharia de Software UNIVERSIDADE DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre 1 o Teste, 4 de Abril de 2017 Duração: 90 minutos Nome: Número: Este teste tem um conjunto de 8

Leia mais

Engenharia de Software

Engenharia de Software UNIVERSIDADE DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre Repescagem 1 o Teste, 7 de Julho de 2017 Duração: 90 minutos Nome: Número: Este teste tem um conjunto

Leia mais

Engenharia de Software

Engenharia de Software UNIVERSIDADE DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre Repescagem 1 o Teste, 7 de Julho de 2017 Duração: 90 minutos Nome: Número: Este teste tem um conjunto

Leia mais

Engenharia de Software

Engenharia de Software UNIVERSIDADE DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre 1 o Teste, 10 de Abril de 2018 Duração: 90 minutos Nome: Número: Este teste tem um conjunto de

Leia mais

Engenharia de Software

Engenharia de Software UNIVERSIDADE DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre 1 o Teste, 4 de Abril de 2017 Duração: 60 minutos Nome: Número: Este teste tem um conjunto de 8

Leia mais

Engenharia de Software

Engenharia de Software UNIVERSIDADE DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre Repescagem 1 o Teste, 7 de Julho de 2018 Duração: 90 minutos Nome: Número: Este teste tem um conjunto

Leia mais

Engenharia de Software

Engenharia de Software UNIVERSIDADE DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre Repescagem do 1 o Teste, 1 de Julho de 2016 Nome: Número: Este teste tem um conjunto de 10 perguntas

Leia mais

Engenharia de Software

Engenharia de Software UNIVERSIDADE DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre 1 o Teste, 21 de Abril de 2016 Duração: 90 minutos Nome: Número: Este teste tem um conjunto de

Leia mais

Engenharia de Software

Engenharia de Software UNIVERSIDADE DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre Repescagem 2 o Teste, 7 de Julho de 2017 Duração: 90 minutos Nome: Número: Este teste tem um conjunto

Leia mais

Engenharia de Software

Engenharia de Software UNIVERSIDADE DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre 2 o Teste, 17 de Junho de 2017 Duração: 90 minutos Nome: Número: Este teste tem um conjunto de

Leia mais

Engenharia de Software

Engenharia de Software UNIVERSIDADE DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre 2 o Teste, 8 de Junho de 2016 Nome: Número: Este teste tem um conjunto de 10 perguntas de escolha

Leia mais

Engenharia de Software

Engenharia de Software UNIVERSIDADE DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre 2 o Teste, 16 de Junho de 2018 Duração: 90 minutos Nome: Número: Este teste tem um conjunto de

Leia mais

Engenharia de Software

Engenharia de Software UNIVERSIDADE DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre Repescagem 2 o Teste, 7 de Julho de 2017 Duração: 90 minutos Nome: Número: Este teste tem um conjunto

Leia mais

Engenharia de Software

Engenharia de Software UNIVERSIDADE DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre Repescagem do 2 o Teste, 1 de Julho de 2016 Nome: Número: Este teste tem um conjunto de 10 perguntas

Leia mais

Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre, Ano letivo de 2014/2015

Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre, Ano letivo de 2014/2015 UNIVERSIDADE DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre, Ano letivo de 2014/2015 Exame de 3 de Julho (Versão A) Nome: Número: Este exame tem um conjunto

Leia mais

Engenharia de Software

Engenharia de Software UNIVERSIDADE DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre 2 o Teste, 17 de Junho de 2017 Duração: 90 minutos Nome: Número: Este teste tem um conjunto de

Leia mais

Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre, Ano letivo de 2014/2015

Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre, Ano letivo de 2014/2015 UNIVERSIDADE DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre, Ano letivo de 2014/2015 Exame de 11 de Junho (Versão A) Nome: Número: Este exame tem um conjunto

Leia mais

Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre, Ano letivo de 2014/2015

Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre, Ano letivo de 2014/2015 UNIVERSIDADE DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre, Ano letivo de 2014/2015 Exame de 11 de Junho (Versão A) Nome: Número: Este exame tem um conjunto

Leia mais

Engenharia de Software LEIC/LERC, 3 o Ano, 2 o Semestre, Ano lectivo de 2011/2012

Engenharia de Software LEIC/LERC, 3 o Ano, 2 o Semestre, Ano lectivo de 2011/2012 UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LERC, 3 o Ano, 2 o Semestre, Ano lectivo de 2011/2012 Primeiro Exame 02 de Junho de 2012, 9H00 11H30 (Versão A) Nome:

Leia mais

Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre, Ano letivo de 2014/2015

Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre, Ano letivo de 2014/2015 UNIVERSIDADE DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre, Ano letivo de 2014/2015 Exame Tipo Nome: Número: Este exame tem um conjunto de 20 perguntas de

Leia mais

Engenharia de Software LEIC/LERC, 3 o Ano, 2 o Semestre, Ano lectivo de 2011/2012

Engenharia de Software LEIC/LERC, 3 o Ano, 2 o Semestre, Ano lectivo de 2011/2012 UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LERC, 3 o Ano, 2 o Semestre, Ano lectivo de 2011/2012 Segundo Exame 26 de Junho de 2012, 15H00 17H30 (Versão A) Nome:

Leia mais

Engenharia de Software. Enunciado Geral do Projecto

Engenharia de Software. Enunciado Geral do Projecto LEIC-A, LEIC-T, LETI Engenharia de Software 2 o Semestre 207/208 Enunciado Geral do Projecto O objetivo do projeto é desenvolver o sistema ADVENTURE BUILDER. Este sistema deverá permitir a integração de

Leia mais

Fundamentos de Programação

Fundamentos de Programação Fundamentos de Programação Primeiro Teste 21 de Abril de 2012 11:30 13:00 Nome: Número: Esta prova, individual e sem consulta, tem 5 páginas com 10 perguntas. A cotação de cada pergunta está assinalada

Leia mais

Engenharia de Software LEIC/LERC, 3 o Ano, 2 o Semestre, Ano lectivo de 2009/2010

Engenharia de Software LEIC/LERC, 3 o Ano, 2 o Semestre, Ano lectivo de 2009/2010 UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LERC, 3 o Ano, 2 o Semestre, Ano lectivo de 2009/2010 Primeiro Exame 28 de Junho de 2010, 9:00H 11:30H (Versão A) Nome:

Leia mais

Fundamentos de Programação

Fundamentos de Programação Fundamentos de Programação Primeiro Teste 16 de Abril de 2011 09:00 10:30 Nome: Número: Esta prova, individual e sem consulta, tem 7 páginas com 9 perguntas. A cotação de cada pergunta está assinalada

Leia mais

Fundamentos de Programação

Fundamentos de Programação Fundamentos de Programação Segundo Teste 9 de Junho de 2012 9:00 10:30 Nome: Número: Esta prova, individual e sem consulta, tem 6 páginas com 12 perguntas. A cotação de cada pergunta está assinalada entre

Leia mais

Modelação Engenharia de Software

Modelação Engenharia de Software Modelação Engenharia de Software 2 o Semestre de 2008/2009 3 a entrega: Requisitos do sistema Test O Matic Sistema Nacional para as Competências Profissionais de Utopia 11 de Maio de 2009 1 Introdução

Leia mais

RESPOSTA: import java.util.arraylist; import java.util.list; class CarrinhoDeCompras2 { List<Produto> produtos;

RESPOSTA: import java.util.arraylist; import java.util.list; class CarrinhoDeCompras2 { List<Produto> produtos; Fundação CECIERJ - Vice Presidência de Educação Superior a Distância Curso de Tecnologia em Sistemas de Computação Disciplina: Programação Orientada a Objetos AP2 2 semestre de 2016. Nome Assinatura Observações:

Leia mais

Errata 2 Engenharia de Software Fundamentos, Métodos e Padrões 3ª. edição

Errata 2 Engenharia de Software Fundamentos, Métodos e Padrões 3ª. edição Errata 2 Engenharia de Software Fundamentos, Métodos e Padrões 3ª. edição Texto Pág. Cap. Local Como está Como deveria estar 605 12 2.9.4 ANÁLISE E RESOLUÇÃO DE DECISÕES - ENCADEAMENTO DE DECISÕES em situações

Leia mais

Engenharia de Software DESENVOLVIMENTO ÁGIL

Engenharia de Software DESENVOLVIMENTO ÁGIL Engenharia de Software DESENVOLVIMENTO ÁGIL Em 2001, Kent Beck e outros dezesseis renomados desenvolvedores, autores e consultores da área de software assinaram o Manifesto para Desenvolvimento Ágil de

Leia mais

Engenharia de Software Aula 21. Revisão da Prova 2. Eduardo Figueiredo.

Engenharia de Software Aula 21. Revisão da Prova 2. Eduardo Figueiredo. Engenharia de Software Aula 21 Revisão da Prova 2 Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo dcc603@dcc.ufmg.br 16 Maio 2018 Aula 16: POO Um programa OO é geralmente constituído de várias classes

Leia mais

Desenvolvimento Ágil de Software

Desenvolvimento Ágil de Software DCC / ICEx / UFMG Desenvolvimento Ágil de Software Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Agenda Métodos ágeis Histórico e Motivação Manifesto ágil Desenvolvimento dirigido a planos e ágil

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Ciência da Computação Prof. Elias Ferreira Elaborador por: Ana Claudia Bastos Loureiro Monção JUNIT Teste de Software Processo de Software Um processo de software pode ser visto como o conjunto de atividades,

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro 9 Classes Abstractas e Interfaces Classe Abstracta Classe em que pelo menos um dos métodos de instância não é implementado. Exemplo: public abstract class Forma{ public abstract double area(); public abstract

Leia mais

Teste de Software. Proj. Desenvolvimento de Software. Prof. Cleverton Hentz. 30 de agosto de Material Apresentado

Teste de Software. Proj. Desenvolvimento de Software. Prof. Cleverton Hentz. 30 de agosto de Material Apresentado Teste de Software Proj. Desenvolvimento de Software Prof. Cleverton Hentz cleverton.hentz@ifrn.edu.br 30 de agosto de 2017 Material Apresentado Sumário de Aula 1 Introdução 2 Níveis de Teste 3 Terminologia

Leia mais

9 Classes Abstractas e Interfaces

9 Classes Abstractas e Interfaces 9 Classes Abstractas e Interfaces Classe Abstracta Classe em que pelo menos um dos métodos de instância não é implementado. Exemplo: public abstract class Forma{ public abstract double area(); public abstract

Leia mais

Teste de Software. Estratégias de Teste. Rosemary Silveira Filgueiras Melo

Teste de Software. Estratégias de Teste. Rosemary Silveira Filgueiras Melo Teste de Software Estratégias de Teste Rosemary Silveira Filgueiras Melo rosesfmelo@hotmail.com 1 Agenda Estratégias de Teste Tipos de Estratégias de Teste 2 Estratégias de teste Define as fases em que

Leia mais

MAC2166 Introdução à Computação para Engenharia Escola Politécnica Segunda Prova 19 de maio de 2008

MAC2166 Introdução à Computação para Engenharia Escola Politécnica Segunda Prova 19 de maio de 2008 MAC2166 Introdução à Computação para Engenharia Escola Politécnica Segunda Prova 19 de maio de 2008 Nome: Assinatura: N ō USP: Turma: Instruções: Professor: 1. Não destaque as folhas deste caderno. 2.

Leia mais

7ª Conferência da Qualidade de Software e Serviços

7ª Conferência da Qualidade de Software e Serviços 7ª Conferência da Qualidade de Software e Serviços Case de Sucesso Utilização de métodos ágeis em projeto de software Na Prática Apresentação Fundada em 2003, a Enter5 é uma empresa cuja proposta de trabalho

Leia mais

Objetos Dublês. Mariana Bravo AgilCoop Cursos de Verão 2009

Objetos Dublês. Mariana Bravo AgilCoop Cursos de Verão 2009 Objetos Dublês Mariana Bravo marivb@agilcoop.org.br AgilCoop Cursos de Verão 2009 Motivação Testes de unidade focam em uma unidade Mas as unidades do sistema têm dependências entre si Dublês oferecem uma

Leia mais

Frequência Introdução à Programação IGE e ETI 2004/2/10 1º semestre de 2003/2004 ISCTE

Frequência Introdução à Programação IGE e ETI 2004/2/10 1º semestre de 2003/2004 ISCTE Recibo da (IGE e ETI), 2004/2/10 1º semestre de 2003/2004, ISCTE Nome do aluno:... Número do aluno:... Assinatura do docente:... Notas: Frequência Introdução à Programação IGE e ETI 2004/2/10 1º semestre

Leia mais

Scrum e Extreme Programming

Scrum e Extreme Programming Scrum e Extreme Programming CODEX Sumário Objetivo 3 Scrum 4 Papéis de Atuação 4 Eventos do Scrum 5 Artefatos do Scrum 5 Porque Scrum? 5 Extreme Programming 6 Práticas do Extreme Programming 6 Porque XP?

Leia mais

1. A função DevOps, que se concentra principalmente em Produtos & Serviços:

1. A função DevOps, que se concentra principalmente em Produtos & Serviços: Questões de múltipla escolha 1. A função DevOps, que se concentra principalmente em Produtos & Serviços: a) Desenvolvimento Ágil b) Melhoria Contínua c) Automatizar tudo d) Centralizar o Desenvolvimento

Leia mais

Desenvolvimento ágil de software

Desenvolvimento ágil de software Desenvolvimento ágil de software Prof. Cristiane Aparecida Lana slide 1 Bibliografia utilizada: Mais opções visite meu site, clique aqui para acessá-lo. slide 2 2011 Pearson 2011 Pearson Prentice Prentice

Leia mais

1. Estude e implemente a classe Exemplo1 apresentada abaixo:

1. Estude e implemente a classe Exemplo1 apresentada abaixo: P. Fazendeiro & P. Prata POO FP09/1 Exceções Uma exceção (Exception) é um sinal gerado pela máquina virtual de Java em tempo de execução indicando uma situação de erro da qual é possível recuperar. O objectivo

Leia mais

Padrão de projeto de software

Padrão de projeto de software Padrão de projeto de software Paulo Venancio Lopes e Daniel Sguillaro Nome Roupa Suja Se Lava Em Casa. Intenção Dar maior capacidade e flexibilidade ao conceito de entidade (no contexto de persitência

Leia mais

U.C. (21093) Programação por Objetos. XX de Julho de INSTRUÇÕES --

U.C. (21093) Programação por Objetos. XX de Julho de INSTRUÇÕES -- Ministério da Educação e Ciência p-fólio U.C. (21093) Programação por Objetos XX de Julho de 2015 -- INSTRUÇÕES -- O estudante deverá responder à prova na folha de ponto e preencher o cabeçalho e todos

Leia mais

Engenharia de Software. Prof. Raquel Silveira

Engenharia de Software. Prof. Raquel Silveira Engenharia de Software Prof. Raquel Silveira MOTIVAÇÃO Você já perdeu alguma versão anterior do arquivo do projeto? Já teve problemas em manter diferentes versões do sistema rodando ao mesmo tempo? Alguém

Leia mais

Métodos Ágeis e o SCRUM. Bruno Henrique Oliveira

Métodos Ágeis e o SCRUM. Bruno Henrique Oliveira Métodos Ágeis e o SCRUM Bruno Henrique Oliveira Apresentação Formado em BCC Consultoria Gestão de projetos e implantação de escritório de projetos ITIL e ECM Candidato a título de mestre em Engenharia

Leia mais

UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA

UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA Teste de Software Engenharia de Software 2o. Semestre de 2006 Slide

Leia mais

Prof. Fábio Lúcio Meira

Prof. Fábio Lúcio Meira Prof. Fábio Lúcio Meira Objetivo Transformar os requisitos no design do futuro sistema Evoluir uma arquitetura robusta do sistema Adaptar o design para adequá-lo ao ambiente de implementação O principal

Leia mais

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Luiz Leão luizleao@gmail.com http://www.luizleao.com Questão 1 Para Sommerville a arquitetura de sistemas descreve o sistema em termos de um conjunto de unidades

Leia mais

Exame de 1ª Época Introdução à Programação IGE e ETI 2003/02/25-1º semestre de 2002/2003 ISCTE

Exame de 1ª Época Introdução à Programação IGE e ETI 2003/02/25-1º semestre de 2002/2003 ISCTE Recibo do Exame de 1ª Época de Introdução à Programação (IGE e ETI), 2003/02/25 1º semestre de 2002/2003, ISCTE Nome do aluno:... Número do aluno:... Assinatura do docente:... Notas: Exame de 1ª Época

Leia mais

U.C Desenvolvimento de Software. 12 de julho de 2017 INSTRUÇÕES PARA A RESOLUÇÃO DA PROVA, ACONSELHA-SE QUE LEIA ATENTAMENTE O SEGUINTE:

U.C Desenvolvimento de Software. 12 de julho de 2017 INSTRUÇÕES PARA A RESOLUÇÃO DA PROVA, ACONSELHA-SE QUE LEIA ATENTAMENTE O SEGUINTE: Ministério da Ciência, Tecnologia e Ensino Superior Exame U.C. 21025 Desenvolvimento de Software 12 de julho de 2017 INSTRUÇÕES PARA A RESOLUÇÃO DA PROVA, ACONSELHA-SE QUE LEIA ATENTAMENTE O SEGUINTE:

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro 7 Classes Abstractas e Interfaces Classe Abstracta Classe em que pelo menos um dos métodos de instância não é implementado. Exemplo: public abstract class Forma{ public abstract double area(); public abstract

Leia mais

Desenvolvimento Ágil de Software. Prof. Edjandir Corrêa Costa

Desenvolvimento Ágil de Software. Prof. Edjandir Corrêa Costa Desenvolvimento Ágil de Software Prof. Edjandir Corrêa Costa edjandir.costa@ifsc.edu.br Métodos Ágeis História Na início da década de 90 havia uma visão de que a melhor maneira para se criar software era

Leia mais

Análise e Projeto Orientados por Objetos

Análise e Projeto Orientados por Objetos Análise e Projeto Orientados por Objetos Aula 10 Padrões GoF (Protoype e Façade) Edirlei Soares de Lima Padrões GoF Criação: Abstract Factory Builder Factory Method Prototype Singleton

Leia mais

SSC 0721 Teste e Validação de Software

SSC 0721 Teste e Validação de Software SSC 0721 Teste e Validação de Software Conceitos básicos Prof. Marcio E. Delamaro delamaro@icmc.usp.br SSC 0721 Teste e Validação de Software ICMC/USP p. 1 O que é teste Atividade de executar um programa

Leia mais

Nome: Número: Primeira Parte (7 valores) Segunda Parte (3 valores)

Nome: Número: Primeira Parte (7 valores) Segunda Parte (3 valores) Nome: Número: Programação com Objectos 10 de Novembro de 2015, 08:00 (90 minutos) Primeira Parte (7 valores) Segunda Parte (3 valores) PERGUNTA NOTA PERGUNTA RESPOSTA 1.1 2.1 1.2 2.2 1.3 1.4 2.3 2.4 2.5

Leia mais

Fundamentos da Programação

Fundamentos da Programação Fundamentos da Programação Segundo Teste 10 de Janeiro de 2014 09:00 10:30 Nome: Número: Esta prova, individual e sem consulta, tem 8 páginas com 12 perguntas. A cotação de cada pergunta está assinalada

Leia mais

final class UltimosDiasMeses{ static final int[] DIAS_DO_MES = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; }

final class UltimosDiasMeses{ static final int[] DIAS_DO_MES = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; } Fundação CECIERJ - Vice Presidência de Educação Superior a Distância Curso de Tecnologia em Sistemas de Computação Disciplina: Programação Orientada a Objetos AP1 1 semestre de 2017. Nome Assinatura Observações:

Leia mais

Fundamentos de Programação

Fundamentos de Programação Fundamentos de Programação Segundo Teste 6 de Janeiro de 2010 09:00 10:30 Nome: Número: Esta prova, individual e sem consulta, tem 8 páginas com 9 perguntas. A cotação de cada pergunta está assinalada

Leia mais

ENGENHARIA DE SOFTWARE

ENGENHARIA DE SOFTWARE CURSO TÉCNICO DE INFORMÁTICA Módulo A ENGENHARIA DE SOFTWARE Processos de Software O PROCESSO É LENTO... Todo software deve ser construído de forma organizada, através de processos. Um processo pode ser

Leia mais

Introdução a Teste de Software

Introdução a Teste de Software Universidade Católica de Pelotas Tecnólogo em Análise e Desenvolvimento de Sistemas Disciplina de Qualidade de Software Introdução a Teste de Software Prof. Luthiano Venecian 1 Conceitos Teste de software

Leia mais

Verificação e Validação

Verificação e Validação Verificação e Validação Sistemas possuem restrições de qualidade e confiabilidade Qualidade de sw: satisfação dos requisitos funcionais, de desempenho e normas explicitamente declarados. Redução de custos

Leia mais

Interfaces e Classes Abstratas

Interfaces e Classes Abstratas Interfaces e Classes Abstratas José Gustavo de Souza Paiva Problema Método obterarea()? Classes Abstratas Classes que funcionam como um molde Declarada com comando abstract Contém um ou mais métodos abstratos

Leia mais

Introdução à orientação a objetos. João Tito Almeida Vianna 18/05/2013

Introdução à orientação a objetos. João Tito Almeida Vianna 18/05/2013 Introdução à orientação a objetos João Tito Almeida Vianna 18/05/2013 Roteiro Aula 1 Introdução: Programação estruturada x Orientação a objetos Orientação a objetos Classe e objeto Encapsulamento Herança

Leia mais

LEIA ATENTAMENTE AS INSTRUÇÕES PARA A RESOLUÇÃO DO

LEIA ATENTAMENTE AS INSTRUÇÕES PARA A RESOLUÇÃO DO Nome:... B.I. :... Nº de Estudante:... Curso:... Turma:... Unidade Curricular:...Programação por Objectos Código: 21093 Data: 22 de Julho 2010 Assinatura do Vigilante:... Classificação ( ) Assinatura do

Leia mais

Programação Orientada a Objetos. Vagner Luz do Carmo - Vluzrmos

Programação Orientada a Objetos. Vagner Luz do Carmo - Vluzrmos Programação Orientada a Objetos Vagner Luz do Carmo - Vluzrmos Questão 1 Dada a seguinte classe na linguagem JAVA: public class Carro { public String retornacor(){ ; return Azul ; private String retornachassi(){

Leia mais

GUIA DE FUNCIONAMENTO DA UNIDADE CURRICULAR

GUIA DE FUNCIONAMENTO DA UNIDADE CURRICULAR Curso Engenharia Informática Ano letivo 2015/2016 Unidade Curricular Engenharia de Software II ECTS 6 Regime Obrigatório Ano 3º Semestre 1º sem Horas de trabalho globais Docente Maria Clara Silveira Total

Leia mais

RUP RATIONAL UNIFIED PROCESS

RUP RATIONAL UNIFIED PROCESS O que é RUP? É um metodologia para gerenciar projetos de desenvolvimento de software que usa a UML como ferramenta para especificação de sistemas. Ele é um modelo de processo híbrido Mistura elementos

Leia mais

Integração por Web Services

Integração por Web Services Integração por Web Services Versão 1.1 Maio 2010 Índice Índice... 2 Introdução... 3 Arquitectura PRIMAVERA... 4 User Interface... 4 Motor... 4 Interface para o Administrador... 5 Motores PRIMAVERA em Web

Leia mais

Fundamentos de Programação 1

Fundamentos de Programação 1 Fundamentos de Programação 1 Slides N. 2 D / Prof. SIMÃO Slides elaborados pelo Prof. Robson Linhares elaborados pelo Prof. Robson Linhares http://www.dainf.ct.utfpr.edu.br/~robson/ Jean Marcelo SIMÃO

Leia mais

Plataformas de Distribuição de Objetos

Plataformas de Distribuição de Objetos Plataformas de Distribuição de Objetos Denominações Equivalentes: Modelos de Componentes Modelos de Integração de Objetos Motivação: Reuso de objetos Redução do Tempo e do Custo de Desenvolvimento de Software

Leia mais

Reuso de Software Aula Maio 2012

Reuso de Software Aula Maio 2012 Reuso de Software Aula 19 Tópicos da Aula Engenharia de Software baseada em Componentes (CBSE) Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo reuso.software@gmail.com Componentes Modelos de Componentes

Leia mais

INTELIGÊNCIA ARTIFICIAL E SISTEMAS DE DECISÃO Ano Lectivo 2005/2006 Semestre de Inverno. 1º Exame, 13/Janeiro/2006

INTELIGÊNCIA ARTIFICIAL E SISTEMAS DE DECISÃO Ano Lectivo 2005/2006 Semestre de Inverno. 1º Exame, 13/Janeiro/2006 Mestrado em Engenharia Electrotécnica e de Computadores Licenciatura em Engenharia Electrotécnica e de Computadores Licenciatura em Engenharia Aeroespacial INTELIGÊNCIA ARTIFICIAL E SISTEMAS DE DECISÃO

Leia mais

Java RMI. RMI Remote Method Invocation. Chamadas Remotas de Procedimentos (RPC) RPC - Implementação

Java RMI. RMI Remote Method Invocation. Chamadas Remotas de Procedimentos (RPC) RPC - Implementação Java Remote Method Invocation Java Remote Method Invocation () é um protocolo Java para comunicação entre processos Permite objetos Java invocar transparentemente métodos de outros objetos (que podem estar

Leia mais

Segunda Parte (3 valores) Primeira Parte (7 valores) Nome: Número: PERGUNTA NOTA PERGUNTA RESPOSTA

Segunda Parte (3 valores) Primeira Parte (7 valores) Nome: Número: PERGUNTA NOTA PERGUNTA RESPOSTA 2º Teste 2012/2013 1º Semestre 201301171830 1/7 2º Teste 2012/2013 1º Semestre 17 de Janeiro de 2013, 11:30 (120 minutos) Nome: Número: Primeira Parte (7 valores) PERGUNTA NOTA 1.1.1 1.1.2 1.1.3 1.2 1.3

Leia mais

Engenharia de Software

Engenharia de Software Engenharia de Software Processos de Software Professor: Charles Leite O processo de software Um conjunto estruturado de atividades, procedimentos, artefatos e ferramentas necessários para o desenvolvimento

Leia mais

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Luiz Leão luizleao@gmail.com http://www.luizleao.com Questão 1 O desenvolvimento de software envolve usuários, clientes e desenvolvedores. Avalie as seguintes afirmações

Leia mais

Ficha Prática 10. António Nestor Ribeiro, Paulo Azevedo, Mário Martins PPIV (LESI) 2005/06

Ficha Prática 10. António Nestor Ribeiro, Paulo Azevedo, Mário Martins PPIV (LESI) 2005/06 Ficha Prática 10 António Nestor Ribeiro, Paulo Azevedo, Mário Martins {anr,pja,fmm@di.uminho.pt PPIV (LESI) 2005/06 Objectivos 1. Interfaces: declaração e utilização. 2. Interfaces como tipos de dados

Leia mais

Nome: Número: Segunda Parte (3 valores) Primeira Parte (7 valores)

Nome: Número: Segunda Parte (3 valores) Primeira Parte (7 valores) 2º Teste 2013/2014 1º Semestre 201401140900 2º Teste 2013/2014 1º Semestre 14 de Janeiro de 2014, 09:00 (120 minutos) Nome: Número: 1/8 Primeira Parte (7 valores) PERGUNTA NOTA 1.1.1 1.1.2 1.1.3 1.2.1

Leia mais

Lista 05 Herança. public class PessoaFisica extends Pessoa { private String RG; public PessoaFisica(){ super(); } public String getrg(){ return RG; }

Lista 05 Herança. public class PessoaFisica extends Pessoa { private String RG; public PessoaFisica(){ super(); } public String getrg(){ return RG; } Lista 05 Herança 1. Analisando a classe Java abaixo podemos observar que a mesma possui apenas um atributo, um construtor e dois métodos. Perceba que dentro do método main estão sendo invocados métodos

Leia mais

AULA 02. OBJETIVO: Características da Linguagem Orientada a Objetos.

AULA 02. OBJETIVO: Características da Linguagem Orientada a Objetos. AULA 02 OBJETIVO: Características da Linguagem Orientada a Objetos. HABILIDADES TRABALHADAS: Comparação das características das linguagens orientadas a objetos frente às linguagens estruturadas. Conhecimentos

Leia mais

J820. Mock objects. Testes de código com dependências. argonavis.com.br. Helder da Rocha

J820. Mock objects. Testes de código com dependências. argonavis.com.br. Helder da Rocha J820 Mock objects Testes de código com dependências Helder da Rocha (helder@acm.org) Como lidar com testes difíceis Testes devem ser simples e suficientes Comece com testes mais importantes Sempre pode-se

Leia mais

Computação e Programação Exame Época de recurso

Computação e Programação Exame Época de recurso Nome : Número : Computação e Programação 2013-2014 Mestrado Integrado em Engenharia Civil Licenciatura Bolonha em Engenharia Geológica e de Minas DECivil Exame Época de recurso 29 de Janeiro de 2014 v

Leia mais

Exane de ICE-B, 26 de Junho de 2018 (Versão A)

Exane de ICE-B, 26 de Junho de 2018 (Versão A) Exane de ICE-B, 26 de Junho de 2018 (Versão A) Três páginas com 10 perguntas mais três folhas de resposta. Duração: 2 horas e 30 minutos Atenção: Preencha cuidadosamente cada folha de resposta. Pode usar

Leia mais

Programação com Objectos 1º Teste Tipo 1º Semestre (90 minutos)

Programação com Objectos 1º Teste Tipo 1º Semestre (90 minutos) 1/7 Programação com Objectos 1º Teste Tipo 1º Semestre (90 minutos) Nome: Primeira Parte (7 valores) PERGUNTA NOTA 1.1 1.2 1.3 1.4 Segunda Parte (3 valores) PERGUNTA RESPOSTA 2.1 2.2 2.3 2.4 2.5 1ª PARTE

Leia mais

AVALIAÇÃO DA CAPACIDADE PARA A FREQUÊNCIA DO CURSO DE LICENCIATURA EM ENGENHARIA MECÂNICA DO INSTITUTO SUPERIOR DE ENGENHARIA DE LISBOA PROVA 2017

AVALIAÇÃO DA CAPACIDADE PARA A FREQUÊNCIA DO CURSO DE LICENCIATURA EM ENGENHARIA MECÂNICA DO INSTITUTO SUPERIOR DE ENGENHARIA DE LISBOA PROVA 2017 Página 1 de 8 Provas especialmente adequadas destinadas a avaliar a capacidade para a frequência do ensino superior dos maiores de 23 anos, Decreto-Lei n.º 113/2014, de 16 de julho AVALIAÇÃO DA CAPACIDADE

Leia mais

Aula 20 Testes 3. Alessandro Garcia Leonardo da Silva Sousa OPUS Group/LES/DI/PUC-Rio Dezembro 2016

Aula 20 Testes 3. Alessandro Garcia Leonardo da Silva Sousa OPUS Group/LES/DI/PUC-Rio Dezembro 2016 Aula 20 Testes 3 Alessandro Garcia Leonardo da Silva Sousa OPUS Group/LES/DI/PUC-Rio Dezembro 2016 Slides adaptados de: Staa, A.v. Notas de Aula em Programacao Modular; 2008. Teste de Caixa Branca O que

Leia mais

FCUP 2010/11. Departamento de Ciência de Computadores Estruturas de Dados (CC114) 1 o Teste: 27/Abril/2011

FCUP 2010/11. Departamento de Ciência de Computadores Estruturas de Dados (CC114) 1 o Teste: 27/Abril/2011 1 1 Departamento de Ciência de Computadores Estruturas de Dados (CC114) 1 o Teste: 27/Abril/2011 FCUP 2010/11 duração: 2 horas 1. Teste A (indicar o teste que estão a fazer na folha de resposta) 2. Cotação

Leia mais

Uma Introdução à Arquitetura CORBA. O Object Request Broker (ORB)

Uma Introdução à Arquitetura CORBA. O Object Request Broker (ORB) Uma Introdução à Arquitetura Francisco C. R. Reverbel 1 Copyright 1998-2006 Francisco Reverbel O Object Request Broker (ORB) Via de comunicação entre objetos (object bus), na arquitetura do OMG Definido

Leia mais

Q d( ) P. a( ) c( ) e( ) c( ) S. c( ) d( )

Q d( ) P. a( ) c( ) e( ) c( ) S. c( ) d( ) ELEMENTOS BÁSICOS DA LINGUAGEM JAVA Patricia Della Méa Plentz INE-CTC-UFSC E-Mail: plentz@inf.ufsc.br URL: http://moodle.ufsc.br INE5605-Turma 0238B Sumário 2.1 Classes e Objetos na POO 2.2 2 Revisão da

Leia mais

Universidade Federal de Uberlândia Disciplina: POO2 Prof. Fabiano Dorça. Padrões de Projeto. Padrão Command

Universidade Federal de Uberlândia Disciplina: POO2 Prof. Fabiano Dorça. Padrões de Projeto. Padrão Command Universidade Federal de Uberlândia Disciplina: POO2 Prof. Fabiano Dorça Padrões de Projeto Padrão Command O padrão Command encapsula um comando em um objeto. Tem como premissa desacoplar o objeto cliente

Leia mais

U.C Desenvolvimento de Software. 12 de julho de 2017 INSTRUÇÕES PARA A RESOLUÇÃO DA PROVA, ACONSELHA-SE QUE LEIA ATENTAMENTE O SEGUINTE:

U.C Desenvolvimento de Software. 12 de julho de 2017 INSTRUÇÕES PARA A RESOLUÇÃO DA PROVA, ACONSELHA-SE QUE LEIA ATENTAMENTE O SEGUINTE: Ministério da Ciência, Tecnologia e Ensino Superior p-fólio U.C. 21025 Desenvolvimento de Software 12 de julho de 2017 INSTRUÇÕES PARA A RESOLUÇÃO DA PROVA, ACONSELHA-SE QUE LEIA ATENTAMENTE O SEGUINTE:

Leia mais

Ficheiros de texto 1. Ficheiros de texto. 1. Implementar um programa que leia uma frase do teclado e a escreva num ficheiro.

Ficheiros de texto 1. Ficheiros de texto. 1. Implementar um programa que leia uma frase do teclado e a escreva num ficheiro. Ficheiros de texto 1 Ficheiros de texto 1. Implementar um programa que leia uma frase do teclado e a escreva num ficheiro. 2. Implementar um programa que procure num ficheiro uma palavra lida do teclado.

Leia mais