This site contains older material on Eiffel. For the main Eiffel page, see http://www.eiffel.com.

Institute of Object Technology

Eiffel Software is also offering public and in-house seminars on Design by Contract and Component-Based Development.

Eiffel Software's Institute of Object Technology, one of the longest-running O-O training programs in the world, offers a complete curriculum covering all aspects of the technology, for managers as well as for software developers. Courses are offered as public seminars at various locations, and can also be given in house for eight or more participants. For more information please contact training@eiffel.com.

In-house courses can be adapted to your own environment and combined with consulting from Eiffel Software's Team Consulting program.

Hands-On Object Techniques: next session

See here for location and date.

Scientific Track

Management track

Technical track


Management track

M100 - Object-Oriented Technology: A Management Overview

Designed for managers of MIS departments, directors of R&D, project leaders to obtain an overview of the key aspects of object-oriented technology. The class introduces the key techniques of O-O analysis, design and programming. It examines their impact on the software lifecycle and development process, including economic, personnel and organizational aspects. Presents strategies for introducing O-O techniques in organizations.

Prerequisites: Experience with managing software projects.

Duration: One day.

M250 - Managing Large O-O Projects

Designed for software project leaders and managers of MIS departments. Introduces the principles of managing large projects using object- oriented technology, including: assigning work to project members; system build issues; quality assurance; controlling effects of inheritance; configuration management.

Prerequisites: T105.

Duration: One day.


Technical track

T105 - Object-Oriented Software Construction

Introduces the fundamental techniques of quality software construction through object- oriented methods. Reviews the key concepts of software engineering and the issues involved in constructing reusable, extendible and reliable software. Describes through examples and case studies the solutions offered by object- oriented programming. Gives overview of current languages and implementations, including Smalltalk, Ada, C++, Eiffel, and Simula.

Prerequisites: Some programming experience.

Duration: Two days

T115 - Basics of Eiffel Programming

Shows how to use the Eiffel language and the EiffelStudio environment to solve problems using the full power of object- oriented technology. Teaches basic structures: classes, export controls, genericity. Using assertions and exceptions. Inheritance, polymorphism, dynamic binding. Deferred classes. Assembling systems. Automatic compilation. Documentation: short and flat. Introduction to the basic libraries. Design and implementation of problems using Unix workstations.

Prerequisites: T105; familiarity with Unix or Windows.

Duration: Three days

T215 - Intermediate Eiffel Programming

Explores advanced techniques of object-oriented software construction. How to work with error handling techniques, multiple and repeated inheritance, abstraction facilities, dynamic binding and garbage collection. Reviews optimization techniques, including postprocessing, and cross- development facilities for generating C libraries. Interfaces with other languages, in particular C, will be studied in detail, enabling students to build object-oriented ``encapsulations'' of C software. Design and implementation of problems using Unix workstations.

Prerequisites: T115; familiarity with Unix.

Duration: Two days

T225 - Intermediate Eiffel Programming: Using the Libraries

Teaches the systematic reuse of software components. Explores the Eiffel 3 libraries: EiffelVision, EiffelBase, EiffelStore, etc. Design and implementation of problems using Unix workstations.

Duration: Three days

T235 - Intermediate Programming in Eiffel: Building Graphical Applications

Explores building graphical user interfaces using object-oriented techniques and tools (EiffelBuild). Explains the role of specific O-O methods in making the interface easy to change and independent from the functionality. Teaches students how to make best use of the application builder EiffelBuild. Building and modifying graphical interfaces using Unix workstations.

Prerequisites: T115; familiarity with Unix.

Duration: Two days

T245 - Building Professional Libraries of Reusable Software Components

Covers the techniques of producing high-quality reusable components for general purpose libraries. Addresses issues such as integrity, consistency, naming conventions, designing the proper classification structures, indexing techniques for adequate browsing, documenting reusable components, systematic uses of assertions, testing library components.

Prerequisites: T105; T115

Duration: Two days

T305 - Advanced System Analysis and Design

Discusses how to approach analysis & design of large systems in the object- oriented framework. Addresses the following issues, using examples and case studies drawn from actual projects: finding objects and classes; defining the flow of information between the software system and the rest of the world; structuring inheritance hierarchies; choosing between ``client'' and inheritance relations; integrating reuse in the analysis and design process.

Prerequisites: T105

Duration: 3 days