Computação e Programação

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

Download "Computação e Programação"

Transcrição

1 Computação e Programação MEMec - LEAN 1º Semestre Aula Teórica 4 Instituto Superior Técnico, Dep. de Engenharia Mecânica - ACCAII Alinhamento da AT 4 Construção de programas Actividades de teste a programas Processo de Desenvolvimento (PD) Modelo do PD Actividades do PD 2 1

2 Alinhamento da AT 4 Construção de programas Actividades de teste a programas Processo de Desenvolvimento (PD) Modelo do PD Actividades do PD 3 Programa de Computador Um programa de computador é uma colecção de instruções que descreve uma tarefa a ser realizada por um computador. O termo pode ser uma referência ao código fonte, escrito em alguma linguagem de programação, ou ao arquivo que contém a forma executável deste código fonte. Fonte: 4 2

3 Construção de programas Consiste do desenho da lógica que resolve um problema e sua codificação num ambiente computacional, segue um processo de desenvolvimento, segundo uma estratégia de problem-solving, por exemplo a abordagem Top-Down. 5 T o p - D o w n Abordagem Top Down Abordagem para resolução de problemas tendo por base a realização de refinamentos sucessivos em subproblemas, até à decomposição em tarefas elementares Os refinamentos ao mesmo nível hierárquico são como processos independentes, com entradas e saídas. As comunicações entre processos só se realizam de/para níveis hierárquicos diferentes, e nunca ao mesmo nível Sub-problemas Tarefas 6 3

4 Abordagem Top Down Abordagem para resolução de problemas tendo por base a realização de refinamentos sucessivos em subproblemas, até à decomposição em tarefas elementares Os refinamentos ao mesmo nível hierárquico são como processos independentes, com entradas e saídas. As comunicações entre processos só se realizam de/para níveis hierárquicos diferentes, e nunca ao mesmo nível Esta abordagem permite abstrair do funcionamento interno dos processos, focando só no resultado, i.e. na informação que é transmitida entre processos/níveis Dá origem à Programação Modular 7 Alinhamento da AT 4 Construção de programas Actividades de teste a programas Processo de Desenvolvimento (PD) Modelo do PD Actividades do PD 8 4

5 Actividades de teste a programas Actividades Testar: comparação com casos bem sucedidos para identificar eventuais faltas que possam estar na origem das falhas Depurar: corrigir e remover as faltas 9 Definição de Casos de Teste Objectivos para definição de Casos de Teste : Verificação o programa está de acordo com a especificação (construímos bem o produto?) Validação o programa está de acordo com as expectativas do cliente (construímos o esperado?) 10 5

6 Tipos de erros Erros típicos: Lógicos Sintaxe Execução 11 Alinhamento da AT 4 Construção de programas Actividades de teste a programas Processo de Desenvolvimento (PD) Modelo do PD Actividades do PD 12 6

7 Processo de desenvolvimento O desenvolvimento de programas é um processo iterativo que tem como produto final o programa e engloba uma série de etapas que envolvem actividades, restrições e recursos. (Normas ISO 12207) 13 Processo de desenvolvimento O desenvolvimento de programas é um processo iterativo que tem como produto final o programa e engloba uma série de etapas que envolvem actividades, restrições e recursos. Restrições Recursos Actividades Programa 14 7

8 Processo de desenvolvimento O desenvolvimento de programas é um processo iterativo que tem como produto final o programa e engloba uma série de etapas que envolvem actividades, restrições e recursos. - Cliente - Professor - Patrão - Pessoal Recursos Restrições Actividades Programa 15 Processo de desenvolvimento O desenvolvimento de programas é um processo iterativo que tem como produto final o programa e engloba uma série de etapas que envolvem actividades, restrições e recursos. Restrições Actividades Manutenção Recursos Programa 16 8

9 Processo de desenvolvimento O desenvolvimento de programas é um processo iterativo que tem como produto final o programa e engloba uma série de etapas que envolvem actividades, restrições e recursos. Restrições - Humanos - Hardware - Software Recursos -Tempo - Custo Actividades Programa 17 Alinhamento da AT 4 Construção de programas Actividades de teste a programas Processo de Desenvolvimento (PD) Modelo do PD Actividades do PD 18 9

10 Workflow 19 Contexto do problema 1. Contexto do problema 2. / síntese do problema 3. Esquema de processamento 4. e testes e validação 7. / manutenção 20 10

11 / Esquema de processamento 1. Definição do problema 2. / síntese do problema 3. Esquema de processamento 4. e testes e validação 7. / manutenção 21 e testes 1. Definição do problema 2. / síntese do problema 3. Esquema de processamento 4. e testes e validação 7. / manutenção 22 11

12 , testes e validação 1. Definição do problema 2. / síntese do problema 3. Esquema de processamento 4. e testes e validação 7. / manutenção 23 / manutenção 1. Definição do problema 2. / síntese do problema 3. Esquema de processamento 4. e testes e validação 7. / manutenção 24 12

13 O Processo de Desenvolvimento 1. Contexto do problema 2. / síntese do problema 3. Esquema de processamento 4. e testes e validação 7. / manutenção 25 Documentação - Componente essencial no processo de concepção de programas - Deve acompanhar todas as etapas do desenvolvimento de produto - Características - Simples - Completa - Estrutura (possível) - Manual do Utilizador - Manual do Programador 26 13

14 Alinhamento da AT 4 Construção de programas Actividades de teste a programas Processo de Desenvolvimento (PD) Modelo do PD Actividades do PD 27 Definição do problema 1. Identificação do contexto do problema e objectivos do programa que o resolve 28 14

15 2.2 Especificações Requisitos 2.3 Métodos de Processamento 2.1 Entradas 2.1 Saídas Esquema de processamento Entradas Saídas 30 15

16 2.1 Esquema de processamento Entradas Saídas 2.2 Identificação dos Requisitos Funcionais Caracterização elementar do problema Necessidades de utilizadores e clientes Esquema de processamento Entradas Saídas 2.2 Identificação dos Requisitos Funcionais Caracterização elementar do problema Necessidades de utilizadores e clientes 2.3 Descrição/definição detalhada de: Métodos de processamento (Matemáticos) Fluxos de dados 32 16

17 Desenvolvimento do algoritmo 3.1 Abordagem Top-Down 33 Desenvolvimento do algoritmo 3.1 Abordagem Top-Down 3.2 Descrição passo-a-passo em lista de tarefas elementares do problema particular a resolver 34 17

18 Desenvolvimento do algoritmo 3.1 Abordagem Top-Down 3.2 Descrição passo-a-passo em lista de tarefas elementares do problema particular a resolver 3.3 Lista ordenada de tarefas na forma de pseudo-código escrito na linguagem natural do programador 35 Desenvolvimento do algoritmo 3.1 Abordagem Top-Down 3.2 Descrição passo-a-passo em lista de tarefas elementares do problema particular a resolver 3.3 Lista ordenada de tarefas na forma de pseudo-código escrito na linguagem natural do programador Objectivo: Plano de tarefas que pode ser facilmente codificado utilizando uma linguagem de programação

19 ao algoritmo 4. Teste do nas várias opções definidas em termos de: i. de Requisitos Funcionais ii.pares Entrada / Saída 37 ao algoritmo 4. Teste do nas várias opções definidas em termos de: i. de Requisitos Funcionais ii.pares Entrada / Saída Objectivo: Depurar Erros Lógicos 38 19

20 ao algoritmo 4.1 Caso se verifiquem Erros Lógicos: Processo regressa à fase de Procurar eventuais inconsistências ao longo do fluxo: 39 ao algoritmo 4.2 Caso não se verifiquem Erros Lógicos: Processo segue para a 40 20

21 5.1 Tradução do algoritmo para uma linguagem de programação Tradução do algoritmo para uma linguagem de programação 5.2 Paradigmas da linguagem: Linguagens Compiladas: C ++, Fortran Linguagens Interpretadas: Matlab 42 21

22 5.1 Tradução do algoritmo para uma linguagem de programação 5.2 Paradigmas da linguagem: Linguagens Compiladas: C ++, Fortran Linguagens Interpretadas: Matlab 5.3 Depuração de Erros Sintácticos 43 ao programa 6.1 Teste do Programa nas várias opções definidas em termos de: i. de Requisitos Funcionais ii. Pares Entrada / Saída 44 22

23 ao programa 6.1 Teste do Programa nas várias opções definidas em termos de: i. de Requisitos Funcionais ii. Pares Entrada / Saída 6.2 Comparação com resultados analíticos / teóricos / experimentais, ou resultantes de programas similares 45 ao programa 6.1 Teste do Programa nas várias opções definidas em termos de: i. de Requisitos Funcionais ii. Pares Entrada / Saída 6.2 Comparação com resultados analíticos / teóricos / experimentais, ou resultantes de programas similares 6.3 Metodologia de teste: Bottom - Up 46 23

24 ao programa 6.1 Teste do Programa nas várias opções definidas em termos de: i. de Requisitos Funcionais ii. Pares Entrada / Saída 6.2 Comparação com resultados analíticos / teóricos / experimentais, ou resultantes de programas similares 6.3 Metodologia de teste: Bottom - Up Objectivos: Depurar Erros Lógicos e/ou de Execução 47 ao programa 6.4 Caso se verifiquem Erros: Processo regressa à fase de Procurar eventuais inconsistências ao longo do fluxo: 48 24

25 ao programa 6.5 Caso não se verifiquem Erros: Processo segue para 49 / Manutenção 7.1 Após as várias fases do Processo de Desenvolvimento, garante-se que o Programa é conforme com: Objectivos do problema Requisitos funcionais 50 25

26 / Manutenção 7.1 Após as várias fases do Processo de Desenvolvimento, garante-se que o Programa é conforme com: Objectivos do problema Requisitos funcionais 7.2 Depois de entregue o programa pode sofrer actualizações 51 / Manutenção 7.1 Após as várias fases do Processo de Desenvolvimento, garante-se que o Programa é conforme com: Objectivos do problema Requisitos funcionais 7.2 Depois de entregue o programa pode sofrer actualizações 7.3 As componentes de código resultantes podem ser reutilizadas na solução de outros problemas 52 26

27 / Manutenção 7.1 Após as várias fases do Processo de Desenvolvimento, garante-se que o Programa é conforme com: Objectivos do problema Requisitos funcionais 7.2 Depois de entregue o programa pode sofrer actualizações 7.3 As componentes de código resultantes podem ser reutilizadas na solução de outros problemas 7.4 É produzida uma versão standalone 53 Referências Capítulo 3 de Essential MATLAB for Engineers and Scientists, Brian Hahn e Dan Valentine (2007) Elsevier. Secção 2.1 de Matlab: A Practical Introduction to Programming and Problem Solving, Stormy Attaway (2009) Elsevier

Projecto e Desenvolvimento de Programas

Projecto e Desenvolvimento de Programas Projecto e Desenvolvimento de Programas Projecto de programas Metodologia de desenvolvimento Construção de algoritmos Instituto Superior Técnico, Dep. de Engenharia Mecânica - ACCAII Programa de Computador

Leia mais

Computação e Programação

Computação e Programação Computação e Programação MEMec, LEAN - 1º Semestre 2015-2016 Aula Teórica 9 Abordagem ao projecto de programas s, Abordagem Top-Down, Modularidade Processo de Desenvolvimento Tipos de Erros e Casos de

Leia mais

Computação e Programação. MEMec - LEAN 1º Semestre

Computação e Programação. MEMec - LEAN 1º Semestre Computação e Programação MEMec - LEAN 1º Semestre 2010-2011 Instituto Superior Técnico, Dep. de Engenharia Mecânica - ACCAII Objectivos de CP Pretende-se promover o desenvolvimento de, Competências que

Leia mais

Computação e Programação

Computação e Programação Computação e Programação MEMec, LEAN - 1º Semestre 2015-2016 Aula Teórica 10 Exemplo de desenvolvimento de Programa Modular: Máquina de venda de bilhetes D.E.M. Área Científica de Controlo Automação e

Leia mais

DECivil Departamento de Engenharia Civil, Arquitectura e Georrecursos. Apresentação. Computação e Programação (CP) 2013/2014.

DECivil Departamento de Engenharia Civil, Arquitectura e Georrecursos. Apresentação. Computação e Programação (CP) 2013/2014. DECivil Departamento de Engenharia Civil, Arquitectura e Georrecursos Apresentação Computação e Programação (CP) 2013/2014 Aula 1 Objetivos Ficar a saber: funcionamento da unidade curricular (UC) Computação

Leia mais

Apresentação. Informação geral + Conceitos iniciais

Apresentação. Informação geral + Conceitos iniciais Apresentação Informação geral + Informação geral Página da cadeira Objectivos principais Compreender a importância dos algoritmos e dos programas de computador para a resolução de problemas em engenharia.

Leia mais

Computação e Programação

Computação e Programação Computação e Programação MEMec - LEAN 1º Semestre 2010-2011 Aula Teórica 5 Instituto Superior Técnico, Dep. de Engenharia Mecânica - Sistemas Alinhamento da AT 5 2 1 Alinhamento da AT 5 3 A empresa Metal

Leia mais

Instituto Superior Técnico, Dep. de Engenharia Mecânica - ACCAII Objectivos e tarefas

Instituto Superior Técnico, Dep. de Engenharia Mecânica - ACCAII Objectivos e tarefas Instituto Superior Técnico, Dep. de Engenharia Mecânica - ACCAII Objectivos e tarefas Aplicar os passos do processo de desenvolvimento para a construção de um algoritmo 1 Exercícios Resolvidos 1 - EXERCÍCIO

Leia mais

Funções definidas pelo programador: Passagem de argumentos Formas de Funções comuns Programas modulares

Funções definidas pelo programador: Passagem de argumentos Formas de Funções comuns Programas modulares Computação e Programação MEMec, LEAN - 1º Semestre 2014-2015 Aula Teórica 8 Funções definidas pelo programador: Passagem de argumentos Formas de Funções comuns Programas modulares D.E.M. Área Científica

Leia mais

Computação e Programação

Computação e Programação Computação e Programação MEMec, LEAN - 1º Semestre 2015-2016 Aula Teórica 1 Apresentação da disciplina A Computação e a Programação Aplicações à Engenharia Mecânica D.E.M. Área Científica de Controlo Automação

Leia mais

Computação e Programação

Computação e Programação Computação e Programação MEMec, LEAN - º Semestre 205-206 Expressões Relacionais Estruturas de Selecção Simples Genéricas Aula Teórica 5 D.E.M. Área Científica de Controlo Automação e Informática Industrial

Leia mais

Engenharia de Software

Engenharia de Software Sumário Engenharia de Software Modelos de desenvolvimento de software Fases de desenvolvimento Programação modular Abordagem top-down e bottom-up Linguagens de programação: Compilação / Interpretação Aplicação

Leia mais

Programação em MATLAB

Programação em MATLAB Programação em MATLAB Estruturas de Repetição Ciclo FOR Ciclos FOR encadeados Pré-alocação de variáveis Combinar ciclos FOR com a instrução IF Instituto Superior Técnico, Dep. de Engenharia Mecânica -

Leia mais

Análise do problema. Desenvolvimento de programas. Desenvolvimento do algoritmo. Análise do problema

Análise do problema. Desenvolvimento de programas. Desenvolvimento do algoritmo. Análise do problema Desenvolvimento de programas 1 Análise do problema 2 Análise do problema Desenvolvimento do algoritmo Codificação do programa Compilação e execução Teste e depuração Conhecer exatamente o que o problema

Leia mais

Introdução ao Python. Programa Computacional

Introdução ao Python. Programa Computacional Programa Computacional É um algoritmo escrito em uma linguagem computacional (C, Fortran, Pascal, MATLAB, Python, etc.). É a tradução do algoritmo para uma linguagem que será interpretada pelo computador.

Leia mais

Desenvolvimento de programas

Desenvolvimento de programas 1 Desenvolvimento de programas Análise do problema Desenvolvimento do algoritmo Codificação do programa Compilação e execução Teste e depuração 2 Análise do problema Conhecer exatamente o que o problema

Leia mais

Desenvolvimento de programas. Análise do problema. Análise do problema. Análise do problema. Desenvolvimento do algoritmo. Codificação do programa

Desenvolvimento de programas. Análise do problema. Análise do problema. Análise do problema. Desenvolvimento do algoritmo. Codificação do programa Desenvolvimento de programas 1 Análise do problema Desenvolvimento do algoritmo Codificação do programa Compilação e execução Teste e depuração Análise do problema 2 Conhecer exatamente o que o problema

Leia mais

Computação e Programação

Computação e Programação Computação e Programação 3ª Aula de Problemas Instituto Superior Técnico, Dep. de Engenharia Mecânica - ACCAII Exercícios Resolvidos [Baseado no Livro 1] (Ver referências no último slide) 2.28 Pretende-se

Leia mais

Programação em MATLAB

Programação em MATLAB Programação em MATLAB Desenvolvimento de software em MATLAB Scripts ou M-files Funções definidas pelo programador Estruturas de Selecção Instituto Superior Técnico, Dep. de Engenharia Mecânica - ACCAII

Leia mais

Engenharia de Software Processo de Desenvolvimento. Ciclo de Vida - Modelo Cascata

Engenharia de Software Processo de Desenvolvimento. Ciclo de Vida - Modelo Cascata Processo de Desenvolvimento Também chamado de ciclo de vida do software Reflete os passos necessários para se construir um produto de software Existem vários modelos de ciclo de vida Cascata (1956) Iterativo

Leia mais

Verificação e Validação (V & V)

Verificação e Validação (V & V) Verificação e Validação (V & V) Objetivo: assegurar que o software que o software cumpra as suas especificações e atenda às necessidades dos usuários e clientes. Verificação: Estamos construindo certo

Leia mais

Computação e Programação

Computação e Programação Computação e Programação MEMec - LEAN 1º Semestre 2010-2011 Aula Teórica 16 Instituto Superior Técnico, Dep. de Engenharia Mecânica - ACCAII Alinhamento da AT 16 Estrutura try-catch Processo de leitura/escrita

Leia mais

Resolução de Problemas com Computador. Resolução de Problemas com Computador. Resolução de Problemas com Computador

Resolução de Problemas com Computador. Resolução de Problemas com Computador. Resolução de Problemas com Computador Prof. Araken Medeiros araken@ufersa.edu.br O processo de resolução de um problema com um computador leva à escrita de um algoritmo ou programa e à sua execução. Mas o que é um algoritmo? Angicos, RN 15/9/2009

Leia mais

Computação e Programação

Computação e Programação Computação e Programação MEMec, LEAN - 1º Semestre 2015-2016 Aula Teórica 25 Interfaces Gráficas do Utilizador (GUIs) Programação event-driven GUIs no MATLAB Componentes e handles Estrutura do código no

Leia mais

Computação e Programação

Computação e Programação Computação e Programação MEMec, LEAN - 1º Semestre 2015-2016 Aula Teorica 18 Algoritmos de ordenação Função sort D.E.M. Área Científica de Controlo Automação e Informática Industrial Wrap Up da última

Leia mais

Computação e Programação

Computação e Programação Computação e Programação MEMec - LEAN 1º Semestre 2010-2011 Aula Teórica 10 Instituto Superior Técnico, Dep. de Engenharia Mecânica - ACCAII Alinhamento da AT 10 Passagem de argumentos por valor Âmbito

Leia mais

Computação e Programação

Computação e Programação Computação e Programação MEMec - LEAN 1º Semestre 2010-2011 Aula Teórica 13 Instituto Superior Técnico, Dep. de Engenharia Mecânica - ACCAII Alinhamento da AT 13 Estruturas de dados Cell arrays Manipulação

Leia mais

Computação e Programação 2009 / 2010

Computação e Programação 2009 / 2010 Computação e Programação 2ª Aula de Problemas Instituto Superior Técnico, Dep. de Engenharia Mecânica - ACCAII Exercícios Resolvidos [Livro 1] (Ver referências no slide 20) 3.3 Write a program to convert

Leia mais

Processo de Desenvolvimento

Processo de Desenvolvimento Processo de Desenvolvimento Problema Análise Testes OK Codificação Testes OK Produção 1. Contexto do problema 2. Análise / síntese do problema 3. Esquema de processamento 4. e testes 5. Codificação 6.

Leia mais

Introdução à Programação. João Manuel R. S. Tavares

Introdução à Programação. João Manuel R. S. Tavares Introdução à Programação João Manuel R. S. Tavares Sumário 1. Ciclo de desenvolvimento de um programa; 2. Descrição de algoritmos; 3. Desenvolvimento modular de programas; 4. Estruturas de controlo de

Leia mais

Computação e Programação MEMec - LEAN

Computação e Programação MEMec - LEAN Computação e Programação MEMec - LEAN 2009-2010 Docentes: Miguel Pedro Silva - Responsável José Borges João Reis Instituto Superior Técnico, Dep. de Engenharia Mecânica - ACCAII Programa 1. Introdução

Leia mais

Computação e Programação

Computação e Programação Computação e Programação MEMec, LEAN - 1º Semestre 2015-2016 Aula Teórica 6 Estruturas de Repetição (FOR, WHILE) A instrução break Pré-alocação de variáveis D.E.M. Área Científica de Controlo Automação

Leia mais

RESOLUÇÃO. Computação e Programação (2009/2010-1º Semestre) 1º Teste (11/11/2009) Nome. Número. Leia com atenção os pontos que se seguem:

RESOLUÇÃO. Computação e Programação (2009/2010-1º Semestre) 1º Teste (11/11/2009) Nome. Número. Leia com atenção os pontos que se seguem: Computação e Programação (2009/2010-1º Semestre) 1º Teste MEMec - LEAN (11/11/2009) DURAÇÃO: 1h30m RESOLUÇÃO Leia com atenção os pontos que se seguem: Comece por escrever o seu nome e número nesta folha,

Leia mais

Computação e Programação

Computação e Programação Computação e Programação MEMec, LEAN - 1º Semestre 2015-2016 Aula Teórica 24 Introdução a linguagem compilada C D.E.M. Área Científica de Controlo Automação e Informática Industrial Wrap Up da última aula

Leia mais

Linguagens compiladas: C++ Fora do livro adoptado

Linguagens compiladas: C++ Fora do livro adoptado Linguagens compiladas: C++ Fora do livro adoptado (rep.) Conceitos iniciais Computador Um computador é genericamente uma máquina programável capaz de receber, processar, e fornecer informação. Computador

Leia mais

Computação e Programação

Computação e Programação Computação e Programação MEMec, LEAN - 1º Semestre 2015-2016 Análise da Simple GUI Exemplo Maquina de Somar Aula Teórica 26 D.E.M. Área Científica de Controlo Automação e Informática Industrial Wrap Up

Leia mais

Prof. Ms. Ronaldo Martins da Costa

Prof. Ms. Ronaldo Martins da Costa Prof. Ms. Ronaldo Martins da Costa Diferentes conjuntos de etapas que envolvem métodos, ferramentas e procedimentos utilizados no desenvolvimento de software CiclodeVidaClássico Prototipação Modelo Espiral

Leia mais

Programação I Apresentação

Programação I Apresentação Programação I Apresentação Prof. Carlos Alberto carlos.batista@facape.br carlos36_batista@yahoo.com.br Referências JUNIOR, D. P.; NAKAMITI, G. S.; ENGELBRECHT, A. de M. E.; BIANCHI, F. Algoritmos e Programação

Leia mais

Universidade Federal de Roraima Departamento de Matemática Introdução à Ciência da Computação

Universidade Federal de Roraima Departamento de Matemática Introdução à Ciência da Computação Universidade Federal de Roraima Departamento de Matemática Introdução à Ciência da Computação Tema nº1: Entrada e saída de dados Assunto: Elemos básicos sobre Arquitetura de Computadores Conceito de Hardware,

Leia mais

Estratégias de Testes Parte I

Estratégias de Testes Parte I Engenharia de Software III 5º. Semestre ADS Capítulo 9 Estratégias de Testes Parte I Profa. Dra. Ana Paula Gonçalves Serra Prof. Ms. Edson Saraiva de Almeida Agenda Exercício Profa. Dra. Ana Paula G. Serra

Leia mais

Algoritmos de ordenação. e de procura

Algoritmos de ordenação. e de procura Algoritmos de ordenação Ordenação e de procura Ordenação por selecção Ordenação por inserção linear Ordenação rápida A função sort Exemplos: Ordenar vectores de estruturas Ordenar strings Ordenar índices

Leia mais

Manipulação avançada de ficheiros

Manipulação avançada de ficheiros Manipulação avançada de ficheiros Modularidade na manipulação de ficheiros Caso de estudo Instituto Superior Técnico, Dep. de Engenharia Mecânica - ACCAII Revisão de instruções leitura/escrita comando

Leia mais

FACULDADE DE CIÊNCIA DE ENGENHARIA DE SOFTWARE MATRIZ CURRICULAR DO CURSO DE ENGENHARIA DE SOFTWARE PRIMEIRO PERÍODO SEGUNDO PERÍODO

FACULDADE DE CIÊNCIA DE ENGENHARIA DE SOFTWARE MATRIZ CURRICULAR DO CURSO DE ENGENHARIA DE SOFTWARE PRIMEIRO PERÍODO SEGUNDO PERÍODO FACULDADE DE CIÊNCIA DE ENGENHARIA DE SOFTWARE MATRIZ CURRICULAR DO CURSO DE ENGENHARIA DE SOFTWARE PRIMEIRO PERÍODO ESW200 Introdução à Engenharia de Software 2 36 30 - ESW201 Prática de Programação I

Leia mais

ISO/IEC 12207: Manutenção

ISO/IEC 12207: Manutenção ISO/IEC 12207: Manutenção O desenvolvimento de um sistema termina quando o produto é liberado para o cliente e o software é instalado para uso operacional Daí em diante, deve-se garantir que esse sistema

Leia mais

Programação de Computadores

Programação de Computadores Programação de Computadores Instituto de Computação UFF Departamento de Ciência da Computação Otton Teixeira da Silveira Filho Conteúdo Alguns Conceitos sobre Conceito de Algoritmo Pseudocódigo Tipos de

Leia mais

Matrizes como imagens Funções definidas pelo programador: Âmbito das variáveis Apresentação do projecto

Matrizes como imagens Funções definidas pelo programador: Âmbito das variáveis Apresentação do projecto Computação e Programação MEMec, LEAN - 1º Semestre 2015-2016 Aula Teórica 7 Matrizes como imagens Funções definidas pelo programador: Âmbito das variáveis Apresentação do projecto D.E.M. Área Científica

Leia mais

Computação e Programação

Computação e Programação Computação e Programação MEMec, LEAN - 1º Semestre 2015-2016 Aula teórica 15 Estruturas como argumentos de funções Exemplo Gestão de um Cine-Clube D.E.M. Área Científica de Controlo Automação e Informática

Leia mais

Lógica de Programação II

Lógica de Programação II Gilson de Souza Carvalho gaucho.gilson@hotmail.com 1 Carga Horária: 72 horas Nº Créditos: 04 aulas Objetivo: Lógica de Programação II Resolver problemas usando os comandos básicos da linguagem (C). Com

Leia mais

Programação Mestrado Integrado em Engenharia Aeronáutica 1º ano, 1º semestre. T. 04 Algoritmos e Programação Estruturada

Programação Mestrado Integrado em Engenharia Aeronáutica 1º ano, 1º semestre. T. 04 Algoritmos e Programação Estruturada Programação Mestrado Integrado em Engenharia Aeronáutica 1º ano, 1º semestre T. 04 Algoritmos e Programação Estruturada Objectivos: Aprender o conceito de algoritmo e suas características fundamentais

Leia mais

CAPÍTULO 1 O AMBIENTE DE DESENVOLVIMENTO DE SISTEMAS. Tereza Gonçalves Kirner

CAPÍTULO 1 O AMBIENTE DE DESENVOLVIMENTO DE SISTEMAS. Tereza Gonçalves Kirner CAPÍTULO 1 O AMBIENTE DE DESENVOLVIMENTO DE SISTEMAS Tereza Gonçalves Kirner Apresentação elaborada com base em: Hoffer, Jeffrey A., George, Joey F. Modern Systems Analysis and Design (Capítulo 1), Pearson,

Leia mais

Desenvolvimento de Aplicações Desktop

Desenvolvimento de Aplicações Desktop Desenvolvimento de Aplicações Desktop Conceitos Básicos de Programação Professor: Charles Leite O Desenvolvimento de Programas A programação consiste em indicar como o computador (hardware) deve trabalhar

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

Engenharia de Software Simulado para a 1ª Avaliação Bimestral Professor: Danilo Giacobo - RESPOSTAS

Engenharia de Software Simulado para a 1ª Avaliação Bimestral Professor: Danilo Giacobo - RESPOSTAS Engenharia de Software Simulado para a 1ª Avaliação Bimestral Professor: Danilo Giacobo - RESPOSTAS 1. Com relação à engenharia de software, julgue os itens seguintes. Engenharia de software não está relacionada

Leia mais

Processos de Software

Processos de Software Processos de Software Centro de Informática - Universidade Federal de Pernambuco Kiev Gama kiev@cin.ufpe.br Slides originais elaborados por Ian Sommerville e adaptado pelos profs. Márcio Cornélio, Vinicius

Leia mais

Introdução à Ciência da Computação

Introdução à Ciência da Computação 1 Universidade Federal Fluminense Campus de Rio das Ostras Curso de Ciência da Computação Introdução à Ciência da Computação Professor: Leandro Soares de Sousa e-mail: leandro.uff.puro@gmail.com site:

Leia mais

Processos de software

Processos de software Processos de software 1 Processos de software Conjunto coerente de atividades para especificação, projeto, implementação e teste de sistemas de software. 2 Objetivos Introduzir modelos de processos de

Leia mais

Computação e Programação

Computação e Programação Computação e Programação MEMec - LEAN 1º Semestre 2010-2011 Aula Teórica 15 Instituto Superior Técnico, Dep. de Engenharia Mecânica - ACCAII Alinhamento da AT 15 Manipulação avançada de ficheiros Leitura

Leia mais

SEM CÓDIGO DISCIPLINA LAB TEO

SEM CÓDIGO DISCIPLINA LAB TEO 1 Algoritmo e Linguagem de Programação 2 2 1 Matemática para Engenharias 4 1 Projetos de Engenharia 4 1 Teoria das Organizações 2 1 Empreendedorismo 2 1 Metodologia Científica e Tecnológica 2 1 Comunicação

Leia mais

Programação de Computadores

Programação de Computadores Programação de Computadores Instituto de Computação UFF Departamento de Ciência da Computação Otton Teixeira da Silveira Filho Conteúdo Alguns Conceitos sobre Linguagens Conceito de Algoritmo Pseudocódigo

Leia mais

Linguagens de Programação

Linguagens de Programação Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Linguagens de Programação DCA0800 - Algoritmos e Lógica de Programação Heitor Medeiros 1 Tópicos da aula

Leia mais

Engenharia de Software I Processos de desenvolvimento de SW. profa. Denise Neves

Engenharia de Software I Processos de desenvolvimento de SW. profa. Denise Neves I Processos de desenvolvimento de SW profa. Denise Neves profa.denise@hotmail.com 2018 Projeto Um projeto é um empreendimento temporário empreendido para alcançar um único conjunto de objetivos. (PMI,PMBOK

Leia mais

Introdução à Programação

Introdução à Programação Introdução à Program João Manuel R. S. Tavares Sumário 1. Ciclo de desenvolvimento de um programa; 2. Descrição de algoritmos; 3. Desenvolvimento modular de programas; 4. Estruturas de controlo de um programa.

Leia mais

Algoritmos e Programação

Algoritmos e Programação ESTADO DE MATO GROSSO SECRETARIA DE ESTADO DE CIÊNCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITÁRIO DE SINOP FACULDADE DE CIÊNCIAS EXATAS E TECNOLÓGICAS CURSO DE ENGENHARIA ELÉTRICA

Leia mais

Computação e Programação

Computação e Programação Computação e Programação MEMec, LEAN - 1º Semestre 2015-2016 Aula Teórica 2 Conceitos de Computação e de Programação Linguagens de Programação Introdução ao MATLAB Comandos básicos Variáveis e Constantes

Leia mais

Prof. Natalia Castro Fernandes Mestrado em Telecomunicações UFF 2º semestre/2012

Prof. Natalia Castro Fernandes Mestrado em Telecomunicações UFF 2º semestre/2012 Prof. Natalia Castro Fernandes Mestrado em Telecomunicações UFF 2º semestre/2012 Ementa do Curso Conceitos básicos de programação Orientação a objetos Linguagem Python Simulação com o NS-3 Programação

Leia mais

Outras Linguagens. Aulas 26 e 27. DECivil Departamento de Engenharia Civil, Arquitectura e Georrecursos

Outras Linguagens. Aulas 26 e 27. DECivil Departamento de Engenharia Civil, Arquitectura e Georrecursos DECivil Departamento de Engenharia Civil, Arquitectura e Georrecursos Outras Linguagens Aulas 26 e 27 Francisco Regateiro 1 Objetivos Revisitar os conceitos apresentados na 1ª aula. Reconhecer a aplicabilidade

Leia mais

Manipulação de strings e conversão entre tipos de dados

Manipulação de strings e conversão entre tipos de dados Manipulação de strings e conversão entre tipos de dados Avaliação de strings A função eval() A estrutura try-catch A função IS para strings Conversão entre tipos de dados Instituto Superior Técnico, Dep.

Leia mais

Ementário das disciplinas do curso de Engenharia de Software

Ementário das disciplinas do curso de Engenharia de Software Ementário das disciplinas do curso de Engenharia de Software Currículo 1 C201 Introdução à Engenharia CH Teórica 10 CH Prática 10 CH Total 20 cr 1 Introdução aos conceitos básicos e às aplicações de engenharia.

Leia mais

Programação de Computadores:

Programação de Computadores: Instituto de C Programação de Computadores: Introdução a Linguagens de Programação Luis Martí Instituto de Computação Universidade Federal Fluminense lmarti@ic.uff.br - http://lmarti.com Seis Camadas Problema

Leia mais

6.CONCLUSÕES CONCLUSÕES

6.CONCLUSÕES CONCLUSÕES 6.CONCLUSÕES 193 6 CONCLUSÕES Este trabalho apresentou uma proposta para modelagem e análise de Sistemas de Controle envolvidos na geração de energia elétrica hidráulica, tendo como base dois desenvolvimentos:

Leia mais

Algoritmos e Programação

Algoritmos e Programação ESTADO DE MATO GROSSO SECRETARIA DE ESTADO DE CIÊNCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITÁRIO DE SINOP FACULDADE DE CIÊNCIAS EXATAS E TECNOLÓGICAS Algoritmos e Programação

Leia mais

Programação de Computadores

Programação de Computadores Programação de Computadores Instituto de Computação UFF Departamento de Ciência da Computação Otton Teixeira da Silveira Filho Conteúdo Alguns Conceitos sobre Linguagens Paradigmas para linguagens de Programação

Leia mais

Ferramentas de Suporte

Ferramentas de Suporte Cálculo Numérico Módulo I Prof Reinaldo Haas Como estudar Métodos Numéricos? 2 Uso do método numérico Computador Programa Desenvolver Utilizar Verificar validade dos resultados obtidos 3 Programas para

Leia mais

Computação e Programação

Computação e Programação Computação e Programação MEMec, LEAN - 1º Semestre 2015-2016 Aula Teórica 20 Números complexos Tópicos Avançados sobre Funções Funções com número variável de argumentos de entrada e saída Funções como

Leia mais

Introdução à Programação LP JAVA

Introdução à Programação LP JAVA Introdução à Programação LP JAVA UEM Julho Dezembro 2012 Docente: eng a Tatiana D. Kovalenko AULA TEÓRICA 1 Tema 1. Desenho de Algoritmos Ø Resolução de problemas. Ø Algoritmo. Ø Pseudo-código. Ø Fluxograma.

Leia mais

Programação em MATLAB

Programação em MATLAB Programação em MATLAB Estruturas de Repetição Ciclo WHILE As instruções BREAK e RETURN A função ERROR Vectorização Instituto Superior Técnico, Dep. de Engenharia Mecânica - ACCAII Estruturas de repetição

Leia mais

Engenharia de Software

Engenharia de Software Engenharia de Software Arquitetura de Computadores Prof Kleber Akio Tanaka Igor Hondo João Jakybalis Sabrina Tavera Crise do Software Quando surgiu e o que foi? - A crise do software surgiu em 1970, quando

Leia mais

Engenharia Reversa e Reengenharia. Engenharia de Software Profa. Dra. Elisa Yumi Nakagawa 1º semestre de 2017

Engenharia Reversa e Reengenharia. Engenharia de Software Profa. Dra. Elisa Yumi Nakagawa 1º semestre de 2017 Engenharia Reversa e Reengenharia Engenharia de Software Profa. Dra. Elisa Yumi Nakagawa 1º semestre de 2017 Fases Genéricas do Ciclo de Vida Engenharia Sistemas Análise Projeto Codificação Testes Manutenção

Leia mais

Introdução ao RUP Rational Unified Process

Introdução ao RUP Rational Unified Process Introdução ao RUP Rational Unified Process UML Diagramas de Classes v.1.1, João Pascoal Faria, 2001 1 O que é Um processo (de engenharia) de software é a definição de um conjunto completo de actividades

Leia mais

Computação e Programação

Computação e Programação Computação e Programação MEMec, LEAN - 1º Semestre 2015-2016 Aula Teórica 22 Introdução a linguagem compilada C (2) Structs Ponteiros Arrays D.E.M. Área Científica de Controlo Automação e Informática Industrial

Leia mais

MINISTÉRIO DA EDUCAÇÃO CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DE MINAS GERAIS DIRETORIA DE GRADUAÇÃO

MINISTÉRIO DA EDUCAÇÃO CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DE MINAS GERAIS DIRETORIA DE GRADUAÇÃO DISCIPLINA: Linguagens de Programação CÓDIGO: 2ECOM.031 Data de Elaboração: Janeiro/2012 Carga Horária: Total: 30 h/a; Semanal: 02 aulas; Créditos: 02 Modalidade: Prática Classificação do Conteúdo pelas

Leia mais

Matriz Curricular do Curso de Engenharia de Computação. PRIMEIRO SEMESTRE Carga horária Componente curricular Código Prérequisito

Matriz Curricular do Curso de Engenharia de Computação. PRIMEIRO SEMESTRE Carga horária Componente curricular Código Prérequisito Matriz Curricular do Curso de Engenharia de Computação PRIMEIRO SEMESTRE horária Introdução à Engenharia de ECO 01-15 - 15 1 Computação Metodologia Científica LET 01-30 - 30 2 Física Geral I FSC 01-60

Leia mais

Gerência de Projetos de Software. Prof. Dr. João Dovicchi INE / CTC / UFSC.

Gerência de Projetos de Software. Prof. Dr. João Dovicchi INE / CTC / UFSC. Prof. Dr. João Dovicchi INE / CTC / UFSC dovicchi@inf.ufsc.br http://www.inf.ufsc.br/~dovicchi Programa Projetos e Metodologias Tipos e abordagens Organização Estimativas de Esforço e Gerência de Riscos

Leia mais

Puca Huachi Vaz Penna

Puca Huachi Vaz Penna BCC201 Introdução à Computação Turmas 31, 32 e 33 Puca Huachi Vaz Penna Departamento de Computação Universidade Federal de Ouro Preto http://www.decom.ufop.br/puca puca@iceb.ufop.br Aula 2 Introdução:

Leia mais

Introdução aos algoritmos computacionais

Introdução aos algoritmos computacionais CAPíTULO 1 Introdução aos algoritmos computacionais é um procedimento que descreve, sem ambiguidade, uma sequência nita de passos a serem seguidos em uma ordem especíca para resolver um problema ou aproximar

Leia mais

O Ensino de Ciência da Computação. Práticas de ensino de algoritmos (Hazzan, Cap. 3 / EAD Cap. 2) Péricles Miranda

O Ensino de Ciência da Computação. Práticas de ensino de algoritmos (Hazzan, Cap. 3 / EAD Cap. 2) Péricles Miranda O Ensino de Ciência da Computação Práticas de ensino de algoritmos (Hazzan, Cap. 3 / EAD Cap. 2) Péricles Miranda O Que é Ciência da Computação? Analise os argumentos abaixo: 1. Ciência é a observação,

Leia mais

No contexto informático. Requisitos

No contexto informático. Requisitos Nuno Melo e Castro Sistema Conjunto de itens interdependentes que interagem para realizar uma tarefa Um método ou conjunto de procedimentos que definem um comportamento Pode ser automatizado ou manual,

Leia mais

Algoritmos 3/17/ Algoritmos como área de estudo e investigação

Algoritmos 3/17/ Algoritmos como área de estudo e investigação Algoritmos e Complexidade Ana Teresa Freitas INESC-ID/IST ID/IST 3/17/2005 1 O que é um algoritmo? Algoritmos: Sequência de instruções necessárias para a resolução de um problema bem formulado [passíveis

Leia mais

Análise e projeto de sistemas

Análise e projeto de sistemas Análise e projeto de sistemas Conteúdo: UML O processo de desenvolvimento de software Prof. Patrícia Lucas A linguagem de modelagem unificada (UML) A UML teve origem em uma tentativa de se unificar os

Leia mais

Curso Profissional de Gestão e Programação de Sistemas Informáticos. Programação e Sistemas de Informação. Módulo 1. 2ª Parte Prof. Sandra Pais Soares

Curso Profissional de Gestão e Programação de Sistemas Informáticos. Programação e Sistemas de Informação. Módulo 1. 2ª Parte Prof. Sandra Pais Soares Curso Profissional de Gestão e Programação de Sistemas Informáticos Programação e Sistemas de Informação Módulo 1 2ª Parte Prof. Sandra Pais Soares Introdução à Lógica de Programação A elaboração de um

Leia mais

Análise e Projeto. Prof. Erinaldo Sanches Nascimento

Análise e Projeto. Prof. Erinaldo Sanches Nascimento Análise e Projeto Prof. Erinaldo Sanches Nascimento Objetivos Apresentar o ciclo de vida de desenvolvimento de sistemas. Descrever as metodologias de desenvolvimento de sistemas. 2 Introdução Programação

Leia mais

Engenharia de Software 1

Engenharia de Software 1 Universidade Federal de Alagoas (UFAL) Campus Arapiraca Engenharia de Software 1 02 - Introdução Alexandre de Andrade Barbosa alexandre.barbosa@arapiraca.ufal.br Alexandre de Andrade Barbosa alexandre.barbosa@arapiraca.ufal.br

Leia mais

PROCESSOS DE SOFTWARE

PROCESSOS DE SOFTWARE PROCESSOS DE SOFTWARE Atividades para especificar, projetar, implementar e testar sistemas de software 1 Processos de software Uma Visão Genérica: 3 Fases Definição - o que Engenharia do Sistema Planejamento

Leia mais

Estrutura e funcionamento básico de um computador

Estrutura e funcionamento básico de um computador Estrutura e funcionamento básico de um computador O que é um computador? Um computador é uma máquina composta por um conjunto de dispositivos electrónicos e electromecânicos capazes de processar informação.

Leia mais

OFICINA DA PESQUISA PROGRAMAÇÃO APLICADA À CIÊNCIA DA COMPUTAÇÃO

OFICINA DA PESQUISA PROGRAMAÇÃO APLICADA À CIÊNCIA DA COMPUTAÇÃO OFICINA DA PESQUISA PROGRAMAÇÃO APLICADA À CIÊNCIA DA COMPUTAÇÃO Prof. Msc. Carlos José Giudice dos Santos carlos@oficinadapesquisa.com.br www.oficinadapesquisa.com.br Compiladores e Interpretadores Compiladores

Leia mais

Engenharia de Computação

Engenharia de Computação 1º A 1S/2016 Noturno Central 2S/2016 (1º) Cálculo Instrumental Algoritmos Computacionais Geometria Analítica Química Aplicada à Engenharia Metodologia da Pesquisa Cálculo Instrumental Algoritmos Computacionais

Leia mais

Estruturas de dados complexas: cell arrays e structures

Estruturas de dados complexas: cell arrays e structures Estruturas de dados complexas: cell arrays e structures Cell arrays Criação de cell arrays Aceder a elementos Visualizar elementos Modificar elementos Eliminar elementos Guardar strings em cell arrays

Leia mais

Qualidade. Ana Madureira

Qualidade. Ana Madureira Qualidade Ana Madureira Qualidade da Informação A qualidade de uma informação é apreciada em função da sua pertinência (adaptação às necessidades do sistema de gestão). Três características permitem medir

Leia mais

Introdução à Programação

Introdução à Programação Introdução à Programação 1. Ano LCC-MIERSI DCC - FCUP Nelma Moreira Objectivos Introdução aos conceitos fundamentais da programação de computadores tendo por base o paradigma imperativo e a linguagem C.

Leia mais