Semana Nacional de Ciência e Tecnologia (SNCT)
IFBA Campus Vitória da Conquista
19 a 21 de outubro de 2015
Minicurso: Prática em Laboratório
Minicurso 8: Linha de Produtos de Software (SPL) em Java: Teoria e Prática (4 h)
Palestrante: MSc Pablo Freire Matos (Prof. IFBA-VCA) e MSc Djan Almeida Santos (Prof. IFBA-VCA)
Local: IFBA/VCA - Laboratório de Linguagem de Programação II (C3/3)
Data: 20 de outubro de 2015 (terça-feira)
Horário: 14:00 - 18:00
Resumo: SPL vem do inglês Software Product Line e pode ser definido como um conjunto de produtos de softwares desenvolvidos a partir de uma modelo de recursos para satisfazer as necessidades específicas de um determinado domínio. Este modelo de recursos é o que facilitará a customização de um determinado software e a utilização de componentes reutilizáveis. Neste minicurso será abordado as teorias envolvendo SPLs, reuso sistemático de recursos de software e será desenvolvida uma pequena SPL em linguagem de programação JAVA.
Público Alvo: Estudantes e Profissionais
Pré-requisito: Conhecimento em programação
Conteúdo Programático
Introdução:
- Motivação
- Contextualização
- Objetivo
Conceitos:
- Linhas de Produtos de Software (SPL)
- Features
- Desenvolvimento de SPL
- Mapas de Produto
- Compilação Condicional
Criação/Instanciação de uma SPL
Prática: Implementação de SPL em Java
Estudo de Caso
Download
SPL:TuPI - Ferramenta para Instanciação de SPL
Referências
KANG, K.; COHEN, S.; HESS, J.; NOVAK, W.; PETERSON, A. Feature-Oriented Domain Analysis (FODA) Feasibility Study. Software Engineering Institute, Carnegie Mellon University, 1990.
KROPF, J. Java Preprocessor for Apache Ant. 2010. Disponível em: <http://git.slashdev.ca/javapp>. Acesso em: 19 out. 2015.
SPENCER, H.; COLLYER, G. #ifdef Considered Harmful, or Portability Experience With C News. San Antonio, TX: University of Toronto, 1992. p.
THÜM, T. FeatureIDE: Get Started. 2015. Disponível em: <http://wwwiti.cs.uni-magdeburg.de/iti_db/research/featureide/slides/featureide-2-getstarted.pdf>.Acesso em: 19 out. 2015.
THÜM, T.; KÄSTNER, C.; BENDUHN, F.; MEINICKE, J.; SAAKE, G.; LEICH, T. FeatureIDE: An extensible framework for feature-oriented software development. Science of Computer Programming, v. 79, p. 70-85, 2014.