Merise is a method of analysis, of design and completely integrated Project management, which constitutes the principal asset of it. It provided a methodological framework and a common language and rigorous with a generation of French data processing specialists.

History of Merise

Exit of the systemic analysis, the Merise method is resulting from the work undertaken by Hubert Tardieu in the Années 1970 and which fit within the framework of an international reflection, around in particular of the relational Modèle of Edgar Frank Codd. It became an operational project at the beginning of the Années 1980 at the request of the ministry for industry, and was especially used in France, by software firm of its founding members (Sow-Measured, like by Data-processing cgi) and mainly for the projects of scale, in particular of the great public administrations or deprived.

Merise , specifically French method, has from the start known the international competition of Anglo-Saxon methods such as SDM/S or Axial. She then sought to adapt to the quick changes of technologies of data processing with MERISE object, then MERISE/2 intended to adapt to the Client-serveur. Merise was current major reflections on a “Euro Method” which did not succeed in boring.

Since the years 1990, hustled by the successive and many changes of the data-processing environment (rise of the software packages, expansion and popularization of Internet network), Merise gradually disappeared. Only formalism UML obtained an equivalent popularity, without having the same methodological range.

One will be able to also consult a history of Merise on the Web site Developpez.com.

NB: Merise is read " Merise" and not " Mérise"

Positioning of the method

The MERISE method is a method of analysis, of design and realization of computerized information system.

Upstream, it was located in the natural prolongation of a information system strategic plan, often led according to the Méthode ROOTS, very present in particular in the public sector.

The MERISE projects were generally projects of great width of recasting of an existing complex, in an environment great system. The method also knew attempts at adaptation with relational DBMS, different the man-machine interfaces IHM, the Orienté object, the micro development, the tools BOX, the Reverse engineering… but which were not same success.

The method is primarily Franco-French and did not have much success abroad where the Anglo-Saxon methods are more present.

It has a very administrative side. One spends much time to reflect and pre-document before starting to code the least line, which could seem natural at one time when average data processing were not as diffused as today. This known as it avoids the opposite pitfall of the micro development, which suffers by the lack from documentation, and or the errors are finally very expensive to repair a posteriori.

Even if the return ticket and the consultation between originators and users are formally organized, one also reproached MERISE for using a formalism considered to be complex, (especially for the data models) which it is initially necessary to learn how to handle, but which constitutes then a true common language, powerful and rigorous for which control.

The articulation very codified and marked out well various stages, with a very precise description of the awaited results is what remains today the best known one and moreover used, still today.

Method of analysis and of design

Consent even of one of its founders, the name MERISE comes from the analogy made between the Wild cherry tree " which can bear beautiful fruits only if a branch of cherry tree is grafted to him: thus goes from there it of the data-processing methods conceived well, which produce good performances only if the Clerc's Office on the organization makes a success of " , there even if many people wanted to see a Acronyme such as for example Méthode of Study and Data-processing Realization by the Subsets or for the Systems of Companies .

The Merise method of analysis and design proposes a step articulated simultaneously according to 3 axes for to treat on a hierarchical basis the concerns and the questions which to answer at the time of the control of a project:

  • Life cycle : phases of design, realization, maintenance then new cycle of project.

  • Cycle of decision : great choices (GO-NO GO: Prior study), the definition of the project (detailed study) until the small decisions of the details of the realization and the implementation of the information system. Each stage is documented and marked by a decision making.
  • Cycle of abstraction: conceptual levels, logic/organisational and physical/operational (of most abstract with most concrete) the objective of the cycle of abstraction is to make the great decisions trade initially, for the main activities (Conceptual) without returning in detail of questions of an organisational or technical nature.

The method Merise, very analytical (systemic method attention), clearly distinguishes the data and treatments, even if the interactions between the two are deep and grow rich mutually (validation of the data by the treatments and reciprocally). Certain authors (Merise/méga, then Merise/2) also brought the concept complementary to communications, seen within the meaning of the exchanged messages. Today, with the SGBD-R, the object, the concepts of data and treatments are increasingly overlapping.

" the curve of the sun "

The literature speaks about curve of the sun , establishing an analogy between the step Merise and to raise it then to lay down it sun: in the same way, the project must work out a critical analysis of existing (on the basis of the physical level and rising until the conceptual one: step bottom-up), then to decline the solution adopted (on the basis of the level conceptual and returning at the physical level: step signal-down).

To note that the census of existing, today is very décrié, because it lengthens the duration of the project considerably. On this point, the Merise step is contrary to the iterative methods of type RAD, or the systematic adoption of the best practices observed in other companies of the sector, which constitute a typical step in the implementation of software package.

Conceptual level

The conceptual study Merise is concerned with the invariants company or organization from the point of view of the trade: which are one the activities, the trades managed by the company, which are large the treated processes, about what speaks as regards data, which concepts handles one? … and this independently of the technical choices (how one makes?) or organisational (which makes what?) who will be approached only in the following levels.

At the conceptual level one wants to describe, after abstraction , the model (the system ) of the company or the organization:

  • the conceptual Model of the data (or MCD), diagram representing the structure of the Information system, the point of view of the Given S, i.e. dependences or relations between the various data of the Information system (for example: the customer, the order, the line of order, etc),
  • and the conceptual Model of the treatments (or MCT), diagram representing the treatments, in answer to the events to be treated (for example: the taking into account of the ordering of a customer).

In the ideal, the MCD and the MCT of a company are stable, with constant functional perimeter, and as long as the trade of the company does not vary. Modeling does not depend on the choice of a Progiciel or another, an automation or not of the tasks to be carried out, an organization or of another, etc

The MCD conceptual Model of the data

The MCD rests on the concepts of entity and association and on the concepts of relations. ( entity/relationship in English).

  • entity or object

The entity is defined like a object of management considered interest to represent the activity to model (example: entity country) and each entity are carrying one or more properties simple, known as atomic (examples: code, name, capital, population, surface) of which one, single and discriminating, is indicated like identifier (example: code).

The entity represents the concept which is declined, in the concrete one in occurrences of individuals.

Examples:

  • (Fr, France, Paris, 60,4 hab. million, 550.000 km ²), and
  • (of, Germany, Berlin, 82.537.000 hab., 357.027 km ²),
are two occurrences of the entity " pays" and consist of tuples of properties, that the code FR or TO, is enough to identify without risk of doubled bloom.

By construction, the MCD imposes that all the properties of an entity have vocation to be indicated (there is no “optional” property).

The MCD must, preferably, contain only the heart of information strictly necessary to carry out the conceptual treatments (cf MCT): calculated information (ex: inclusive of tax amount of an invoice), deductible (ex: demographic density = population/surface) and a fortiori those related to the choices of organization conceived to carry out the treatments (cf WORD) should not appear in it.

  • association or relation

Association is a semantic bond between one or more entities: association can be reflexive, preferably binary (ex: a factory “is established” in a country), sometimes ternary, even of higher size. It can also be carrying one or more properties (ex: “date of establishment” of a factory in a country)

This semantic description is enriched by the concept of cardinality, this one indicates the minimum number (0 or 1) and maximum (1 or N) of time where an unspecified occurrence of an entity can take part in an association (ex: a factory is established in one (card. min=1) and only one (card. max=1) country; and reciprocally a country can be the object is of any (card. min=0) establishment of factory is of several (card. max=n).

The conceptual model MCT of the treatments

The MCT rests on the concepts of event and from operation, that of process results from this.

  • the event

An event is comparable to a message carrying information thus potentially of memorable data (for example: the event “customer order to be taken into account” at least contains the identification of the customer, the references and the quantities of each ordered product).

An event can

  • start an operation (ex: “customer order to be taken into account” starts the operation “taken into account orders”),
  • to be the result of an operation (ex: “parcel to be dispatched” following the operation of “parcel preparation”), and for this reason to be, possibly, an event release of another operation.
  • the operation

An operation starts only by the stimulus of one or several synchronized events

It consists of a whole of actions corresponding to rules of management of conceptual level, stable for the lifespan of the future application (ex: for the taking into account of an order: to check the code customer (presence, validity), to check the availability of the ordered articles,…).

The course of an operation is ininterruptible: the actions to be realized in the event of exceptions, the events corresponding results must be formally described (ex: by taking again the preceding example, if the code customer indicated on the order is incorrect to envisage its research starting from the name or of the address indicated on the order, if it is a question of a new customer of envisaging his creation and information to be memorized,…)

  • the process

A process is a sight of the MCT corresponding to a relevant sequence of operations from the point of view of the analysis (ex: the whole of the events and operations which proceed between the taking into account of a new order and the delivery of the articles to the customer)

Organisational level

This level of concern, the conceptual models are specified and are the subject of organisational choices. One builds:

  • a Logical Model of the Data (or MLD), which takes again the contents of the preceding MCD, but specifies volumetry, the structure and the organization of the data such as they could be implemented. For example, at this stage, it is possible to know the exhaustive list of the tables which will be to create in a relational Database
  • a Logical Modèle of the Treatments (or MLT), which specifies the actors and the means which will be implemented. It is here that the treatments are cut out in functional procedures (or PF).
As its name indicates it, the organisational study attempts to specify how one organizes the data of the company (MLD) and the tasks or procedures (MLT). For as much, technical choices of implementation, so much for the data (choice of a DBMS) that for the treatments (Logiciel, Progiciel), will be carried out only at the following level.

The logical model MLD of the data

(also called derivation) of the MCD in a formalism adapted to a later implementation, the physical level, in the form of relational database or network, or others (ex: simple files).

The transcription of a MCD in relational model is carried out according to some simple rules which initially consist in transforming any entity into table, with the identifier like primary key, then to observe the values taken by the cardinalities maximum of each association to represent this one either (ex: card. max 1-n or 0-n) by the addition of a foreign key in an existing table, is (ex: card. max N) by the creation of a new table whose primary key is obtained by concatenation of foreign keys corresponding to the bound entities, example:

  • MCD

  • MLD/relational Model

COUNTRY (code_pays)

MACHINE (id_usine, @code_pays, date_implantation)

EXPORT (@id_usine, @code_pays)

More and more, we see arriving a new way of writing the relational model:

COUNTRY (code_pays)

code_pays: primary key of the relation COUNTRY

MACHINE (id_usine, code_pays, date_implantation)

id_usine: primary key of the relation MACHINES

EXPORT (id_usine, code_pays)

id_usine + code_pays: primary key of the relation EXPORT of id_usine and code_pays

id_usine: foreign key of the relation EXPORT in reference to id_usine of the relation MACHINES

code_pays: foreign key of the relation EXPORT in reference to code_pays of the relation COUNTRY

The operators of the relational algebra (projection, selection, joint, operators ensemblists) Language of interrogation of data can then directly apply to the relational model thus obtained and standardized normal Formes.

This algorithmic step does not provide on this level of element on the optimization of the duration or the essential resources to carry out the treatments in the environment of target production.

The transcription of the MCD in MLD must also be preceded by a stage of synchronization and validation of the treatment and (MCD) data models (MCT and MLT), by means of sights. That in order to introduce there the information of organization defined in the MLT, to eliminate the conceptual properties not used in the treatments or redundant and finally to check that the data used for a treatment are well atteignables by “navigation” between the entities/relations of the MCD

The logical model MLT of the treatments

MLT , also called WORD for “organisational model of the treatments”, described with precision the organization to be created to carry out one or, if necessary, several operations appearing in the MCT . He answers the following questions: who? what? where? when? how? To a MCT thus corresponds generally several MLT.

The concepts introduced on this level are: the work station, the phase, the task and procedure.

; The work station

the work station describes the localization, the responsibilities, and the essential resources for each user profile of the system.
For example, one can identify the following profiles: customer-Web, sales manager, responsible for stocks, etc

; The phase

the phase is a together of actions (cf concept of operation for the MCT) carried out on a even work station.
the phase can be:
*soit manual: for example, clothes industry of a parcel;
*soit automated and interactive: for example, seizure of a form customer;
*soit automated and planned (one also speaks about batch ): for example, production and the sending daily newspapers of instrument panels in the electronic letter-boxes.

; The task

the task is a detailed description of a interactive automated phase .
For example, it corresponds to the specification of the interface and the dialog human-machine, with the localization and the nature of controls to be carried out, etc

; The procedure

the procedure is a regrouping of phases . It is equivalent on the organisational level to the concepts of operations and conceptual actions. The difference is that one regards here these last as being held over one period of homogeneous time.
Of the procedures of nonconceptual origins can be added because of the choices of organization carried out.
For example, one can quote the procedures of information exchanges related to the externalisation of certain activities, the taking into account of the questions of security in the event of choice of Web solution, etc

Physical level

The answers brought to this last level make it possible to establish the concrete way in which the system will be set up.

  • the Physical Modèle of the Data (or MPD or MPhD) makes it possible to specify the storage systems employed (implementation of the MLD in DBMS retained)
  • the Operational Modèle of the Treatments (or WORD or MOpT) allows to specify the functions such as they will be then carried out by the programmer.

Méta-model of Merise for the data

Types of " modèles" (méta-models) known as " Entity-Relationship"

Peter Chen presents the following classification of the various models " entity-association".

  • N-ary:

    • 1-With attributes for entities and associations
    • 2-With attributes for entities only
    • 3-Without attribute
  • Binary:

    • 4-With attributes for entities and associations
    • 5-With attributes for entities only
      • 51-With associations " several-with-plusieurs"
      • 52-" Sans" association " several-with-plusieurs"
        • not directed 521-Associations
        • 522-Associations directed (with only a " parent" , with a " relative physique" and a " relative logique" , with multiple parents, for example CODASYL)
    • 6-Without attribute: " model binary, Entity Set Model, Model functional

References:

  • Chen P.P., (editor) " Methodology and tools for database design", North-Holland, 1983
  • Chen P.P." With prelimary framework for ER models" in CHEN83, pp.19-2
  • Abrial J.R. " Semantics" dated; , in KLK74
  • KLI74 Klimbie, K. (editors) " Database management" , North-Holland, 1974

Merise uses a " modèle" with entities, attributes (or properties) and relations (or associations)

In formal terms, one will say that a MCD is an invariant.

One specifies units, relations there which one gives the properties (function (total or partial), function injective, surjective, unspecified relation). One uses for that of the " cardinalités" (called in UML, of the multiplicities). There is 16 case of relations.

In terms of mathematics ensemblists, an attribute is a function. For example date_de_naissance is a function of the unit Personnes towards the unit Dates , date_de_décès is a function partial of the unit Personnes towards the unit Dates .

The functions (with the mathematical direction) are expressed by what is called " clé" (even direction that of the " relational model n-aire" of Codd) and also by the " cardinalités" (0-1 for the partial functions) and (1-1 for the total functions). When the function has like left part a Cartesian product between entities of the different types (between several rectangles), one speaks about CIF (Forced Functional Integrity).

See also the article on the normal Forms.

Random links:List Swadesh of the Bulgarian one | Club Deportivo Godoy Cruz Antonio Tomba | Franca São Paulo | FM Towns | Martine Meiraghe

© 2007-2008 speedlook.com; article text available under the terms of GFDL, from fr.wikipedia.org