Speaker: Yishai Feldman,  IBM Research - Haifa

A selection from the following topics, based on time and interest: 

1. PORTALS: Enhanced Requirements 

PORTALS is a research project whose goal is to create tools to assist requirements engineers in incrementally raising the formalization level of system requirements, and to use formalized requirements to 
provide feedback on the quality of the requirements (e.g., identifying omissions and contradictions), and create downstream artifacts (e.g., models, monitors, tests, code).  I will show an initial demo of PORTALS capabilities, going from natural-language requirements to a partial implementation. 

2. Flexible Queries over Engineering Data 

The design of complex systems involves many engineering disciplines, and many different tools and formalisms.  Solutions such as IBM Rational Engineering Lifecycle Management (RELM) present a unified view of information collected from multiple tools.  Various queries and reports are predefined, but engineers need to define their own custom queries, based on their specific processes or products. 

This talk presents a classification of various types of useful queries and rules over the combined information.  Some rules could not be expressed precisely, because of missing information in the repositories.  Other rules had to be stated at a lower level of abstraction than desired, because of the level of the concepts in the repository.  I will give examples and suggests ways to remediate these issues. 

A visual query formalism based on SysML object diagrams to express these queries is described.  The visual query language has been implemented and used to express rules and find violations in two repositories. 

3. Higher-order functional programming in mainstream languages 

I will show examples from Chapter 1 of Abelson and Sussman's Structure and Interpretation of Computer Programs and how they can be implemented in Java 7/8, JavaScript, Scala, Xtend, and Haskell.  Some of these lend themselves better to the expression of functional idioms than others, and we will discuss the differences. 
_________________________________________________