Loading user information from Channel 9

Something went wrong getting user information from Channel 9

Latest Achievement:

Loading user information from MSDN

Something went wrong getting user information from MSDN

Visual Studio Achievements

Latest Achievement:

Loading Visual Studio Achievements

Something went wrong getting the Visual Studio Achievements

The Verification Corner - Stepwise Refinement

22 minutes, 13 seconds


Right click “Save as…”

In this episode of The Verification Corner, Kuat Yessenov and Rustan Leino, Principal Researcher in the Research in Software Engineering (RiSE) group at Microsoft Research,  show how a program can be constructed by stepwise refinement.  First, a high-level description of the program is given.  Then, some more detailed pseudo-code is developed.  Finally, an efficient data-structure representation is chosen and the corresponding changes to the program are written. There are several potential advantages of this approach.  One is that it lets the programmer design the program in finer and finer levels of granularity, rather than having to write all the fine details into the program text at once.  At each level, the verification tool kicks in and checks the correctness, thus proving feedback to the programmer.  A second advantage is that the more abstract descriptions of the program stay around, in a machine readable form that makes sure they stay up-to-date.  This means a new programmer on the project can start reading the more abstract versions in order to understand the program.

The Verification Corner is a show on Software Verification Techniques and Tools. The show is produced by the Research in Software Engineering team (RiSE), which coordinates Microsoft's research in Software Engineering in Redmond, USA.


Follow the discussion

  • Oops, something didn't work.

    Getting subscription
    Subscribe to this conversation
  • Zooming into the editor window, those fonts look amazing.

  • bryaneddsbryanedds An ​individuali​st is he who is saving himself from all those who are saving the world.

    Very great work!

    Now, just get the first step to compile while making the successive steps necessary only when justified by performance needs. I'll bet very few refinements will be needed in practice even for real time programming (assuming you have a reasonable GC algorithm unlike on the .Net Compact Framework for the Xbox 360).

  • RyanRyan

    Those fonts really are awesome, i used the .net framework to build an app for my site,
    Canvas Paintings

Remove this comment

Remove this thread


Comments closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums, or Contact Us and let us know.