mirror of
https://github.com/EiffelSoftware/eiffel-org.git
synced 2025-12-08 07:42:33 +01:00
Author:halw
Date:2012-07-14T12:44:44.000000Z git-svn-id: https://svn.eiffel.com/eiffel-org/trunk@1124 abb3cda0-5349-4a8f-a601-0c33ac3a8c38
This commit is contained in:
@@ -15,6 +15,8 @@ Unlike earlier approaches, the Eiffel model assumes that the system is divided i
|
||||
|
||||
The Eiffel techniques developed below, in particular information hiding and Design by Contract, make the concurrent engineering process possible by letting the clusters rely on each other through clearly defined interfaces, strictly limiting the amount of knowledge that one must acquire to use the cluster, and permitting separate testing. When the inevitable surprises of a project happen, the project leader can take advantage of the model's flexibility, advancing or delaying various clusters and steps through dynamic reallocation of resources.
|
||||
|
||||
==The Single Product Principle==
|
||||
|
||||
Each of the individual cluster life cycles is based on a continuous progression of activities, from the more abstract to the more implementation-oriented:
|
||||
|
||||
|
||||
@@ -25,6 +27,8 @@ You may view this picture as describing a process of accretion (as with a stalac
|
||||
|
||||
These properties make Eiffel span the scope of both "object-oriented methods", with their associated notations such as UML and supporting CASE tools (whereas most such solutions do not yield an executable result), and "programming languages" (whereas most such languages are not suitable for design and analysis).
|
||||
|
||||
Additionally, within the EiffelStudio development environment, the concept of '''single product''' is extended to documents external to the software itself, by the [[Eiffel Information System|Eiffel Information System (EIS)]] which allows the linking elements of the software text to portions of external documents and vice versa.
|
||||
|
||||
==Seamlessness and reversibility==
|
||||
|
||||
The preceding ideas define the '''seamless approach''' embodied by Eiffel. With seamlessness goes '''reversibility''': the ability to go back, even late in the process, to earlier stages. Because the developers work on a single product, they can take advantages of bouts of late wisdom -- such as a great idea for adding a new function, discovered only at implementation time -- and integrate them in the product. Traditional approaches tend to discourage reversibility because it is difficult to guarantee that the analysis and design will be updated with the late changes. With the single-product principle, this is much easier to achieve.
|
||||
|
||||
Reference in New Issue
Block a user