Object-orientation is supposed to offer a seamless transition in the development of systems, Ensuring this seamless transition requires using the same language throughout the process to avoid the need for translations between phases or activities. In this article we present an extension to Eiffel that we propose as a full life-cycle language, This language is capable of being a "lingua franca" between different analysis and design methodologies, their notations, and the CASE tools that support them. The extensions we propose adding to Eiffel explicitly represent: relations between objects, the description of supraclass constructs, states and transitions to describe the dynamic behavior of objects, description of use cases, and incrementing the specifying and documenting qualities of Eiffel.