WO2015049472A1 - Method of computerizing a procedure - Google Patents
Method of computerizing a procedure Download PDFInfo
- Publication number
- WO2015049472A1 WO2015049472A1 PCT/FR2014/052509 FR2014052509W WO2015049472A1 WO 2015049472 A1 WO2015049472 A1 WO 2015049472A1 FR 2014052509 W FR2014052509 W FR 2014052509W WO 2015049472 A1 WO2015049472 A1 WO 2015049472A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- identifier
- approach
- instance
- control
- gait
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/103—Workflow collaboration or project management
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0633—Workflow analysis
Definitions
- the invention relates to the dematerialization of the process and more specifically to the dematerialization of documents related to administrative procedures.
- the invention aims to remedy all the drawbacks of the state of the art identified above, and in particular to propose means for dematerializing, via an Internet type network, steps administrative.
- One approach is to enter one or more forms that will automatically be submitted to the right interlocutor of the right organization or administration.
- the data are persisted a reasonable time to allow a user to complete an approach already started.
- one aspect of the invention relates to:
- a process of dematerialization of an administrative procedure comprising the following steps:
- the data flow comprising at least one identifier of a previously defined control and a recipient identifier
- Instantiation of the approach for a user identified by a user identifier being the recording in a database of instances of n-tuplets including at least the following data:
- the method / device according to the invention may have one or more additional characteristics among the following, considered individually or according to the technically possible combinations:
- the gait identifier is complex and comprises:
- the instantiation is always done according to the most recent version. - the procedure includes dates (1052, 1053) of validity.
- an instance of the process can only be created during the validity of the process.
- an instance of the process can only be validated during the validity of the process.
- the instantiation step includes a step of producing a step instance identifier, said identifier being unpredictable.
- a trigger condition relates to a value of a control.
- a trigger condition is a validation of a form. the approach comprising several forms also includes at least one linking rule defining a sequence of sequence of the forms.
- an instance of a process has a creation date.
- a recipient identifier identifies a routing rule
- the method comprises a step of recording a message associated with a procedure instance, the message being at least searchable by the user associated with the instance of the approach,
- the invention also relates to a digital storage device comprising a file corresponding to instruction codes implementing the method according to a combination of the preceding features.
- the invention also relates to a device implementing a method according to a combination of the preceding claims.
- FIG. 1 An illustration of steps of the method according to the invention.
- Server is a term used in the field of the invention.
- a server is also a computer in that it has all the characteristics. It is considered in this document that the terms computer and server are equivalent.
- steps or actions are assigned to computer-type machines.
- a machine comprises at least one microprocessor and a storage memory.
- the storage memory makes it possible to record instruction codes whose interpretation allows the implementation of the steps or actions. So, when we assign an action to a machine, this is actually performed by a microprocessor of the machine interpreting instruction codes stored in a memory of the machine.
- communications are assigned to computer-type machines. These communications are performed via message exchanges according to a predetermined protocol implemented at least by a network card, wired or without cable.
- a network card implemented at least by a network card, wired or without cable.
- Each machine involved in the communication has its network card connected via a bus to a microprocessor of the machine. This allows the microprocessor to take into account the received messages and to emit them.
- the network cards are also connected to a network, for example of the Ethernet type.
- networks such as fiber optic networks, InfinBand networks, or wireless networks.
- instruction code is meant both native binary codes, intermediate codes interpreted by a virtual machine, for example Java, or scripts interpreted by interpretation engines, for example Python, PERL, ... the list is not exhaustive. This includes the built-in instructions of the operating system.
- FIG. 1 is illustrated a first server 1000 of steps comprising at least:
- 1030 storage means for example a hard disk.
- the storage means can be composed of several physical components, hard disks according to several connectors (I DE, SCSI, eSCSI, ATA, SATA, eSATA, USB, ...) and several configurations (JBOD, RAI D0, RAI D1, RAI D5, ...), memory disk, ... the list is not exhaustive. These notes apply for all described computers.
- the elements of the server 1000 of steps are interconnected by a bus 1 040.
- the elements of the server 1000 of steps interconnected by the bus 1 040 are:
- the storage means 1030 The storage means 1030.
- the storage means 1030 comprise several zones:
- a program area 1031 corresponding, inter alia, to instruction codes corresponding to the implementation of the method according to the invention.
- the data zone 1032 comprises two databases:
- a database is described here as a set of tables and relationships.
- a table has rows, or records, with each row divided into columns or fields.
- a relation allows to link, to put in relation, recordings. This is a description of a relational implementation mode of a database, but the invention is not limited to this type of database. It is compatible with object databases, hierarchical or NoSql to name only the most well-known database systems.
- the database 1033 of data includes:
- a table 1060 of forms comprising at least:
- a column 1,061 form identifier
- a control table 1070 comprising at least:
- a column 1,071 control identifier A column 1,072 form identifier for attaching the control to a form.
- links 1 - N between the tables.
- links N - N by adding tables of relations, for example in table which would include identifiers of steps and identifiers of forms to allow to associate a form with several steps.
- control is comparable to an input area that includes a type.
- the most common types are: text, check box, list. The list is not exhaustive.
- FIG. 1 also shows that the base 1034 gait also includes:
- a flow table 1080 comprising at least:
- a column 1083 recipient identifier for example an email or an identifier for determining an email.
- the base 1033 of steps also includes a table 8010 flow routing rules.
- the table 801 0 comprises at least:
- a column 801 2 routing rule A column 801 2 routing rule.
- the base 1033 of steps also includes a table 8020 of components.
- the component table 8020 comprises at least:
- a column 8024 gait identifier A column 8024 gait identifier.
- the component table can be implemented via the control table 1070.
- the control table 1070 would include, for example, a column of nature to specify the nature of the record.
- One of the natures would be control, the other natures correspond to natures of component.
- a component can also be linked to a form.
- a nature of a component is, for example:
- Graphic theme for example a set of CSS style sheets used to change the appearance of a form
- a web service used to validate a user input
- An XSLT file for filtering and / or formatting data, for example when processing a send record.
- a routing rule is a decision tree, for example a selector, which makes it possible to determine an address from the value of a control.
- the destination identifier column 1083 registers a routing rule identifier.
- Figure 1 also shows that the base 1033 of steps also includes:
- a table 1090 of flow contents comprising at least:
- a column 1 092 control identifier can be:
- An identifier such as the control identifier of the control table 1070
- control table 1070 a control identifier from the control table 1070 and a form identifier from the form table 1060.
- FIG. 1 also shows that the base 1033 of steps also includes:
- a 2000 table of mailing rules including at least:
- a column 2002 trigger condition, A column 2003 flow identifier, in a variant a rule may include more than one flow identifier.
- a link with an approach is achieved via the flow identifier that identifies a flow that is linked to a process.
- a link between a flow and an approach could be established either directly via a column of the rule table or indirectly via a specialized join table.
- the sending rule identifier is structural, that is to say not necessary for the implementation of the invention.
- the link between a send rule and a feed is made via a feed ID stored in the rule record.
- the database 1033 form data includes one or more tables for defining an order in which to link the forms of the approach.
- additional tables which can be extensions of existing tables, include, for example, the following information:
- the following form may depend on a condition based, for example, on the value of a control of the current form that is left to move to the next form.
- FIG. 1 also shows that the database 1034 of instance instance data comprises:
- a table 201 0 of gait instances comprising at least:
- the gait instance table 201 0 comprises: A starting column 201 3 of the approach,
- a status of a procedure instance is, for example:
- a procedure authority status allows, at least, to inform a user creator of a process of an advancement of its approach within an organization or administration to which it is addressed through a publication server.
- publication server The concept of publication server is described later in the description.
- FIG. 1 also shows that the database 1034 of instance instance data comprises:
- a 2020 instance instance data table with at least:
- a step instance identifier column 2021 A step instance identifier column 2021,
- the base 1034 of gait instance data comprises:
- a table 2030 of messages comprising at least:
- the base 1034 of gait instance data comprises:
- a 2040 mailing table comprising at least:
- a column 2043 of stream identifier A column 2043 of stream identifier.
- FIG. 1 shows that, via the network interface 1020, the step 1000 server is connected to a network 2000 of the Internet or Intranet type, which enables a client computer 3000 to send requests to the server 1,000 steps.
- a gait instance identifier is a character string calculated to be unique and not predictable by a person unfamiliar with the production method. This then makes it possible to use the step instance identifier to directly consult an approach on the publication server. Since the publisher is an http server, we are talking about a recovery URL, which includes a gait instance identifier. A recovery url allows the person who knows it to take back, and / or consult, the corresponding procedure. In this case a simple counter is not suitable as a process instance identifier, anyone can query the publisher with a random number. In other words, an unpredictable identifier does not belong to a sequence but is produced by a calculation other than a simple incrementation. In practice the calculation depends on a time marker also known as timestamp.
- Figure 2 shows a first step 5000 of creating a process.
- This creation is done via a man-machine interface which includes, for example, a "new approach" button. Activation of such a button causes the creation of a new record in table 1050 of procedures and the assignment of an identifier to this new registration.
- This attribution is either automatic, for example by identity management mechanisms of a database engine (Identity for Sql Server (registered trademark), Sequence for Oracle (registered trademark) ...), or manual by a solicitation of the user via an input area. In this last case it will be necessary to validate the identifier by ensuring that it is very unique in the table 1050 of steps.
- the gait identifier is structured, it is also said complex or composite.
- the gait identifier comprises:
- Figure 2 shows that the step 5000 of creating a new form is followed by a step 501 0 of creation of a form.
- This creation is done via a man-machine interface that includes, for example, a "new form" button. Activation of such a button causes the creation of a new record in the forms table 1060 as well as the assignment, as previously described, of an identifier to this new record.
- the creation of the form is done in this context and the value of the step identifier column of the new form record is the value of the identifier of approach of the process ID of the new process registration.
- columns identifying the new object are initialized according to the context in which the object is created.
- a context can also be activated by opening to modify an existing element. For example, opening to modify a form will cause the creation of a context linked to the open form and all the controls created in this context will be linked to this form.
- step 5020 creation, or definition, of a new control record that is associated with the new form record. This association is done naturally because the control is created in the context of the new form record.
- This creation is done via a man-machine interface that includes, for example, a "new control" button. The activation of such a button causes the creation of a new record in the control table 1070 as well as the allocation, as previously described, of an identifier to this new record.
- a control is also called an input area and can be, conventionally:
- a selection box in a list
- a button allowing, for example, to trigger a submission of the form
- Such a creation of form, by creating control is also known in other environment, such as Visual Studio (trademark) of Microsoft (trademark) or SmartGuide (trademark) of the company Alphinat.
- the invention resides here in associating the result of the creation of the form and the controls it includes with a gait identifier.
- a control identifier is unique for a form. That is, if all the controls of a form are selected in the control table 1070, then each of the rows resulting from this selection can be uniquely identified by the value of the control identifier column. This result is obtained automatically if the aforementioned identity mechanisms are used. Otherwise you must prohibit the creation, that is to say the updating of the database, as long as the user has not entered an identifier satisfying the uniqueness constraint.
- Figure 2 shows a step 5030 of definition, or creation of a data stream. This creation is done via a human machine interface which includes, for example, a button "new flow”. Activation of such a button causes the creation of a new record in the table 1 080 flows as well as the allocation of an identifier to this new record. This new record is, due to its creation context, linked to the new record of procedure.
- Step 5030 of creating a data stream is followed by a step 5040 of association of at least one control to the new flow record. This is accomplished by inserting in the table 1 090 flow data of a line including the identifier of the newly created flow record and an identifier of a control associated with the step to which the flow is associated.
- the association between a control and an approach is achieved via the form on which the control depends.
- the form on which the control depends is identified by the form identifier column of the control record.
- the process on which the form depends is identified by the process identifier of the form record. This chain of dependency makes it possible to determine which approach depends on a control.
- the control table includes a gait identifier column which allows a control to be directly attached to a gait.
- a user also enters a recipient identifier for the stream.
- a recipient identifier is either an email address or an identifier in a not shown electronic address book, the resolution of the identifier to obtain an email address.
- An email address is, for example: an email address, an address of an FTP server, or more generally an address of a web service. Therefore we can assimilate a stream to an envelope to the extent that a flow includes a recipient and the description of a content.
- FIG. 2 shows a step 5050 of definition of a transmission rule.
- a user creates a new record in the Send Rules Table 2000. For this creation, via an interface, graphical or on the command line, the user enters a gait identifier, a condition and a flow identifier. This creates a rule.
- a condition is for example: Validation of the form x,
- Control value x equals y.
- the conditions are structured. For example in two fields:
- the rule is validated, evaluated to true, when, in an instance of approach the value entered control is equal to the trigger value.
- the processing of a stream following the validation of a rule causes the creation of at least one new record in the table 2040 of mailings.
- This new record includes, as previously described:
- a procedure instance identifier that of the active procedure, - a stream identifier: one of those of the validated sending rule
- the actual shipments are made from the mailing table.
- the principle is that an autonomous process periodically traverses the send table to select records that have not been issued or that have not been successfully issued. For these records the stand-alone process uses the stream identifier to determine a recipient, and the data to produce a message to be sent. Depending on how the communication with the recipient took place, the stand-alone process marks the sending record as treated or in error.
- the figure shows a step 6000 of publication.
- the solutions for the publication are multiple.
- the principle is that there is a server capable of interpreting a request as a request instantiation of a form.
- This server called the publisher, can be the 1,000-step server or another server.
- the server receives a request comprising:
- server 1000 of steps also plays the role of publication server in the sense that it is also he who responds to requests from users wishing to undertake a process. In practice it should be two different servers for classic reasons of security and data isolation between development and production.
- the publication server searches the name received by request in the table 1050 steps, if an approach is found, and if a status of the approach is "published", then the server responds with a form of the approach . Otherwise the server returns an error message.
- a production server on which all the steps have by default a status allowing their publication. It is therefore useless to manage such a status.
- a possible implementation is to use as a general gait identifier a name that may be the one used in the request.
- the publication server is an http server. This server transforms the description of a form, as registered in the database 1033 of steps, in whole or part of a html page. We note here that there is no html in the model of the approach recorded in the database. It is the Publisher that formats the description of the form to produce html.
- control table 1070 a type column that can store a type.
- This type is used by the Publisher to determine how to "render" the control.
- rendering means using the type to determine a html code sequence.
- table 1070 may contain other columns, such as columns for storing location, dimension, and label information. The same is true for the 1,060 table of forms.
- instantiating a request consists at least in registering in the instance table 2010 a new record. This assumes that the user has authenticated to the server, in a previous step not described, which allowed him to obtain a user ID. It is thus possible to create a new record from the user ID and the step find identifier from the name provided by the previously described request.
- a step instance identifier is automatically calculated, for example by an identity mechanism already described.
- there is no authentication by the publication server in which case the identification is done via an email address provided by the user. In this case we speak of anonymous user.
- the step instance identifier is composite and composed of the column 201 1 gait identifier and the column 201 2 user identifier. This is a way to force the uniqueness of a gait instance for a user, the gait instance ID must be unique.
- instantiating means at least the fact of recording data according to a model.
- the data is in the instance database, the templates are in the process database.
- the publication server before instantiating a new approach, performs an existing process instance search. This is a step 6005. This search is performed in the table 201 0 of instances of approach with as selection criterion the gait identifier and the user identifier. If this search finds a record then there is no new created instance, it is the one that has been found which is used. Once a form is filled, it is validated by an action of the user which causes its submission to the server.
- submission involves two things:
- the Publisher For each control of the submitted form, the Publisher updates or creates a row in the table, the value column of this row recording the values that were entered by the publisher. user before submitting the form
- a condition of a rule is validated, then a message is formed.
- This message contains the data described for the flow associated with the rule, rule whose triggering condition has been validated. It will be recalled that this data description comprises a control identifier.
- the data included in the message is read from the 2020 instance data table from the control IDs and the ID of the process instance corresponding to the validated form. The message once constituted is sent to the designated recipient by the flow associated with the validated rule.
- an approach that is to say a record in the table 1050 of steps, includes a version column.
- the response to the user's request depends on the available versions of the process.
- the multi-version variant makes it possible to simultaneously have several versions of a published approach. This case occurs, for example, when a user starts a process on a D0 date but does not even finish it. At a date D1 after the date D0 a new version of the procedure is published. The user returns to a date D2 after the date D1 and can continue with the decision tree previously described for the multi-version variant.
- an approach includes validity dates that are stored in:
- the selection decision tree of a step includes a test comparing the current date to the validity dates. If the current date is not between the validity dates, then the procedure can not be selected.
- the validity dates of the approach are also used during the validation of a form of the approach. If the date on which validation is performed is outside the validity period, then validation is blocked.
- the value of the column 201 3 date of departure that is to say, creation of the step instance to delete instances of gait.
- all gait instances whose age is greater than a predetermined value are erased.
- Age is the difference between the current date and the date of departure. Deletion consists of deleting the corresponding rows in the 201 0 table of gait instances and in the 2020 gait instance data table, as well as in table 2030 and table 2040.
- FIG. 2 shows a step 7000 of inputting a message by a user.
- This entry is made via a specific form that is linked at the time of its use to a procedure instance. Validation of this specific form causes message 2030 to create a new record.
- a step is published per piece.
- the forms served by the publisher are from a copy of the process database.
- This copy is powered by update packages.
- An update package is produced from the process database.
- a user selects, in the procedure database elements: form, control, component, stream ... to include them in a package and produce said package.
- Each element is a piece of gait.
- the package is received by the production server that uses the contents of the package to update the copy of the gait database. This is referred to as a packet integration step 5095 preceding the publication step 6000.
- the publication server checks the coherence of a received packet. This check is at least a validation of the dependencies of the elements contained in the received packet. For example, if a package has a form that references a style sheet component (CSS) that is not in the package and has not already been integrated through a previous package, then package integration is denied. This checks each element of the received packet to ensure that the publisher has all the elements to publish each element of the package.
- CSS style sheet component
Landscapes
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Development Economics (AREA)
- Educational Administration (AREA)
- Game Theory and Decision Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
Procédé de dématérialisation d'une démarche DOMAINE TECHNIQUE DE L'INVENTION Process of dematerialization of an approach TECHNICAL FIELD OF THE INVENTION
[ 0001 ] L'invention se rapporte à la dématérialisation de démarche et plus précisément à la dématérialisation de documents liés à des démarches administratives. The invention relates to the dematerialization of the process and more specifically to the dematerialization of documents related to administrative procedures.
ETAT DE LA TECHNIQUE ANTERIEURE STATE OF THE PRIOR ART
[0002 ] Il est courant de devoir s'adresser à une administration ou à un organisme afin de satisfaire à une démarche administrative impérative : obtention d'un document d'identité, déclaration de revenus... It is common to have to apply to an administration or an organization to meet a mandatory administrative process: obtaining an identity document, tax return ...
[ 0003 ] Dans ce cas il faut en général constituer un dossier et se rendre sur place, à un guichet de l'administration ou de l'organisme, en espérant ne rien avoir oublié. In this case it is usually necessary to build a file and go on site, to a counter of the administration or organization, hoping not to have forgotten anything.
[ 0004 ] Sur place il faut alors patienter, parfois longuement, et revenir s'il manque un document. On the spot then we must wait, sometimes for a long time, and come back if a document is missing.
[0005 ] Cela pose donc plusieurs problèmes d'ordre technique : This therefore poses several technical problems:
Trouver du temps, Find time,
Gérer des files d'attentes Manage queues
- Matérialiser des documents et être capable de les conserver. - Materialize documents and be able to keep them.
[0006] Dans l'état de la technique il est connu des sites web, plus ou moins dynamiques, qui permettent de prendre en charge une partie de la dématérialisation. Mais dans ce cas, il y a autant de site web à créer que de démarches. Cela revient à écrire des pages html et à gérer leur enchaînement. De plus ces sites utilisent la notion de session pour préserver les données. Cela signifie qu'une fois le navigateur fermé, tout est effacé, ce qui ne laisse pas beaucoup de place pour les erreurs et qui impose de tout avoir à sa disposition lorsque l'on commence la démarche. EXPOSE DE L'INVENTION In the state of the art it is known websites, more or less dynamic, which can support part of the dematerialization. But in this case, there is as much website to create as steps. This is like writing html pages and managing their webs. In addition, these sites use the notion of session to preserve the data. This means that once the browser is closed, everything is erased, which does not leave much room for mistakes and that requires to have everything available when you start the process. SUMMARY OF THE INVENTION
[0007 ] L'invention vise à remédier à tous les inconvénients de l'état de la technique identifiés ci-dessus, et notamment à proposer des moyens pour permettre de dématérialiser, via un réseau de type Internet, des démarches administratives. Une démarche revient à la saisie d'un ou plusieurs formulaires qui seront soumis automatiquement au bon interlocuteur du bon organisme ou administration. D'autre part les données sont persistées un temps raisonnable pour permettre à un utilisateur de compléter une démarche déjà entamée. The invention aims to remedy all the drawbacks of the state of the art identified above, and in particular to propose means for dematerializing, via an Internet type network, steps administrative. One approach is to enter one or more forms that will automatically be submitted to the right interlocutor of the right organization or administration. On the other hand the data are persisted a reasonable time to allow a user to complete an approach already started.
[0008] Dans ce dessein, un aspect de l'invention se rapporte à : In this purpose, one aspect of the invention relates to:
Un procédé de dématérialisation d'une démarche administrative comportant les étapes suivantes : A process of dematerialization of an administrative procedure comprising the following steps:
- Attribution d'un identifiant à la démarche dans une base de données de démarche, - Assigning an identifier to the approach in a gait database,
- Création d'au moins un formulaire numérique associé à la démarche via l'identifiant de la démarche le formulaire comportant au moins un identifiant de formulaire, - Creation of at least one digital form associated with the approach via the identifier of the approach the form including at least one form identifier,
- Définition d'au moins un contrôle comportant : - Definition of at least one control comprising:
- Un identifiant de contrôle unique pour la démarche, - A unique control identifier for the process,
-Association du au moins un contrôle au formulaire -Association of at least one form check
- Définition d'au moins un flux de données associé à la démarche, le flux de données comportant au moins un identifiant d'un contrôle précédemment défini et un identifiant de destinataire, - Definition of at least one data flow associated with the approach, the data flow comprising at least one identifier of a previously defined control and a recipient identifier,
- Définition d'une règle d'émission associée à la démarche, règle d'émission dont le déclenchement équivaut à l'émission d'un message vers un destinataire et comportant : - Definition of an emission rule associated with the approach, transmission rule whose triggering is equivalent to sending a message to a recipient and comprising:
- Une condition de déclenchement, - a trigger condition,
- Un identifiant d'un flux précédemment défini, An identifier of a previously defined flow,
- Publication de la démarche, - Publication of the approach,
- Instanciation de la démarche pour un utilisateur identifié par un identifiant utilisateur, l'instanciation étant l'enregistrement dans une base de données d'instances de n-uplets comportant au moins les données suivantes : Instantiation of the approach for a user identified by a user identifier, the instantiation being the recording in a database of instances of n-tuplets including at least the following data:
- Identifiant d'utilisateur, - User ID,
- Identifiant de démarche - Approach identifier
- Identifiant de contrôle - Control ID
- Valeur. [0009] Outre les caractéristiques principales qui viennent d'être mentionnées dans le paragraphe précédent, le procédé/dispositif selon l'invention peut présenter une ou plusieurs caractéristiques complémentaires parmi les suivantes, considérées individuellement ou selon les combinaisons techniquement possibles : - Value. In addition to the main features which have just been mentioned in the preceding paragraph, the method / device according to the invention may have one or more additional characteristics among the following, considered individually or according to the technically possible combinations:
- l'identifiant de démarche est complexe et comporte : the gait identifier is complex and comprises:
Un identifiant, A login,
Un numéro de version, A version number,
l'instanciation est toujours réalisée selon la version la plus récente. - la démarche comporte des dates (1052, 1053) de validité. the instantiation is always done according to the most recent version. - the procedure includes dates (1052, 1053) of validity.
une instance de la démarche ne peut être créée que durant la validité de la démarche. an instance of the process can only be created during the validity of the process.
une instance de la démarche ne peut être validée que durant la validité de la démarche. an instance of the process can only be validated during the validity of the process.
- l'étape d'instanciation comporte une étape de production d'un identifiant d'instance de démarche, ledit identifiant étant non prédictible. une condition de déclenchement porte sur une valeur d'un contrôle. une condition de déclenchement est une validation d'un formulaire. la démarche comportant plusieurs formulaires elle comporte aussi au moins une règle d'enchaînement définissant un ordre d'enchaînement des formulaires. the instantiation step includes a step of producing a step instance identifier, said identifier being unpredictable. a trigger condition relates to a value of a control. a trigger condition is a validation of a form. the approach comprising several forms also includes at least one linking rule defining a sequence of sequence of the forms.
une des revendications précédentes caractérisé en ce qu'une le procédé comporte une étape de vérification avant l'étape d'instanciation la vérification étant : one of the preceding claims characterized in that the method comprises a verification step before the instantiation step the verification being:
- Est-ce qu'il existe une instance de la démarche active pour l'utilisateur : - Is there an instance of the active approach for the user:
- Si oui, alors utilisation de cette instance, - If yes, then use this instance,
- Si non, alors poursuite de l'instanciation. - If no, then continue the instantiation.
une instance de démarche comporte une date de création. an instance of a process has a creation date.
- une instance de démarche et les données associées sont automatiquement effacées lorsqu'elles atteignent un âge prédéterminé, un identifiant de destinataire identifie une règle de routage, le procédé comporte une étape d'enregistrement d'un message associé à une instance de démarche, le message étant au moins consultable par l'utilisateur associé à l'instance de la démarche, a step instance and the associated data are automatically erased when they reach a predetermined age, a recipient identifier identifies a routing rule, the method comprises a step of recording a message associated with a procedure instance, the message being at least searchable by the user associated with the instance of the approach,
une démarche est publiée par morceau. an approach is published by piece.
- un morceau de démarche est validé avant d'être publié. - a piece of gait is validated before being published.
[0010] L'invention se rapporte également à un dispositif de stockage numérique comportant un fichier correspondant à des codes instructions mettant en œuvre le procédé selon une combinaison des caractéristiques précédentes. The invention also relates to a digital storage device comprising a file corresponding to instruction codes implementing the method according to a combination of the preceding features.
[0011] L'invention se rapporte également à un dispositif mettant en œuvre un procédé selon une combinaison des revendications précédentes. The invention also relates to a device implementing a method according to a combination of the preceding claims.
BREVE DESCRIPTION DES FIGURES BRIEF DESCRIPTION OF THE FIGURES
[0012] D'autres caractéristiques et avantages de l'invention ressortiront à la lecture de la description qui suit, en référence aux figures annexées, qui illustrent : Other features and advantages of the invention will emerge on reading the description which follows, with reference to the appended figures, which illustrate:
- la figure 1 , une illustration de moyen permettant la mise en œuvre de l'invention ; - Figure 1, an illustration of means for implementing the invention;
la figure 2, une illustration d'étapes du procédé selon l'invention. Figure 2, an illustration of steps of the method according to the invention.
[0013] Pour plus de clarté, les éléments identiques ou similaires sont repérés par des signes de référence identiques sur l'ensemble des figures. For clarity, identical or similar elements are identified by identical reference signs throughout the figures.
[0014] L'invention sera mieux comprise à la lecture de la description qui suit et à l'examen des figures qui l'accompagnent. Celles-ci sont présentées à titre indicatif et nullement limitatif de l'invention. The invention will be better understood on reading the description which follows and the examination of the figures that accompany it. These are presented as an indication and in no way limitative of the invention.
DESCRIPTION DETAILLEE D'UN MODE DE REALISATION DETAILED DESCRIPTION OF AN EMBODIMENT
[0015] Serveur est un terme usité dans le domaine de l'invention. Un serveur est aussi un ordinateur en ce sens qu'il en a toutes les caractéristiques. On considère dans ce document que les termes ordinateur et serveur sont équivalents. Server is a term used in the field of the invention. A server is also a computer in that it has all the characteristics. It is considered in this document that the terms computer and server are equivalent.
[0016] Pour la description du procédé on attribue des étapes ou des actions à des machines de type ordinateur. Une telle machine comporte au moins un microprocesseur et une mémoire de stockage. La mémoire de stockage permet d'enregistrer des codes instructions dont l'interprétation permet la mise en œuvre des étapes ou des actions. Donc, lorsque l'on attribue une action à une machine, celle-ci est en fait réalisée par un microprocesseur de la machine interprétant des codes instructions enregistrés dans une mémoire de la machine. For the description of the process, steps or actions are assigned to computer-type machines. Such a machine comprises at least one microprocessor and a storage memory. The storage memory makes it possible to record instruction codes whose interpretation allows the implementation of the steps or actions. So, when we assign an action to a machine, this is actually performed by a microprocessor of the machine interpreting instruction codes stored in a memory of the machine.
[0017] Pour la description du procédé on attribue des communications à des machines de type ordinateur. Ces communications sont réalisées via de échanges de messages selon un protocole prédéterminé mis en œuvre au moins par une carte réseau, câblée ou sans câble. Chaque machine impliquée dans la communication comporte sa carte réseau connecté, via un bus, à un microprocesseur de la machine. Cela permet au microprocesseur de prendre en compte les messages reçus et d'en émettre. Les cartes réseau sont par ailleurs connectées à un réseau, par exemple de type Ethernet. Il y a d'autres types de réseaux, comme les réseaux à fibre optique, les réseaux InfinBand, ou les réseaux sans fil. For the description of the process, communications are assigned to computer-type machines. These communications are performed via message exchanges according to a predetermined protocol implemented at least by a network card, wired or without cable. Each machine involved in the communication has its network card connected via a bus to a microprocessor of the machine. This allows the microprocessor to take into account the received messages and to emit them. The network cards are also connected to a network, for example of the Ethernet type. There are other types of networks, such as fiber optic networks, InfinBand networks, or wireless networks.
[0018] Lorsque l'on dit qu'une action est effectuée par un système d'exploitation, une application, un processus, ou une zone de code instructions, cette action correspond à la mise en œuvre, par un microprocesseur, de codes instructions correspondant, comme décrit aux paragraphes précédents. When we say that an action is performed by an operating system, an application, a process, or an instruction code area, this action corresponds to the implementation, by a microprocessor, of instruction codes. corresponding, as described in the preceding paragraphs.
[0019] Par code instruction on entend aussi bien des codes binaires natifs, que des codes intermédiaires interprétés par une machine virtuelle, par exemple Java, ou des scripts interprétés par des moteurs d'interprétations, par exemple Python, PERL, ... la liste n'est pas exhaustive. Cela inclut les instructions intégrées du système d'exploitation. By instruction code is meant both native binary codes, intermediate codes interpreted by a virtual machine, for example Java, or scripts interpreted by interpretation engines, for example Python, PERL, ... the list is not exhaustive. This includes the built-in instructions of the operating system.
[0020] A la figure 1 est illustré un premier serveur 1 000 de démarches comportant au moins : In FIG. 1 is illustrated a first server 1000 of steps comprising at least:
Un microprocesseur 101 0, A microprocessor 101 0,
- Une interface 1 020 réseau, A 1020 network interface,
Des moyens 1 030 de stockage, par exemple un disque dur. 1030 storage means, for example a hard disk.
[0021] L'homme du métier comprendra aisément qu'il s'agit d'une description pratique d'un moyen de stockage. Dans la pratique le moyen de stockage peut être composé de plusieurs composants physiques, disques durs selon plusieurs connectiques (I DE, SCSI, eSCSI, ATA, SATA, eSATA, USB, ...) et plusieurs configurations (JBOD, RAI D0, RAI D1 , RAI D5, ...), disque mémoire, ... la liste n'est pas exhaustive. Ces remarques s'appliquent pour tous les ordinateurs décrits. [0022 ] Les éléments du serveur 1000 de démarches sont interconnectés par un bus 1 040. Les éléments du serveur 1 000 de démarches interconnectés par le bus 1 040 sont : Those skilled in the art will readily understand that this is a practical description of a storage means. In practice the storage means can be composed of several physical components, hard disks according to several connectors (I DE, SCSI, eSCSI, ATA, SATA, eSATA, USB, ...) and several configurations (JBOD, RAI D0, RAI D1, RAI D5, ...), memory disk, ... the list is not exhaustive. These notes apply for all described computers. The elements of the server 1000 of steps are interconnected by a bus 1 040. The elements of the server 1000 of steps interconnected by the bus 1 040 are:
Le microprocesseur 101 0, The microprocessor 101 0,
- L'interface 1 020 réseau, - The interface 1 020 network,
Les moyens 1 030 de stockage. The storage means 1030.
[ 0023 ] Les moyens 1 030 de stockage comportent plusieurs zones : The storage means 1030 comprise several zones:
Une zone 1032 de données A data area 1032
Une zone 1 031 de programmes correspondant, entre autre, à des codes instructions correspondant à la mise en œuvre du procédé selon l'invention. A program area 1031 corresponding, inter alia, to instruction codes corresponding to the implementation of the method according to the invention.
[ 0024 ] Pour les besoins de la description on décrit que la zone 1032 de données comporte deux bases de données : For the purposes of the description, it is described that the data zone 1032 comprises two databases:
Une base 1033 de données de démarches A 1033 database of process data
- Une base 1034 d'instance de démarches. - A 1034 basis of proceedings.
Dans la pratique il pourrait ne s'agir que d'une seule et même base de données. Il est ici commode, pour des raisons de clarté de décrire deux bases de données. Une base de données est ici décrite comme un ensemble de tables et de relations. Une table comporte des lignes, ou enregistrement, chaque ligne étant divisé en colonne ou champ. Une relation permet de lier, mettre en relation, des enregistrements. Il s'agit d'une description d'un mode d'implémentation relationnel d'une base de données, mais l'invention n'est pas limitée à ce type de base de données. Elle est compatible avec les bases de données objets, hiérarchique ou NoSql pour ne citer que les systèmes de base de données les plus connus. In practice it could be just one database. It is convenient here for the sake of clarity to describe two databases. A database is described here as a set of tables and relationships. A table has rows, or records, with each row divided into columns or fields. A relation allows to link, to put in relation, recordings. This is a description of a relational implementation mode of a database, but the invention is not limited to this type of database. It is compatible with object databases, hierarchical or NoSql to name only the most well-known database systems.
[0025 ] La base 1 033 de données de démarches comporte : The database 1033 of data includes:
Une table 1050 de démarches comportant au moins : A table 1050 of steps including at least:
Une colonne 1 051 identifiant de démarche A column 1 051 gait identifier
Une table 1060 de formulaires comportant au moins : A table 1060 of forms comprising at least:
Une colonne 1 061 identifiant de formulaire A column 1,061 form identifier
- Une colonne 1 062 identifiant de démarche permettant de rattacher un formulaire à une démarche - A column 1 062 gait identifier to link a form to a procedure
Une table 1070 de contrôles comportant au moins : A control table 1070 comprising at least:
Une colonne 1 071 identifiant de contrôle Une colonne 1 072 identifiant de formulaire permettant de rattacher le contrôle à un formulaire. A column 1,071 control identifier A column 1,072 form identifier for attaching the control to a form.
[ 0026] On voit ici que l'on décrit des liens 1 - N entre les tables. Dans la pratique on peut aussi avoir des liens N - N en ajoutant des tables de relations, par exemple en table qui comporterait des identifiants de démarches et des identifiants de formulaires pour permettre d'associer un formulaire à plusieurs démarches. We see here that we describe links 1 - N between the tables. In practice one can also have links N - N by adding tables of relations, for example in table which would include identifiers of steps and identifiers of forms to allow to associate a form with several steps.
[0027 ] Dans la pratique un contrôle est assimilable à une zone de saisie qui comporte un type. Les types les plus fréquents sont : texte, case à cocher, liste. La liste n'est pas exhaustive. In practice a control is comparable to an input area that includes a type. The most common types are: text, check box, list. The list is not exhaustive.
[0028 ] La figure 1 montre aussi que la base 1 034 de démarche comporte aussi : [0028] Figure 1 also shows that the base 1034 gait also includes:
une table 1 080 de flux comportant au moins : a flow table 1080 comprising at least:
Une colonne 1 081 identifiant de flux A column 1,081 stream identifier
- Une colonne 1 082 identifiant de démarche - A column 1 082 gait identifier
Une colonne 1 083 identifiant de destinataire, par exemple un email ou un identifiant permettant de déterminer un email. A column 1083 recipient identifier, for example an email or an identifier for determining an email.
[ 0029] Dans une variante de l'invention la base 1 033 de démarches comporte aussi une table 8010 de règles de routage de flux. La table 801 0 comporte .au moins : In a variant of the invention the base 1033 of steps also includes a table 8010 flow routing rules. The table 801 0 comprises at least:
Une colonne 801 1 identifiant de règle de routage, A column 801 1 routing rule identifier,
Une colonne 801 2 règle de routage. A column 801 2 routing rule.
[ 0030 ] Dans une variante de l'invention la base 1 033 de démarches comporte aussi une table 8020 de composants. La table 8020 de composant comporte au moins : In a variant of the invention the base 1033 of steps also includes a table 8020 of components. The component table 8020 comprises at least:
Une colonne 8021 identifiant de composant, A column 8021 component identifier,
Une colonne 8022 nature de composant. A column 8022 nature of component.
Une colonne 8023 contenu. A column 8023 content.
Une colonne 8024 identifiant de démarche. A column 8024 gait identifier.
[ 0031 ] Un composant est donc associé à une démarche. Dans une variante la table de composant peut être mise en œuvre via la table 1070 de contrôles. Dans ce cas la table 1 070 de contrôles comporterait, par exemple, une colonne de nature pour préciser la nature de l'enregistrement. L'une des natures serait contrôle, les autres natures correspondraient à des natures de composant. Dans ce cas un composant peut aussi être lié à un formulaire. A component is therefore associated with an approach. In a variant, the component table can be implemented via the control table 1070. In this case the control table 1070 would include, for example, a column of nature to specify the nature of the record. One of the natures would be control, the other natures correspond to natures of component. In this case a component can also be linked to a form.
[0032 ] Une nature de composant est, par exemple : A nature of a component is, for example:
Thème graphique, par exemple un ensemble de feuilles de style de type CSS utilisé pour modifier l'aspect d'un formulaire, Graphic theme, for example a set of CSS style sheets used to change the appearance of a form,
Un service web, utilisé pour valider une saisie d'un utilisateur, A web service, used to validate a user input,
Une source de donnée utilisée pour peupler un contrôle de type sélection parmi une liste A data source used to populate a selection type control from a list
Un fichier XSLT pour faire du filtrage et/ou une mise en forme de données, par exemple lors du traitement d'un enregistrement d'envoi. An XSLT file for filtering and / or formatting data, for example when processing a send record.
[0033 ] Une règle de routage est un arbre de décision, par exemple un sélecteur, qui permet de déterminer une adresse à partir de la valeur d'un contrôle. Dans cette variante la colonne 1083 identifiant de destinataire enregistre un identifiant de règle de routage. A routing rule is a decision tree, for example a selector, which makes it possible to determine an address from the value of a control. In this variant, the destination identifier column 1083 registers a routing rule identifier.
[ 0034 ] La figure 1 montre aussi que la base 1 033 de démarches comporte aussi : [0034] Figure 1 also shows that the base 1033 of steps also includes:
Une table 1090 de contenus de flux comportant au moins : A table 1090 of flow contents comprising at least:
Une colonne 1 091 identifiant de flux, A column 1,091 flow identifier,
Une colonne 1 092 identifiant de contrôle. Ici la colonne 1 092 identifiant de contrôle peut être : A column 1 092 control identifier. Here column 1 092 control identifier can be:
- Un identifiant tel que l'identifiant de contrôle de la table 1070 de contrôles An identifier such as the control identifier of the control table 1070
-composite, c'est-à-dire être la concaténation d'un identifiant de contrôle de la table 1 070 de contrôles et d'un identifiant de formulaire de la table 1 060 de formulaires. -composite, that is, the concatenation of a control identifier from the control table 1070 and a form identifier from the form table 1060.
[ 0035 ] La figure 1 montre aussi que la base 1 033 de démarches comporte aussi : [0035] FIG. 1 also shows that the base 1033 of steps also includes:
- Une table 2000 de règles d'envois comportant au moins : - A 2000 table of mailing rules including at least:
Une colonne 2001 identifiant de règle d'envoi, A 2001 Shipping Rule Identifier column
Une colonne 2002 condition de déclenchement, Une colonne 2003 identifiant de flux, dans une variante une règle peut comporter plus d'un identifiant de flux. A column 2002 trigger condition, A column 2003 flow identifier, in a variant a rule may include more than one flow identifier.
[ 0036] Pour le cas de la table 2000 de règles d'envois un lien avec une démarche est réalisé via l'identifiant de flux qui permet d'identifier un flux qui est lui lié à une démarche. Dans la pratique un tel lien, entre un flux et une démarche, pourrait être établi soit directement via une colonne de la table de règle, soit indirectement via une table de jointures spécialisée. For the case of the mailing table 2000 a link with an approach is achieved via the flow identifier that identifies a flow that is linked to a process. In practice, such a link between a flow and an approach could be established either directly via a column of the rule table or indirectly via a specialized join table.
[0037 ] Dans le cas de la table de règles d'envois l'identifiant de règle d'envois est structurel c'est-à-dire non nécessaire à la mise en œuvre de l'invention. Le lien entre une règle d'envoi et un flux est réalisé via un identifiant de flux enregistré dans l'enregistrement de règle. Dans une variante on peut utiliser une table de liaison dont les enregistrements comportent un identifiant de règle et un identifiant de flux. In the case of the sending rule table the sending rule identifier is structural, that is to say not necessary for the implementation of the invention. The link between a send rule and a feed is made via a feed ID stored in the rule record. In a variant, it is possible to use a link table whose records include a rule identifier and a stream identifier.
[0038 ] Dans une variante de l'invention, dans un cas dans lequel une démarche comporterait plusieurs formulaires, la base 1033 de données de formulaire comporte une ou plusieurs tables permettant de définir un ordre dans lequel enchaîner les formulaires de la démarche. Ces tables supplémentaires, qui peuvent être des extensions des tables existantes, comportent, par exemple, les informations suivantes : In a variant of the invention, in a case in which an approach comprises several forms, the database 1033 form data includes one or more tables for defining an order in which to link the forms of the approach. These additional tables, which can be extensions of existing tables, include, for example, the following information:
- Premier formulaire de la démarche : identifiant du premier formulaire utilisé lors de la création d'une nouvelle instance de la démarche - First form of the process: identifier of the first form used when creating a new instance of the approach
Pour chaque formulaire quel est le formulaire suivant, le formulaire suivant pouvant dépendre d'une condition basée, par exemple, sur la valeur d'un contrôle du formulaire actuel que l'on quitte pour passer au formulaire suivant. For each form what is the following form, the following form may depend on a condition based, for example, on the value of a control of the current form that is left to move to the next form.
[0039] La figure 1 montre aussi que la base 1034 de données d'instance de démarches comporte : [0039] FIG. 1 also shows that the database 1034 of instance instance data comprises:
Une table 201 0 d'instances de démarche comportant au moins : A table 201 0 of gait instances comprising at least:
Une colonne 201 1 identifiant d'instance de démarche, - Une colonne 201 2 identifiant d'utilisateur, A column 201 1 gait instance identifier, - a column 201 2 user identifier,
Une colonne 2009 identifiant de démarche. A 2009 column identifying the approach.
[ 0040 ] Dans une variante de l'invention la table 201 0 d'instance de démarche comporte : Une colonne 201 3 de départ de la démarche, In a variant of the invention, the gait instance table 201 0 comprises: A starting column 201 3 of the approach,
Une colonne 2014 de statut de l'instance de la démarche, A 2014 status column of the instance of the process,
[ 0041 ] Un statut d'une instance de démarche est, par exemple : [0041] A status of a procedure instance is, for example:
- Créée : au moment de sa création, - Created: at the moment of its creation,
Soumise : envoyée au destinataire ou aux destinataires, Submitted: sent to the recipient or recipients,
Acceptée : le destinataire a accepté de traiter le cas car le dossier est complet Accepted: the recipient has agreed to handle the case because the file is complete
Refusée : le destinataire a refusé la démarche. Refused: the recipient refused the procedure.
- ... la liste n'est pas exhaustive. - ... The list is not exhaustive.
[0042 ] Un statut d'instance de démarche permet, au moins, de renseigner un utilisateur créateur de démarche d'un avancement de sa démarche au sein d'un organisme ou administration à laquelle il s'adresse à travers un serveur de publication. La notion de serveur de publication est décrite plus loin dans la description. [0042] A procedure authority status allows, at least, to inform a user creator of a process of an advancement of its approach within an organization or administration to which it is addressed through a publication server. The concept of publication server is described later in the description.
[0043 ] La figure 1 montre aussi que la base 1034 de données d'instance de démarches comporte : [0043] FIG. 1 also shows that the database 1034 of instance instance data comprises:
Une table 2020 de données d'instance de démarche comportant au moins : A 2020 instance instance data table with at least:
- Une colonne 2021 d'identifiant d'instance de démarche, A step instance identifier column 2021,
Une colonne 2022 d'identifiant de contrôle, A column 2022 of control identifier,
Une colonne 2023 de valeur. A 2023 column of value.
[ 0044 ] A partir de là, par le jeu des relations, au sens système de base de données relationnelle, il est aisé de composer une vue, à partir de la table 2010 d'instances de démarche et de la table 2020 de données d'instances de démarche, permettant d'exposer des n-uplets : From there, by the relationship game, in the relational database system sense, it is easy to compose a view, from the 2010 table of gait instances and the 2020 data table. gait instances, to expose n-tuples:
- Identifiant d'utilisateur, - User ID,
- Identifiant de démarche - Approach identifier
- Identifiant de contrôle - Control ID
- Valeur. - Value.
[0045 ] Ici il s'agit d'un quadruplet. En général un n-uplet est une association de n valeurs. [0046] Dans une variante de l'invention, la base 1 034 de données d'instance de démarche comporte : Here it is a quadruplet. In general, a tuple is an association of n values. In a variant of the invention, the base 1034 of gait instance data comprises:
Une table 2030 de messages comportant au moins : A table 2030 of messages comprising at least:
Une colonne 2031 identifiant d'instance de démarche A 2031 step instance identifier column
- Une colonne 2032 de message. - A 2032 column of message.
[0047 ] Dans une variante de l'invention, la base 1 034 de données d'instance de démarche comporte : In a variant of the invention, the base 1034 of gait instance data comprises:
Une table 2040 d'envois comportant au moins : A 2040 mailing table comprising at least:
Une colonne 2041 identifiant d'instance de démarche A 2041 step instance identifier column
- Une colonne 2042 de données à envoyer - A 2042 column of data to send
Une colonne 2043 d'identifiant de flux. A column 2043 of stream identifier.
[ 0048 ] La figure 1 montre que, via l'interface 1 020 réseau, le serveur 1 000 de démarche est connecté à un réseau 2000 de type Internet ou Intranet ce qui permet à un ordinateur 3000 client d'émettre des requêtes vers le serveur 1 000 de démarche. FIG. 1 shows that, via the network interface 1020, the step 1000 server is connected to a network 2000 of the Internet or Intranet type, which enables a client computer 3000 to send requests to the server 1,000 steps.
[0049] Dans une variante de l'invention un identifiant d'instance de démarche est une chaîne de caractère calculée de manière à être unique et non prédictible par une personne n'ayant pas connaissance de la méthode de production. Cela permet alors d'utiliser l'identifiant d'instance de démarche pour consulter directement une démarche sur le serveur de publication. Dans la mesure où le serveur de publication est un serveur http, on parle d'une url de reprise, qui inclue un identifiant d'instance de démarche. Une url de reprise permet à celui qui la connaît de reprendre, et/ou consulter, l'instance de démarche correspondant. Dans ce cas un simple compteur n'est pas adapté comme identifiant d'instance de démarche, n'importe qui pouvant interroger le serveur de publication avec un numéro au hasard. Autrement dit, un identifiant non prédictible n'appartient pas à une séquence mais est produit par un calcul autre qu'une simple incrémentation. Dans la pratique le calcul dépend d'un marqueur temporel aussi connu sous le nom de timestamp. In a variant of the invention a gait instance identifier is a character string calculated to be unique and not predictable by a person unfamiliar with the production method. This then makes it possible to use the step instance identifier to directly consult an approach on the publication server. Since the publisher is an http server, we are talking about a recovery URL, which includes a gait instance identifier. A recovery url allows the person who knows it to take back, and / or consult, the corresponding procedure. In this case a simple counter is not suitable as a process instance identifier, anyone can query the publisher with a random number. In other words, an unpredictable identifier does not belong to a sequence but is produced by a calculation other than a simple incrementation. In practice the calculation depends on a time marker also known as timestamp.
[0050 ] La figure 2 montre une première étape 5000 de création d'une démarche. Cette création est réalisé via une interface homme machine qui comporte, par exemple, un bouton « nouvelle démarche ». L'activation d'un tel bouton provoque la création d'un nouvel enregistrement dans la table 1 050 de démarches ainsi que l'attribution d'un identifiant à ce nouvel enregistrement. Cette attribution est soit automatique, par exemple par des mécanismes de gestion d'identité d'un moteur de base de données (Identity pour Sql Server (marque déposée), Séquence pour Oracle (marque déposée) ...), ou manuel par une sollicitation de l'utilisateur via une zone de saisie. Dans ce dernier cas il faudra valider l'identifiant en s'assurant qu'il est bien unique dans la table 1 050 de démarches. [0050] Figure 2 shows a first step 5000 of creating a process. This creation is done via a man-machine interface which includes, for example, a "new approach" button. Activation of such a button causes the creation of a new record in table 1050 of procedures and the assignment of an identifier to this new registration. This attribution is either automatic, for example by identity management mechanisms of a database engine (Identity for Sql Server (registered trademark), Sequence for Oracle (registered trademark) ...), or manual by a solicitation of the user via an input area. In this last case it will be necessary to validate the identifier by ensuring that it is very unique in the table 1050 of steps.
[0051 ] Dans une variante de l'invention l'identifiant de démarche est structuré, on dit aussi complexe ou composite. Dans cette variante l'identifiant de démarche comporte : In a variant of the invention the gait identifier is structured, it is also said complex or composite. In this variant, the gait identifier comprises:
Un champ identifiant général de démarche, A general identifying field of approach,
Un champ identifiant de version. A version identifier field.
[ 0052 ] La figure 2 montre que l'étape 5000 de création d'un nouveau formulaire est suivie d'une étape 501 0 de création d'un formulaire. Cette création est réalisé via une interface homme machine qui comporte, par exemple, un bouton « nouveau formulaire ». L'activation d'un tel bouton provoque la création d'un nouvel enregistrement dans la table 1 060 de formulaires ainsi que l'attribution, comme précédemment décrit, d'un identifiant à ce nouvel enregistrement. Dans la mesure où l'on vient, juste avant cette étape, de créer une démarche, la création du formulaire se fait dans ce contexte et la valeur de la colonne identifiant de démarche du nouvel enregistrement de formulaire est la valeur de l'identifiant de démarche de l'identifiant de démarche du nouvel enregistrement de démarche. Figure 2 shows that the step 5000 of creating a new form is followed by a step 501 0 of creation of a form. This creation is done via a man-machine interface that includes, for example, a "new form" button. Activation of such a button causes the creation of a new record in the forms table 1060 as well as the assignment, as previously described, of an identifier to this new record. To the extent that one comes, just before this step, to create an approach, the creation of the form is done in this context and the value of the step identifier column of the new form record is the value of the identifier of approach of the process ID of the new process registration.
[0053 ] Plus généralement, lors de la création d'un objet, des colonnes identifiant du nouvel objet sont initialisés en fonction du contexte dans lequel l'objet est créé. Un contexte peut aussi être activé par l'ouverture pour modification d'un élément existant. Par exemple l'ouverture pour modification d'un formulaire va provoquer la création d'un contexte lié au formulaire ouvert et tous les contrôles créés dans ce contexte seront lié à ce formulaire. More generally, during the creation of an object, columns identifying the new object are initialized according to the context in which the object is created. A context can also be activated by opening to modify an existing element. For example, opening to modify a form will cause the creation of a context linked to the open form and all the controls created in this context will be linked to this form.
[ 0054 ] De l'étape 501 0 de création de formulaire on passe à une étape 5020 de création, ou définition, d'un nouvel enregistrement de contrôle que l'on associe au nouvel enregistrement de formulaire. Cette association se fait naturellement car le contrôle est créé dans le contexte du nouvel enregistrement de formulaire. Cette création est réalisé via une interface homme machine qui comporte, par exemple, un bouton « nouveau contrôle ». L'activation d'un tel bouton provoque la création d'un nouvel enregistrement dans la table 1 070 de contrôles ainsi que l'attribution, comme précédemment décrit, d'un identifiant à ce nouvel enregistrement. From step 501 0 form creation we go to a step 5020 creation, or definition, of a new control record that is associated with the new form record. This association is done naturally because the control is created in the context of the new form record. This creation is done via a man-machine interface that includes, for example, a "new control" button. The activation of such a button causes the creation of a new record in the control table 1070 as well as the allocation, as previously described, of an identifier to this new record.
[0055 ] Un contrôle est aussi appelé une zone de saisie et peut être, classiquement : A control is also called an input area and can be, conventionally:
Une zone de saisie de texte, A text entry area,
Une zone de sélection dans une liste, A selection box in a list,
- Une zone de sélection d'un fichier, - A selection area of a file,
Un bouton permettant, par exemple, de déclencher une soumission du formulaire, A button allowing, for example, to trigger a submission of the form,
[ 0056] La liste n'est pas exhaustive. Pour la compléter on pourrait, par exemple, utiliser la documentation de la balise nommée input (saisie en français) du langage HTML. The list is not exhaustive. To complete it one could, for example, use the documentation of the tag named input (input in French) of the HTML language.
[0057 ] On rappelle que la soumission d'un formulaire est le fait d'émettre les données d'un formulaire vers un serveur de traitement. It is recalled that the submission of a form is the fact of transmitting the data of a form to a processing server.
[ 0058 ] Une telle création de formulaire, par création de contrôle, est également connue dans d'autre environnement, comme par exemple Visual Studio (marque déposée) de Microsoft (marque déposée) ou encore SmartGuide (marque déposée) de la société Alphinat. Such a creation of form, by creating control, is also known in other environment, such as Visual Studio (trademark) of Microsoft (trademark) or SmartGuide (trademark) of the company Alphinat.
[ 0059] L'invention réside ici dans le fait d'associer le résultat de la création du formulaire et des contrôles qu'il comporte à un identifiant de démarche. The invention resides here in associating the result of the creation of the form and the controls it includes with a gait identifier.
[ 0060 ] Dans un mode préféré de réalisation un identifiant de contrôle est unique pour un formulaire. C'est-à-dire que si on sélectionne tous les contrôles d'un formulaire dans la table 1 070 de contrôles, alors chacune des lignes résultant de cette sélection peut être identifiée de manière unique par la valeur de la colonne identifiant de contrôle. Ce résultat est obtenu automatiquement si on utilise les mécanismes d'identité précédemment cité. Sinon il faut interdire la création, c'est-à-dire la mise à jour de la base de données, tant que l'utilisateur n'aura pas saisie un identifiant satisfaisant à la contrainte d'unicité. [0061 ] La figure 2 montre une étape 5030 de définition, ou création d'un flux de données. Cette création est réalisé via une interface homme machine qui comporte, par exemple, un bouton « nouveau flux ». L'activation d'un tel bouton provoque la création d'un nouvel enregistrement dans la table 1 080 des flux ainsi que l'attribution d'un identifiant à ce nouvel enregistrement. Ce nouvel enregistrement est, de par son contexte de création, lié au nouvel enregistrement de démarche. In a preferred embodiment, a control identifier is unique for a form. That is, if all the controls of a form are selected in the control table 1070, then each of the rows resulting from this selection can be uniquely identified by the value of the control identifier column. This result is obtained automatically if the aforementioned identity mechanisms are used. Otherwise you must prohibit the creation, that is to say the updating of the database, as long as the user has not entered an identifier satisfying the uniqueness constraint. Figure 2 shows a step 5030 of definition, or creation of a data stream. This creation is done via a human machine interface which includes, for example, a button "new flow". Activation of such a button causes the creation of a new record in the table 1 080 flows as well as the allocation of an identifier to this new record. This new record is, due to its creation context, linked to the new record of procedure.
[0062 ] L'étape 5030 de création d'un flux de données est suivie d'une étape 5040 d'association d'au moins un contrôle au nouvel enregistrement de flux. Cela est réalisé par l'insertion dans la table 1 090 de données de flux d'une ligne comportant l'identifiant de l'enregistrement de flux nouvellement créé et un identifiant d'un contrôle associé à la démarche à laquelle le flux est associé. Dans le mode de réalisation, l'association entre un contrôle et une démarche est réalisée via le formulaire dont dépend le contrôle. Le formulaire dont dépend le contrôle est identifié par la colonne identifiant de formulaire de l'enregistrement de contrôle. La démarche dont dépend le formulaire est identifiée par l'identifiant de démarche de l'enregistrement de formulaire. Cette chaîne de dépendance permet de déterminer de quelle démarche dépend un contrôle. Dans une variante de l'invention la table de contrôles comporte une colonne identifiant de démarche ce qui permet de rattacher directement un contrôle à une démarche. Step 5030 of creating a data stream is followed by a step 5040 of association of at least one control to the new flow record. This is accomplished by inserting in the table 1 090 flow data of a line including the identifier of the newly created flow record and an identifier of a control associated with the step to which the flow is associated. In the embodiment, the association between a control and an approach is achieved via the form on which the control depends. The form on which the control depends is identified by the form identifier column of the control record. The process on which the form depends is identified by the process identifier of the form record. This chain of dependency makes it possible to determine which approach depends on a control. In a variant of the invention the control table includes a gait identifier column which allows a control to be directly attached to a gait.
[0063 ] Dans l'étape 5030 de création d'un flux, un utilisateur saisie également un identifiant de destinataire pour le flux. Un identifiant de destinataire est soit une adresse mail, soit un identifiant dans un carnet d'adresse électronique non représenté, la résolution de l'identifiant permettant d'obtenir une adresse électronique. Une adresse électronique est, par exemple : une adresse mail, une adresse d'un serveur FTP, ou plus généralement une adresse d'un service web. Dès lors on peut assimiler un flux à une enveloppe dans la mesure où un flux comporte un destinataire et la description d'un contenu. In step 5030 of creating a stream, a user also enters a recipient identifier for the stream. A recipient identifier is either an email address or an identifier in a not shown electronic address book, the resolution of the identifier to obtain an email address. An email address is, for example: an email address, an address of an FTP server, or more generally an address of a web service. Therefore we can assimilate a stream to an envelope to the extent that a flow includes a recipient and the description of a content.
[0064 ] La figure 2 montre une étape 5050 de définition d'une règle d'émission. Dans l'étape 5050, un utilisateur crée un nouvel enregistrement dans la table 2000 de règles d'envois. Pour cette création, via une interface, graphique ou en ligne de commande, l'utilisateur saisie un identifiant de démarche, une condition et un identifiant de flux. Cela permet de créer une règle. Une condition est par exemple : Validation du formulaire x, FIG. 2 shows a step 5050 of definition of a transmission rule. In step 5050, a user creates a new record in the Send Rules Table 2000. For this creation, via an interface, graphical or on the command line, the user enters a gait identifier, a condition and a flow identifier. This creates a rule. A condition is for example: Validation of the form x,
Valeur du contrôle x égale y. Control value x equals y.
[ 0065 ] Les conditions sont donc structurées. Par exemple en deux champs : The conditions are structured. For example in two fields:
Un champ identifiant un contrôle A field identifying a control
- Une valeur de déclenchement pour ce contrôle. - A trigger value for this control.
[0066] D'une manière générale les règles associées à une démarche sont évaluées à chaque soumission d'un formulaire de la démarche. In general, the rules associated with an approach are evaluated with each submission of a form of the approach.
[ 0067 ] La règle est validée, évaluée à vraie, quand, dans une instance de démarche la valeur saisie du contrôle est égale à la valeur de déclenchement. The rule is validated, evaluated to true, when, in an instance of approach the value entered control is equal to the trigger value.
[0068 ] Dans une variante de l'invention, le traitement d'un flux, suite à la validation d'une règle provoque la création d'au moins un nouvel enregistrement dans la table 2040 d'envois. Ce nouvel enregistrement comporte, comme précédemment décrit : In a variant of the invention, the processing of a stream, following the validation of a rule causes the creation of at least one new record in the table 2040 of mailings. This new record includes, as previously described:
un identifiant d'instance de démarche : celui de la démarche active, - un identifiant de flux : un de ceux de la règle d'envoi validée a procedure instance identifier: that of the active procedure, - a stream identifier: one of those of the validated sending rule
des données : celle décrite pas le flux précédemment identifié. data: the one described by the previously identified flow.
[0069] Dans la pratique il y a autant de nouvel enregistrement d'envois créés que de flux associés à la règle d'envoi validée. In practice there are as many new records of mail items created as flows associated with the validated sending rule.
[ 0070 ] Dans cette variante, avec table d'envois, les envois effectifs sont effectués à partir de la table d'envois. Le principe est qu'un processus autonome parcourt régulièrement la table d'envoi pour sélectionner les enregistrements qui n'ont pas été émis ou qui n'ont pas été correctement émis. Pour ces enregistrements le processus autonome utilise l'identifiant de flux pour déterminer un destinataire, et les données pour produire un message à envoyer. Selon la façon dont s'est déroulée la communication avec le destinataire le processus autonome marque l'enregistrement d'envoi comme traité ou en erreur. In this variant, with mailing table, the actual shipments are made from the mailing table. The principle is that an autonomous process periodically traverses the send table to select records that have not been issued or that have not been successfully issued. For these records the stand-alone process uses the stream identifier to determine a recipient, and the data to produce a message to be sent. Depending on how the communication with the recipient took place, the stand-alone process marks the sending record as treated or in error.
[0071 ] La description a décrit un certain enchaînement d'étape. Dans la pratique cet ordre n'est pas figé, il pourrait être autre. The description has described a certain sequence of steps. In practice this order is not fixed, it could be other.
[ 0072 ] A ce stade la démarche est prête pour être publiée, c'est-à-dire rendue disponible via un réseau de type Internet ou intranet. La figure montre une étape 6000 de publication. At this stage the approach is ready to be published, that is to say made available via a network type Internet or intranet. The figure shows a step 6000 of publication.
[0073 ] Les solutions pour la publication sont multiples. Le principe est qu'il existe un serveur capable d'interpréter une requête comme étant une demande d'instanciation d'un formulaire. Ce serveur, appelé serveur de publication, peut être le serveur 1 000 de démarche ou un autre serveur. The solutions for the publication are multiple. The principle is that there is a server capable of interpreting a request as a request instantiation of a form. This server, called the publisher, can be the 1,000-step server or another server.
[ 0074 ] Lors de la publication, on peut par exemple associer un nom à une démarche. Cela revient à avoir une colonne supplémentaire dans la table 1 050 des démarches. Le serveur, par exemple le serveur 1 000 de démarche, reçoit alors une requête comportant : When publishing, we can for example associate a name to a process. This amounts to having an additional column in the table 1050 of the steps. The server, for example the gait server 1000, then receives a request comprising:
Un code instruction correspondant à un ordre d'instancier une démarche An instruction code corresponding to an order to instantiate a procedure
Un nom. A name.
[ 0075 ] Dans le cas décrit le serveur 1 000 de démarches joue aussi le rôle de serveur de publication au sens où c'est également lui qui répond aux requêtes issues des utilisateurs souhaitant entreprendre une démarche. Dans la pratique ce devrait être deux serveurs différents pour des raisons classiques de sécurité et d'isolation de données entre développement et production. In the case described the server 1000 of steps also plays the role of publication server in the sense that it is also he who responds to requests from users wishing to undertake a process. In practice it should be two different servers for classic reasons of security and data isolation between development and production.
[0076] Le serveur de publication cherche alors le nom reçu par requête dans la table 1050 des démarches, si une démarche est trouvée, et si un statut de la démarche est à « publiée », alors le serveur répond par un formulaire de la démarche. Sinon le serveur renvoie un message d'erreur. On peut aussi envisager un serveur de production sur lequel toutes les démarches ont par défaut un statut permettant leur publication. Il est dès lors inutile de gérer un tel statut. The publication server then searches the name received by request in the table 1050 steps, if an approach is found, and if a status of the approach is "published", then the server responds with a form of the approach . Otherwise the server returns an error message. One can also consider a production server on which all the steps have by default a status allowing their publication. It is therefore useless to manage such a status.
[0077 ] Dans ce cas, une mise en œuvre possible est d'utiliser comme identifiant général de démarche un nom qui pourra être celui utilisé dans la requête. In this case, a possible implementation is to use as a general gait identifier a name that may be the one used in the request.
[ 0078 ] Dans la pratique le serveur de publication est un serveur http. Ce serveur transforme la description d'un formulaire, telle qu'enregistrée dans la base 1033 de démarches, en tout ou partie d'une page html. On note ici qu'il n'y a pas de html dans le modèle de la démarche enregistré dans la base de démarches. C'est le serveur de publication qui met en forme la description du formulaire pour produire du html. In practice, the publication server is an http server. This server transforms the description of a form, as registered in the database 1033 of steps, in whole or part of a html page. We note here that there is no html in the model of the approach recorded in the database. It is the Publisher that formats the description of the form to produce html.
[0079] Par exemple, on ajoute dans la table 1070 de contrôle, une colonne de type qui permet de stocker un type. Ce type est utilisé par le serveur de publication pour déterminer comment « rendre » le contrôle. Ici rendre signifie utiliser le type pour déterminer une séquence de code html. Ce procédé permet de créer des formulaires sans avoir connaissance du langage html. Pour parvenir à cette fin la table 1 070 peut contenir d'autres colonnes, comme par exemple des colonnes permettant d'enregistrer des informations de positionnement, de dimension et de label. Il en va de même pour la table 1 060 de formulaires. For example, we add in the control table 1070, a type column that can store a type. This type is used by the Publisher to determine how to "render" the control. Here rendering means using the type to determine a html code sequence. This process allows create forms without knowing the html language. To achieve this, table 1070 may contain other columns, such as columns for storing location, dimension, and label information. The same is true for the 1,060 table of forms.
[0080 ] Avant de répondre positivement le serveur créé, dans une étape 6010 d'instanciation, une instance de la démarche. Dans la mise en œuvre décrite, le fait d'instancier une demande consiste au moins à enregistrer dans la table 2010 d'instance un nouvel enregistrement. Cela suppose que l'utilisateur se soit authentifié sur le serveur, dans une étape préalable non décrite, ce qui lui a permis d'obtenir un identifiant d'utilisateur. Il est ainsi possible de créer un nouvel enregistrement à partir de l'identifiant d'utilisateur et de l'identifiant de démarche trouver à partir du nom fournit par la requête précédemment décrite. Un identifiant d'instance de démarche est calculé automatiquement, par exemple par un mécanisme d'identité déjà décrit. Dans une variante de l'invention il n'y a pas d'authentification par le serveur de publication, dans ce cas l'identification se fait via une adresse mail fournie par l'utilisateur. Dans ce cas on parle d'utilisateur anonyme. Before responding positively to the server created, in a step 6010 of instantiation, an instance of the approach. In the described implementation, instantiating a request consists at least in registering in the instance table 2010 a new record. This assumes that the user has authenticated to the server, in a previous step not described, which allowed him to obtain a user ID. It is thus possible to create a new record from the user ID and the step find identifier from the name provided by the previously described request. A step instance identifier is automatically calculated, for example by an identity mechanism already described. In a variant of the invention, there is no authentication by the publication server, in which case the identification is done via an email address provided by the user. In this case we speak of anonymous user.
[0081 ] Dans une variante de l'invention l'identifiant d'instance de démarche est composite et composé de la colonne 201 1 identifiant de démarche et de la colonne 201 2 identifiant d'utilisateur. Cela est une façon de forcer l'unicité d'une instance de démarche pour un utilisateur, l'identifiant d'instance de démarche devant être unique. In a variant of the invention the step instance identifier is composite and composed of the column 201 1 gait identifier and the column 201 2 user identifier. This is a way to force the uniqueness of a gait instance for a user, the gait instance ID must be unique.
[ 0082 ] Ici, par instancier, on entend au moins le fait d'enregistrer des données conformément à un modèle. Les données sont dans la base d'instances, les modèles sont dans la base de données de démarches. Here, instantiating means at least the fact of recording data according to a model. The data is in the instance database, the templates are in the process database.
[0083 ] Dans une variante de l'invention, avant d'instancier une nouvelle démarche le serveur de publication effectue une recherche d'instance de démarche existante. Il s'agit d'une étape 6005. Cette recherche est effectuée dans la table 201 0 d'instances de démarche avec comme critère de sélection l'identifiant de démarche et l'identifiant d'utilisateur. Si cette recherche permet de trouver un enregistrement alors il n'y a pas de nouvelle instance créée, c'est celle qui a été trouvée qui est utilisée. [0084 ] Une fois un formulaire rempli, il est validé par une action de l'utilisateur ce qui provoque sa soumission au serveur. La soumission entraîne deux choses : In a variant of the invention, before instantiating a new approach, the publication server performs an existing process instance search. This is a step 6005. This search is performed in the table 201 0 of instances of approach with as selection criterion the gait identifier and the user identifier. If this search finds a record then there is no new created instance, it is the one that has been found which is used. Once a form is filled, it is validated by an action of the user which causes its submission to the server. Submission involves two things:
Mise à jour de la table 2020 de données d'instance : pour chaque contrôle du formulaire soumis le serveur de publication met à jour ou créée une ligne dans la table, la colonne valeur de cette ligne enregistrant les valeurs qui ont été saisies par l'utilisateur avant la soumission du formulaire Updating the 2020 Instance Data Table: For each control of the submitted form, the Publisher updates or creates a row in the table, the value column of this row recording the values that were entered by the publisher. user before submitting the form
Une évaluation des conditions de déclenchement des règles d'envois associées à la démarche. Si une condition d'une règle est validée, alors un message est constitué. Ce message comporte les données décrites pour le flux associé à la règle, règle dont la condition de déclenchement a été validée. On rappelle que cette description de données comporte un identifiant de contrôle. Les données incluses dans le message sont lues dans la table 2020 de données d'instance à partir des identifiant de contrôle et de l'identifiant de l'instance de démarche correspondant au formulaire validé. Le message une fois constitué est envoyé au destinateur désigné par le flux associé à la règle validée. An evaluation of the trigger conditions of the sending rules associated with the procedure. If a condition of a rule is validated, then a message is formed. This message contains the data described for the flow associated with the rule, rule whose triggering condition has been validated. It will be recalled that this data description comprises a control identifier. The data included in the message is read from the 2020 instance data table from the control IDs and the ID of the process instance corresponding to the validated form. The message once constituted is sent to the designated recipient by the flow associated with the validated rule.
[ 0085 ] Dans une variante multi-versions de l'invention, une démarche, c'est-à- dire un enregistrement dans la table 1 050 de démarches, comporte une colonne de version. Lors de la publication, la réponse à la requête de l'utilisateur dépend des versions disponibles de la démarche. On a alors l'arbre de décision pour la sélection d'une démarche suivant : In a multi-version variant of the invention, an approach, that is to say a record in the table 1050 of steps, includes a version column. When publishing, the response to the user's request depends on the available versions of the process. We then have the decision tree for the selection of a following procedure:
Est-ce qu'il existe une instance de la démarche active pour l'utilisateur ? Is there an instance of the active approach for the user?
- Oui : alors on utilise cette instance - Yes: then we use this instance
Non : parmi toutes les démarches correspondant au nom utilisé dans la requête, on utilise celle qui a le numéro de version le plus élevé, c'est-à-dire la version la plus récente. No: Among all the steps corresponding to the name used in the query, the one with the highest version number, that is the most recent version, is used.
[ 0086] La variante multi-versions permet d'avoir simultanément plusieurs versions d'une démarche publiées. Ce cas se produit, par exemple, quand un utilisateur commence une démarche à une date D0 mais ne la même pas à bout. A une date D1 postérieur à la date D0 une nouvelle version de la démarche est publiée. L'utilisateur revient à une date D2 postérieure à la date D1 et peut poursuivre sa démarche grâce à l'arbre de décision précédemment décrit pour la variante multi-versions. The multi-version variant makes it possible to simultaneously have several versions of a published approach. This case occurs, for example, when a user starts a process on a D0 date but does not even finish it. At a date D1 after the date D0 a new version of the procedure is published. The user returns to a date D2 after the date D1 and can continue with the decision tree previously described for the multi-version variant.
[0087 ] Dans une autre variante de l'invention une démarche comporte des dates de validités qui sont stockés dans : In another variant of the invention, an approach includes validity dates that are stored in:
- Une colonne 1 052 date de début de validité de la démarche dans la table 1 050 de démarches, - A column 1,052 date of beginning of validity of the procedure in the table 1050 of steps,
Une colonne 1 053 date de fin de validité de la démarche dans la table 1 050 de démarches. A column 1053 end date of the validity of the approach in the table 1050 of steps.
[ 0088 ] Dans cette variante l'arbre de décision de sélection d'une démarche comporte un test comparant la date courante aux dates de validités. Si la date courante n'est pas entre les dates de validité, alors la démarche ne peut pas être sélectionnée. In this variant, the selection decision tree of a step includes a test comparing the current date to the validity dates. If the current date is not between the validity dates, then the procedure can not be selected.
[0089] Dans cette variante les dates de validité de la démarche sont également utilisées lors de la validation d'un formulaire de la démarche. Si la date à laquelle la validation est effectuée est en dehors de la période de validité, alors la validation est bloquée. In this variant the validity dates of the approach are also used during the validation of a form of the approach. If the date on which validation is performed is outside the validity period, then validation is blocked.
[0090 ] Dans une autre variante avec purge on utilise la valeur de la colonne 201 3 date de départ, c'est-à-dire de création, de l'instance de démarche pour effacer des instances de démarche. Dans cette variante, toutes les instances de démarche dont l'âge est supérieur à une valeur prédéterminée sont effacées. L'âge est la différence entre la date courante est le date de départ. L'effacement consiste à supprimer les lignes correspondantes dans la table 201 0 d'instances de démarche et dans la table 2020 de données d'instance de démarche, ainsi que dans la table 2030 et la table 2040. In another variant with purge is used the value of the column 201 3 date of departure, that is to say, creation of the step instance to delete instances of gait. In this variant, all gait instances whose age is greater than a predetermined value are erased. Age is the difference between the current date and the date of departure. Deletion consists of deleting the corresponding rows in the 201 0 table of gait instances and in the 2020 gait instance data table, as well as in table 2030 and table 2040.
[0091 ] Cette variante avec purge permet de garantir la confidentialité des données. Les données ne sont pas persistées au-delà d'une certaine durée. This variant with purge ensures the confidentiality of the data. Data is not persisted beyond a certain time.
[0092 ] La figure 2 montre une étape 7000 de saisie d'un message par un utilisateur. Cette saisie est réalisée via un formulaire spécifique qui est lié, au moment de son utilisation à une instance de démarche. La validation de ce formulaire spécifique provoque la création dans la table 2030 de message d'un nouvel enregistrement. Cela permet d'associer des messages à une instance de démarche. Cela permet à différents intervenants intéressés par la démarche de communiquer au-delà de la démarche proprement dite. Ces intervenants sont, par exemple : FIG. 2 shows a step 7000 of inputting a message by a user. This entry is made via a specific form that is linked at the time of its use to a procedure instance. Validation of this specific form causes message 2030 to create a new record. This allows messages to be associated with a process instance. This allows different stakeholders interested in the process of communicate beyond the actual process. These stakeholders are, for example:
L'utilisateur, ou administré, ayant provoqué la création de l'instance de la démarche, The user, or administered, having caused the creation of the instance of the approach,
- Un représentant de l'administration à laquelle est destinée la démarche. - A representative of the administration for whom the procedure is intended.
[0093 ] Dans une variante de l'invention une démarche est publiée par morceau. Les formulaires servis par le serveur de publication le sont à partir d'une copie de la base de données de démarches. Cette copie est alimentée par des paquets de mise à jour. Un paquet de mise à jour est produit à partir de la base de données de démarches. Un utilisateur sélectionne, dans la base de données de démarches des éléments : formulaire, contrôle, composant, flux... pour les inclure dans un paquet et produire ledit paquet. Chaque élément est un morceau de démarche. Le paquet est reçu par le serveur de production qui utilise le contenu du paquet pour mettre à jour la copie de la base de données de démarche. On parle alors d'une étape 5095 d'intégration de paquet précédant l'étape 6000 de publication. In a variant of the invention, a step is published per piece. The forms served by the publisher are from a copy of the process database. This copy is powered by update packages. An update package is produced from the process database. A user selects, in the procedure database elements: form, control, component, stream ... to include them in a package and produce said package. Each element is a piece of gait. The package is received by the production server that uses the contents of the package to update the copy of the gait database. This is referred to as a packet integration step 5095 preceding the publication step 6000.
[0094 ] Dans une variante de la variante par morceau, avant l'intégration, le serveur de publication vérifie la cohérence d'un paquet reçu. Cette vérification est au moins une validation des dépendances des éléments contenus dans le paquet reçu. Par exemple si un paquet comporte un formulaire qui référence un composant feuille de style (CSS) qui n'est pas dans le paquet et qui n'a pas déjà été intégré via un paquet précédent, alors l'intégration du paquet est refusée. On vérifie ainsi chaque élément du paquet reçu pour s'assurer que le serveur de publication comporte bien tous les éléments permettant de publier chaque élément du paquet. In a variant of the piecewise variant, before the integration, the publication server checks the coherence of a received packet. This check is at least a validation of the dependencies of the elements contained in the received packet. For example, if a package has a form that references a style sheet component (CSS) that is not in the package and has not already been integrated through a previous package, then package integration is denied. This checks each element of the received packet to ensure that the publisher has all the elements to publish each element of the package.
Claims
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EP14787238.6A EP3053110A1 (en) | 2013-10-04 | 2014-10-03 | Method of computerizing a procedure |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR1359648 | 2013-10-04 | ||
| FR1359648A FR3011661A1 (en) | 2013-10-04 | 2013-10-04 | METHOD OF DEMATERIALIZING A PROCESS |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2015049472A1 true WO2015049472A1 (en) | 2015-04-09 |
Family
ID=50424343
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/FR2014/052509 Ceased WO2015049472A1 (en) | 2013-10-04 | 2014-10-03 | Method of computerizing a procedure |
Country Status (3)
| Country | Link |
|---|---|
| EP (1) | EP3053110A1 (en) |
| FR (1) | FR3011661A1 (en) |
| WO (1) | WO2015049472A1 (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN116109114A (en) * | 2023-04-13 | 2023-05-12 | 佛山科学技术学院 | Normalized government service data processing method and system |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20060069605A1 (en) * | 2004-09-29 | 2006-03-30 | Microsoft Corporation | Workflow association in a collaborative application |
| US20100305997A1 (en) * | 2009-01-27 | 2010-12-02 | Direct Response Medicine, Llc | Workflow management system and method |
-
2013
- 2013-10-04 FR FR1359648A patent/FR3011661A1/en active Pending
-
2014
- 2014-10-03 WO PCT/FR2014/052509 patent/WO2015049472A1/en not_active Ceased
- 2014-10-03 EP EP14787238.6A patent/EP3053110A1/en not_active Ceased
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20060069605A1 (en) * | 2004-09-29 | 2006-03-30 | Microsoft Corporation | Workflow association in a collaborative application |
| US20100305997A1 (en) * | 2009-01-27 | 2010-12-02 | Direct Response Medicine, Llc | Workflow management system and method |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN116109114A (en) * | 2023-04-13 | 2023-05-12 | 佛山科学技术学院 | Normalized government service data processing method and system |
| CN116109114B (en) * | 2023-04-13 | 2023-09-15 | 佛山科学技术学院 | A normalized government service data processing method and system |
Also Published As
| Publication number | Publication date |
|---|---|
| FR3011661A1 (en) | 2015-04-10 |
| EP3053110A1 (en) | 2016-08-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Bradshaw et al. | MongoDB: the definitive guide: powerful and scalable data storage | |
| CA2509462C (en) | Navigation of the content space of a document set | |
| Copeland | MongoDB Applied Design Patterns: Practical Use Cases with the Leading NoSQL Database | |
| US9727544B2 (en) | Animating edits to documents | |
| EP2949070B1 (en) | Verification process of the integrity of numerical data bloc | |
| US20060048047A1 (en) | Online annotation management system and method | |
| EP1470501A2 (en) | Methods and systems for searching and associating information resources such as web pages | |
| US8082276B2 (en) | Techniques using captured information | |
| EP1719061A2 (en) | Methods of manipulating information objects and of accessing such objects in a computer environment | |
| US7895224B2 (en) | Navigation of the content space of a document set | |
| US8352442B2 (en) | Determination of an updated data source from disparate data sources | |
| US20250315490A1 (en) | Detection and removal of predefined sensitive information types from electronic documents | |
| Stern et al. | Professional WordPress: Design and Development | |
| CN120508723A (en) | Social blog management system and method based on Vue and SpringBoot | |
| WO2015049472A1 (en) | Method of computerizing a procedure | |
| CA2894608A1 (en) | A computer-implemented method of aggregating and presenting digital photos from numerous sources | |
| WO2015173500A1 (en) | Relational file database and graphic interface for managing such a database | |
| Ryer | Go Programming Blueprints | |
| O'higgins | MongoDB and Python: Patterns and processes for the popular document-oriented database | |
| FR2828951A1 (en) | COMPUTER SYSTEM AND DOCUMENT MANAGEMENT METHOD | |
| WO2001095146A2 (en) | System for semi-automatic import of fragments of information resources | |
| FR2998996A1 (en) | METHOD FOR RECORDING HIERARCHISED DATA | |
| WO2009118477A2 (en) | Indirect address service for connecting to wide area network | |
| Lyons | Instant PostgreSQL Starter | |
| WO2001086496A1 (en) | System and method for processing data for targeted access to a server from a natural language query |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 14787238 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| REEP | Request for entry into the european phase |
Ref document number: 2014787238 Country of ref document: EP |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2014787238 Country of ref document: EP |