Software Science Frits Vaandrager
Master Programme in Computing Science 2 years (120 ec), full time four specializations software science MFoCS data sciencecyber security
Super Power “It is amazing. I think it is the closest thing we have to super power!” Drew Houston, creator of Dropbox, on programming
Quality Software 4
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] y : [0..9] z : [0..9] 10 possible failures 100 possible failures 1000 possible failures
Software Science Research Develop theory, languages and tools that simplify the construction of reliable software systems. 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.
7 Models in the Development Process: Validation, Verification, and Testing system model validation (model-based) testing verification informal ideas and docs
8 E-Passport Model
Software Analysis
Software Technology Quest for ever greater abstractions that expand power while simplifying design: Functional/Generic Programming Domain Specific Languages
Joining RU!!
Foundations of Software
Software Metrics
Our Methodology: Practice as Laboratory
Structure of Software Science Programme
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: Type Theory and Coq Semantics and Domain Theory Co-algebra Complexity Theory or Computability Theory
Testing Techniques State-of-the-art testing in industry Model-based testing Model learning
Model Checking Theory + Application to real systems: Data-path of Océ printers Philips HUE smart lighting Die Bonder Strip Glue machine NXP 18
Research Internship Join one of our research groups Join our New Devices Lab!!
Research Intership Alexander Fedotov Benchmarking of FSM testing algorithms
Master Thesis Projects –Within industry –Within our institute –Abroad
Example MSc thesis project : Wouter Smeenk, Learning Model of Engine Status Manager of Océ Printer
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 informal ideas and docs
Job Perspective WouterFides MatthijsSander Paul Martijn
Why Software Science in Nijmegen? 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 Leading research on theory of computation See
27 Thank you