ABSTRACT

The Eiffel programming language provides abstraction mechanisms which help to narrow the gaps between analysis, design and implementation. Basic knowledge of Eiffel and fundamental object-oriented concepts such as class and inheritance will be presumed. The tutorial focuses on the appropriateness of Eiffel for designing and constructing reusable software. Topics to be addressed include the following: . Analysis and design with Eiffel. • Identifying classes. • Use of assertions and invariants for defining classes. • How to avoid early commitment to implementation detail. • Effective use of library classes. • Development and enhancement of reusable classes. • Techniques for integrating with existing systems. • Eiffel programming - tips and tricks, potential pitfalls. • Eiffel language in review - type checking, inheritance and redefinition. • Management issues in o-o development - team structure, communication, and the development environment.