Software Testing and Analysis
Software Test Automation
Focuses on the development of novel techniques and tools to improve testing effectiveness and efficiency, particularly through automatic test generation based on models and patterns.
Automatic Fault Localization and Debugging
Focuses on the development of novel techniques and tools to improve debugging efficiency and effectiveness.
Software Design and Construction
Model-Driven Software Engineering
Focuses on the development of novel generative and interpretative model-driven engineering approaches, for rapid application development and adaptation, ensuring quality by construction.
Software Architecture and Design
Focuses on mining, documentation and use of structures and successful software architectures to build systems with a high design quality, easy to understand and evolve through the application of design strategies and methods more effective for the given requirements.
Software Process Engineering and Knowledge Management
Software Process Engineering
Concerned with the improvement of the methods and processes of software development to achieve higher levels of productivity, predictability and quality.
Software Knowledge Management
Addresses the capture, preservation, organization, dissemination and evolution of all the relevant knowledge involved in software development projects, from artefacts, processes and activities, to project management information.