Upload
christine-stevens
View
217
Download
1
Tags:
Embed Size (px)
Citation preview
Master Programme in Computing Science
• 2 years (120 ec), full time
• four specializations
software science
MFoCS
data science cyber security
Deep Scientific Questions !
• How can we control the complexity of software?
• How can we ensure correctness?
x : [0..9]
y : [0..9]
x : [0..9]
x : [0..9]
y : [0..9]
z : [0..9]
10 possible failures
100 possible failures
1000 possible failures
Software Science Research
Central to research carried out in Nijmegen are models and modeling.
We explore the systematic use of models as the primary artifacts
throughout the engineering lifecycle of computer-based systems.
We do research on:
• Domain specific modelling languages
• Model learning, their manual construction
and automatic generation
• Model-based reasoning, model-based testing,
verification and validation
11
Models in the Development Process:Validation, Verification, and Testing
system
model
validation
(model-based) testing
verification
informalideas and docs
Software Technology
Quest for ever greater abstractions that expand power while simplifying design:
• Functional Programming
• Domain Specific Languages
Courses in the Software Science Specialization
Basic courses
Advanced Programming Testing Techniques
Model Checking
Electives Courses
Software Technology/Engineering:
Compiler Construction Design of Embedded Systems System Development Software Security
Computer-Aided Analysis:
Software Analysis Automated Reasoning Proof Assistants
Theory of Computation (at least 1 course):
Type Theory and Coq Semantics and Domain Theory Co-algebra Complexity Theory or Computability Theory
Model Checking
Theory + Application to real systems:
• Data-path of Océ printers
• Philips HUE smart lighting
• Die Bonder Strip Glue machine NXP
20
Example MSc thesis project : Wessel van Staal,
Agent Based Simulation with iTasks for Navy Patrol Vessels
Example MSc thesis project : Danny Hendrix,
Model-Based Analysis of Indoor Lighting Systems
system
model
validation
(model-based) testing
verification
informalideas and docs
Why Software Science?
• Software science underpins technologies of 21st century
• Unique expertise on software technology
• Unique range of software analysis techniques+ application down to practical/commercial use in industry
• Unique concentration of researchers working on theory of computation
• See http://www.ru.nl/english/education/masters/computing-software/