Xl programming
This presentation is the property of its rightful owner.
Sponsored Links
1 / 24

XL Programming PowerPoint PPT Presentation

  • Uploaded on
  • Presentation posted in: General

XL Programming. Dr. Ir. I.S.W.B. [email protected] A. Azurat [email protected] Centre of Software Technology, Utrecht University. Research and school on generic programming, compiler construction techniques, program analysis, program transformation. Centre of Software Technology.

Download Presentation

XL Programming

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript

Xl programming

XL Programming

Dr. Ir. I.S.W.B. [email protected]

A. Azurat [email protected]

Centre of software technology utrecht university

Centre of Software Technology, Utrecht University

Research and school on generic programming, compiler construction techniques, program analysis, program transformation.

Centre of software technology

Centre of Software Technology

  • 25 people, 3 profs, incl. 10 phd students

  • Headed by Prof. Dr. S.D. Swierstra

  • International oriented Master ProgrammeSee website: www.cs.uu.nlPhd opportunity is project based or by extern fund.

  • What do we do: next-generation software tools!

Centre of software technology1

Centre of Software Technology

  • Current research:

    • compiler generator

    • generic programming

    • program transformation tool

    • scalable verification

  • Network:

    • Collaboration with Ducth companies, including SERC

    • Member of Dutch research school IPA, the Institute for Programming research and Algorithmics.

    • Bolivia, Indonesia

Visit us

Visit us ...

In Utrecht, centrum of the Netherlands .... just 17 hrs away from Jakarta.

Software lifetime

Software Lifetime

  • Production

  • Maintenance

    • Repair

    • Improvement

    • Extension

  • Migration

Software cost

Software Cost

Not including migration....



  • Total IT expenditure ... not known.Estimation: 5% of total budget of medium + large companies, goverment agencies included.In the order of billion USD anually.

  • Big portion of this goes to maintenance.



  • Moving software to new hardware platform, or new software architecture.Driven by new HW/SW technology  will happen regularly.

  • Legacy software from 70's: large, undocumented, spagethi likeOften millions lines of code. Very expensive and risky to migrate  often requiring a big and long term project.

Why software so hard to maintain

Why Software so Hard to Maintain ?

Existing programming dogma:

Develop techniques to efficiently build complicated systems.

New dogma:

develop techniques to efficiently build and maintain

complicated systems.

Extreme programming





eXtreme Programming

  • New programming approach, by Kent Beck (Daimler-Chrysler), 1990

  • Very successful: stresses customer satisfaction.Stress is: team work, simplicity, feedback, courage

  • See: www.extremeprogramming.org

Program for today !

Test now !

Refactor !

Xl programming1

Because we can't keep the programmers!

XL Programming

  • We propose XL Programming

    • eXtra Long-lived

    • eXtreme + Life

  • Even more important role of testing:Long-lived application = program + executable specification

Life god programming

Life/God Programming


CreatureSystem consisting of critical functionalities

DNAProgram to build a system

BirthCompiling the DNA

EvolutionIncremental development of DNA

Natural selectionTest (executable!)

GearsSupport functionalities

Xl programming philosophy

XL Programming Philosophy

Separate critical core from the rest of the system

Non-critical functionalities are treated like use-and-throw products.

Xl programming philosophy1

XL Programming Philosophy

Program the critical core as abstract as possible

Auto-generate as much code as possible. This keep maintenance and migration effort low.

Keep the crititical core minimum and simple

Keep in mind, adding features and increasing cross-dependencies will directly impact maintenance and migration cost.

Xl programming philosophy2

XL Programming Philosophy

Build for this season! Build incrementally.

You're more able to adapt to changing requirement. Keep in mind that large projects may take several years.

Xl programming philosophy3

XL Programming Philosophy

Write (executable) specifications

You need them not only as documentation, but to auto-test programs. Neglecting this will multiply migration cost.

Where to find xlp tools

Where to find XLP tools ?

  • No-where...

  • Research idea for UI and UU

  • We do have the technologies to develop XLP tools

Needed technologies

Needed Technologies

  • Languages

    • You need suitable languages to describe and specify the core

  • Compiler

    • You need compilers to generate the application from the core to generate test programsCompiler theoryCompiler Generator technology (AG)Functional Programming

  • Executable specification: test and verification technologies

National research strategy

National Research Strategy

  • Transfer technologies to Indonesia

  • Market dumping

    • offer XLP tools at non-profit price

  • Where can UI position itself ?

    • Leading research and development of XLP tools

    • Training

How much research is needed

How much research is needed ?

  • A lot ... but it is within reach :Make use RUTI, RUT, RUK schemes.

  • What is important in any research: endurance.Patience. Maintain course, stay focus.

  • The economy of research: it's not hobby! Eventually, all the investment must end up in competitive products!!

What can you expect from this workshop

  • Some practical exposure to the technologies

  • Will give you a good start to learn them yourself

What can you expect from this workshop?

introduction to technologies needed for XLP

Workshop setup

Workshop Setup






application template


I like it a lot what next

I like it a lot, what next ?

  • Join the research team in UI

  • Apply to Master Programme of Software Technology at Utrecht University

  • Login