Ambient Software Engineering Group Presenter: Dr. Juergen Rilling,
Concordia University
Department of Computer Science and Software Engineering
E-mail: [email protected]
Ambient = Seamless integration of heterogeneous systems in an open and flexible
way, while providing the means for adaptivity and context-awareness
Dr. Juergen Rilling 2 of 34
Agenda
1. Ambient Software Engineering1. Ambient Software Engineering
2. Application2. Application
3. Research Question3. Research Question
Dr. Juergen Rilling 3 of 34
Ambient Environment - Artifacts
DocumentsSubversion
Source
Code
Process
Other Artifacts
Change logs
feature
requests
Ambient
Environment
Highlights
• Conceptualized software maintenance process
• Developed an Ambient Software Process Support Environment.
Dr. Juergen Rilling 4 of 34Dr. Juergen Rilling
Applications
(Re-) establish traceability among artifacts to support comprehension
Artifact analysis, e.g., source code, document analysis
Process support through knowledge integration
Dr. Juergen Rilling 5 of 34
IDE Integration
Highlights• Ambient IDE integration – knowledge and resources become an integrated part
• Process guidance and maintenance/development activities are integrated
Dr. Juergen Rilling 6 of 34
Agenda
1. Ambient Software Engineering1. Ambient Software Engineering
2. Application2. Application
3. Research Question3. Research Question
Dr. Juergen Rilling 7 of 34Dr. Juergen Rilling
Applications - Artifact Analysis
Artifact Analysis:
•Unified ontological representation for the various artifacts.
•Use existing ontology reasoners to infer knowledge to support
• Semantic queries at the source code level
• Document analysis:
• Combine Natural Language Processing (NLP) and domain knowledge to
extract information.
Dr. Juergen Rilling 8 of 34Dr. Juergen Rilling
Applications - Traceability
Traceability:
Motivation:
• Discover/re-establish traceability links among existing and new artifacts through:
• Ontology alignment and merging.
• Shared concepts.
• Semantic queries across ontologies.
Dr. Juergen Rilling 9 of 34
Agenda
1. Ambient Software Engineering1. Ambient Software Engineering
2. Application2. Application
3. Research Question3. Research Question
Dr. Juergen Rilling 10 of 34
Research Questions
Is static analysis enough to deal with
cultural and technology changes in
software engineering?
Why don’t we seem to make any real
progress – beyond “patching”?