﻿<?xml-stylesheet type="text/xsl" href="templates/doc.xsl"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.0//EN" "http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd">
<html
	xmlns="http://www.w3.org/1999/xhtml"
	xmlns:doc="http://www.lepus.org.uk/doc"
	xmlns:classz="http://www.lepus.org.uk/classz"
	xmlns:fopl="http://www.lepus.org.uk/fopl"
	xml:lang="EN-GB">

  <head>
    <link rel="stylesheet" type="text/css" href="templates/doc.css" />
    <title>LePUS3 and Class-Z Home Page</title>
    <meta name="Author" content="Amnon H Eden" />
    <!--For Yahoo and Google registration-->
    <meta name="y_key" content="d815f1266adac0b9" />
    <meta name="verify-v1" content="GECDDQsyiSYgm0Iz44L+8cCK6Nrf+FJ/DLkXeJ1hWxM=" />
  </head>

  <body>

    <p class="pagetitle">LePUS3 and Class-Z Home Page</p>

    <p class="quote">
      <em>
        Visual representations of evidence should be governed by
        principles of reasoning: Clear and precise seeing becomes as one with clear and
        precise thinking.
      </em>
      <br />-- Edward R. Tufte
    </p>

	<table style="float:right">
		<tr>
			<td style="width: 310px">
				<center>
					<a href="http://www.lepus.org.uk/ref/book/" style="border:none; background:none" >
						<img alt="" src="images/codecharts-front-200x300.png" />
					</a>
					<a href="http://www.lepus.org.uk/ref/book/">
						<strong>Codecharts: Roadmaps and Blueprints for Object-Oriented Programs</strong>
					</a> (Wiley/Blackwell, 2011)
				</center>
			</td>
		</tr>
	</table>

	LePUS3 is a visual object-oriented design description language: 
    	a notation for for modelling and visualizing object-oriented programs at any level of abstraction.
    	LePUS3 is tailored to allow <a href="http://ttp.essex.ac.uk">tool support</a> 
	in software modelling, fully automated design verification, and software 
	visualization. 
		A diagram in LePUS3 is called a 'Codechart'. 
		Class-Z is the symbolic counterpart to LePUS3: each LePUS3 Codechart has an equivalent Class-Z schema.

    <ul>
      <li><a href="about.xml">About</a> LePUS3 and Class-Z</li>
      <li><a href="ref/lepus3-tutorial.pdf">Tutorial</a>: Object-Oriented Modelling with LePUS3 and Class-Z [<a href="ref/lepus3-tutorial.pdf">.pdf</a>][<a href="ref/lepus3-tutorial.ppt">.ppt</a>]</li>
      <li><a href="ref/legend/legend.xml">Legend</a>: Key to LePUS3 and Class-Z Symbols</li>
      <li><a href="ref/refman/refman.xml">Reference Manual</a> for LePUS3 &amp; Class-Z</li>
    </ul>

    <p>Modelling design patterns:</p>
    <ul>
		<li>
			<a href="ch11-modelling-design-patterns.pdf">Modelling design patterns</a>, 
			Chapter 11 of Codecharts: Roadmaps and Blueprints of Object-Oriented Programs
		</li>	
		<li><a href="ref/companion/">The &#39;Gang of Four&#39; Companion</a>: 
		Formal specification of design patterns in LePUS3 and Class-Z</li>
		<li><a href="ref/companion/Composite.xml#Sample_Implementations">
          		Composite pattern</a>: Implementation in Java&#39;s Abstract Windowing 
		Toolkit--AWT</li>
    </ul>
    
    
    <p>Modelling&nbsp; programs and class libraries:</p>

    <ul>
      <li><a href="/spec/closed/java3d/java3d.xml">Java 3D 1.5.2 API</a>
      </li>
      <li><a href="ref/companion/Composite.xml#Sample_Implementations">
            java.awt</a> (Java SDK 1.4)
      </li>
      <li>
        <a href="spec/closed/JDOM/jdom.xml">JDom</a>
      </li>
      <li>
        <a href="http://ttp.essex.ac.uk/index.php?page=jgraph">JGraph</a>
      </li>
      <li>
        <a href="ref/companion/AbstractFactory.xml#Sample_Implementations">Widget Factories</a>: implementation of the Abstract Factory pattern)
      </li>
      <li><a href="ref/companion/Iterator.xml#Sample_Implementations">Collections and Iterators in java.util</a>: implementation of the Iterator pattern (Java SDK 1.4)</li>
    </ul>

    <p>Modelling application frameworks</p>
    <ul>
      <li><a href="spec/hybrid/rmi/rmi.xml">Java Remote Method Invocation</a> (toy example)</li>
      <li><a href="spec/hybrid/ejb/">Enterprise JavaBeans</a></li>
      <li><a href="http://ttp.essex.ac.uk/index.php?page=junit">JUnit</a></li>
    </ul>

    <p>Verification: Sample models and Abstract Semantics for Java 1.4 [<a href="ref/verif/verif.pdf">.pdf</a>]</p>
    <ul>
      <li><a href="ref/verif/1java_as.xml">Part I</a>: Abstract Semantics for Java 1.4  Programs</li>
      <li><a href="ref/verif/2case_studies.xml">Part II</a>: Sample Models</li>
      <li><a href="ref/verif/iterator.xml">Case study</a>: The Iterator pattern</li>
    </ul>

Links:

    <ul>
      <li><a href="http://ttp.essex.ac.uk/">The Two-Tier Programming Project</a>: Tool support in software specification, verification, and visualization</li>
    </ul>

  </body>

</html>
