🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: ch.si.choose
Article #5

Seminar: Design by Contract using Java

#5
From: Silvano Maffeis
Date: Fri, 05 Dec 1997 00:00
116 lines
4905 bytes
Java Users Group Switzerland invites you to the following
seminar. This will be a rather technical talk aimed at Java developers.
The presentation will be ca. 45 minutes, followed by a discussion.

Please send e-mail to maffeis@acm.org if you are planning to attend.
Admission is free for JUGS members. For membership information visit
http://www.jugs.ch/

Best Regards,
The JUGS board

-------------------------------------------------------------------------------

                        Design by Contract using Java

                                 iContract 
                     a Tool that Supports UML compatible 
                      'Design by Contract' in Java(tm)

         Wednesday, December 17., 1997 1700-1900h, Technopark Zurich
                                 Reto Kramer 
                         Olsen & Associates, Zuerich
                               kramer@acm.org

SEMINAR ABSTRACT

Design by contract refers to the concept of viewing the interfaces among 
system components as contracts that are specified as integral parts of
the 
source-code. Based on this single source-code technique the
documentation and 
the generated assertion-check code can be guaranteed to always match
which is 
essential to the cost-effective adoption of dependable component based 
software-systems.

Until today, the explicit specification of contracts by means of class 
invariants and message pre- and post-conditions was only available to
Eiffel 
developers. iContract is the first tool that provides the same thorough
support
for Java, enabling developer's to take advantage of the following
benefits: 
(a) supports design for testability by enhancing the systems
observability 
(failure occurs close to fault), (b) uniform implementation of
invariant-, 
pre- and post-condition-checks throughout your team, (c) documentation
and 
code are always in synch and (d)semantic level specification of what 
requirements/benefits a class/message offers.

iContract is a freely available source-code pre-processor which
instruments 
the code with checks for class invariants, pre- and post-conditions that
may 
be associated with methods in classes and interfaces. Special comment
tags 
(e.g. @pre, @post) are interpreted by iContract and converted into
assertion 
checks code that is inserted into the source-code. The expressions are a 
superset of Java, compatible with a subset of the latest UML "Object 
Constraint Language (OCL)". Highlight features include old- and
return-value 
references in post-conditions, implications and the naming of exception
classes
to throw. iContract fully supports the propagation of invariants, pre-
and post-conditions via inheritance and multiple interface
implementation, as 
well as multiple interface extension mechanisms. The instrumentation
level 
(e.g. only pre-condition checks) can be chosen on a per file level
enabling 
fine grained, vertical (inheritance, implementation) and horizontal 
(delegation) performance control throughout your system. 

Due to the non-mandatory nature of the comment tags, source code that
contains 
design by contract annotations is still fully compatible with Java and
can 
thus be processed with standard java compilers enabling a risk-free
adoption 
of the technique in your organisation.

REGISTRATION

Please send e-mail to maffeis@acm.org if you are planning to attend.
The event is free of charge for JUGS members. For membership information
visit http://www.jugs.ch/

TRAVEL DIRECTIONS

From Zurich Main Station (Hauptbahnhof) by train or tram:
- Take any of the S3, S5, S6, S7, S9, or S1 trains from the main station
to 
  railway station "Hardbr�cke". It's a 2 minutes ride and from there 8
minutes 
  walking distance to the Technopark.
- Or take tram No. 4 from the main station to tram station
"F�rrlibuckstrasse". 
  It's a 15 minutes ride and from there 4 minutes walking distance to
the 
  Technopark.

By car:
We recommend taking a public transportation system. There are only few
parking lots available at the Technopark parking. Further parking lots
can be found at
Welti-Furrer and Cinemax.

Street address:
Technopark Z�rich, Technoparkstrasse 1, 8005 Z�rich 

Location map:
http://www.tpzh.ch/public/tpkr01de.htm
Technical Details
Message-ID: <3487A66E.41C67EA6@acm.org>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII
X-Google-Thread: 10843a,bf62f8710459a604,start
X-Google-Attributes: gid10843a,public
X-Google-Thread: f61ec,bf62f8710459a604,start
X-Google-Attributes: gidf61ec,public
X-Google-Thread: f778e,bf62f8710459a604,start
X-Google-Attributes: gidf778e,public
From: Silvano Maffeis <maffeis@acm.org>
Subject: Seminar: Design by Contract using Java
Date: 1997/12/05
Message-ID: <3487A66E.41C67EA6@acm.org>
X-Deja-AN: 295401665
Organization: Olsen & Associates, Zurich
Newsgroups: ch.si.choose,ch.si.general,ch.general