SDA SE Wiki

Software Engineering for Smart Data Analytics & Smart Data Analytics for Software Engineering

User Tools

Site Tools


Other Stories

Factbase Manager

Description: One GUI element that is used consistently whenever a new factbase is created (by adding a corresponding nature), deleted (by removing the nature) or when factbases are shared. For instance, something like this:

Factbase Name Associated Project : Project Type
Base 1 Proj 1 : Prolog
Base 1 Proj 2 : Java
Base 2 Proj 3 : Java

Selective fact creation

Description: Create facts selectively just for a part of a project (e.g. a class or a set of classes).

Aim: Make it easy to test and debug analyses and transformations without having to split the test cases into multiple projects. The alternative would be to put each class (group of classes) into a different project.

GUI for existing features

Aim: make existing JT features visible and easily accessible via the GUI.

Irritating Behaviour, Incomplete Implementation

Show Source Locations for Packages

Problem Description: When doing a “Show in Java Editor” on the ID of a package, an arbitrary package declaration is displayed, even if there are multiple files in that package. The problem is that packages are the only type of Java AST elements for which one AST element has multiple source locations.

Feature Description: When doing a “Show in Java Editor” on the ID of a package, one should get

  • (at least) a warning if there are multiple source locations.
  • (ideally) a dialog saying that there are many source locations for the package declaration, a list of the files with

such declarations and the option to choose a particular file.

Aim: Avoid confusion and make it possible to view each file of a package.

Workaround: Dokument this and tell the user to use the query “classDefT(Cls,Pkg,_,_)” with the value of Pkg set properly and then to display the Cls in the editor. This workaround might be impossible in the middle of a multi-result query whose evaluation cannot be interrupted just for issuing a new query that checks a particular intermediate result.

Code Completion for PEF types in Prolog Editor and Console

Description: Provide code completion for PEF types, their number of arguments and the type of arguments. For instance, autoexpand “class” to “classDefT(ID, PARENT, NAME, MEMBERS)”.

  • Even better: Show for each argument a pop-up list of variables already used in the current scope letting the user choose one or generate a new one with a meaningful name.
  • Even much better: Restrict the shown pop-up list to the names of variables whose use is consistent with the syntactic type of the respective argument.

Suggested by: ??? during discussion of JT improvements (“speedboat session”).

How to show / hide use of JT by other Tools/Plugins

???

teaching/labs/xp/2008a/other.txt · Last modified: 2018/05/09 01:59 (external edit)

SEWiki, © 2025