apresentacao curso-2017-08-08

46
8 de agosto de 2017 Núcleo Docente Estruturante (NDE) Instituto de Informática (UFG)

Upload: fabio-nogueira-de-lucena

Post on 22-Jan-2018

79 views

Category:

Education


2 download

TRANSCRIPT

8 de agosto de 2017

Núcleo Docente Estruturante (NDE)Instituto de Informática (UFG)

Vamos nos localizar no tempo...● Pegadas, as primeiras há 3.5 milhões de anos● Fomos andarilhos por 40.000 gerações● Há 30.000 anos as primeiras pinturas● Há 10.000 anos, domesticar plantas e animais● Há 6.000 anos surge a escrita● Moisés, Buda, Jesus, Maomé.● Há 400 anos, Galileu usou um telescópio.● Pegadas na lua (1969)

Engenharia de software surge por aqui

Cosmos: A Spacetime Odissey, 2014

Prim

eiro

pro

gram

aA

da L

ovel

ace

(núm

eros

de

Ber

noul

li)1842

John W. Tukey, 1958primeira citação conhecida do termo “software”.

1962(partes de um computador)

By Unknown - Image from Historic Computer Images, Public Domain, https://commons.wikimedia.org/w/index.php?curid=26254509

2017SBC (single board computer)

128 MB 1 porta EthernetRede sem fio 802.11n, ...PESO: 30g

http://vocore.io

Década de 50 ou 60Engenharia de Software

Douglas Ross (MIT) na década de 50Margareth Hamilton (Apolo 11)

Fonte: informationisbeautiful.net (2015)

Software pode ser “grande”?

http://www.artamene.org/

2.000.000 de palavras13.095 páginas

Des

afio

par

a de

sign

Algumas datas...● 1962 Departamento de Ciência da Computação (Pardue University)● 1969 Bacharelado em Ciência da Computação no Brasil (UNICAMP)● 1983 Bacharelado em Ciência da Computação (INF/UFG)● 1985 Graduação em Engenharia de Software (UK)● 2008 Bacharelado em Engenharia de Software (INF/UFG)● 2017 Segundo projeto pedagógico

Onde estamos?Para onde vamos?

Hoje

Brasão do Estado de Goiás

Bovinos, café, fumo, arroz, cana eriquezas minerais, dentre outros.

Ainda não inclui

software

Reformulamos o curso

Contexto

● Processo extenso (desde outubro/2014)

● Mais de 50 reuniões.

Objetivo do curso

Formar profissionais aptos a contribuir efetivamente com a produção de software de qualidade seguindo princípios éticos e postura profissional.

Formar profissionais aptos a contribuir efetivamente com a produção de software de qualidade seguindo princípios éticos e postura profissional.

Engenharia de Softwareé ferramenta, é meio a ser utilizado para produzir software.

Estrutura curricular

● 17 disciplinas do NC (Núcleo Comum)● 18 disciplinas do NE (Núcleo Específico)● 35 (total de disciplinas obrigatórias)● 09 disciplinas optativas

(estudante deve cursar pelo menos 3 delas)● 44 disciplinas ofertadas● 38 disciplinas cursadas (mínimo)

21 3 45

67

98

Nove semestres (320 horas cada)

Tempo

Exi

gênc

ias

para

apr

ovaç

ão

Núcleo Comum

Núcleo Específico

Prática em Engenharia de Software

320 horas

Organização das disciplinas

Núcleo Comum

Núcleo Específico

Prática em Engenharia de Software

4 semestres (17 disciplinas)

4 semestres(17 disciplinas)

1 semestre(1 disciplina)

OP

TATI

VA

S

3 disciplinas

Tem

po

Carga horária do curso

Núcleo Comum (NC) 1088Núcleo Específico (NE) 1600Optativas 192Núcleo Livre (NL) 128Atividades complementares 192

Total 3200 (mínimo)

320 horas

Distribuição da carga horária

Disciplinas por área (Matemática)● Cálculo 1A● Fundamentos de Matemática para Computação● Probabilidade e Estatística A● Álgebra Linear● Lógica Matemática

Disciplinas por área (Ciência da Computação)● Computação e Sociedade● Introdução à Programação (128h)● Arquitetura de Computadores● Algoritmos e Estruturas de dados 1 (e 2)● Programação Orientada a Objetos● Linguagens e Paradigmas de Programação● Análise e Projeto de Algoritmos● Interação Humano-Computador● Banco de Dados● Engenharia de Software● Projeto de Software

Disciplinas por área (Engenharia de Software)● Construção de Software (128h)● Modelagem de Software● Processos de Software● Engenharia de Sistemas● Design de Software (128h)● Domínios de Software● Processos de Qualidade de Software● Gerência de Projeto de Software● Software Concorrente e Distribuído● Experiência do Usuário de Software● Arquitetura de Software

● Requisitos de Software● Governança e Gestão de Serviços de

Software● Software para Computação Ubíqua● Software para Persistência de Dados● Padrões de Arquitetura de Software● Testes de Software● Prática em Engenharia de Software

(320h)

Distribuição da carga horária

Novo PPC

Curriculum Guidelines for Undergraduate Degreee Programs in Software Engineering (2014)

Distribuição conforme ênfase das disciplinas● SWEBOK● ISO/IEC 12207:2008

Pré-requisitos (optativas)

Pré-requisitos (obrigatórias) (Núcleo Comum)

Pré-requisitos (obrigatórias) (Núcleo Específico)

NÃO HÁ PRÉ-REQUISITOS

Qualquer ordem é recomendada

Recomendações (exemplos)

● Padrões de Arquitetura de Software após Arquitetura de Software

● Software Concorrente e Distribuído após Construção de Software

● ...

Organização de cada disciplina

● Ementa (cada tópico com carga horária)escopo bem-definido

● Bibliografias (básica e complementar)● Condições mínimas

qualidade

Disciplinas da Engenharia de Software

● Mais importante que o “nome” é a ementa (ESCOPO)● Condições mínimas para aprovação (QUALIDADE)● Transição da visão analítica para uma visão sistêmica● Disciplina não é “ilha” de conhecimento

Condições mínimas (o estudante deve estar apto a)

● Executar atividades com o nível especificado.○ Atividades são pertinentes ao escopo.○ O nível define “quão” bem a atividade deve ser realizada

● Todas as condições devem ser satisfeitas para a aprovação.

Condições são “mínimas”, não são as “esperadas” ou “desejadas”.

Níveis das atividades (condições mínimas)

● Segue instruções○ O estudante é capaz de realizar a tarefa.○ “Compila um programa seguindo passos fornecidos.”

● Faz com orientação○ O estudante realiza, eventualmente orientado.○ “Compilar programa, excepcionalmente orientado”

● Faz sem orientação○ O estudante realiza, com a qualidade esperada, sem apoio.○ “Compila, da forma recomendada, sem ajuda.”

Níveis (exemplo)

● Construção de SoftwareSoftware Concorrente e DistribuídoSoftware para Sistemas Ubíquos(faz com orientação) (nível)○ (tarefa) Usar e configurar ferramentas para edição, documentação,

compilação, depuração (debugging), build, teste, controle de versão, coleta de medidas (desempenho, consumo de memória, análise estática e cobertura), integração contínua, e aplicativos fundamentais de linha de comandos.

Contrato com o estudanteContrato com a sociedade

Instituto de Informática

Com

o to

rnar

real

?

Núcleo Docente Estruturante (NDE)● O NDE possui duas prioridades: colocar em prática o PPC e mantê-lo

relevante.● Qualquer questão que diz respeito às prioridades é do interesse do NDE e

pode resultar em ação. ● Toda ação necessariamente deve gerar valor e estar alinhada com as

prioridades. ● Uma ação constante e preconcebida é zelar por esses princípios.● O NDE entende que o diálogo é necessário e que a diversidade é natural,

assim como o confronto de ideias.

Cabe ao NDE, dentre outras atribuições...

Avaliar de forma contínua o PPC

Acompanhar e promover a qualificação de docentes

Acompanhar e promover a qualificação do corpo técnico-administrativo

1. “Ilustrar as novas disciplinas”

2. Qualificação

Prática em Engenharia de Software● Como gerir uma disciplina de 320 horas?● Quais os projetos?● Quem os define?● Quem estabelece atribuições aos estudantes?● Como acompanhar?

QualificaçãoConforme o Projeto Pedagógico, página 20:

“As disciplinas do BES foram definidas com substancial cruzamento de fronteiras de subáreasdo conhecimento da Engenharia de Software.”

Considerações finais

● Sugestões são bem-vindas!● Colaboradores/parceiros são esperados!● Entre em contato

[email protected]