The Eiffel group at Generic (formerly at Enea) has been using and promoting the Eiffel method for software development since 1989, when we became the official Eiffel distributor in Sweden. Eiffel is a language which has been designed from ground up to support the best principles of software engineering. The focus is high-level structuring, precise specification and readability, taking full advantage of the power of object-oriented abstraction.
Eiffel is the only language on the market that fully supports the principles of Design by Contract. It is statically typed, which increases safety (since the developer can find most errors at compile time), and in turn makes it possible to generate code whose performance is comparable to lower-level languages, such as C and C++.
Combined with the BON method for analysis and design, Eiffel offers a seamless environment for analysis, design and implementation of high-quality software systems.
The Eiffel group at Generic has a long-standing partnership with Eiffel Software Inc. in Santa Barabara, USA, as Swedish distributor of their software products. We offer the full Eiffel development environment to Swedish customers, as well as local support in Sweden, technical consultancy by Eiffel experts, and courses in Eiffel and BON (for details, see Products).
We have been involved in a number of industrial developments
using Eiffel over the past decade, which has proven to us the strength of the
technology in practice. In particular, the following observations has
stood out:
System integration time is dramatically reduced because of the strong typing and support for software contracts.
Most errors are found already at compile time and most of the remaining one's can be detected by turning on dynamic checking of contracts during test.
New developers learn Eiffel very fast
Interfacing with other languages and systems is very easy, making Eiffel ideal as an ecapsulation language.
The emphasis on specification encourages reuse. In fact, all of our Eiffel projects to date have produced one or more reusable components as a side-effect.