Master’s Theses on Programming Validation Tools at Michael Schwartzbach

Slides:



Advertisements
Similar presentations
Copyright 2001, ActiveState. XSLT and Scripting Languages or…XSLT: what is everyone so hot and bothered about?
Advertisements

Inside an XSLT Processor Michael Kay, ICL 19 May 2000.
Revision and exam preparation. major topic areas XML language –XML structure advantages/ disadvantages applications supports interoperability –DTD structure.
Microsoft Research March 20, 2000 A Programming Language for Developing Interactive Web Services Claus Brabrand BRICS, University of Aarhus, Denmark.
1 XML Data Management Course Outline and Organisation Werner Nutt.
Advanced Compiler Design CSE 231 Instructor: Sorin Lerner.
TOPIC A Practitioners view of Software Engineering Undergraduate and Graduate degree programs at FSU. What are the courses would add value to existing.
28/1/2001 Seminar in Databases in the Internet Environment Introduction to J ava S erver P ages technology by Naomi Chen.
Advanced Compilers CSE 231 Instructor: Sorin Lerner.
CSCD 555 Research Methods for Computer Science
All About the Master’s Thesis Michael I. Schwartzbach University of Aarhus Department of Computer Science.
Advanced Compilers CSE 231 Instructor: Sorin Lerner.
CIS105 Chapter 1 Theory Review. Page 2 Hardware and Software are the two major components o any computer system Hardware is the set of physical devices.
CS 330 Programming Languages 09 / 18 / 2007 Instructor: Michael Eckmann.
The Pointer Assertion Logic Engine Anders Møller Michael I. Schwartzbach CMSC 631 presentation: Nikolaos Frangiadakis.
Compilation 2007 What Have We Learned? Michael I. Schwartzbach BRICS, University of Aarhus.
Static Validation of Dynamically Generated XML Documents A survey on a series of papers by the BRICS research group at the University of Aarhus, Denmark.
Advanced Compilers CSE 231 Instructor: Sorin Lerner.
HENRIK BÆRBAK CHRISTENSEN ASSOCIATE PROFESSOR AARHUS UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE 1 Experimental Software Architecture Kandidat orientering.
DT228/3 Web Development JSP: Directives and Scripting elements.
InterLink William R. Cook UT Austin November 2008.
CS 330 Programming Languages 09 / 16 / 2008 Instructor: Michael Eckmann.
On the Correctness of Model Transformations Gabor Karsai ISIS/Vanderbilt University.
School of Computer ScienceG53FSP Formal Specification1 Dr. Rong Qu Introduction to Formal Specification
CS 101 Problem Solving and Structured Programming in C Sami Rollins Spring 2003.
All About the Master’s Thesis Michael I. Schwartzbach Gudmund S. Frandsen University of Aarhus Department of Computer Science.
Advanced XSL Concepts Transforming External Data Sources Vinit Varghese Implementation Manager, OmniUpdate.
Software Engineering 2003 Jyrki Nummenmaa 1 REQUIREMENT SPECIFICATION Today: Requirements Specification Requirements tell us what the system should.
Simplicity First: Use of Tools in Undergraduate CS and IS Teaching By David Naugler and Ken Surendran Southeast Missouri State University Computer Science.
NetTech Solutions Working with Web Elements Lesson 6.
Comp 311 Principles of Programming Languages Lecture 1 Course Overview and Culture Corky Cartwright August 25, 2008.
Cs3102: Theory of Computation Class 18: Proving Undecidability Spring 2010 University of Virginia David Evans.
AMNESIA: Analysis and Monitoring for NEutralizing SQL- Injection Attacks Published by Wiliam Halfond and Alessandro Orso Presented by El Shibani Omar CS691.
WWW8 - Toronto "A Runtime System for Interactive Web Services" May 12, 1999 A Runtime System for Interactive Web Services Claus Brabrand, Anders Møller,
Types for Programs and Proofs Lecture 1. What are types? int, float, char, …, arrays types of procedures, functions, references, records, objects,...
1 XML Data Management Course Outline and Organisation Werner Nutt.
JAVA SERVER PAGES. 2 SERVLETS The purpose of a servlet is to create a Web page in response to a client request Servlets are written in Java, with a little.
Domain Driven Web Development With WebJinn Sergei Kojarski College of Computer & Information Science Northeastern University joint work with David H. Lorenz.
Fundamental Programming: Fundamental Programming K.Chinnasarn, Ph.D.
1 Overview of XSL. 2 Outline We will use Roger Costello’s tutorial The purpose of this presentation is  To give a quick overview of XSL  To describe.
17-Nov-15 CS 521 About This Course. 2 CIS 521 The formal title of this course is “Advanced Web-Based Java Programming” The emphasis will likely be on.
Computer Programming 2 Why do we study Java….. Java is Simple It has none of the following: operator overloading, header files, pre- processor, pointer.
Comp 311 Principles of Programming Languages Lecture 1 Course Overview and Culture Corky Cartwright August 25, 2008.
The basics of the programming process The development of programming languages to improve software development Programming languages that the average user.
Sheet 1XML Technology in E-Commerce 2001Lecture 0 XML Technology in E-Commerce Klaas van den Berg & Ivan Kurtev 2000/2001 – trimester 3.
CSE 311 Foundations of Computing I Lecture 28 Computability: Other Undecidable Problems Autumn 2011 CSE 3111.
Modern Programming Language. Web Container & Web Applications Web applications are server side applications The most essential requirement.
SAFE KERNEL EXTENSIONS WITHOUT RUN-TIME CHECKING George C. Necula Peter Lee Carnegie Mellon U.
Course topics Representing programs Analyzing and transforming programs Applications of these techniques.
Session 29 Design of a Web Application Written by Thomas A. Pender Published by Wiley Publishing, Inc. November 2, 2011 Presented by Hyewon Kim.
Lecture Transforming Data: Using Apache Xalan to apply XSLT transformations Marc Dumontier Blueprint Initiative Samuel Lunenfeld Research Institute.
Operating systems depend on device drivers to communicate with attached hardware. A device driver is a collection of subroutines written in a low-level.
TESTING BASED ON ERROR GUESSING Rasa Zavistanavičiūtė, IFME-0/2.
Learn Django Python by Building Projects. Python is a programming language that allows programmers to express concepts in fewer lines of code in languages.
Slice & dice the Web with XmlPL, The XML Processing Language A presentation for Boise Code Camp 2007 Joseph Coffland Cauldron Development LLC.
Software Testing Training Online. Software testing is ruling the software business in current scenario. It provides an objective, independent view of.
Software testing techniques TESTING BASED ON ERROR GUESSING
Advanced Compiler Design
Types for Programs and Proofs
CSC 591/791 Reliable Software Systems
FORMAL LANGUAGES AND AUTOMATA THEORY
Reductions.
The J2EE Framework Java Technologies External Application.
Michael Robertson Yuta Takayama Google Closure Tools.
Object-Orientated Programming
A Match Made In (Ethereal) Heaven
PPT9: Asserting expectations
Language-based Security
강의 내용 및 방법 접근방법 리포트 시험 Lambda Calculus, Proof of Correctness
Advanced Compiler Design
Presentation transcript:

Master’s Theses on Programming Validation Tools at Michael Schwartzbach

MTP2 Who are we? Michael Schwartzbach (lektor) Anders Møller (adjunkt) Claus Brabrand (post doc.) Aske Simon Christensen (ph.d.) Christian Kirkegaard (ph.d.) Currently 4-8 Master’s students

MTP3 What’s the Problem? Rice’s Theorem: Every interesting question about programs in a Turing complete language is undecidable. Workarounds: –Ask uninteresting questions (rejected :-) –Settle for approximate answers (we like this) –Don’t use Turing complete languages (sometimes)

MTP4 What do we do? High-level domain-specific language design Program analysis and verification Implementation of efficient tools General purpose languages (mostly Java) WWW/XML software development

MTP5 Some Recent Projects JWIG (static validation of Web services) XACT (static validation of XML transformations) DSD (expressive schema language for XML) JSA (analysis of string expressions in Java) METAFRONT (safe syntax transformations) PALE (deciding assertions about pointers) MONA (world’s fastest implementation of M2L)

MTP6 Some Recent Thesis Topics Control-flow analysis of Servlets and JSP (2005) A domain-specific language for Web surfing (2005) Understanding shape analysis (2005) Static validation of XSLT (2004) Survey of automatic error checking techniques (2004) Specification and validation of Web services (2004) Contracts for Web service development (2004) Extensible syntax transformation (2003) Static bounds on memory usage in Java (2002) Automatic validation of Web forms (2002)

MTP7 Typical Template for Thesis Work –Identify practical problem –Come up with a really good idea (or get one from us :-) –Survey literature –Develop necessary theory –Implement a tool –Run experiments

MTP8 Some Statistics Out of 32 Master’s students, all have: –Written a report of 100 pages –Written at least 10,000 lines of code Groups are encouraged: –Average group size is 1.4 Many theses solve real problems: –Publication rate is 40%

MTP9 Recent Courses dWebTek (2004, 2005) dRegAut (2004, 2005) Concurrency (T-IT) (2004, 2005) dOvs (2005) Interactive Web Services (2002) Software Validation (2003) Static Analysis (2003, 2004, 2005) Advanced XML (2004)