Guia de Cursos

Queres conhecer a oferta de cursos da NOVA, nas áreas das licenciaturas, mestrados e doutoramentos?
No nosso Guia de Cursos encontras informação útil sobre Faculdades, Institutos e Escolas.
Podes ainda aceder a informações complementares necessárias a uma completa integração.

saber mais Guia de Cursos

Faculdade de Ciências e Tecnologia

Linguagens para Domínios Específicos

Código

8287

Unidade Orgânica

Faculdade de Ciências e Tecnologia

Departamento

Departamento de Informática

Créditos

6.0

Professor responsável

Luís Manuel Marques da Costa Caires, Vasco Miguel Moreira do Amaral

Horas semanais

4

Total de horas

58

Língua de ensino

Português

Objectivos

Objectivos

Saber
  • Entender riscos e oportunidades de DSL versus GPL.
  • Aprender técnicas de análise de Domínio.
  • Aprender ferramentas formais e prácticas de desenvolvimento de DSLs relacionando com conhecimentos adquiridos noutras disciplinas.
  • Conhecer exemplos de domínio de aplicação de DSLs.
  • Aprender a avaliar uma linguagem do ponto de vista de usabilidade.
  • O processo completo de Engenharia das DSLs
Fazer
  • Conhecer ferramentas de desenvolvimento de DSLs.
  • Conhecer as vias de investigação correntes sobre DSLs.
  • Dado um problema num domínio especifico,saber como desenvolver uma DSL de raiz.
Soft-Skills
  • Desenvolver valências em apresentação oral e escrita de ideias, desenvolver espirito crítico.
  • Lidar com prazos de projectos.
  • Modelação.
  • Desenvolver soluções efectivas.

Conteúdo


  • Motivação para o estudo das LDEs
  • Definição de LDE
  • Vantagens Vs. Desvantagens
  • Comparação LDEs Vs. LPG (Linguagens de Propósito Geral)
  • Textual Vs. Visual
  • Engenharia de Linguagens
  • A linguagem de "Feature Models"
  • Introdução  à Engenharia de Domínio
  • Desenvolvimento de Software Orientado a Modelos e Linhas de Produtos de Software
  • Abordagem formal para desenvolvimento de LDEs
  • O conceito de MetaModelo de Linguagens (e ferramentas)
  • Sintaxe Concreta e Abstracta
  • Frases bem formadas (impondo restricções com OC
  • Semântica de Linguagens
  • Transformação e Composição de Modelos
  • Outras abordagens para implementação de LDEs
  • Casos de Estudo em Domínios diferentes
  • Avaliação experimental de LDE

Bibliografia

 

Site da Disciplina

A colocar em breve

Livro Recomendado e leitura obrigatória:

  • Steven Kelly, Juha-Pekka Tolvanen, "Domain-Specific Modeling", IEEE Wiley, 2008
  • Colecção de artigos significativos adequados ao tópico abordado em cada aula prática.Colecção de slides da cadeira. Folhas de exercícios propostos.

Leitura Complementar:

  • "Generative Programming Methods, Toolss and Applications", Krzystof Czarnecki, Ulrich Eisenecker,Addison-Wesley, 2000.
  • "Software Factories", Jack Greenfield and Keith Short, Wiley Publishing , 2004.
  • "Introduction to the Theory of Programming Languages", bertrand Meyer, Prentice Hall, 1990.
  • "Software Language Engineering: Creating Domain-Specific Languages Using Metamodel", Anneke Kleppe,Addison-Wesley Professional; 1st edition, 2008.

Método de ensino

Os conceitos introdutórios de LDEs são apresentados aos alunos através de exemplos práticos e com uso de formalismos e ferramentas.

Para a maturação dos conceitos, é realizado um conjunto de exercícios nas aulas práticas onde os alunos deverão aplicar os conhecimentos adquiridos.

Os alunos vão sendo avaliados ao longo do semestre através do desenvolvimento de um trabalho prático e por testes ao longo do semestre.

Método de avaliação

A nota final na cadeira é calculada da seguinte maneira:

Nota_FInal=30% MiniTestes + 70% Projecto

A) MiniTestes:


T = 3 mini-testes de 35 minutos cada durante o semestre

Datas provisórias:
primeiro semana 4 (18 de Março)
segundo semana 8 (15 de Abril)
terceiro semana 13


Nota mínima da soma dos 3 superior a 9,5

B) Projecto. Este projecto será dividido em quatro etapas/módulos:
P= 20% Entregavel 1 (semana 4) + 20% Entregável 2 (semana 9) + 20% Entregável 3 (semana 12) + 10% Workshop de apresentação do projecto (semana 14)
 
Projecto > 9,5 => Frequência

Frequência em projectos anteriores permite exame de recurso onde nota é nota projecto 70% + Nota exame 30%

Cursos