Software Science Jan Tretmans
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
4 What do Dykes, Wafer Scanners, and Shops have in common ?
5
6
Quality Software 8
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 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 informal ideas and docs
12 E-Passport Model
Software Analysis
Software Technology Quest for ever greater abstractions that expand power while simplifying design: Functional Programming Domain Specific Languages
Foundations of Software
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 (at least 1 course): 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 20
Research Internship Join one of our research groups Join our New Devices Lab!!
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? 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
28 Thank you