EP1559258A2 - Multistage network computer architecture, with user-centered remote operating system - Google Patents

Multistage network computer architecture, with user-centered remote operating system

Info

Publication number
EP1559258A2
EP1559258A2 EP03780236A EP03780236A EP1559258A2 EP 1559258 A2 EP1559258 A2 EP 1559258A2 EP 03780236 A EP03780236 A EP 03780236A EP 03780236 A EP03780236 A EP 03780236A EP 1559258 A2 EP1559258 A2 EP 1559258A2
Authority
EP
European Patent Office
Prior art keywords
server
database
user
client
stage
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.)
Withdrawn
Application number
EP03780236A
Other languages
German (de)
French (fr)
Inventor
Jean Levy Dreyfus
Didier 105 the Street Willesborough LEVY
Haim Mamou
Marc La Closerie des Valences SACCHETTI
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Online & Groupware
Original Assignee
Online & Groupware
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Online & Groupware filed Critical Online & Groupware
Publication of EP1559258A2 publication Critical patent/EP1559258A2/en
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/562Brokering proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]

Definitions

  • the present invention relates generally to integrated data processing systems in a network environment.
  • a multi-user data processing architecture was implemented in a central architecture - Mainframe + passive terminals - to carry out the heavy processing of the company - calculation, classification and extraction of data - instead of men.
  • the information system is very weak - slowness, loss of information, digital divide. - the network operating cost is very high because it requires very cumbersome administration, consequent security management (antivirus, backups and burglar-resistant surveillance) and hardware and software updates according to the evolution of publishers on all work stations.
  • the server addressing mode is simplified and uses a double naming system (digital IP addresses and mnemonic addresses by domain name).
  • the Navigator is not the single point of access to all online services (messaging, for example, is most often organized in a stand-alone and separate application);
  • PC personal productivity software does not use the browser as an access point, and the user therefore bears all the responsibility for naming and classifying the data that he produces locally or that he retrieves via the network; “The browser behaves according to the operating system of the local computer - the behavior of browsers therefore differs significantly from machine to the other to the point that even the services developed in Java language - whose original ambition was to be universal -, must be differentiated according to the browser and the machine on which they are run.
  • the new all-Internet architecture announced will only be able to be deployed effectively once:
  • the browser is the access point to a service (portal) through which the user can launch all information processing, whether using an application or an online service or operating a business software (CAD, PAO etc.) installed on the dedicated workstation.
  • CAD business software
  • PAO business software
  • An object of the present invention is to propose in a simple, economical and reliable manner, a transactional access point protocol for transmitting, organizing, storing, retrieving and distributing all of the computer data so as to make an all-Internet architecture operational. according to the above criteria. More particularly, the invention proposes a new server software infrastructure, which replaces the operating system and the software usually installed on a local computer and delivers to the end user, for his personal needs as in the professional context, all the Personal productivity, file and content management, information sharing and third-party relationship management, in the form of integrated and organized services, available on any terminal with Internet access at using a standard browser (computer, personal digital assistant, mobile phone, interactive television or game console connected to the Internet, etc.).
  • a standard browser computer, personal digital assistant, mobile phone, interactive television or game console connected to the Internet, etc.
  • the invention proposes a software infrastructure optimized for such an “all Internet” architecture, which transparently manages the personal and collaborative digital organization in real time, of each identified user connected from any fixed or mobile terminal ( light client).
  • the invention thus proposes, according to a first aspect, a computer architecture in a multi-stage network intended to allow access to a personal resource environment via a network such as the Internet, from various access points corresponding to different types.
  • client workstations characterized in that it includes:
  • a standard relational database server stage comprising a database manager capable of executing on request all operations on the data of the database, said database containing both, in a manner specific to each user, data and documents, constituting the user's organized and unique storage space,
  • a communication stage on the network comprising a communication server and client software capable of communicating together in a standard network format, and - an intermediate software layer server stage connected on the one hand to the server stage databases and secondly on the communication stage, and comprising a set of servlets capable, in response to requests from the communication stage, to execute procedures corresponding to types of operations predefined in the database manager, with different servlets corresponding to different types of client workstations.
  • the invention proposes a computer architecture in a multistage network intended to allow access to a personal resource environment via a network such as the Internet, from various access points corresponding to different types.
  • client workstations characterized in that it includes: a standard relational database server stage comprising a database manager capable of executing on request all operations on the data of the database, said database containing both, in a manner specific to each user, data and documents, constituting the organized and unique storage space of the user, and the database manager comprising remote operating system functionalities in relation to said storage space.
  • a communication stage on the network comprising a communication server and client software capable of communicating together in a standard network format
  • an intermediate software layer server stage connected on the one hand to the database server stage and on the other hand to the communication stage, and comprising a set of suitable servlets, in response to requests in from the communication stage, to cause the execution, by the database manager, of functions of said remote operating system.
  • Client software is typically a standard Internet browser.
  • the communication stage defines two distinct communication channels on the one hand for graphical interface information specific to each type of client station and on the other hand for data or documents to the client station or from from the client station.
  • said user storage space contains, within the database, all of the files executable by standard applications at the database server level or at the client station level, and data from the user.
  • a server shelters a database as well as all the logic of the operating system of the client workstation, which makes it possible to manage in a transparent manner, as of their generation, classification, saving, selection and the linking of data.
  • the server facilitates the operations of the user and controls the processing of the data that he manipulates, from his connection and throughout the session.
  • the approach of the present invention frees the user from the responsibility of organizing digitally information and allows it to be effective everywhere and all the time, even and especially away from any dedicated personal computer, because access and functionality will be identical from any workstation.
  • the present invention has many applications.
  • the system simplifies and democratizes the interactive use of the Internet, because it transparently federates the operation of applications (ASP) and Web services, controls the storage and extraction of data in a server, and requires only few resources on the client computer.
  • ASP applications
  • Web services controls the storage and extraction of data in a server, and requires only few resources on the client computer.
  • the system is advantageously offered in OEM to operators and manufacturers to facilitate the development of their web platforms for integrated services for individuals.
  • the platform is thus capable of delivering, in a personal portal easy to use, even without learning, from any station, at home or outside, a bouquet of essential services to the individual, the family group and / or at the micro-enterprise.
  • These services can include:
  • the platform is available from various communicating equipment such as a PC, a communicating personal digital assistant, a digital television, a GPRS / i ode mobile telephone, etc. The nature and presentation of the services are then adapted to the terminal used in a manner known per se), but the data used are the same, namely extracted from the subscriber's personal electronic cabinet.
  • a simple decoder - cable, satellite or digital terrestrial television (TNT), with modem for the transmission of information - equipped with a Web browser and a Java virtual machine allows access from a television to all services such as makes a PC, and there is no need to equip the decoder with heavy resources (hard disk, RAM, disk drives) to run applications, for storage of files and data and for installation new software; in addition, it will not be necessary to update the decoder with each new generation of processor, operating system and software; in addition, the user's account can be accessed later from a PC browser, for example to edit images and view them later or in another location on a television.
  • TNT digital terrestrial television
  • each user is identified by the server, whatever their connection terminal (PC, decoder, GPRS, etc.), it is easy to manage authentication controls allowing online payments without risk (the data circulating between the browser and server being encrypted and secure by default).
  • the invention makes it possible to organize and manage collaboration as a critical mission of the company.
  • CRM customer relationship management
  • SFA sales force automation
  • EDM Electronic Document Management
  • the system of the invention brings to the company the simplification of its organization and its procedures, even for remote employees, which in itself is a very significant source of savings and allows a rapid return on investment.
  • the invention can be in the form of a software brick to be installed on a Server (such as an "Internet Appliance” in Linux or a server under Windows 2000) physically installed in the company or hosted by a service provider.
  • a Server such as an "Internet Appliance” in Linux or a server under Windows 2000
  • the installation of the service can be extremely fast, the necessary settings being then carried out via the IP protocol from any thin client workstation.
  • the invention offers an economical solution insofar as it does not require the acquisition of new hardware or software on the client workstation, nor of a remote emulation server (such as Citrix or Microsoft TSE).
  • the invention allows a progressive adaptation, smoothly and without disruption insofar as the server part can connect to the pre-existing data sources of the company (Exchange, Domino, LDAP, Management under RDBMS, etc. .) allowing a progressive implementation and deployment compatible with the preservation of existing data, databases, document models, procedures and organizational charts.
  • the invention offers a tailor-made and extensible solution for the company. It easily supports large workgroups, by deploying them on the appropriate servers and RDBMS.
  • the integration, administration and customization of a system according to the invention are easy: maintenance is limited to a single server (no intervention on client workstations), and the administrator's work is greatly facilitated, allowing him to focus on the integration and creation of tailor-made queries intended to optimize the activity of the service.
  • the invention offers an excellent level of security, since all transactions can be executed in a VPN (virtual private network) by a server protected by “firewall” and antivirus. In addition, the data passing through the VPN (virtual private network) by a server protected by “firewall” and antivirus. In addition, the data passing through the VPN (virtual private network) by a server protected by “firewall” and antivirus. In addition, the data passing through the VPN (virtual private network) by a server protected by “firewall” and antivirus. In addition, the data passing through the VPN (virtual private network) by
  • Web are advantageously compressed and secured by SSL or other protocol.
  • authorization management provides effective anti-intrusion control, but above all the system of the present invention, unlike conventional GroupWare applications, prevents the user from organizing the data in a personal tree structure, and avoids alteration or destruction of the company's data structure.
  • the invention proposes a system which adapts to the specific needs and models of the company, by making it possible to discriminate the rights of the entrants and to deliver on the client station accesses - in Extranet or Intranet - differentiated having pages (including HTML) containing specific and different services depending on the connected user.
  • FIG. 1 is a block diagram of the infrastructure and of the functions of a system according to the invention.
  • FIG. 2 is a block diagram of the general architecture of the system according to the invention.
  • FIG. 1 there is shown in the upper part a choice of communicating data processing equipment (client equipment), and in particular a GPRS or UMTS mobile phone 10, a network terminal 12, a PC-type desktop or laptop computer 14, personal digital assistant 16 or even smart TV 18.
  • client equipment data processing equipment
  • a GPRS or UMTS mobile phone 10 a network terminal 12
  • PC-type desktop or laptop computer 14 personal digital assistant 16 or even smart TV 18.
  • Any of these devices using a software browser 20 (for example, on a desktop or laptop PC, a market browser such as "Internet Explorer” (Trademark), with a Java virtual machine (registered trademark)), can communicate with a “personal portal” 40 via a secure link 30 based on a unique identifier protected by password and on encryption.
  • a software browser 20 for example, on a desktop or laptop PC, a market browser such as "Internet Explorer" (Trademark), with a Java virtual machine (registered trademark)
  • This portal 40 cooperates functionally with an integrated set of service applications 50 (virtual office management, collaboration via Intranet, communication, messaging including e-mail, document management, relations with third parties, etc. - see detailed description more away), which also has the ability to launch resident applications on client equipment. All 50 s' based on a relational database management system 60 containing directory data, contacts (third), email, stocks, calendars, projects, executable files given applications (preferably in the form of large binary objects (BLOB for “Binary Large Object” in English terminology) etc., so as to provide the user, at the level of a single interface, access to the various services to view, create, modify, sort, etc. these various types of data and documents.
  • service applications 50 virtual office management, collaboration via Intranet, communication, messaging including e-mail, document management, relations with third parties, etc. - see detailed description more away
  • All 50 s' based on a relational database management system 60 containing directory data, contacts (third), email, stocks, calendars, projects, executable
  • the personal portal 40 and the associated secure link 30 are implemented by a Web server 100 communicating by Extranet with a software module 110 for syndication and aggregation of content which itself accesses the Internet.
  • This web server houses the pages (HTML, XML, etc.) that will be offered to the user, as well as a set of applets or Javascripts adapted in particular to the type of client equipment from which the user connects to the portal. .
  • the portal 40 also allows the user to use specific business applications 120, themselves based on an ad hoc system 200 capable of executing these applications and all related applications such as directory of LDAP type, Web services. , etc.
  • the database 60 of the system of the invention communicates with the system 200 by means of all appropriate tools 210 such as ebXML, EAI, LDAP gateway, ERP connectors, etc.
  • the database management system 60 can communicate with Web services 220 by interfaces 230 based in particular on the Java J2EE platform, the SOAP protocol, a CA interface or even UDDI-type meta-services, etc.
  • the architecture of the system is illustrated in Figure 2.
  • Client equipment 10 to 18 is illustrated on the right.
  • the server 100 contains the pages set up by the editor of the integrated services of the invention.
  • This server is functionally connected to a communication module 300 constituted by a set of “servlets” produced on a J2EE type platform allowing the server 100 to communicate with the database management system 400 grouping together the elements 60, 200, 210 and 230 in Figure 1.
  • Such a system is capable of making available to each user, according to their rights and authorizations in a work group to which they belong, or according to the subscription subscribed, from any client terminal having a simple web browser, a plurality of integrated services, delivered by the server.
  • the user To access the service of his company, or to which he is subscribed, the user must enter his username, password and the domain to which he belongs. Depending on their rights, they will see a web page displaying their updated personal virtual desktop; the system is designed as a collaborative intranet server, but it can also be programmed for extranet services so as to display screens with restricted functionality for users not belonging to the intranet working group (customers, suppliers, subcontractors, etc.) or for ASP applications.
  • Personalized virtual Desktop By default, the system's user side desktop hides the browser interface so that the user can operate the services even if they have no computer skills.
  • the desktop displays the user's agenda for the day, as well as the actions and projects to follow during the day. It allows access to all services with a simple click of the mouse.
  • This service automates the import, export, creation and research of data of various types in a system of directories specific to the company.
  • directories are custom-configured by the service administrator. They contain information relating to all third parties who are in contact with the company. The categories of third parties are obviously first and foremost customers and prospects, but also employees (including service users), suppliers, subcontractors, advisers, administrations, etc.
  • the directories serve as a basis for Customer Relationship Management, have powerful search tools and automate links with all the other tables in the database (contact table, project table, document table, email table, action table and sub - custom files).
  • This service automatically and transparently collects all information related to a project - reports, comments, chances of closing the deal, estimated budget, documents sent and received - including scanned documents -, incoming and outgoing emails, actions related to this project, etc.
  • a project is automatically linked to a third party concerned, to a user responsible for the project, to a catalog of type of activity, to the schedule of company projects, and to sub-files containing information exchanged with other applications. of the company. The user can carry out multi-criteria searches in the projects and carry out all the necessary classifications, sorts and reports at the appropriate time.
  • This service organizes, stores and retrieves documents in the context of projects. It allows to re-import any document produced offline and to insert it into the database so that it can be integrated into project monitoring. It automatically and transparently manages the creation, naming and storage of new company documents.
  • This service downloads the document model from the invention server, launches the locally installed application, merges (for example in MS Word or Excel - registered trademarks) and names the new document created while respecting the rules of the database. . Once the user has finished working on the document, it is automatically uploaded to the server and deleted from the local machine.
  • the documents are linked by the database to third party recipients, projects, sending users, type of document, chronology. We can carry out multi-criteria searches in documents and carry out all the necessary classifications, sorts and reports at the right time from any position.
  • Task Manager This service automatically and transparently links tasks and things to do to customer relations and workgroup operations. For example, a task can send an SMS type minimessage to the user's mobile phone. Delayed tasks (time and duration) are displayed in the user's calendar. Tasks are linked to projects, users (such as the requester or operator of the action), third parties and contacts. The tasks can be searched according to all the desired criteria. Today's tasks are visible from the user's home page.
  • Diary Manager This service offers diaries and schedules (personal or group) which can be displayed by day, by week or by month. Reading the time slots is made easier by color diagrams. Calendars are linked to users and tasks. The user's agenda for the day is presented on the home page.
  • This service provides the company with asynchronous private messaging and a phone book. It allows us to limit unnecessary and insecure emails between members of a workgroup and to speed up the processing of messages related to customer relations.
  • a Memo-express action being of a particular type, it is therefore totally connected to his project, his contact and his third party. As soon as the memo is sent, it appears on the user's home page and can be displayed on the screen (provided the recipient is logged in).
  • This service allows the user to receive and send emails from any computer (as a “Web-mail” service would do). This service also allows the user to read only the headers of emails without having to download them in full, and to select those he wishes to read; this avoids the inconvenience of "spam” (advertising emails that clutter mailboxes) and the arrival of viruses by allowing the deletion of suspicious and / or unnecessary messages.
  • each email received or sent is automatically linked to the project, to the file, and to the third party concerned, in the database.
  • This avoids the sending of Compliant Copies for information, which have the effect of saturating the mailboxes of each member of the working group and of mobilizing them to keep abreast of useless information at the time of reading and lost when they are useful; emails are linked to projects, users (whether they are senders or recipients), third parties and contacts.
  • the service allows all multi-criteria searches in the email history of all actors (according to hierarchical rights).
  • Search Express This service is available, according to the hierarchical rights, in most of the pages. It allows requests to be made on the fly in the database, on a word or a character string or from requests predefined by the company.
  • the SQL search engine is able to find all information from any criterion of any table in the company's database (and from an LDAP server or a Domino Notes type database (Brand Filed) or other if an appropriate gateway is established).
  • XML Form “eXtended Markup Language” to meet the demand of companies for custom reporting.
  • the report thus obtained can be displayed in the form of an HTML page, or else viewed automatically using an application such as MS Excel (registered trademark) run on the local computer. It can also be saved as a CSV text file for later use.
  • This service offers the user a completely private and personal notebook, which can contain their email signatures, private or other reminders, etc.
  • This notebook can contain text, data in HTML format, etc.
  • This service is a very easy-to-use online functionality which offers the administrator of the company's database very powerful tools for controlling and managing the parameters of the database of the system of the invention as well as user rights. It requires a good knowledge of the database but does not require any training in the field of programming.
  • IRC instant messaging service
  • An application of this Chat service is to constitute an intelligent Knowledge Management tool which makes it possible to store all of the conversations at the heart of the database, to index the content and to find precise information there through the Search Express aforementioned. Another feature is to automatically copy / paste the content of a chat session in an associated project and therefore the client account to which this session and this project relate.
  • the present invention defines a universal transactional access point which allows a separation between the content (that is to say the information that interests the user) and the usual containers (that is to say the files that hide them), and allows fluidity of information circuits from end to end.
  • An analogy can be made with the field of telephony, where whatever the user interface (digital keyboard, keypad, dial, payphone), the system delivers the same type of service (generally connect another phone by a link analog and / or digital) without the user having to organize the location of the called station or the content so that it can be used at the end of the line - even for data transit - modulation and demodulation being organized by the system.
  • the user interface digital keyboard, keypad, dial, payphone
  • the system of the invention can be fully compatible with existing operating systems and does not involve the acquisition of new technology on the client side.
  • CRM Customer relationship management
  • CCM Customer relationship management
  • CMM Customer relationship management
  • CMM Directory management and agenda monitoring
  • Workgroup organization Servicegware or “groupware” in English terminology
  • Procedure management and resources (“workflow” in English terminology)
  • EAI Electronic Secretariat and Document Management
  • CED Internal (CTI) and external (e-mail) messaging in the context of Integration projects data to and from data warehouses ("data mining" in English terminology)
  • the system offers a 360 ° view of each third party that concerns the company, whether it is a customer, employee, supplier, resource, event management, project, etc.
  • the system presents in real time, according to access authorizations, the complete situation of the third party (projects and actions to come, current and expired, reservation, orders, fax, letters, quotes, marketing messages, invoices, follow-up of calls telephone, after-sales service requests, complaints, follow-up of emails, etc.).
  • the system database is designed as an application integration base and not as a management integrated, it is therefore particularly easy to set up in the company allowing recovery in a few days, where ERP requires months of work, existing data, databases, document templates, procedures and organizational charts.
  • the system includes a tool for creating office documents (word processing, spreadsheets and other documents from Windows compatible applications). The user no longer has to worry about where he saves his files or even the name he would give them.
  • the system also provides users with their personal and group diaries, an internal messaging system (express memo) and manages all electronic messaging (sending, receiving and classifying emails in the context of projects in the database) .
  • the system allows user access from an Internet browser, that is to say, not requiring the installation on a dedicated station of a thick client software package.
  • the implementation is based on the development of a thin client capable of connecting via the IP protocol to the database.
  • the invention is based on an architecture close to the two-stage client server architecture, but adapted to the Internet, so that the migration of the code is simple and rapid.
  • the graphical interface of the system is made in HTML.
  • the first stage (the application and processing part) is made up of the Web server (containing the HTML pages and data processing script) and the user's Web browser.
  • the second stage is composed of the database server and the server layer
  • Java iSJS The first integrated development consists in being able to divide this second stage: the database server and the iSJS server can be installed on different servers.
  • the iSJS server takes on the one hand the role of controller and network traffic regulator, and secondly the gateway role between corporate databases and the Internet.
  • the browser At the request of the user, the browser must first display the graphical interface and load the processing scripts. You also need to recover the necessary data.
  • an applet (Java Client designated by iSJC) makes it possible to communicate as efficiently as possible with the iSJS server.
  • the data transfer between the iSJS server and the iSJC client is more or less rapid (depending on the Internet connection mode and the size of the data).
  • caches added on the iSJS server and on the iSJC client make it possible to limit the operations of transfer and interrogation of the database.
  • the iSJC client also groups requests in batch processing which can be sent in the background. Finally, all the data transmitted between the iSJS server and the iSJC client are advantageously compressed in ZIP or other format (and on customer request, can be subject to SSL or other type encryption).
  • Figure XX is given an illustration of the operation of the application.
  • the iSJS server and the iSJC client run in parallel in their context (respectively the web server and the web browser).
  • the most powerful computers act as a server, and client computers only need a web browser and word processing or spreadsheet applications, etc. (typically Word and Excel or higher, if the company uses these office software).
  • the server operating system :
  • the Sybase SQLAnywhere Studio server is an object-oriented relational database server, it therefore integrates a Java virtual machine and the possibility of storing Java classes and procedures in SQLJ format. It also offers the possibility of storing Java classes in relational data tables; thus, access to data from a Java program is simplified. JDBC, OLE-DB drivers are also available.
  • Java language in the form of servlets and JSP pages (Java Server Pages).
  • PLIP scripts represent an interesting solution in the sense that they can be executed by a large number of WEB servers. However, like all scripts, their execution is slow and unsuitable for scaling up.
  • JSP and Servlets open server-side development to the full power of the JAVA language: portability, numerous libraries (packages), real object-oriented language. Their execution is also faster.
  • the APACHE web server is by far the most used on the Internet, it works on both Linux and Windows. Its administration is simple and identical on the two platforms: it is therefore very simple to distribute the server. Another significant point is that it is integrated with many Java development tools; this therefore also simplifies the preparation of the development machine.
  • the Java Script language is preferred. It is supported by a large number of browsers (Internet Explorer and Netscape in particular). -for communication between the client and the iSJS server
  • Java applets can fulfill this role because they are particularly suited to developments on the Internet.
  • the iSJC client is written in the same language as the server.
  • function libraries have been developed which are used in all pages.
  • the first is used to generate the graphical interfaces because it allows you to simply view the result as it will appear on the users' screen.
  • Visual Studio is used to generate event scripts and to integrate the necessary applets into web pages.
  • the applets must be developed and compiled specifically for Internet Explorer, so it is particularly recommended to use a Microsoft development tool to perform this task. Visual J ++ was used.
  • Sun Forte For Java was used.
  • the latter includes the APACHE web server, a CVS client, an HTML page editor (static or dynamic) and of course, a very efficient Java class editor with code writing help. 7. Definition of the necessary configuration on the client
  • the database server -
  • the WEB server containing HTML pages, event management scripts and a downloadable iSJC.
  • iSJS set of servlets and Java class containing SQL queries
  • iSJS is a set of servlets which wait for client connections via the web server and which has 'jobs' which it is able to execute as procedures in order to return the result to clients.
  • this servlet forms the basis of the iSJS Java server; it manages the connections to the database and certain parameters which allow it to connect to the Internet (to a mail server for example).
  • SWDatabaseServlet is a servlet responsible for processing requests from clients who require access to the database. Each request may require the execution of one or more tasks ("jobs"). The result is returned to customers in a standard Java format (SSL encryption on request and ZIP compression).
  • SWXMLServlet is a SWDatabaseServlet that returns data to clients in universal XML format. The latter is used when generating Word and Excel documents. The principle of generation of these documents will be detailed later.
  • SWFileScrvlet simulates a file server in the database (it uses system tables capable of storing binary data). It is this servlet which is used to store Word documents and Excel in particular (this servlet takes the principles of 1TFS from Oracle).
  • SWWAPServlet this SERVLET gives access to the database from WAP mobiles via an interface in WML format.
  • SWSignlnServlet this last servlet is an administration tool which allows to register new users. It is especially used to create test users to make presentations online.
  • Figure 4 is given a presentation of the class diagram which illustrates the software architecture of the iSJS server
  • jobs are the equivalent of procedures that run on the server at the request of the client.
  • Each job does a specific job: check the user's emails, download a file from the database or even execute SQL queries.
  • For a job to be recognized and executable by the IsJS server it must implement the SWJob interface.
  • a client station requests the execution of a job, it communicates to the iSJS server its name (the name of the Java class) and a list of parameters (the name of the downloaded file or the SQL query to be executed for example).
  • SWUserldentificationJob allows you to control the user upon connection.
  • SWMailJob is used to manage users' emails and accounts.
  • This class is used in all web pages since the Java event handling script code. It has many methods that each allow you to invoke jobs on iSJS. It can manage the group sending of jobs so as to optimize the number of back-and-forth between the client and the server.
  • This class is an essential building block of the proposed architecture: it allows Java script code of a two-stage client server architecture to run on the Internet in a powerful and reliable manner.
  • the JClient class represents the iSJC applet, it exposes the methods necessary for invoking jobs (a getFile job for example allows you to download a file stored in the database).
  • the iSJC client has a reference to 4 objects:
  • SWBuffer represents the client cache, the data from the server is stored there and retrieved from Java script code.
  • Each requested job is stored in a Batch object which can be requested to be executed as part of a transaction.
  • the iSJS server returns the result in a BatchResult object.
  • the iSJS server and the iSJC client communicate as follows: the iSJC client establishes a batch which can be sent asynchronously or synchronously. This batch is studied and executed on the iSJS server as part of a transaction or not. It then returns a BatchResult object that contains all the batch success or error codes for each job.
  • SWBuffer makes it possible to store data when navigating from one page to another. It is also used to extend the Java script language and to use the power of classic Java classes.
  • Figure 6 illustrates the class diagram showing the system database. E - Generating documents
  • One of the advantages of the system is to generate, merge, save, classify and find the documents of the company.
  • the logo of the company that is saved separately and inserted the document before printing and then deleted before backup in the database.
  • the merge fields which indicate the location where it will be necessary to merge the data extracted from the database (name and address of the contact for example).
  • the macro-instruction developed in the Visual Basic For Application language which allows to retrieve data from the database to merge it into the document.
  • Documents are created within the framework of Projects: the user works on a customer file and in a project concerning this file.
  • the user selects a standard document from a list (commercial proposal for example).
  • the iSJC client downloads the model, the company logo and opens it in Word or Excel (provided that the client computer has it).
  • the macro of the model When it is opened, the macro of the model is executed and connects to the z ' SJS server (more precisely the SWXMLServlet servlet) and requests a predefined export of the database in XML format. It then merges the dominated XML to the model document, and the document is numbered and temporarily saved locally.
  • the z ' SJS server more precisely the SWXMLServlet servlet
  • a company that masters one or more specific client / server applications can convert them to an Intranet application in three simple steps:
  • the application is accessible on the Intranet and on the Internet from a simple Web browser. Its deployment is simplified (installation of a single server machine).
  • the communication protocol used between the iSJC client and the iSJS server is optimized; in addition, the iSJS server is robust, it supports a large number of simultaneous accesses.
  • the graphical interface in HTML format is very light and customizable by simply changing the style sheets.
  • the system's mail client offers the power of free "Webmails” like Hotmail and Yahoo! without forcing the user to leave his work environment.
  • the user sets up the list of mail accounts in the system; he can then ask to check the arrival of new emails on all addresses or only some.
  • the user can also consult the headers and the size of the emails without downloading them, so he can decide to delete suspicious messages (spam, virus) without reading them.
  • the user when he sends or receives an email, the user files it, not only in his personal mailbox, but also in the project and the third party file to which he is attached.
  • a chat module can be added to the system.
  • a user then has three means of communication at his disposal:
  • the system also offers WAP access: this access mode is a bonus even if it is true that WAP has not yet been very successful. It is likely that the experience acquired in WML development will accelerate the development of a GPRS interface.
  • the system database manager can be chosen to take advantage of recent developments in database servers (stored procedures, referential integrity, etc.), and to be easily integrated into EAI platforms.
  • the management of data access rights, the personalization of the graphical interface for each user and the management of different languages (with corresponding date format and numeric separator) can be refined as desired.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The invention concerns a multistage network computer architecture designed to enable access to a personal resource environment via a network such as Internet, from various access points to different types of client stations. It comprises: a standard relational database server stage including a database manager for executing on request all operations on the database data, said database containing both, in a manner particular to each user, data and documents, by constituting the user organized and unique storage space, and the database manager including remote operating system functional capabilities related to said storage space; a communication stage over the network including a communication server and a client software for jointly communicating in a standard format of the network; and an intermediate software layer server stage connected both to the database server stage and to the communication stage, and including a plurality of servlets, in response to requests from the communication stage, for bringing about the execution, by the database manager, functional capabilities of said remote operating system.

Description

« ARCHITECTURE INFORMATIQUE EN RESEAU MULTI-ETAGES, AVEC SYSTEME D'EXPLOITATION DISTANT CENTRE SUR L'UTILISATEUR »"COMPUTER ARCHITECTURE IN A MULTI-STAGE NETWORK, WITH A USER-CENTERED REMOTE OPERATING SYSTEM"
La présente invention concerne d'une façon générale les systèmes de traitement de données intégrés en environnement réseau.The present invention relates generally to integrated data processing systems in a network environment.
Etat de la techniqueState of the art
A l'origine, une architecture de traitement de données multi-utilisateurs était mise en œuvre dans une architecture centrale - Mainframe + terminaux passifs - pour effectuer les traitements lourds de l'entreprise - calcul, classement et extraction de données - à la place des hommes.Originally, a multi-user data processing architecture was implemented in a central architecture - Mainframe + passive terminals - to carry out the heavy processing of the company - calculation, classification and extraction of data - instead of men.
Progressivement les évolutions des architectures techniques - miniordinateurs, micro-ordinateurs, logiciels Client/serveur et PGI - ont permis d'étoffer et de muscler les solutions applicatives pour permettre aux entreprises de piloter leurs missions critiques - gérer des comptes, produire, communiquer etc., en allégeant l'implication et le savoir faire individuel des utilisateurs.Gradually the evolution of technical architectures - minicomputers, microcomputers, Client / server software and ERP - have made it possible to flesh out and strengthen the application solutions to allow companies to manage their critical missions - manage accounts, produce, communicate etc. , by reducing the involvement and individual know-how of users.
Apparue il y a une vingtaine d'années et généralisée sur les ordinateurs personnels (PC) dans les années 90, l'interface graphique, en masquant le langage complexe de traitement des données, dans une représentation imagée de bureau personnel, a permis à l'utilisateur de réaliser de manière autonome des tâches complexes de bureautique et de suivi d'activité.Appeared about twenty years ago and widespread on personal computers (PC) in the 90s, the graphical interface, by masking the complex language of data processing, in a pictorial representation of personal office, allowed the user to perform complex office automation and activity monitoring tasks independently.
Des applications - traitement de texte, tableur, gestion de contact, d'agendas etc. - ont été développées pour faire du PC l'outil de productivité personnelle dans l'entreprise en remplacement des ressources classiques du bureau ( machine à écrire, facturier etc.).Applications - word processing, spreadsheet, contact management, calendar management, etc. - were developed to make the PC the tool of personal productivity in the company replacing the traditional resources of the office (typewriter, biller etc.).
A l'origine capable uniquement de communication asynchrone (documents imprimés, échange de fichiers sur support magnétique) le PC a par la suite été doté d'applications - protocoles réseaux, messagerie, groupware, sécurité, - développées pour organiser la navigation et les transferts de données sur un réseau. Les entreprises ont ainsi mis en place des architectures de réseaux - locaux et étendus - permettant de faire exécuter sur le PC les tâches qui étaient initialement dévolues au terminal passif, puis de concentrer dans des ordinateurs centraux, les données traitées sur les postes de travail Puis les architectures « client/serveur » se sont développées. Dans ce mode, des traitements sont exécutés par le poste client (le PC), ce qui suppose que ce poste soit suffisamment puissant, soit équipé de la bonne version du système d'exploitation, soit paramétré correctement pour permettre l'exécution de chaque applicatif de travail, et que l'utilisateur soit compétent. Pour une exécution correcte, il faut donc réunir le bon matériel, les bons logiciels et enfin le bon savoir-faire de l'utilisateur.Originally capable only of asynchronous communication (printed documents, exchange of files on magnetic media), the PC was subsequently equipped with applications - network protocols, messaging, groupware, security, - developed to organize navigation and transfers. data over a network. Companies have thus set up network architectures - local and wide - making it possible to execute on the PC the tasks which were initially devolved to the passive terminal, then to concentrate in central computers, the data processed on the workstations Then "client / server" architectures have developed. In this mode, processing is carried out by the client workstation (the PC), which supposes that this workstation is sufficiently powerful, is equipped with the right version of the operating system, or is configured correctly to allow the execution of each application. and that the user is competent. For correct execution, it is therefore necessary to bring together the right hardware, the right software and finally the right know-how of the user.
On a constaté à ce sujet que :It has been noted on this subject that:
- si l'un de ces facteurs fait défaut, le système d'information est très affaibli - lenteur, perte d'informations, fracture numérique. - le coût de fonctionnement du réseau est très élevé car il nécessite une administration très lourde, une gestion de la sécurité conséquente (antivirus, sauvegardes et surveillance anti-effraction) et des mises à jours matérielles et logicielles au gré des évolutions des éditeurs sur tous les postes de travail.- if one of these factors is missing, the information system is very weak - slowness, loss of information, digital divide. - the network operating cost is very high because it requires very cumbersome administration, consequent security management (antivirus, backups and burglar-resistant surveillance) and hardware and software updates according to the evolution of publishers on all work stations.
- enfin et surtout, si l'utilisateur est loin de son poste de travail personnalisé, il n'est plus en situation d'exécuter les tâches pour lesquels le système d'information a été conçu.- last but not least, if the user is far from his personalized workstation, he is no longer in a position to perform the tasks for which the information system was designed.
A ce sujet, il existe certes des techniques d'émulation, qui toutefois rajoutent des coûts supplémentaires et de la lourdeur à l'architecture du réseau.In this regard, there are certainly emulation techniques, which however add additional costs and heaviness to the network architecture.
Avec le déploiement du réseau universel Internet, qui fonctionne de manière similaire sur les différentes plateformes matérielles, et des navigateurs standard associés, la communication en réseau est devenue beaucoup plus simple.With the deployment of the universal Internet network, which works similarly on different hardware platforms, and associated standard browsers, network communication has become much simpler.
Il existe ainsi des applications permettant de naviguer sur tous les types de PC, mais aussi sur toutes sortes d'autres équipements (téléphones, assistants numériques personnels - PDA, écrans de bord d'automobiles, décodeurs et téléviseurs numériques). La navigation Internet récupère, par simple sélection d'un lien, des informations sur un serveur distant et les affiche sous formes d'écrans ou pages contenant des nouveaux liens réactifs aux demandes de l'utilisateur.There are thus applications allowing to navigate on all types of PC, but also on all kinds of other equipment (telephones, personal digital assistants - PDAs, automobile dashboards, decoders and digital televisions). Internet browsing retrieves, by simple selection of a link, information on a remote server and displays it in the form of screens or pages containing new links responsive to user requests.
Le mode d'adressage des serveurs est simplifié et utilise un double système de nommage (adresses numériques IP et adresses mnémoniques par nom de domaine).The server addressing mode is simplified and uses a double naming system (digital IP addresses and mnemonic addresses by domain name).
Pour une exécution correcte, il suffit donc de disposer d'un navigateur connecté à l'Internet ( peu importe où l'on se trouve) et d'un savoir-faire utilisateur minimal. Ainsi toute personne ayant déjà effectué une recherche, passé un ordre de bourse ou commandé un quelconque bien ou voyage en ligne dispose des compétences minimales requises.For a correct execution, it is enough to have a browser connected to the Internet (no matter where you are) and minimal user know-how. Anyone who has already carried out a research, placed a scholarship order or ordered any goods or trips online has the minimum skills required.
En effet à cette occasion, en remplissant des rubriques dans un formulaire et en les soumettant par un clic, l'utilisateur aura lancé l'exécution de logiciels dans un serveur dont il ignore tout (où il se trouve, quels en sont les systèmes d'exploitation et les applications etc.), et aura obtenu le résultat demandé au service.Indeed, on this occasion, by filling in the headings in a form and submitting them by a click, the user will have launched the execution of software in a server of which he does not know everything (where he is, what are the systems of operation and applications etc.), and will have obtained the result requested from the service.
Cette mise à disposition de services en ligne a permis aux industriels du secteur comme Microsoft, Oracle, Sun Microsystems, d'anticiper l'avènement prochain d'un modèle informatique tout Internet. Ce modèle tarde pourtant à se concrétiser parce que jusqu'à ce jour le point d'accès, c'est-à-dire le navigateur, reste une application d'un PC local, ce qui amène les limitations suivantes :This provision of online services has enabled industry in the sector such as Microsoft, Oracle, Sun Microsystems, to anticipate the coming advent of an all-Internet IT model. However, this model is slow to materialize because to date the access point, that is to say the browser, remains an application of a local PC, which brings the following limitations:
Le Navigateur n'est pas le point d'accès unique à l'ensemble des services en ligne (la messagerie par exemple est le plus souvent organisée dans une application autonome et distincte) ;The Navigator is not the single point of access to all online services (messaging, for example, is most often organized in a stand-alone and separate application);
• Les logiciels de productivité personnelle du PC n'utilisent pas le navigateur comme point d'accès, et l'utilisateur supporte donc toute la responsabilité de nommage et de classement des données qu'il produit localement ou qu'il récuère via le réseau ; « Le navigateur se comporte en fonction du système d'exploitation du poste local - les comportements de navigateurs diffèrent ainsi sensiblement d'une machine à l'autre au point que même les services développés en langage Java - dont l'ambition originelle était d'être universel -, doivent être différenciés selon le navigateur et la machine sur lesquels ils sont exécutés.• PC personal productivity software does not use the browser as an access point, and the user therefore bears all the responsibility for naming and classifying the data that he produces locally or that he retrieves via the network; “The browser behaves according to the operating system of the local computer - the behavior of browsers therefore differs significantly from machine to the other to the point that even the services developed in Java language - whose original ambition was to be universal -, must be differentiated according to the browser and the machine on which they are run.
A ce jour, les services couramment disponibles sur l'Internet sont de type : • informationnel (moteur de recherche, agrégation de nouvelles et d'informations) applicatif (transaction avec un serveur de transaction électronique distant, accès aux applications client/serveur d'entreprise par émulation ou utilisant les protocoles de l'Internet). Ces services ne sont pas réellement interactifs, car ils impliquent un mécanisme de publication, qui est généralement piloté par un spécialiste, le webmestre. Ainsi une information émanant d'un utilisateur ne peut être exploitée par d'autres utilisateurs que si elle est introduite dans un formulaire ou à partir d'un utilitaire prévu pour cette tâche, ou à défaut que si le webmestre la filtre et la réinsère par publication, ce qui rend difficile la mise en place d'une activité collaborative en temps réel.To date, the services commonly available on the Internet are of the following type: • informational (search engine, news and information aggregation) application (transaction with a remote electronic transaction server, access to client / server applications) enterprise by emulation or using Internet protocols). These services are not really interactive, because they involve a publication mechanism, which is generally managed by a specialist, the webmaster. Thus, information from a user can only be used by other users if it is entered in a form or from a utility provided for this task, or failing that if the webmaster filters it and reinserts it by publication, which makes it difficult to set up a collaborative activity in real time.
Un nouveau type de service, le service Web, devrait prochainement se développer. A la différence des transactions actuelles qui sont pré-paramètrées dans le site d'e-business auquel l'utilisateur accède par une navigation personnelle, le service Web exécutera une transaction sur mesure spécialisée (par exemple rechercher de manière autonome parmi toutes les compagnies, les horaires et meilleurs prix pour un billet d'avion Paris-Tokyo) à partir d'une requête émise dans un moteur de recherche de services Web (typiquement un annuaire réalisé avec un méta-service UDDI). La nouvelle architecture tout Internet annoncée ne pourra se déployer efficacement, qu'à partir du moment où :A new type of service, the Web service, should soon develop. Unlike the current transactions which are pre-configured in the e-business site to which the user accesses by personal navigation, the Web service will execute a specialized tailor-made transaction (for example, search independently among all the companies, timetables and best prices for a Paris-Tokyo plane ticket) from a request made in a search engine for web services (typically a directory created with a UDDI meta-service). The new all-Internet architecture announced will only be able to be deployed effectively once:
- l'accès au réseau Internet sera suffisamment permanent, fiable et rapide (il faut noter à cet égard que le protocole IP opérationnel sur l'Internet est aussi, sur réseau privé, une solution est particulièrement économique pour un déploiement en réseau local). - le navigateur soit le point d'accès à un service (portail) grâce auquel l'utilisateur pourra lancer tous les traitements d'informations, qu'il s'agisse d'utiliser une application ou un service en ligne ou d'exploiter un logiciel métier ( CAO, PAO etc.) installé sur le poste de travail dédié . - que l'utilisateur puisse réellement retrouver grâce au service portail tout son environnement de travail habituel, sur n'importe quel micro-ordinateur (PC) au bureau, en clientèle, en déplacement, à domicile - ou tout autre terminal pourvu qu'il soit équipé d'un navigateur.- access to the Internet will be sufficiently permanent, reliable and rapid (it should be noted in this regard that the operational IP protocol on the Internet is also, on a private network, a particularly economical solution for deployment on a local network). - the browser is the access point to a service (portal) through which the user can launch all information processing, whether using an application or an online service or operating a business software (CAD, PAO etc.) installed on the dedicated workstation. - that the user can really find thanks to the portal service all his usual working environment, on any microcomputer (PC) at the office, in customers, on the move, at home - or any other terminal provided that he be equipped with a browser.
- que les services évoluent pour apporter une totale interactivité permettant de collaborer en temps réel (en d'autres termes, que l'utilisateur puisse insérer ses propres informations dans le serveur distant et que celles ci deviennent immédiatement interrogeables et exploitables par d'autres opérateurs sans intervention d'un administrateur du système).- that the services evolve to provide total interactivity allowing collaboration in real time (in other words, that the user can insert his own information in the remote server and that it becomes immediately searchable and usable by other operators without the intervention of a system administrator).
- enfin que les procédures de connectivité aux Services Web soient aménagées de manière à être simples, puissantes et universelles sans requérir de savoir faire élaboré (à l'instar d'un moteur de recherche).- finally, that the procedures for connectivity to Web Services are designed to be simple, powerful and universal without requiring elaborate know-how (like a search engine).
Résumé de l'inventionSummary of the invention
Un objet de la présente invention est de proposer d'une manière simple, économique et fiable, un protocole de point d'accès transactionnel pour émettre, organiser, entreposer, retrouver et distribuer toutes les données informatiques de manière à rendre opérationnelle une architecture tout Internet selon les critères précités. Plus particulièrement, l'invention propose une nouvelle infrastructure logicielle serveur, qui se substitue au système d'exploitation et aux logiciels habituellement installés sur un poste local et délivre à l'utilisateur final, pour ses besoins personnels comme dans le cadre professionnel, toutes les fonctionnalités de productivité personnelle, de gestion de fichiers et de contenu, de partage des informations et de suivi des relations avec les tiers, sous forme de services intégrés et organisés, disponibles sur n'importe quel terminal disposant d'un accès Internet à l'aide d'un navigateur standard (ordinateur, assistant numérique personnel, téléphone mobile, téléviseur interactif ou console de jeu relié à l'Internet, etc.).An object of the present invention is to propose in a simple, economical and reliable manner, a transactional access point protocol for transmitting, organizing, storing, retrieving and distributing all of the computer data so as to make an all-Internet architecture operational. according to the above criteria. More particularly, the invention proposes a new server software infrastructure, which replaces the operating system and the software usually installed on a local computer and delivers to the end user, for his personal needs as in the professional context, all the Personal productivity, file and content management, information sharing and third-party relationship management, in the form of integrated and organized services, available on any terminal with Internet access at using a standard browser (computer, personal digital assistant, mobile phone, interactive television or game console connected to the Internet, etc.).
Plus précisément, l'invention propose une infrastructure logicielle optimisée pour une telle architecture « tout Internet », qui gère de manière transparente l'organisation numérique personnelle et collaborative en temps réel, de chaque utilisateur identifié connecté à partir de tout terminal fixe ou mobile (client léger). L'invention propose ainsi selon un premier aspect une architecture informatique en réseau multi-étages destinée à permettre l'accès à un environnement personnel de ressources via un réseau tel que l'Internet, à partir de points d'accès variés correspondant à différents types de postes clients, caractérisée en ce qu'elle comprend :More specifically, the invention proposes a software infrastructure optimized for such an “all Internet” architecture, which transparently manages the personal and collaborative digital organization in real time, of each identified user connected from any fixed or mobile terminal ( light client). The invention thus proposes, according to a first aspect, a computer architecture in a multi-stage network intended to allow access to a personal resource environment via a network such as the Internet, from various access points corresponding to different types. of client workstations, characterized in that it includes:
- un étage de serveur de bases de données relationnelles standard comportant un gestionnaire de bases de données apte à exécuter sur requête toutes opérations sur les données de la base de données, ladite base de données contenant à la fois, de façon propre à chaque utilisateur, des données et des documents, en constituant l'espace de stockage organisé et unique de l'utilisateur,a standard relational database server stage comprising a database manager capable of executing on request all operations on the data of the database, said database containing both, in a manner specific to each user, data and documents, constituting the user's organized and unique storage space,
- un étage de communication sur le réseau comprenant un serveur de communication et un logiciel client aptes à communiquer ensemble dans un format standard du réseau, et - un étage de serveur de couche logicielle intermédiaire relié d'une part à l'étage de serveur de bases de données et d'autre part à l'étage de communication, et comportant un ensemble de servlets aptes, en réponse à des requêtes en provenance de l'étage de communication, à exécuter des procédures correspondant à des types d'opérations prédéfinis dans le gestionnaire de bases de données, avec des servlets différents correspondant à différents types de postes clients.- a communication stage on the network comprising a communication server and client software capable of communicating together in a standard network format, and - an intermediate software layer server stage connected on the one hand to the server stage databases and secondly on the communication stage, and comprising a set of servlets capable, in response to requests from the communication stage, to execute procedures corresponding to types of operations predefined in the database manager, with different servlets corresponding to different types of client workstations.
Selon un deuxième aspect, l'invention propose une architecture informatique en réseau multi-étages destinée à permettre l'accès à un environnement personnel de ressources via un réseau tel que l'Internet, à partir de points d'accès variés correspondant à différents types de postes clients, caractérisée en ce qu'elle comprend : - un étage de serveur de bases de données relationnelles standard comportant un gestionnaire de bases de données apte à exécuter sur requête toutes opérations sur les données de la base de données, ladite base de données contenant à la fois, de façon propre à chaque utilisateur, des données et des documents, en constituant l'espace de stockage organisé et unique de l'utilisateur, et le gestionnaire de base de données comportant des fonctionnalités de système d'exploitation à distance en relation avec ledit espace de stockage.According to a second aspect, the invention proposes a computer architecture in a multistage network intended to allow access to a personal resource environment via a network such as the Internet, from various access points corresponding to different types. of client workstations, characterized in that it includes: a standard relational database server stage comprising a database manager capable of executing on request all operations on the data of the database, said database containing both, in a manner specific to each user, data and documents, constituting the organized and unique storage space of the user, and the database manager comprising remote operating system functionalities in relation to said storage space.
- un étage de communication sur le réseau comprenant un serveur de communication et un logiciel client aptes à communiquer ensemble dans un format standard du réseau, eta communication stage on the network comprising a communication server and client software capable of communicating together in a standard network format, and
- un étage de serveur de couche logicielle intermédiaire relié d'une part à l'étage de serveur de bases de données et d'autre part à l'étage de communication, et comportant un ensemble de servlets aptes, en réponse à des requêtes en provenance de l'étage de communication, à provoquer l'exécution, par le gestionnaire de base de données, de fonctionnalités dudit système d'exploitation à distance.an intermediate software layer server stage connected on the one hand to the database server stage and on the other hand to the communication stage, and comprising a set of suitable servlets, in response to requests in from the communication stage, to cause the execution, by the database manager, of functions of said remote operating system.
Le logiciel client est typiquement un navigateur Internet standard. De façon préférée, l'étage de communication définit deux voies de communication distinctes d'une part pour des informations d'interface graphique spécifiques à chaque type de poste client et d'autre part pour des données ou documents vers le poste client ou à partir du poste client.Client software is typically a standard Internet browser. Preferably, the communication stage defines two distinct communication channels on the one hand for graphical interface information specific to each type of client station and on the other hand for data or documents to the client station or from from the client station.
Selon un autre aspect préférentiel, ledit espace de stockage de l'utilisateur contient, au sein de la base de données l'ensemble des fichiers, exécutables par applications standard au niveau serveur de base de données ou au niveau poste client, et des données de l'utilisateur. Ainsi, selon l'invention, un serveur abrite une base de données ainsi que toute la logique du système d'exploitation du poste client, ce qui permet de piloter de manière transparente, dès leur génération, le classement, la sauvegarde, la sélection et la mise en relation des données.According to another preferred aspect, said user storage space contains, within the database, all of the files executable by standard applications at the database server level or at the client station level, and data from the user. Thus, according to the invention, a server shelters a database as well as all the logic of the operating system of the client workstation, which makes it possible to manage in a transparent manner, as of their generation, classification, saving, selection and the linking of data.
Ainsi l'utilisateur du service, exploite au moment opportun, les informations qui le concernent et les capitalise automatiquement sans jamais se préoccuper d'avoir à les organiser. Le serveur facilite les opérations de l'utilisateur et pilote le traitement des données qu'il manipule, dès sa connexion et tout au long de la session.Thus the user of the service, exploits the information concerning him at the appropriate time and automatically capitalizes it without ever worrying about having to organize it. The server facilitates the operations of the user and controls the processing of the data that he manipulates, from his connection and throughout the session.
L'utilisation du système selon l'invention demande très peu de savoir-faire utilisateur, à l'inverse de ce qui est requis de l'utilisateur par l'architecture actuelle, laquelle additionne les postes de travail personnels - postes clients « lourds » et complexes - dans une structure de réseau erratique et faiblement administrée .The use of the system according to the invention requires very little user know-how, unlike what is required of the user by the current architecture, which adds up personal workstations - "heavy" client workstations and complex - in an erratic and weakly administered network structure.
En restituant directement dans une page Web, de manière structurée et avec la puissance et la sécurité de traitement requises, les éléments de la base de données relationnelle centrale, l'approche de la présente invention libère l'utilisateur de la responsabilité d'organiser numériquement les informations et lui permet d'être efficace partout et tout le temps, même et surtout loin de tout ordinateur personnel dédié, car l'accès et les fonctionnalités seront identiques à partir de tout poste.By rendering directly into a web page, in a structured manner and with the required processing power and security, the elements of the central relational database, the approach of the present invention frees the user from the responsibility of organizing digitally information and allows it to be effective everywhere and all the time, even and especially away from any dedicated personal computer, because access and functionality will be identical from any workstation.
La présente invention a de nombreuses applications.The present invention has many applications.
En premier lieu, à destination du particulier, de la famille et de la micro- entreprise : le système simplifie et démocratise l'utilisation interactive de l'Internet, car il fédère de manière transparente l'exploitation d'applications (ASP) et de services Web, pilote le stockage et l'extraction des données dans un serveur, et ne nécessite que peu de ressources sur le poste client.First, for individuals, families and micro-businesses: the system simplifies and democratizes the interactive use of the Internet, because it transparently federates the operation of applications (ASP) and Web services, controls the storage and extraction of data in a server, and requires only few resources on the client computer.
Le système est avantageusement proposé en OEM aux opérateurs et aux constructeurs pour faciliter le développement de leurs plateformes Web de services intégrés pour le particulier.The system is advantageously offered in OEM to operators and manufacturers to facilitate the development of their web platforms for integrated services for individuals.
La plate-forme est ainsi capable de délivrer, dans un portail personnel simple à utiliser, même sans apprentissage, depuis n'importe quel poste, à la maison comme à l'extérieur, un bouquet de services essentiels au particulier, au groupe familial et/ou à la micro-entreprise. Ces services peuvent être notamment :The platform is thus capable of delivering, in a personal portal easy to use, even without learning, from any station, at home or outside, a bouquet of essential services to the individual, the family group and / or at the micro-enterprise. These services can include:
- service d'armoire électronique sécurisée avec gestion des autorisations contenant les infos individuelles et familiales : messages mail envoyés et reçus, carnets d'adresses, photos, documents divers, comptes bancaires, sites favoris, etc. ;- secure electronic cabinet service with authorization management containing individual and family information: email messages sent and received, address books, photos, various documents, bank accounts, favorite sites, etc. ;
- moteur de recherche intelligent permettant de retrouver toute information contenue dans l'armoire selon une recherche multicritères ; - service de lecture, de rédaction et d'envoi d'emails (client de messagerie similaire à l'application connue « Outlook Express » - Marque déposée) ;- intelligent search engine allowing to find any information contained in the cabinet according to a multi-criteria search; - service for reading, writing and sending emails (email client similar to the known application "Outlook Express" - Registered trademark);
- services de traitement de texte, de visualisation de photos, de gestion de budget familial, tous ces services étant organisés de manière à enregistrer, classer et retrouver automatiquement les infos dans l'armoire ;- word processing, photo viewing, family budget management services, all these services being organized to automatically record, classify and retrieve information in the cupboard;
- services d'envoi de SMS, de Chat (messagerie instantanée), de visiophonie ;- SMS, Chat (instant messaging), videophone services;
- services de présentation d'informations résultants de recherches ou d'agrégation de documents Internet.- information presentation services resulting from searches or aggregation of Internet documents.
- service de paiement sécurisé pré-paramétré avec enregistrement de la transaction dans l'armoire électronique, etc.- secure payment service pre-configured with recording of the transaction in the electronic cabinet, etc.
- service de guichet (type Minitel - Marque Déposée) d'accès à des prestations en ligne sur sites connus de l'utilisateur et sur services Web.- counter service (Minitel - Trademark type) for access to online services on sites known to the user and on Web services.
- correspondance biunivoque entre chaque individu et son univers numérique, rendue possible d'une part grâce à l'indépendance de l'utilisateur vis-à-vis de la possession physique d'un espace de stockage personnel (typiquement un disque sur un ordinateur dans lequel ranger ses informations dans des fichiers), et d'autre part grâce à l'identification et l'authentification de l'utilisateur par le serveur et non pas par le poste client dont l'utilisateur se sert. De là, l'invention pourra facilement trouver sa place pour des systèmes d'aide aux pays en voie de développement. Les bénéfices de l'invention dans le cadre grand public sont nombreux :- one-to-one correspondence between each individual and his digital universe, made possible on the one hand thanks to the independence of the user vis-à-vis the physical possession of a personal storage space (typically a disc on a computer in which store its information in files), and on the other hand thanks to the identification and authentication of the user by the server and not by the client station which the user uses. From there, the invention can easily find its place for aid systems for developing countries. The benefits of the invention in the general public are numerous:
• on simplifie la vie de l'utilisateur, qui n'a pas besoin de connaître ni de maîtriser le système d'exploitation, l'arborescence de classement des fichiers, ni d'installer des applications, de plus il n'a pas de souci de sécurité (virus - perte de données) . • la plate-forme est disponible à partir d'équipements communicants divers tels qu'un PC, un assistant numérique personnel communicant, un téléviseur numérique, un téléphone mobile GPRS/i ode, etc. La nature et la présentation des services sont alors adaptées au terminal utilisé de façon connue en soi), mais les données utilisées sont les mêmes, à savoir extraites de l'armoire électronique personnelle de l'abonné. • un simple décodeur - câble, satellite ou télévision numérique terrestre (TNT), avec modem pour la remontée des informations - équipé d'un navigateur Web et d'une machine virtuelle Java permet d'accéder depuis un téléviseur à tous les services comme le fait un PC, et il n'y a pas besoin d'équiper le décodeur avec des ressources lourdes (disque dur, mémoire vive, lecteurs de disques) pour exécuter les applications, pour le stockage des fichiers et des données et pour l'installation de nouveaux logiciels ; en outre, il ne sera pas nécessaire d'actualiser le décodeur à chaque nouvelle génération de processeur, de système d'exploitation et de logiciel ; par ailleurs, le compte de l'utilisateur est accessible ultérieurement à partir du navigateur d'un PC, par exemple pour retoucher des images et les visualiser ultérieurement ou dans un autre lieu sur un téléviseur .• it simplifies the life of the user, who does not need to know or master the operating system, the file classification tree, or install applications, moreover he has no security concerns (viruses - data loss). • the platform is available from various communicating equipment such as a PC, a communicating personal digital assistant, a digital television, a GPRS / i ode mobile telephone, etc. The nature and presentation of the services are then adapted to the terminal used in a manner known per se), but the data used are the same, namely extracted from the subscriber's personal electronic cabinet. • a simple decoder - cable, satellite or digital terrestrial television (TNT), with modem for the transmission of information - equipped with a Web browser and a Java virtual machine allows access from a television to all services such as makes a PC, and there is no need to equip the decoder with heavy resources (hard disk, RAM, disk drives) to run applications, for storage of files and data and for installation new software; in addition, it will not be necessary to update the decoder with each new generation of processor, operating system and software; in addition, the user's account can be accessed later from a PC browser, for example to edit images and view them later or in another location on a television.
• chaque utilisateur est identifié par le serveur, quelque soit son terminal de connexion (PC, décodeur, GPRS, etc.), il est facile de gérer les contrôles d'authentification permettant les paiements en ligne sans risque (les données qui circulent entre le navigateur et le serveur étant cryptées et sécurisées par défaut).• each user is identified by the server, whatever their connection terminal (PC, decoder, GPRS, etc.), it is easy to manage authentication controls allowing online payments without risk (the data circulating between the browser and server being encrypted and secure by default).
• enfin, en localisant sur le serveur de l'opérateur toute l'intelligence numérique du système, il devient possible de discriminer les accès aux services et donc de les facturer de manière graduelle et automatique.• finally, by locating on the operator's server all the digital intelligence of the system, it becomes possible to discriminate access to services and therefore to bill them gradually and automatically.
En deuxième lieu à destination de l'entreprise, de l'administration et de la collectivité locale : en instaurant une véritable interactivité sur l'Internet et concrétise le bureau virtuel sécurisé et intelligent capable de coordonner, faciliter et organiser la productivité personnelle des collaborateurs, leur partage des informations et le suivi des relations avec les tiers (clients - fournisseurs - administration etc.), l'invention permet d'organiser et de gérer la collaboration comme une mission critique de l'entreprise.Secondly for business, administration and the local community: by establishing real interactivity on the Internet and creating a secure and intelligent virtual office capable of coordinating, facilitating and organizing the personal productivity of employees, by sharing information and monitoring relationships with third parties (customers - suppliers - administration, etc.), the invention makes it possible to organize and manage collaboration as a critical mission of the company.
Elle permet ainsi à l'entreprise, et plus généralement à toute organisation professionnelle, administrative ou associative, de centraliser sur son serveur - dédié ou hébergé - l'intégration facile (et peu coûteuse) des tâches et fonctionnalités suivantes (de façon non limitative) : • gestion d'annuaires et des autorisations d'accès (enregistrement unique) ;It thus allows the company, and more generally any professional, administrative or associative organization, to centralize on its server - dedicated or hosted - the easy (and inexpensive) integration of the following tasks and functionalities (without limitation) : • management of directories and access authorizations (single registration);
• bureau virtuel utilisateur via un simple navigateur, (client léger) ; • disque de stockage centralisé avec moteur de recherche sur tous critères ;• user virtual desktop via a simple browser (thin client); • centralized storage disk with search engine on all criteria;
• gestion de relation clients (CRM) et tiers, automatisation des forces de vente (SFA) ;• customer relationship management (CRM) and third parties, sales force automation (SFA);
• organisation et collaboration en groupe de travail (groupware) et suivi d'agenda (timeflow) ;• organization and collaboration in a working group (groupware) and agenda tracking (timeflow);
• secrétariat électronique et gestion documentaire (Gestion Electronique de Documents ou GED) ;• electronic secretariat and document management (Electronic Document Management or EDM);
• lancement et pilotage de toutes les applications métier (EAI) ;• launch and management of all business applications (EAI);
• messagerie interne et instantanée (Chat - IRC) hébergée dans le serveur d'entreprise ;• internal and instant messaging (Chat - IRC) hosted on the enterprise server;
• automatisation des e-mails, rattachés aux contextes Clients et Projets ;• automation of e-mails, linked to Customer and Project contexts;
• groupe de travail indifféremment en réseau local et/ou étendu• working group either on a local and / or extended network
• gestion répliquée des postes nomades travaillant hors connexion• replicated management of nomadic workstations working offline
• sécurité des accès et des données, sauvegardes redondantes . Les bénéfices de la présente invention dans le cadre d'un usage professionnel sont nombreux.• access and data security, redundant backups. The benefits of the present invention in the context of professional use are numerous.
En premier lieu, par un ensemble de services en ligne qui intègre toute l'organisation numérique de l'entreprise, le système de l'invention apporte à l'entreprise la simplification de son organisation et de ses procédures, même pour les collaborateurs distants, ce qui est en soi une source d'économie très importante et permet un retour sur investissement rapide.Firstly, by a set of online services which integrates the entire digital organization of the company, the system of the invention brings to the company the simplification of its organization and its procedures, even for remote employees, which in itself is a very significant source of savings and allows a rapid return on investment.
En deuxième lieu, sa mise en œuvre est d'une très grande simplicité dans la mesure où l'invention peut se présenter sous la forme d'une brique logicielle à installer sur un Serveur (tel qu'un « Internet Appliance » sous Linux ou un serveur sous Windows 2000) physiquement installé dans l'entreprise ou hébergé par un prestataire. L'installation du service peut être extrêmement rapide, les paramétrages nécessaires étant ensuite réalisés via le protocole IP depuis n'importe quel poste client léger.Secondly, its implementation is very simple in so far as the invention can be in the form of a software brick to be installed on a Server (such as an "Internet Appliance" in Linux or a server under Windows 2000) physically installed in the company or hosted by a service provider. The installation of the service can be extremely fast, the necessary settings being then carried out via the IP protocol from any thin client workstation.
En troisième lieu, l'invention offre une solution économique dans la mesure où elle ne nécessite pas l'acquisition de nouveaux matériels ou logiciels sur le poste client, ni de serveur d'émulation à distance (tel que Citrix ou Microsoft TSE). En quatrième lieu, l'invention autorise une adaptation progressive, sans heurts et sans rupture dans la mesure où la partie serveur peut se connecter aux sources de données pré-existantes de l'entreprise (Exchange, Domino, LDAP, Gestions sous SGBDR, etc.) permettant une mise en place et un déploiement progressifs compatibles avec la préservation des données, bases d'informations, modèles de documents, procédures et organigrammes existants.Thirdly, the invention offers an economical solution insofar as it does not require the acquisition of new hardware or software on the client workstation, nor of a remote emulation server (such as Citrix or Microsoft TSE). Fourthly, the invention allows a progressive adaptation, smoothly and without disruption insofar as the server part can connect to the pre-existing data sources of the company (Exchange, Domino, LDAP, Management under RDBMS, etc. .) allowing a progressive implementation and deployment compatible with the preservation of existing data, databases, document models, procedures and organizational charts.
En cinquième lieu, l'invention offre une solution pouvant être taillée sur mesure et extensible, pour l'entreprise. Elle supporte facilement des larges groupes de travail, moyennant un déploiement sur les serveurs et SGBDR adéquats. En sixième lieu, l'intégration, l'administration et la personnalisation d'un système selon l'invention sont aisées : la maintenance est limitée à un seul serveur (aucune intervention sur les postes clients), et le travail de l'administrateur est grandement facilité, en lui permettant de se concentrer sur l'intégration et la création de requêtes sur mesure destinées à optimiser l'activité du service. En septième lieu, l'invention offre un excellent niveau de sécurité, car toutes les transactions peuvent être exécutées dans un VPN (réseau privé virtuel) par un serveur protégé par « firewall » et antivirus. En outre les données qui transitent par leFifth, the invention offers a tailor-made and extensible solution for the company. It easily supports large workgroups, by deploying them on the appropriate servers and RDBMS. Sixth, the integration, administration and customization of a system according to the invention are easy: maintenance is limited to a single server (no intervention on client workstations), and the administrator's work is greatly facilitated, allowing him to focus on the integration and creation of tailor-made queries intended to optimize the activity of the service. Seventh, the invention offers an excellent level of security, since all transactions can be executed in a VPN (virtual private network) by a server protected by “firewall” and antivirus. In addition, the data passing through the
Web sont avantageusement compressées et sécurisées par le protocole SSL ou autre.Web are advantageously compressed and secured by SSL or other protocol.
En huitième lieu, la gestion des autorisations offre un contrôle anti-intrusion efficace mais surtout le système de la présente invention, à la différence des applications de GroupWare classiques, interdit à l'utilisateur d'organiser les données dans une arborescence personnelle, et évite l'altération ou la destruction de la structure des données de l'entreprise.Eighth, authorization management provides effective anti-intrusion control, but above all the system of the present invention, unlike conventional GroupWare applications, prevents the user from organizing the data in a personal tree structure, and avoids alteration or destruction of the company's data structure.
Enfin l'invention propose un système qui s'adapte aux besoins et modèles spécifiques de l'entreprise, en permettant de discriminer les droits des entrants et de livrer sur le poste client des accès - en Extranet ou en Intranet - différenciés disposant de pages (notamment HTML) contenant des services spécifiques et différents selon l'utilisateur connecté.Finally, the invention proposes a system which adapts to the specific needs and models of the company, by making it possible to discriminate the rights of the entrants and to deliver on the client station accesses - in Extranet or Intranet - differentiated having pages ( including HTML) containing specific and different services depending on the connected user.
On peut ainsi offrir soit uniquement une visualisation des résultats de requêtes XML, soit la possibilité d'utiliser uniquement d'une partie des services. Par exemple un client final de l'entreprise disposant d'un accès Extranet pourra, par le même système, accéder uniquement aux services de messagerie interne (Mémo Express - voir plus loin) et de messagerie instantanée (IsW Chat - voir plus loin) pour entrer en contact avec le technicien Hot Line ; en outre, toutes les transactions seront rapportées automatiquement dans la fiche de ce client. La présente invention peut être mise en œuvre soit par une application serveur classique, soir par une application serveur encapsulable qui permet à des éditeurs, opérateurs de réseau, etc., de façon efficace, économique et immédiatement disponible, de mettre sur le marché une nouvelle offre personnalisée disposant des services intégrés de l'invention à l'aide d'un simple navigateur. D'autres avantages du système de l'invention par rapport à l'état de la technique apparaissent dans le tableau de l'annexe B ci-jointe.It is thus possible to offer either only a visualization of the results of XML requests, or the possibility of using only part of the services. For example, an end customer of the company with Extranet access can, by the same system, access only internal messaging (Memo Express - see below) and instant messaging (IsW Chat - see below) services to get in touch with the Hot Line technician; in addition, all transactions will be reported automatically in this customer's file. The present invention can be implemented either by a conventional server application, or even by an encapsulable server application which allows publishers, network operators, etc., efficiently, economically and immediately available, to market a new personalized offer with integrated services of the invention using a simple browser. Other advantages of the system of the invention over the state of the art appear in the table in annex B attached.
Brève description des dessinsBrief description of the drawings
D'autres aspects, buts et avantages de la présente invention apparaîtront mieux à la lecture de la description détaillée suivante d'une forme de réalisation préférée de celle-ci, donnée à titre d'exemple non limitatif et faite en référence aux dessins annexés, sur lesquels :Other aspects, aims and advantages of the present invention will appear better on reading the following detailed description of a preferred embodiment thereof, given by way of non-limiting example and made with reference to the accompanying drawings, on which ones :
La figure 1 est un schéma-bloc de l'infrastructure et des fonctions d'un système selon l'invention, etFIG. 1 is a block diagram of the infrastructure and of the functions of a system according to the invention, and
La figure 2 est un schéma-bloc de l'architecture générale du système selon l'invention.Figure 2 is a block diagram of the general architecture of the system according to the invention.
Description détaillée d'une forme de réalisation préféréeDetailed description of a preferred embodiment
En référence tout d'abord à la figure 1 , on a représenté en partie supérieure un choix d'équipements de traitement de données communicants (équipements clients), et en particulier un téléphone mobile GPRS ou UMTS 10, un terminal de réseau 12, un ordinateur de bureau ou portable de type PC 14, un assistant numérique personnel 16 ou encore un téléviseur intelligent 18. L'un quelconque de ces équipements, à l'aide d'un navigateur logiciel 20 (par exemple, sur un ordinateur PC de bureau ou portable, un navigateur du marché tel que « Internet Explorer » (Marque déposée), doté d'une machine virtuelle Java (Marque déposée)), peut communiquer avec un « portail personnel » 40 par l'intermédiaire d'une liaison sécurisée 30 basée sur un identifiant unique protégé par mot de passe et sur un cryptage.Referring first to Figure 1, there is shown in the upper part a choice of communicating data processing equipment (client equipment), and in particular a GPRS or UMTS mobile phone 10, a network terminal 12, a PC-type desktop or laptop computer 14, personal digital assistant 16 or even smart TV 18. Any of these devices, using a software browser 20 (for example, on a desktop or laptop PC, a market browser such as "Internet Explorer" (Trademark), with a Java virtual machine (registered trademark)), can communicate with a “personal portal” 40 via a secure link 30 based on a unique identifier protected by password and on encryption.
Ce portail 40 coopère fonctionnellcment avec un ensemble intégré d'applications de services 50 (gestion de bureau virtuel, collaboration via Intranet, communication, messagerie y compris e-mail, gestion de documents, relations avec les tiers, etc. - voir description détaillée plus loin), présentant en outre une aptitude à lancer des applications résidentes sur l'équipement client. L'ensemble 50 s'appuie sur un système de gestion de bases de données relationnelles 60 contenant des données d'annuaires, de contacts (tiers), d'emails, d'actions, d'agendas, de projets, de fichiers exécutables par des applications données (de préférence sous forme de grands objets binaires (BLOB pour « Binary Large Object » en terminologie anglosaxonne) etc., de façon à délivrer à l'utilisateur, au niveau d'une interface unique, l'accès aux différents services pour consulter, créer, modifier, trier, etc. ces types variés de données et de documents.This portal 40 cooperates functionally with an integrated set of service applications 50 (virtual office management, collaboration via Intranet, communication, messaging including e-mail, document management, relations with third parties, etc. - see detailed description more away), which also has the ability to launch resident applications on client equipment. All 50 s' based on a relational database management system 60 containing directory data, contacts (third), email, stocks, calendars, projects, executable files given applications (preferably in the form of large binary objects (BLOB for “Binary Large Object” in English terminology) etc., so as to provide the user, at the level of a single interface, access to the various services to view, create, modify, sort, etc. these various types of data and documents.
Le portail personnel 40 et la liaison sécurisée associée 30 sont mis en œuvre par un serveur Web 100 communiquant par Extranet avec un module logiciel 110 de syndication et d'agrégation de contenus accédant lui-même à l'Internet. Ce serveur Web abrite les pages (HTML, XML, etc.) qui seront proposées à l'utilisateur, ainsi qu'un jeu d'Applets ou Javascripts adaptés notamment au type d'équipement client à partir duquel l'utilisateur se connecte au portail. Le portail 40 permet également à l'utilisateur d'utiliser des applications métier 120, spécifiques, elles-mêmes s'appuyant sur un système ad hoc 200 apte à exécuter ces applications et toutes applications annexes telles qu'annuaire de type LDAP, services Web, etc. La base de données 60 du système de l'invention communique avec le système 200 par l'intermédiaire de tous outils appropriés 210 tels que ebXML, EAI, passerelle LDAP, connecteurs ERP, etc. En outre, le système de gestion de bases de données 60 peut communiquer avec des services Web 220 par des interfaces 230 basées notamment sur la plateforme Java J2EE, le protocole SOAP, une interface CA ou encore les méta- services de type UDDI, etc. L'architecture du système est illustrée sur la figure 2.The personal portal 40 and the associated secure link 30 are implemented by a Web server 100 communicating by Extranet with a software module 110 for syndication and aggregation of content which itself accesses the Internet. This web server houses the pages (HTML, XML, etc.) that will be offered to the user, as well as a set of applets or Javascripts adapted in particular to the type of client equipment from which the user connects to the portal. . The portal 40 also allows the user to use specific business applications 120, themselves based on an ad hoc system 200 capable of executing these applications and all related applications such as directory of LDAP type, Web services. , etc. The database 60 of the system of the invention communicates with the system 200 by means of all appropriate tools 210 such as ebXML, EAI, LDAP gateway, ERP connectors, etc. In addition, the database management system 60 can communicate with Web services 220 by interfaces 230 based in particular on the Java J2EE platform, the SOAP protocol, a CA interface or even UDDI-type meta-services, etc. The architecture of the system is illustrated in Figure 2.
Les équipements clients 10 à 18 sont illustrés en partie droite.Client equipment 10 to 18 is illustrated on the right.
Ils communiquent avec le serveur Web 100 selon un point d'accès transactionnel (TAP) par l'intermédiaire de l'Internet 90. Le serveur 100 contient les pages mises en place par l'éditeur des services intégrés de l'invention. Ce serveur est fonctionnellement relié à un module 300 de communication constitué par un ensemble de « servlets » réalisés sur une plateforme de type J2EE permettant au serveur 100 de communiquer avec le système de gestion de bases de données 400 regroupant les éléments 60, 200, 210 et 230 de la Figure 1.They communicate with the Web server 100 according to a transactional access point (TAP) via the Internet 90. The server 100 contains the pages set up by the editor of the integrated services of the invention. This server is functionally connected to a communication module 300 constituted by a set of “servlets” produced on a J2EE type platform allowing the server 100 to communicate with the database management system 400 grouping together the elements 60, 200, 210 and 230 in Figure 1.
Un tel système est apte à mettre à la disposition de chaque utilisateur, en fonction de ses droits et autorisations dans un groupe de travail auquel il appartient, ou selon l'abonnement souscrit, à partir n'importe quel terminal client disposant d'un simple navigateur Web, une pluralité de services intégrés, délivrés par le serveur.Such a system is capable of making available to each user, according to their rights and authorizations in a work group to which they belong, or according to the subscription subscribed, from any client terminal having a simple web browser, a plurality of integrated services, delivered by the server.
Les différents services intégrés vont maintenant être détaillés.The various integrated services will now be detailed.
Single Sign On ExpressSingle Sign On Express
Pour accéder au service de son entreprise, ou auquel il est abonné, l'utilisateur doit saisir son identifiant, son mot de passe et le domaine auquel il appartient. En fonction de ses droits, celui-ci verra s'afficher une page Web lui présentant son bureau virtuel personnel actualisé ; le système est conçu comme serveur d'Intranet collaboratif, mais il peut également être programmé pour des services d'Extranet de manière à afficher des écrans disposant de fonctionnalités restreintes pour des utilisateurs n'appartenant pas au groupe de travail Intranet (Clients, fournisseurs, sous-traitants, etc ..) ou pour des applications ASP.To access the service of his company, or to which he is subscribed, the user must enter his username, password and the domain to which he belongs. Depending on their rights, they will see a web page displaying their updated personal virtual desktop; the system is designed as a collaborative intranet server, but it can also be programmed for extranet services so as to display screens with restricted functionality for users not belonging to the intranet working group (customers, suppliers, subcontractors, etc.) or for ASP applications.
Personalized virtual Desktop Par défaut, le bureau côté utilisateur du système masque l'interface du navigateur de sorte que l'utilisateur puisse exploiter les services même si il n'a aucune compétence en informatique. Le bureau affiche l'agenda du jour de l'utilisateur, ainsi que les actions et les projets à suivre dans la journée. Il permet l'accès à l'ensemble des services d'un simple clic de souris.Personalized virtual Desktop By default, the system's user side desktop hides the browser interface so that the user can operate the services even if they have no computer skills. The desktop displays the user's agenda for the day, as well as the actions and projects to follow during the day. It allows access to all services with a simple click of the mouse.
Directory ManagerDirectory Manager
Ce service automatise l' import, l'export, la création et la recherche de données de types divers dans un système d'annuaires propre à l'entreprise. Ces annuaires sont paramétrés sur mesure par l'administrateur du service. Ils contiennent les informations relatives à tous les tiers qui sont en contact avec l'entreprise. Les catégories de tiers sont bien évidemment en premier lieu les clients et prospects, mais aussi les employés (dont les utilisateurs du service), les fournisseurs, les sous traitants, les conseils, les administrations, etc.. Les annuaires servent de base à la gestion de la Relation client, disposent de puissants outils de recherche et automatisent les liens avec toutes les autres tables de la base de données (table de contacts, table de projets, table de documents, table d'emails, table d'actions et sous-fichiers sur mesure).This service automates the import, export, creation and research of data of various types in a system of directories specific to the company. These directories are custom-configured by the service administrator. They contain information relating to all third parties who are in contact with the company. The categories of third parties are obviously first and foremost customers and prospects, but also employees (including service users), suppliers, subcontractors, advisers, administrations, etc. The directories serve as a basis for Customer Relationship Management, have powerful search tools and automate links with all the other tables in the database (contact table, project table, document table, email table, action table and sub - custom files).
Project ManagerProject Manager
Ce service rassemble automatiquement et de façon transparente toutes les informations liées à un projet - rapports, commentaires, chances de conclure l'affaire, budget prévisionnel, documents adressés et reçus - y compris documents scannés -, emails entrants et sortants, actions liées à ce projet, etc. Un projet est automatiquement rattaché à un tiers concerné, à un utilisateur responsable du projet, à un catalogue de type d'activité, à l'échéancier des projets de l'entreprise, et aux sous-fichiers contenant des informations échangées avec les autres applications de l'entreprise. L'utilisateur peut opérer des recherches multicritères dans les projets et procéder à tous les classements, tris et rapports nécessaires au moment opportun. Document ManagerThis service automatically and transparently collects all information related to a project - reports, comments, chances of closing the deal, estimated budget, documents sent and received - including scanned documents -, incoming and outgoing emails, actions related to this project, etc. A project is automatically linked to a third party concerned, to a user responsible for the project, to a catalog of type of activity, to the schedule of company projects, and to sub-files containing information exchanged with other applications. of the company. The user can carry out multi-criteria searches in the projects and carry out all the necessary classifications, sorts and reports at the appropriate time. Document Manager
Ce service organise, stocke et récupère les documents dans le contexte des projets. Il permet de réimporter n'importe quel document réalisé hors connexion et de l'insérer dans la base de données de manière à ce qu'il s'intègre au suivi du projet. Il gère automatiquement et de façon transparente la création, le nommage et le stockage des nouveaux documents de la société.This service organizes, stores and retrieves documents in the context of projects. It allows to re-import any document produced offline and to insert it into the database so that it can be integrated into project monitoring. It automatically and transparently manages the creation, naming and storage of new company documents.
Ce service télécharge le modèle de documents depuis le serveur de l'invention, lance l'application installée localement, fusionne (par exemple sous MS Word ou Excel - marques déposées) et nomme le nouveau document créé en respectant les règles de la base de données. Une fois que l'utilisateur a terminé son travail sur le document, celui ci est automatiquement téléchargé sur le serveur et effacé de la machine locale.This service downloads the document model from the invention server, launches the locally installed application, merges (for example in MS Word or Excel - registered trademarks) and names the new document created while respecting the rules of the database. . Once the user has finished working on the document, it is automatically uploaded to the server and deleted from the local machine.
Les documents sont liés par la base de données aux tiers récipiendaires, aux projets, aux utilisateurs émetteurs, au type de document, à la chronologie. On peut opérer des recherches multicritères dans les documents et procéder à tous les classements, tris et rapports nécessaires au moment opportun depuis n'importe quel poste.The documents are linked by the database to third party recipients, projects, sending users, type of document, chronology. We can carry out multi-criteria searches in documents and carry out all the necessary classifications, sorts and reports at the right time from any position.
Task Manager Ce service rattache automatiquement et de manière transparente des tâches et des choses à faire à la relation client et aux opérations en groupe de travail. Par exemple, une tache peut envoyer un minimessage de type SMS sur le téléphone mobile de l'utilisateur. Les tâches différées (heure et durée) sont affichées dans l'agenda de l'utilisateur. Les tâches sont liées aux projets, aux utilisateurs (comme le demandeur ou l'opérateur de l'action), au tiers et aux contacts. Les tâches peuvent être recherchées selon tous les critères voulus. Les tâches du jour sont visibles depuis la page d'accueil de l'utilisateur.Task Manager This service automatically and transparently links tasks and things to do to customer relations and workgroup operations. For example, a task can send an SMS type minimessage to the user's mobile phone. Delayed tasks (time and duration) are displayed in the user's calendar. Tasks are linked to projects, users (such as the requester or operator of the action), third parties and contacts. The tasks can be searched according to all the desired criteria. Today's tasks are visible from the user's home page.
Diary Manager Ce service propose des agendas et des plannings (personnels ou de groupe) qui peuvent être affichés par jour, par semaine ou par mois. La lecture des plages horaires est facilitée par des diagrammes en couleurs. Les agendas sont liés aux utilisateurs et aux tâches. L'agenda du jour de l'utilisateur est présenté dans la page d'accueil.Diary Manager This service offers diaries and schedules (personal or group) which can be displayed by day, by week or by month. Reading the time slots is made easier by color diagrams. Calendars are linked to users and tasks. The user's agenda for the day is presented on the home page.
Memo-ExpressMemo Express
Ce service propose à l'entreprise une messagerie privée asynchrone et un cahier d'appels téléphoniques. Il permet de limiter les emails inutiles et non sécurisés entre les membres d'un groupe de travail et d'accélérer le traitement des messages liés à la relation client. Une action Memo-express étant d'un type particulier, il est par conséquent totalement relié à son projet, à son contact et à son tiers. Dès que le mémo est envoyé, il apparaît dans la page d'accueil de l'utilisateur et peut être affiché à l'écran (à condition que le destinataire soit connecté).This service provides the company with asynchronous private messaging and a phone book. It allows us to limit unnecessary and insecure emails between members of a workgroup and to speed up the processing of messages related to customer relations. A Memo-express action being of a particular type, it is therefore totally connected to his project, his contact and his third party. As soon as the memo is sent, it appears on the user's home page and can be displayed on the screen (provided the recipient is logged in).
Email-expressEmail-Express
Ce service permet à l'utilisateur de recevoir et d'envoyer des emails depuis n'importe quel ordinateur (comme le ferait un service de « Web-mail »). Ce service permet également à l'utilisateur de ne lire que les en-tête des emails sans avoir à les télécharger intégralement, et de sélectionner ceux qu'il souhaite lire ; cela évite les désagréments des « spams » (emails publicitaires qui encombrent les boites aux lettres) et l'arrivée de virus en permettant la suppression des messages suspects et/ou inutiles.This service allows the user to receive and send emails from any computer (as a “Web-mail” service would do). This service also allows the user to read only the headers of emails without having to download them in full, and to select those he wishes to read; this avoids the inconvenience of "spam" (advertising emails that clutter mailboxes) and the arrival of viruses by allowing the deletion of suspicious and / or unnecessary messages.
Enfin, chaque email reçu ou envoyé est automatiquement relié au projet, au dossier, et au tiers concernés, dans la base de données. Cela peπnet d'éviter l'envoi de Copie Conformes pour information, qui ont pour effet de saturer les boites aux lettres de chaque membre du groupe de travail et de les mobiliser pour se tenir au courant d'informations inutiles au moment de leur lecture et égarées au moment où elles seraient utiles ; les emails sont reliés au projets, aux utilisateurs (qu'ils soient émetteurs ou destinataires), aux tiers et aux contacts. Evidemment, le service permet toutes les recherches multicritèresdans l'historique des mails de tous les acteurs (en fonction de droits hiérarchisés).Finally, each email received or sent is automatically linked to the project, to the file, and to the third party concerned, in the database. This avoids the sending of Compliant Copies for information, which have the effect of saturating the mailboxes of each member of the working group and of mobilizing them to keep abreast of useless information at the time of reading and lost when they are useful; emails are linked to projects, users (whether they are senders or recipients), third parties and contacts. Obviously, the service allows all multi-criteria searches in the email history of all actors (according to hierarchical rights).
Search Express Ce service est disponible, en fonction des droits hiérarchisés, dans la plupart des pages. Il permet d'effectuer des requêtes à la volée dans la base de données, sur un mot ou une chaîne de caractères ou bien à partir de requêtes prédéfinies par l'entreprise.Search Express This service is available, according to the hierarchical rights, in most of the pages. It allows requests to be made on the fly in the database, on a word or a character string or from requests predefined by the company.
Le moteur de recherche SQL est apte à trouvre toute information à partir de n'importe quel critère de n'importe quelle table dans la base de données de la société (et depuis un serveur LDAP ou une base de données du type Domino Notes (Marque Déposée) ou autre si une passerelle appropriée est établie).The SQL search engine is able to find all information from any criterion of any table in the company's database (and from an LDAP server or a Domino Notes type database (Brand Filed) or other if an appropriate gateway is established).
Report Express Ce service propose toutes sortes de solutions de préférence selon le standardReport Express This service offers all kinds of solutions, preferably according to the standard
XML (Pour « eXtended Markup Language ») pour répondre à la demande des entreprises en matière d'édition de rapports sur mesure. Le rapport ainsi obtenu peut être affiché sous forme de page HTML, ou bien visualisé automatiquement à l'aide d'une application telle que MS Excel (marque déposée) exécutée sur le poste local. II peut également être sauvegardé sous forme de ficher texte CSV pour une utilisation ultérieure.XML (For “eXtended Markup Language”) to meet the demand of companies for custom reporting. The report thus obtained can be displayed in the form of an HTML page, or else viewed automatically using an application such as MS Excel (registered trademark) run on the local computer. It can also be saved as a CSV text file for later use.
Personal NotepadPersonal Notepad
Ce service offre à l'utilisateur un calepin totalement privé et personnel, qui peut contenir ses signatures d'email, ses rappels privés ou autres, etc. Ce calepin peut contenir du texte, des données au format HTML, etc.This service offers the user a completely private and personal notebook, which can contain their email signatures, private or other reminders, etc. This notebook can contain text, data in HTML format, etc.
WizardsWizards
Ce service propose toutes sortes d'utilitaires dédiés à la réalisation d'études de marketing, de ventes et des statistiques. Administration DashboardThis service offers all kinds of utilities dedicated to carrying out marketing studies, sales and statistics. Dashboard Administration
Ce service est une fonctionnalité en ligne très simple d'utilisation qui propose à l'administrateur de la base de données de l'entreprise des outils très puissants pour contrôler et gérer les paramètres de la base de données du système de l'invention ainsi que les droits des utilisateurs. Il requiert une bonne connaissance de la base de données mais ne requiert aucune formation dans le domaine de la programmation.This service is a very easy-to-use online functionality which offers the administrator of the company's database very powerful tools for controlling and managing the parameters of the database of the system of the invention as well as user rights. It requires a good knowledge of the database but does not require any training in the field of programming.
Info Service ce service peπnet, notamment à la demande des managers, l'envoi d'informations en mode « push » à partir du serveur vers les utilisateurs ; des bannières d'informations rotatives (type Reuter - Marque Déposée) sont affichées sur le bureau virtuel de l'utilisateur. Un clic sur celles-ci permet d'en afficher le contenu (au format HTML) ; à cet instant précis, le serveur enregistre que l'information a bien été portée à la connaissance de l'utilisateur (celle-ci pourra le cas échéant ne plus être obligatoirement affichée lors de sessions ultérieures) ; une note d'information cessera d'être diffusée en fonction de la date de validité qui lui aura été attribuée par son émetteur ; toutes les diffusions d'informations sont enregistrées dans la base de données. Elles peuvent de ce fait faire l'objet de requêtes comme n'importe quel autre type de document.Info Service this peπnet service, in particular at the request of managers, sending information in "push" mode from the server to users; rotating information banners (Reuter - Trademark type) are displayed on the user's virtual desktop. Click on them to display their content (in HTML format); at this precise moment, the server records that the information has indeed been brought to the attention of the user (this may if necessary no longer be necessarily displayed during subsequent sessions); an information note will cease to be disseminated according to the validity date which has been assigned to it by its issuer; all information broadcasts are recorded in the database. They can therefore be the subject of requests like any other type of document.
ChatCat
Il s'agit d'un service de messagerie instantanée (IRC) similaire aux services externes proposés par des opérateurs tels que AOL, ICQ ou Yahoo, mais totalement indépendant de ceux-ci ; ce service de Chat est étroitement lié à la base de données du système ; il permet aux utilisateurs connectés de dialoguer entre eux.It is an instant messaging service (IRC) similar to the external services offered by operators such as AOL, ICQ or Yahoo, but completely independent of these; this chat service is closely linked to the system database; it allows connected users to chat with each other.
Une application de ce service Chat est de constituer un outil de Knowledge Management intelligent qui permette de stocker l'ensemble des conversations au cœur de la base de données, d'en indexer le contenu et d'y retrouver une information précise par le moteur de recherche Search Express précité. Une autre fonctionnalité est de permettre de copier/coller automatiquement le contenu d'une session de chat dans un projet associé et donc le compte client auquel cette session et ce projet se rapportent.An application of this Chat service is to constitute an intelligent Knowledge Management tool which makes it possible to store all of the conversations at the heart of the database, to index the content and to find precise information there through the Search Express aforementioned. Another feature is to automatically copy / paste the content of a chat session in an associated project and therefore the client account to which this session and this project relate.
On peut prévoir aussi de façon avantageuse un service de Chat vocal entre les membres d'un groupe de travail, qui constitue un véritable interphone d' audioconférence en ligne sous réserve que le terminal sur lequel l'utilisateur se connecte soit équipé de ressources appropriées. Avec des débits élevés, on peut prévoir de la même manière un service de visioconférence.One can also advantageously provide a voice chat service between the members of a working group, which constitutes a real intercom for online audio conferencing provided that the terminal on which the user connects is equipped with appropriate resources. With high speeds, we can also provide a videoconferencing service.
En résumé, la présente invention définit un point d'accès transactionnel universel qui permet une désolidarisation entre les contenus (c'est-à-dire les informations qui intéressent l'utilisateur) et les contenants habituels (c'est-à-dire les fichiers qui les masquent), et permet de fluidifier les circuits d'information de bout en bout.In summary, the present invention defines a universal transactional access point which allows a separation between the content (that is to say the information that interests the user) and the usual containers (that is to say the files that hide them), and allows fluidity of information circuits from end to end.
Une analogie peut être faite avec le domaine de la téléphonie, où quelle que soit l'interface utilisateur (clavier digital, clavier à touches, cadran, taxiphone), le système délivre le même type de service (généralement connecter un autre téléphone par une liaison analogique et/ou numérique) sans que l'utilisateur ne doive organiser le repérage du poste appelé ni les contenus pour qu'il puisse être exploité au bout de la ligne - et ce même pour le transit de données - la modulation et démodulation étant organisées par le système.An analogy can be made with the field of telephony, where whatever the user interface (digital keyboard, keypad, dial, payphone), the system delivers the same type of service (generally connect another phone by a link analog and / or digital) without the user having to organize the location of the called station or the content so that it can be used at the end of the line - even for data transit - modulation and demodulation being organized by the system.
Le système de l'invention peut être totalement compatible avec les systèmes d'exploitation existants et n'implique pas d'acquisition d'une nouvelle technologie coté client.The system of the invention can be fully compatible with existing operating systems and does not involve the acquisition of new technology on the client side.
On va donner ci-après un exemple d'application pratique de l'invention, accompagnée d'une description technique plus détaillée du système de l'invention.An example of practical application of the invention will be given below, accompanied by a more detailed technical description of the system of the invention.
Exemple d'applicationApplication example
On va maintenant décrire l'application de l'invention à un système d'information et d'organisation, pour le travail collaboratif et le suivi de la relation client à destination notamment des PME. A - Description généraleWe will now describe the application of the invention to an information and organization system, for collaborative work and monitoring of customer relations intended in particular for SMEs. A - General description
1. Présentation1. Presentation
A l'instar des Progiciels de Gestion Intégrés, réservés de par leurs coûts d'acquisition et de mise en œuvre très élevés aux Grandes Entreprises, l'invention propose aux TPE/PME l'intégration facile des tâches et fonctionnalités suivantes :Like Integrated Management Software, which is reserved by its very high acquisition and implementation costs for Large Companies, the invention offers VSEs / SMEs easy integration of the following tasks and functions:
Gestion de relation client (CRM) et suivi de projets Gestion d'annuaires et suivi d'agenda (« timeflow » en terminologie anglo- saxonne) Organisation de groupe de travail (synergiciel ou « groupware » en terminologie anglo-saxonne) Gestion de procédure et de ressources (« workflow » en terminologie anglo- saxonne) Lancement et pilotage de toutes les applications métier (EAI) Secrétariat électronique et Gestion documentaire (CED) Messagerie interne (CTI) et externe (e-mail) dans le contexte des projets Intégration des données vers et depuis les entrepôts de données (« data mining » en terminologie anglo-saxonne)Customer relationship management (CRM) and project monitoring Directory management and agenda monitoring ("timeflow" in English terminology) Workgroup organization (synergware or "groupware" in English terminology) Procedure management and resources (“workflow” in English terminology) Launch and management of all business applications (EAI) Electronic Secretariat and Document Management (CED) Internal (CTI) and external (e-mail) messaging in the context of Integration projects data to and from data warehouses ("data mining" in English terminology)
Le système offre une vue à 360° sur chaque tiers qui concerne l'entreprise que celui soit client, employé, fournisseur, ressource, gestion d'événement, projet...The system offers a 360 ° view of each third party that concerns the company, whether it is a customer, employee, supplier, resource, event management, project, etc.
Le système présente en temps réel, en fonction des autorisations d'accès, la situation complète du tiers ( projets et actions à venir, en cours et échus, réservation, commandes, fax, courriers, devis, messages marketing, factures, suivis des appels téléphoniques, des demandes de SAV des réclamations, suivis des emails, etc.). La base de données du système est conçue comme un base d'intégration d'applications et non comme un intégré de gestion, elle est en conséquence particulièrement facile à implanter dans l'entreprise permettant de récupérer en quelques jours, là où les PGI demande des mois de travail, les données, bases d'informations, modèles de documents, procédures et organigrammes existants.The system presents in real time, according to access authorizations, the complete situation of the third party (projects and actions to come, current and expired, reservation, orders, fax, letters, quotes, marketing messages, invoices, follow-up of calls telephone, after-sales service requests, complaints, follow-up of emails, etc.). The system database is designed as an application integration base and not as a management integrated, it is therefore particularly easy to set up in the company allowing recovery in a few days, where ERP requires months of work, existing data, databases, document templates, procedures and organizational charts.
Le système inclut un outil de création de documents bureautiques (traitement de texte, feuilles de calcul et autres documents en provenance d'applications compatibles Windows). L'utilisateur n'a ainsi plus à se soucier de l'emplacement où il enregistre ses fichiers ni même du nom qu'il leur donnerait.The system includes a tool for creating office documents (word processing, spreadsheets and other documents from Windows compatible applications). The user no longer has to worry about where he saves his files or even the name he would give them.
Le système met aussi à la disposition des utilisateurs leur agenda personnel et de groupe, un système de messagerie interne (mémo express) et pilote toute la messagerie électronique (envoi, réception et classement des mails dans le contexte de projets dans la base de données).The system also provides users with their personal and group diaries, an internal messaging system (express memo) and manages all electronic messaging (sending, receiving and classifying emails in the context of projects in the database) .
Deux modes de travail complémentaires sont proposés à l'utilisateur :Two complementary working modes are offered to the user:
en réseau local sur un poste de son entreprise, - sur un ordinateur portable (postes nomades qui possèdent une petite base de données embarquée synchronisable par réplication).on a local network on a workstation in your company, - on a portable computer (mobile workstations that have a small on-board database that can be synchronized by replication).
Le système permet un accès utilisateur depuis un navigateur Internet, c'est à dire, ne nécessitant pas l'installation sur un poste dédié d'un progiciel client lourd.The system allows user access from an Internet browser, that is to say, not requiring the installation on a dedicated station of a thick client software package.
La mise en œuvre est basée sur le développement d'un client léger capable de se connecter par le protocole IP à la base de données.The implementation is based on the development of a thin client capable of connecting via the IP protocol to the database.
2. description de l'architecture 2 étages étendue La contrainte de faire coopérer des postes clients légers fonctionnant dans une architecture 3 étages conventionnelle sur une base de données commune avec les postes clients lourds, rend la tâche délicate.2. description of the extended 2-storey architecture The constraint of cooperating with thin client workstations operating in a conventional 3-stage architecture on a common database with heavy client workstations makes the task delicate.
L'invention est fondée sur une architecture proche de l'architecture client serveur deux étages, mais adaptée à Internet, de sorte que la migration du code soit simple et rapide.The invention is based on an architecture close to the two-stage client server architecture, but adapted to the Internet, so that the migration of the code is simple and rapid.
Sur ce principe, toutes les requêtes SQL du système vers la base de données sont stockées dans le serveur Java iSJS et identifiées par un nom. Les traitements sont transcrits en langage de script.On this principle, all SQL requests from the system to the database are stored in the Java iSJS server and identified by a name. The treatments are transcribed in scripting language.
L'interface graphique du système est réalisée en HTML. De cette manière, sans avoir à analyser chaque page et sans avoir à comprendre l'utilisation de la base de données avant de commencer le développement, on peut mettre en oeuvre le logiciel en version Intranet par translation : seuls changent le langage et la méthode d'accès à la base de données.The graphical interface of the system is made in HTML. In this way, without having to analyze each page and without having to understand the use of the database before starting development, we can implement the software in Intranet version by translation: only change the language and the method d access to the database.
Ainsi, on conserve une architecture deux étages pour simplifier la migration mais on intègre tous les avantages d'une architecture trois étages pour réduire la maintenance et augmenter les performances.Thus, we keep a two-stage architecture to simplify the migration but we integrate all the advantages of a three-stage architecture to reduce maintenance and increase performance.
Le premier étage (la partie application et traitements) est composée du serveur Web (contenant les pages HTML et script de traitement des données) et du navigateur Web de l'utilisateur.The first stage (the application and processing part) is made up of the Web server (containing the HTML pages and data processing script) and the user's Web browser.
Le second étage est composé du serveur de base de données et de la couche serveurThe second stage is composed of the database server and the server layer
Java iSJS. La première évolution intégrée consiste à pouvoir diviser ce second étage : le serveur de base de données et le serveur iSJS peuvent être installés sur des serveurs différents. Le serveur iSJS prend d'une part le rôle de contrôleur et de régulateur de trafic réseau, et d'autre part le rôle de passerelle entre les bases de données d'entreprise et l'Internet.Java iSJS. The first integrated development consists in being able to divide this second stage: the database server and the iSJS server can be installed on different servers. The iSJS server takes on the one hand the role of controller and network traffic regulator, and secondly the gateway role between corporate databases and the Internet.
3. Déroulement du fonctionnement du client léger3. Operation of the thin client
A la demande de l'utilisateur, le navigateur doit d'abord afficher l'interface graphique et charger les scripts de traitements. Il faut également récupérer les données nécessaires.At the request of the user, the browser must first display the graphical interface and load the processing scripts. You also need to recover the necessary data.
Ces deux processus sont en fait indépendants : par exemple, si l'utilisateur désire afficher son agenda de la semaine 2 alors qu'il visualise celui de la semaine 10, il n'est pas nécessaire de recharger l'interface et les scripts.These two processes are actually independent: for example, if the user wants to display its agenda for the week 2 so that it shows that of week 10, it is not necessary to reload the interface and scripting.
Une telle opération qui semble naturelle dans une application en réseau local est classiquement oubliée dans la conception des applications Web où le navigateur se réfère systématiquement au serveur Web pour répondre à l'utilisateur. Cette constatation a mené à diviser le flux de données du serveur vers le client en deux parties : la communication client serveur pour les données et la communication client serveur pour l'interface graphique et les traitements.Such an operation which seems natural in a local network application is conventionally forgotten in the design of Web applications where the browser systematically refers to the Web server to respond to the user. This observation led to dividing the data flow from the server to the client in two parts: client-server communication for the data and client-server communication for the graphical interface and the processing.
a) La communication entre le client et le serveur de base de donnéesa) Communication between the client and the database server
Pour contrôler ce processus, une applet (Java Client désigné par iSJC) permet communiquer le plus efficacement possible avec le serveur iSJS.To control this process, an applet (Java Client designated by iSJC) makes it possible to communicate as efficiently as possible with the iSJS server.
Le transfert des données entre la base de données et le serveur iSJS est rapide mais l'exécution de requêtes consomme beaucoup de ressources.Data transfer between the database and the iSJS server is fast, but query execution consumes a lot of resources.
Le transfert des données entre le serveur iSJS et le client iSJC est plus ou moins rapide (selon la mode de connexion Internet et la taille des données). Pour optimiser cette partie, des caches ajoutés sur le serveur iSJS et sur le client iSJC permettent de limiter les opérations de transfert et d'interrogation de la base de données.The data transfer between the iSJS server and the iSJC client is more or less rapid (depending on the Internet connection mode and the size of the data). To optimize this part, caches added on the iSJS server and on the iSJC client make it possible to limit the operations of transfer and interrogation of the database.
Le client iSJC regroupe aussi les requêtes en traitement par lots (batch) qui peuvent être envoyées en tâche de fond. Enfin, toutes les données transmises entre le serveur iSJS et le client iSJC sont avantageusement compressées au format ZIP ou autre (et sur demande des clients, peuvent être soumises à un encryptage du type SSL ou autre).The iSJC client also groups requests in batch processing which can be sent in the background. Finally, all the data transmitted between the iSJS server and the iSJC client are advantageously compressed in ZIP or other format (and on customer request, can be subject to SSL or other type encryption).
b) La communication entre le client et le serveur Webb) Communication between the client and the Web server
La récupération de l'interface graphique et des scripts est entièrement prise en charge par le navigateur : cette opération est rapide. On utilise aussi le cache du navigateur qui garde sur le disque dur du client tout ce qui a été téléchargé : chaque page (et le script correspondant) n'est donc téléchargée que lors du premier appel. Enfin, les traitements s'exécutent rapidement sur le poste client (les ordinateurs PC sous Windows sont largement assez puissants).The recovery of the graphical interface and scripts is fully supported by the browser: this operation is fast. We also use the browser cache which keeps on the client's hard drive everything that has been downloaded: each page (and the corresponding script) is therefore only downloaded during the first call. Finally, the processing runs quickly on the client computer (Windows PC computers are largely powerful enough).
Sur la figure XX est donnée une illustration du fonctionnement de l'application. Le serveur iSJS et le client iSJC s'exécutent en parallèle dans leur contexte (respectivement le serveur Web et le navigateur Web).In Figure XX is given an illustration of the operation of the application. The iSJS server and the iSJC client run in parallel in their context (respectively the web server and the web browser).
4. Bénéfices de cette architecture4. Benefits of this architecture
Tout en n'étant pas une pure architecture à trois étages, cette forme de développement apporte les avantages suivants :While not a pure three-story architecture, this form of development brings the following advantages:
- Il n'est plus nécessaire de maintenir de multiples versions et conséquemment de mettre à jour les postes clients. La mise à jour du serveur Web actualise toutes les applications lors de leur accès par les postes client. Alors qu'une application client lourd nécessite un jeu d'installation spécifique pour chaque version de Windows, et de lourds développements avec un outil d'installation du type InstallShield, le système avec client léger ne nécessite aucune installation.- It is no longer necessary to maintain multiple versions and consequently to update client workstations. Updating the Web server updates all applications when they are accessed by client computers. While a thick client application requires a specific installation set for each version of Windows, and heavy development with an installation tool like InstallShield, the system with thin client does not require any installation.
Les ordinateurs les plus puissants font office de serveur et les ordinateurs clients n'ont besoin que d'un navigateur Web et d'applicatifs de traitement de texte ou de feuille de calcul, etc. (typiquement Word et Excel ou supérieur, si l'entreprise utilise ces logiciels bureautiques).The most powerful computers act as a server, and client computers only need a web browser and word processing or spreadsheet applications, etc. (typically Word and Excel or higher, if the company uses these office software).
B - Le choix des outilsB - The choice of tools
1. Le système d'exploitation du serveur :1. The server operating system:
Deux solutions se partagent actuellement le marché :Two solutions currently share the market:
La solution de Microsoft avec Windows 2000 Server Les solutions de type Linux/UNIX.Microsoft's solution with Windows 2000 Server Linux / UNIX type solutions.
Les deux offres ne sont pas réellement opposées, elles sont plutôt complémentaires : Windows 2000 est largement présent dans les PME et réseaux locaux alors que les solutions Linux ou UNIX sont très répandues sur le net car moins coûteuses et réputées plus stables.The two offers are not really opposite, they are rather complementary: Windows 2000 is widely present in SMEs and local networks while Linux or UNIX solutions are very widespread on the net because they are less expensive and deemed more stable.
Les développements ont été effectués sous Windows afin de proposer en priorité cette solution à la majorité des utilisateurs.Developments were made under Windows in order to offer this solution as a priority to the majority of users.
2. Le serveur de bases de données2. The database server
Pour des raisons de facilité et de légèreté de mise en place dans les différents univers (W2000 et linux), qui permet facilement d'installer une application nomade complète (client- Web serveur et serveur de données) monoposte pouvant travailler hors ligne, le développement a été effectué sur l'outil Sybase SQLAnywhere Studio. Cependant la plupart des éditeurs proposent des serveurs de bases de données adaptés aux applications Internet. Aussi sont avantageusement pris en compte les serveurs SYBASE, ORACLE, MICROSOFT SQL, INTERBASE, POSTGRESQL et MYSQL.For reasons of ease and lightness of implementation in the various universes (W2000 and linux), which allows easy installation of a complete nomad application (client-Web server and data server) single-user can work offline, development was performed on the Sybase SQLAnywhere Studio tool. However, most publishers offer database servers suitable for Internet applications. Also, SYBASE, ORACLE, MICROSOFT SQL, INTERBASE, POSTGRESQL and MYSQL servers are advantageously taken into account.
Le serveur Sybase SQLAnywhere Studio est un serveur de bases de données relationnelles orienté objet, il intègre donc une machine virtuelle Java et la possibilité de stocker des classes Java et procédures au format SQLJ. Il offre aussi la possibilité de stocker des classes Java dans les tables de données relationnelles ; ainsi, les accès aux données depuis un programme Java sont simplifiés. Des drivers JDBC, OLE-DB sont aussi disponibles.The Sybase SQLAnywhere Studio server is an object-oriented relational database server, it therefore integrates a Java virtual machine and the possibility of storing Java classes and procedures in SQLJ format. It also offers the possibility of storing Java classes in relational data tables; thus, access to data from a Java program is simplified. JDBC, OLE-DB drivers are also available.
3. Le langage utilisé pour le développement Serveur3. The language used for Server development
Les trois principaux langages côté serveur que l'on trouve couramment sontThe three main server-side languages commonly found are
Java Script/VB Script imbriqués dans des pages ASP hébergées sur un serveur Microsoft Internet Information Server. - Le langage de script PHP.Java Script / VB Script embedded in ASP pages hosted on a Microsoft Internet Information Server. - The PHP scripting language.
Le langage Java, sous forme de servlets et pages JSP (Java Server Pages).The Java language, in the form of servlets and JSP pages (Java Server Pages).
La technologie ASP présente au regard de l'invention deux inconvénients :ASP technology has two drawbacks with regard to the invention:
a) elle ne peut s'exécuter que sur un serveur Windows, b) elle souffre de performances faibles lors des accès aux bases de données : si les langages de scripts sont tout à fait adaptés à un usage sur client léger (du fait de leur portabilité et de leur simplicité notamment), ce choix n'est pas judicieux du côté serveur. Les scripts PLIP représentent une solution intéressante dans le sens où ils sont exécutables par un grand nombre de serveurs WEB. Cependant comme tous les scripts, leur exécution est lente et peu adaptée à une montée en charge.a) it can only run on a Windows server, b) it suffers from poor performance when accessing databases: if the scripting languages are perfectly suited for use on a thin client (due to their portability and their simplicity in particular), this choice is not wise on the server side. PLIP scripts represent an interesting solution in the sense that they can be executed by a large number of WEB servers. However, like all scripts, their execution is slow and unsuitable for scaling up.
Les JSP et Servlets ouvrent le développement côté serveur à toute la puissance du langage JAVA : portabilité, très nombreuses bibliothèques (packages), réel langage orienté objet. Leur exécution est aussi plus rapide.JSP and Servlets open server-side development to the full power of the JAVA language: portability, numerous libraries (packages), real object-oriented language. Their execution is also faster.
C'est pourquoi cette dernière solution a été retenue pour la mise en œuvre du système.This is why the latter solution was chosen for the implementation of the system.
4. Le serveur WEB4. The WEB server
Le serveur Web APACHE est de loin le plus utilisé sur Internet, il fonctionne aussi bien sous Linux que Windows. Son administration est simple et identique sur les deux plates-formes : il est donc très simple de distribuer le serveur. Autre point non négligeable, il est intégré à de nombreux outils de développement Java ; cela simplifie donc aussi la préparation de la machine de développement.The APACHE web server is by far the most used on the Internet, it works on both Linux and Windows. Its administration is simple and identical on the two platforms: it is therefore very simple to distribute the server. Another significant point is that it is integrated with many Java development tools; this therefore also simplifies the preparation of the development machine.
5. Le langage utilisé pour le développement Client5. The language used for Client development
- pour l'interface graphique- for the graphical interface
Elle est réalisée en HTML, standard sur le Web.It is produced in HTML, standard on the Web.
-pour la gestion des événements :-for event management:
Pour rester le plus universel possible et le plus proche du code écrit sur le serveur (en langage Java), le langage Java Script est préféré. Il est supporté par un grand nombre de navigateurs (Internet Explorer et Netscape notamment). -pour la communication entre le client et le serveur iSJSTo stay as universal as possible and as close as possible to the code written on the server (in Java language), the Java Script language is preferred. It is supported by a large number of browsers (Internet Explorer and Netscape in particular). -for communication between the client and the iSJS server
Seules les applets Java peuvent remplir ce rôle car particulièrement adaptées aux développements sur l'Internet. Le client iSJC est écrit dans le même langage que le serveur. Afin de simplifier son utilisation depuis le langage script, il a été développé des librairies de fonctions qui sont utilisées dans toutes les pages.Only Java applets can fulfill this role because they are particularly suited to developments on the Internet. The iSJC client is written in the same language as the server. In order to simplify its use from the scripting language, function libraries have been developed which are used in all pages.
6. Les outils de développement6. Development tools
- pour l'interface graphique et les scripts- for the graphical interface and scripts
Deux outils sont préférentiellement utilisés : DreamWeaver et Visual Studio. Le premier est utilisé pour générer les interfaces graphiques car il permet de visualiser simplement le résultat tel qu'il apparaîtra sur l'écran des utilisateurs. Visual Studio quant à lui, est utilisé pour générer les scripts événementiels et pour intégrer les applets nécessaires aux pages Web.Two tools are preferably used: DreamWeaver and Visual Studio. The first is used to generate the graphical interfaces because it allows you to simply view the result as it will appear on the users' screen. Visual Studio, on the other hand, is used to generate event scripts and to integrate the necessary applets into web pages.
- pour les programmes Java client- for Java client programs
Les applets doivent être développés et compilés de manière spécifique pour Internet Explorer, il est donc particulièrement indiqué d'utiliser un outil de développement Microsoft pour effectuer cette tâche. Visual J++ a été utilisé.The applets must be developed and compiled specifically for Internet Explorer, so it is particularly recommended to use a Microsoft development tool to perform this task. Visual J ++ was used.
- pour le développement du serveur Java- for the development of the Java server
Sun Forte For Java a été utilisé. Ce dernier inclut le serveur Web APACHE, un client CVS, un éditeur de pages HTML (statiques ou dynamiques) et bien sûr, un éditeur de classes Java très performant avec une aide à l'écriture du code. 7. Définition de la configuration nécessaire sur le clientSun Forte For Java was used. The latter includes the APACHE web server, a CVS client, an HTML page editor (static or dynamic) and of course, a very efficient Java class editor with code writing help. 7. Definition of the necessary configuration on the client
Comme chaque navigateur doit pour le moment posséder une version spécifique du logiciel, le système a été développé pour le navigateur le plus répandu : Microsoft Internet Explorer. C'est par ailleurs celui qui offre la plus grande richesse de performances pour les développeurs. Le poste client est donc sous le système d'exploitation Windows de Microsoft.As each browser must currently have a specific version of the software, the system has been developed for the most common browser: Microsoft Internet Explorer. It is also the one that offers the greatest wealth of performance for developers. The client workstation is therefore under the Microsoft Windows operating system.
C - Développement du serveurC - Server development
Le but à atteindre était finalement de développer une application Web de la même manière que l'on développerait une application dans une architecture client/serveur deux étages. Pour ce faire, on distingue trois serveurs : le serveur de bases de données, - Le serveur WEB (contenant les pages HTML, les scripts de gestion d'événements et un iSJC téléchargeable). iSJS (ensemble de servlets et de classe Java contenant les requêtes SQL) et l'algorithme de connexion avec les clients.The goal was ultimately to develop a web application in the same way as one would develop an application in a two-stage client / server architecture. To do this, we distinguish three servers: the database server, - The WEB server (containing HTML pages, event management scripts and a downloadable iSJC). iSJS (set of servlets and Java class containing SQL queries) and the algorithm for connection with clients.
iSJS est un ensemble de servlets qui attendent les connexions clientes par l'intermédiaire du serveur Web et qui possède des 'jobs' qu'il est capable d'exécuter comme des procédures afin d'en retourner le résultat aux clients.iSJS is a set of servlets which wait for client connections via the web server and which has 'jobs' which it is able to execute as procedures in order to return the result to clients.
Son architecture est totalement extensible, cela signifie que de nouveaux jobs et de nouveaux servlets peuvent être créés pour répondre à des besoins spécifiques permettant à iSJS de servir de plate-forme pour l'EAI (Communication interapplications).Its architecture is fully extensible, this means that new jobs and new servlets can be created to meet specific needs allowing iSJS to serve as a platform for EAI (Inter-Application Communication).
1. présentation des SERVLETS SWServlet: ce servlet constitue la base du serveur Java iSJS ; il gère les connexions à la base de données et certains paramètres qui lui permettent de se connecter à Internet (à un serveur de messagerie par exemple).1. presentation of SERVLETS SWServlet: this servlet forms the basis of the iSJS Java server; it manages the connections to the database and certain parameters which allow it to connect to the Internet (to a mail server for example).
SWDatabaseServlet est un servlet responsable de traiter les demandes des clients qui nécessitent un accès à la base de données. Chaque demande peut nécessiter l'exécution de un ou plusieurs tâches (« jobs »). Le résultat est renvoyé aux clients selon un format standard Java (cryptage SSL sur demande et compression ZIP).SWDatabaseServlet is a servlet responsible for processing requests from clients who require access to the database. Each request may require the execution of one or more tasks ("jobs"). The result is returned to customers in a standard Java format (SSL encryption on request and ZIP compression).
SWXMLServlet est un SWDatabaseServlet qui renvoie les doimées aux clients au format XML universel. Ce dernier est utilisé lors de la génération des documents Word et Excel. Le principe de génération de ces documents sera détaillé plus loin.SWXMLServlet is a SWDatabaseServlet that returns data to clients in universal XML format. The latter is used when generating Word and Excel documents. The principle of generation of these documents will be detailed later.
SWFileScrvlet simule un serveur de fichiers dans la base de données (il utilise des tables systèmes capables de stocker des données binaires). C'est ce servlet qui est utilisé pour stocker les documents Word et à Excel notamment (ce servlet reprend les principes de 1TFS d'Oracle).SWFileScrvlet simulates a file server in the database (it uses system tables capable of storing binary data). It is this servlet which is used to store Word documents and Excel in particular (this servlet takes the principles of 1TFS from Oracle).
SWWAPServlet: ce SERVLET donne accès à la base de données depuis les mobiles WAP par le biais d'une interface au format WML.SWWAPServlet: this SERVLET gives access to the database from WAP mobiles via an interface in WML format.
SWSignlnServlet: ce dernier servlet est un outil d'administration qui permet d'enregistrer de nouveaux utilisateurs. Il est notamment utilisé pour créer des utilisateurs de tests de faire des présentations en ligne. En figure 4 est donnée une présentation du diagramme de classes qui illustre l'architecture logicielle du serveur iSJSSWSignlnServlet: this last servlet is an administration tool which allows to register new users. It is especially used to create test users to make presentations online. In Figure 4 is given a presentation of the class diagram which illustrates the software architecture of the iSJS server
2. présentation des jobs2. job presentation
Comme on l'a vu, les jobs sont l'équivalent de procédures qui s'exécutent sur le serveur à la demande du client. Chaque job réalise un travail précis : vérifier les emails de l'utilisateur, télécharger un fichier de la base de données ou encore exécuter des requêtes SQL. Pour qu'un job soit reconnu et exécutable par le serveur IsJS, il doit implémenter l'interface SWJob. Lorsqu'un poste client demande l'exécution d'un job, il communique au serveur iSJS son nom (le nom de la classe Java) et une liste de paramètres (le nom du fichier téléchargé ou la requête SQL à exécuter par exemple).As we have seen, jobs are the equivalent of procedures that run on the server at the request of the client. Each job does a specific job: check the user's emails, download a file from the database or even execute SQL queries. For a job to be recognized and executable by the IsJS server, it must implement the SWJob interface. When a client station requests the execution of a job, it communicates to the iSJS server its name (the name of the Java class) and a list of parameters (the name of the downloaded file or the SQL query to be executed for example).
Le diagramme de classes de la figure 5 mais présente les jobs les plus importants de l'application :The class diagram in Figure 5 but presents the most important jobs of the application:
SWUserldentificationJob permet de contrôler l'utilisateur à la connexion. SWMailJob est utilisé pour gérer les mails et comptes des utilisateurs.SWUserldentificationJob allows you to control the user upon connection. SWMailJob is used to manage users' emails and accounts.
D - Développement du clientD - Customer development
1. L'applet iSJC1. The iSJC applet
Cette classe est utilisée dans toutes les pages Web depuis le code Java script de gestion des événements. Elle possède de nombreuses méthodes qui permettent chacune d'invoquer des jobs sur iSJS. Elle peut gérer l'envoi groupé de jobs de sorte à optimiser le nombre de va-et-vients entre le client et le serveur. Cette classe est une brique essentielle de l'architecture proposée : elle permet à un code Java script d'une architecture client serveur deux étages de s'exécuter sur Internet de manière performante et fiable. La classe JClient représente l'applet iSJC, elle expose les méthodes nécessaires à l'invocation des jobs (un job getFile par exemple permet de télécharger un fichier stocké dans la base de données).This class is used in all web pages since the Java event handling script code. It has many methods that each allow you to invoke jobs on iSJS. It can manage the group sending of jobs so as to optimize the number of back-and-forth between the client and the server. This class is an essential building block of the proposed architecture: it allows Java script code of a two-stage client server architecture to run on the Internet in a powerful and reliable manner. The JClient class represents the iSJC applet, it exposes the methods necessary for invoking jobs (a getFile job for example allows you to download a file stored in the database).
Le client iSJC possède une référence vers 4 objets :The iSJC client has a reference to 4 objects:
- DocumentManager permet d'ouvrir un fichier en exécutant le programme Windows associé (Exécuter Word pour ouvrir un document de référence FAX1245.DOC par exemple).- DocumentManager allows you to open a file by running the associated Windows program (Run Word to open a reference document FAX1245.DOC for example).
- SWBuffer représente le cache client, les données provenant du serveur y sont stockées et récupérées depuis le code Java script.- SWBuffer represents the client cache, the data from the server is stored there and retrieved from Java script code.
Chaque job demandé est stocké dans un objet Batch dont on peut demander l'exécution dans le cadre d'une transaction. le serveur iSJS retourne le résultat dans un objet BatchResult.Each requested job is stored in a Batch object which can be requested to be executed as part of a transaction. the iSJS server returns the result in a BatchResult object.
Le serveur iSJS et le client iSJC communiquent de la manière suivante : le client iSJC établit un batch qui peut-être envoyé en asynchrone ou en synchrone. Ce batch est étudié et exécuté sur le serveur iSJS dans le cadre d'une transaction ou non. Il renvoie ensuite un objet BatchResult qui contient tous les codes de succès ou d'erreur du batch pour chaque job.The iSJS server and the iSJC client communicate as follows: the iSJC client establishes a batch which can be sent asynchronously or synchronously. This batch is studied and executed on the iSJS server as part of a transaction or not. It then returns a BatchResult object that contains all the batch success or error codes for each job.
D'une manière générale, SWBuffer permet de conserver des données lors de la navigation d'une page à l'autre. On l'utilise aussi pour étendre le langage Java script et utiliser la puissance des classes Java classiques.Generally speaking, SWBuffer makes it possible to store data when navigating from one page to another. It is also used to extend the Java script language and to use the power of classic Java classes.
La figure 6 illustre le diagramme de classe présentant la base de données du système. E - La génération de documentsFigure 6 illustrates the class diagram showing the system database. E - Generating documents
L'un des avantages du système est de générer, fusionner, enregistrer, classer et retrouver les documents de l'entreprise.One of the advantages of the system is to generate, merge, save, classify and find the documents of the company.
1. Les documents types1. The standard documents
Tous les documents générés automatiquement par le système à partir de 4 parties : Le modèle de document Word ou Excel : il comprend la mise en page de données génériques.All documents automatically generated by the system from 4 parts: The Word or Excel document model: it includes the layout of generic data.
Le logo de l'entreprise qui est sauvegardé séparément et inséré au document avant impression puis supprimé avant sauvegarde dans la base de données. Les champs de fusion qui indiquent l'emplacement où il faudra fusionner les données extraites de la base de données (nom et adresse du contact par exemple). - La macro-instruction développée dans le langage Visual Basic For Application qui permet de récupérer les données de la base de données pour les fusionner au document.The logo of the company that is saved separately and inserted the document before printing and then deleted before backup in the database. The merge fields which indicate the location where it will be necessary to merge the data extracted from the database (name and address of the contact for example). - The macro-instruction developed in the Visual Basic For Application language which allows to retrieve data from the database to merge it into the document.
2. La génération d'un nouveau document2. Generating a new document
Les documents sont créés dans le cadre de Projets : l'utilisateur travaille sur une fiche client et dans un projet concernant cette fiche.Documents are created within the framework of Projects: the user works on a customer file and in a project concerning this file.
L'utilisateur sélectionne un document type dans une liste (proposition commerciale par exemple). Le client iSJC télécharge le modèle, le logo de l'entreprise et l'ouvre dans Word ou Excel (sous réserve que le poste client en dispose).The user selects a standard document from a list (commercial proposal for example). The iSJC client downloads the model, the company logo and opens it in Word or Excel (provided that the client computer has it).
A son ouverture, la macro du modèle s'exécute et se connecte au serveur z'SJS (au servlet SWXMLServlet plus précisément) et demande un export prédéfini de la base de données au format XML. Elle fusionne ensuite les domiées XML au modèle document, et le document est numéroté et sauvegardé de manière temporaire en local.When it is opened, the macro of the model is executed and connects to the z ' SJS server (more precisely the SWXMLServlet servlet) and requests a predefined export of the database in XML format. It then merges the dominated XML to the model document, and the document is numbered and temporarily saved locally.
Lorsque l'on quitte la page HTML du projet, la liste de tous les documents créés lors de la session de travail est proposée. On peut sauvegarder sur le serveur les documents que l'on désire conserver.When you leave the HTML page of the project, the list of all the documents created during the working session is proposed. You can save the documents you want to keep on the server.
F - Les avantagesF - The advantages
Le développement réalisé pour exécuter l'invention (à savoir le couple serveur iSJS et client iSJC), se révèle être un excellent outil pour porter des applications client serveur deux étages vers le Web.The development carried out to execute the invention (namely the iSJS server and iSJC client couple), proves to be an excellent tool for bringing two-tier client server applications to the Web.
Une entreprise qui maîtrise une ou plusieurs applications client/serveur spécifiques peut les convertir en application Intranet en trois étapes simples :A company that masters one or more specific client / server applications can convert them to an Intranet application in three simple steps:
Générer l'interface graphique au format HTML (selon les outils de développement, cette création peut se faire par simple conversion). Extraire les requêtes SQL de l'application et les stocker dans le serveur iSJS.Generate the graphical interface in HTML format (depending on the development tools, this creation can be done by simple conversion). Extract the SQL queries from the application and store them in the iSJS server.
- Développer les scripts de gestion d'événements en Java Script.- Develop event management scripts in Java Script.
Les bénéfices apportés par l'invention sont probants : stabilité, performances, déploiement, l'accessibilité et économie.The benefits brought by the invention are convincing: stability, performance, deployment, accessibility and economy.
On retrouve les avantages des applications client serveur N-étages : l'application est accessible en Intranet et sur l'Internet depuis un simple navigateur Web. Son déploiement est simplifié (installation d'une seule machine serveur). Le protocole de communication utilisée entre le client iSJC et le serveur iSJS est optimisé ; en outre, le serveur iSJS est robuste, il supporte un grand nombre d'accès simultanés. L'interface graphique au format HTML est très légère et personnalisable par simple changement de feuilles de style.We find the advantages of N-stages client server applications: the application is accessible on the Intranet and on the Internet from a simple Web browser. Its deployment is simplified (installation of a single server machine). The communication protocol used between the iSJC client and the iSJS server is optimized; in addition, the iSJS server is robust, it supports a large number of simultaneous accesses. The graphical interface in HTML format is very light and customizable by simply changing the style sheets.
Le client de messagerie (Mail) du système offre la puissance des « Webmails » gratuits comme Hotmail et Yahoo! sans pour autant obliger l'utilisateur à sortir de son environnement de travail.The system's mail client offers the power of free "Webmails" like Hotmail and Yahoo! without forcing the user to leave his work environment.
L'utilisateur, ou l'administrateur d'entreprise, configure dans le système la liste de comptes mail ; il peut ensuite demander à vérifier l'arrivée de nouveaux mails sur toutes les adresses ou seulement certaines. L'utilisateur peut également consulter les en-têtes et la taille des mails sans les télécharger, il peut ainsi décider de supprimer les messages suspects (spams, virus) sans les lire. Enfin, lorsqu'il envoie ou reçoit un mail, l'utilisateur le classe, non seulement dans sa boite personnelle, mais aussi dans le projet et la fiche de tiers auquel il se rattache.The user, or the company administrator, sets up the list of mail accounts in the system; he can then ask to check the arrival of new emails on all addresses or only some. The user can also consult the headers and the size of the emails without downloading them, so he can decide to delete suspicious messages (spam, virus) without reading them. Finally, when he sends or receives an email, the user files it, not only in his personal mailbox, but also in the project and the third party file to which he is attached.
Un module de chat peut être ajouté au système. Un utilisateur dispose alors de trois moyens de communication à sa disposition :A chat module can be added to the system. A user then has three means of communication at his disposal:
1. Le mail, conseillé pour contacter des tiers (clients ou prospects par exemple). 2. Le Mémo Express qui constitue un système de messagerie interne asynchrone entre utilisateurs. 3. Le chat qui permet de communiquer en direct avec d'autres utilisateurs de l'entreprise connectés simultanément au serveur. Les domiées ainsi échangées sont sauvegardées dans la base de données et autoriseront des recherches multicritères pertinentes (Knowledge Management).1. Mail, recommended for contacting third parties (customers or prospects for example). 2. The Memo Express which constitutes an asynchronous internal messaging system between users. 3. The chat which allows direct communication with other users of the company connected simultaneously to the server. The domices thus exchanged are saved in the database and will authorize relevant multicriteria searches (Knowledge Management).
De façon avantageuse, le système propose également un accès WAP : ce mode d'accès est un bonus même s'il est vrai que le WAP n'a pas encore connu un grand succès. Il est probable que l'expérience acquise en développement WML accélérera le développement d'une interface GPRS. G - EvolutionsAdvantageously, the system also offers WAP access: this access mode is a bonus even if it is true that WAP has not yet been very successful. It is likely that the experience acquired in WML development will accelerate the development of a GPRS interface. G - Developments
Le gestionnaire de bases de données du système peut être choisi pour bénéficier des évolutions récentes des serveurs de bases de données (procédures stockées, intégrité référentielle...), et qu'elle soit facilement intégrée à des plateformes d'EAI.The system database manager can be chosen to take advantage of recent developments in database servers (stored procedures, referential integrity, etc.), and to be easily integrated into EAI platforms.
La gestion des droits d'accès aux données, de la personnalisation de l'interface graphique pour chaque utilisateur et de la gestion de différentes langues (avec format de date et séparateur numérique correspondants) peuvent être raffinées à souhait.The management of data access rights, the personalization of the graphical interface for each user and the management of different languages (with corresponding date format and numeric separator) can be refined as desired.
Note : tous les noms de marques cités dans le présent mémoire sont des marques déposées de leurs propriétaires respectifs Note: all brand names cited in this memo are registered trademarks of their respective owners

Claims

REVENDICATIONS
1. Architecture informatique en réseau multi-étages destinée à permettre l'accès à un environnement personnel de ressources via un réseau tel que l'Internet, à partir de points d'accès variés correspondant à différents types de postes clients, caractérisée en ce qu'elle comprend :1. IT architecture in a multi-stage network intended to allow access to a personal resource environment via a network such as the Internet, from various access points corresponding to different types of client workstations, characterized in that 'she understands :
- un étage de serveur de bases de données relationnelles standard comportant un gestionnaire de bases de données apte à exécuter sur requête toutes opérations sur les données de la base de données, ladite base de données contenant à la fois, de façon propre à chaque utilisateur, des données et des documents, en constituant l'espace de stockage organisé et unique de l'utilisateur,a standard relational database server stage comprising a database manager capable of executing on request all operations on the data of the database, said database containing both, in a manner specific to each user, data and documents, constituting the user's organized and unique storage space,
- un étage de communication sur le réseau comprenant un serveur de communication et un logiciel client aptes à communiquer ensemble dans un format standard du réseau, et - un étage de serveur de couche logicielle intermédiaire relié d'une part à l'étage de serveur de bases de données et d'autre part à l'étage de communication, et comportant un ensemble de servlets aptes, en réponse à des requêtes en provenance de l'étage de communication, à exécuter des procédures correspondant à des types d'opérations prédéfinis dans le gestionnaire de bases de données, avec des servlets différents correspondant à différents types de postes clients.- a communication stage on the network comprising a communication server and client software capable of communicating together in a standard network format, and - an intermediate software layer server stage connected on the one hand to the server stage databases and secondly to the communication stage, and having a set of servlets capable, in response to requests from the communication stage, to execute procedures corresponding to types of predefined operations in the database manager, with different servlets corresponding to different types of client workstations.
2. Architecture selon la revendication 1 , caractérisé en ce que le logiciel client est un navigateur Internet standard.2. Architecture according to claim 1, characterized in that the client software is a standard Internet browser.
3. Architecture selon la revendication 1 ou 2, caractérisée en ce que l'étage de communication définit deux voies de communication distinctes d'une part pour des informations d'interface graphique spécifiques à chaque type de poste client et d'autre part pour des domiées ou documents vers le poste client ou à partir du poste client. 3. Architecture according to claim 1 or 2, characterized in that the communication stage defines two distinct communication channels on the one hand for graphical interface information specific to each type of client station and on the other hand for or documents to the client station or from the client station.
4. Architecture selon l'une des revendications 1 à 3, caractérisée en ce que ledit espace de stockage de l'utilisateur contient, au sein de la base de données l'ensemble des fichiers, exécutables par applications standard au niveau serveur de base de données ou au niveau poste client, et des données de l'utilisateur.4. Architecture according to one of claims 1 to 3, characterized in that said user storage space contains, within the database all the files, executable by standard applications at the basic server level of data or at the client station level, and user data.
5. Architecture informatique en réseau multi-étages destinée à permettre l'accès à un environnement personnel de ressources via un réseau tel que l'Internet, à partir de points d'accès variés correspondant à différents types de postes clients, caractérisée en ce qu'elle comprend : - un étage de serveur de bases de données relationnelles standard comportant un gestionnaire de bases de données apte à exécuter sur requête toutes opérations sur les données de la base de données, ladite base de données contenant à la fois, de façon propre à chaque utilisateur, des données et des documents, en constituant l'espace de stockage organisé et unique de l'utilisateur, et le gestionnaire de base de domiées comportant des fonctionnalités de système d'exploitation à distance en relation avec ledit espace de stockage.5. IT architecture in a multistage network intended to allow access to a personal resource environment via a network such as the Internet, from various access points corresponding to different types of client workstations, characterized in that '' it comprises: - a standard relational database server stage comprising a database manager capable of executing on request all operations on the data in the database, said database containing both, in a clean manner to each user, data and documents, constituting the organized and unique storage space of the user, and the database manager containing remote operating system functionalities in relation to said storage space.
- un étage de communication sur le réseau comprenant un serveur de communication et un logiciel client aptes à communiquer ensemble dans un format standard du réseau, et - un étage de serveur de couche logicielle intermédiaire relié d'une part à l'étage de serveur de bases de données et d'autre part à l'étage de communication, et comportant un ensemble de servlets aptes, en réponse à des requêtes en provenance de l'étage de communication, à provoquer l'exécution, par le gestionnaire de base de données, de fonctionnalités dudit système d'exploitation à distance.- a communication stage on the network comprising a communication server and client software capable of communicating together in a standard network format, and - an intermediate software layer server stage connected on the one hand to the server stage databases and on the other hand on the communication stage, and comprising a set of servlets able, in response to requests from the communication stage, to cause the execution, by the database manager , of functionalities of said remote operating system.
6. Architecture selon la revendication 5, caractérisé en ce que le logiciel client est un navigateur Internet standard.6. Architecture according to claim 5, characterized in that the client software is a standard Internet browser.
7. Architecture selon la revendication 5 ou 6, caractérisée en ce que l'étage de communication définit deux voies de communication distinctes d'une part pour des informations d'interface graphique spécifiques à chaque type de poste client et d'autre part pour des données ou documents vers le poste client ou à partir du poste client.7. Architecture according to claim 5 or 6, characterized in that the communication stage defines two distinct communication channels on the one hand for graphical interface information specific to each type of client station and on the other hand for data or documents to the client station or from the client station.
8. Architecture selon l'une des revendications 5 à 7, caractérisée en ce que ledit espace de stockage de l'utilisateur contient, au sein de la base de données l'ensemble des fichiers, exécutables par applications standard au niveau serveur de base de données ou au niveau poste client, et des données de l'utilisateur. 8. Architecture according to one of claims 5 to 7, characterized in that said user storage space contains, within the database all the files, executable by standard applications at the basic server level of data or at the client station level, and user data.
EP03780236A 2002-10-25 2003-10-27 Multistage network computer architecture, with user-centered remote operating system Withdrawn EP1559258A2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US42146502P 2002-10-25 2002-10-25
US421465P 2002-10-25
PCT/FR2003/003190 WO2004040873A2 (en) 2002-10-25 2003-10-27 Multistage network computer architecture, with user-centered remote operating system

Publications (1)

Publication Number Publication Date
EP1559258A2 true EP1559258A2 (en) 2005-08-03

Family

ID=32230231

Family Applications (1)

Application Number Title Priority Date Filing Date
EP03780236A Withdrawn EP1559258A2 (en) 2002-10-25 2003-10-27 Multistage network computer architecture, with user-centered remote operating system

Country Status (4)

Country Link
US (1) US20060167829A1 (en)
EP (1) EP1559258A2 (en)
AU (1) AU2003288332A1 (en)
WO (1) WO2004040873A2 (en)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2861944B1 (en) * 2003-11-04 2006-02-03 Bouygues Telecom Sa METHOD FOR ACCESSING ERP FROM MOBILE EQUIPMENT
US8024225B1 (en) * 2004-01-27 2011-09-20 Amazon Technologies, Inc. Controlling access to services via usage models
US7448047B2 (en) * 2004-04-29 2008-11-04 Sybase, Inc. Database system with methodology for providing stored procedures as web services
US8620988B2 (en) * 2005-03-23 2013-12-31 Research In Motion Limited System and method for processing syndication information for a mobile device
US20060218228A1 (en) * 2005-03-24 2006-09-28 Security First Technologies Corp Client platform architecture
JP4722519B2 (en) * 2005-03-25 2011-07-13 株式会社日立製作所 Computer system, storage server, search server, terminal device, and search method
WO2007115863A1 (en) * 2006-04-12 2007-10-18 International Business Machines Corporation Method and system for adjusting environment settings to the capabilities of a client device
US7908264B2 (en) * 2006-05-02 2011-03-15 Mypoints.Com Inc. Method for providing the appearance of a single data repository for queries initiated in a system incorporating distributed member server groups
US20090106368A1 (en) * 2007-10-18 2009-04-23 Adpickles, Inc. Injection advertising technology
US8090650B2 (en) 2008-07-24 2012-01-03 At&T Intellectual Property I, L.P. Secure payment service and system for interactive voice response (IVR) systems
US9911089B2 (en) * 2011-09-16 2018-03-06 Oracle International Corporation Email client with ERP task integration
FR2990318B1 (en) * 2012-05-04 2014-05-23 Bouygues Telecom Sa SYSTEM AND METHODS FOR ACCESSING STORED CONTENTS ON A LOCAL ENTERPRISE NETWORK

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63120343A (en) * 1986-11-10 1988-05-24 Pfu Ltd File management processing system
US6266682B1 (en) * 1998-08-31 2001-07-24 Xerox Corporation Tagging related files in a document management system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999009658A2 (en) * 1997-08-15 1999-02-25 Inergy Online, Inc. Server-sided internet-based platform independent operating system and application suite
US6950848B1 (en) * 2000-05-05 2005-09-27 Yousefi Zadeh Homayoun Database load balancing for multi-tier computer systems
US8112544B2 (en) * 2000-12-29 2012-02-07 International Business Machines Corporation System and method for providing customizable options on a wireless device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63120343A (en) * 1986-11-10 1988-05-24 Pfu Ltd File management processing system
US6266682B1 (en) * 1998-08-31 2001-07-24 Xerox Corporation Tagging related files in a document management system

Also Published As

Publication number Publication date
US20060167829A1 (en) 2006-07-27
AU2003288332A8 (en) 2004-05-25
WO2004040873A3 (en) 2004-09-16
WO2004040873A2 (en) 2004-05-13
AU2003288332A1 (en) 2004-05-25

Similar Documents

Publication Publication Date Title
CA2808275C (en) Distributed computing services platform
O'reilly What is Web 2.0: Design patterns and business models for the next generation of software
CN100458789C (en) Method for exchanging portlet configuration data and portal
US20150186366A1 (en) Method and System for Displaying Universal Tags
FR2813684A1 (en) Data management device for personal digital assistant, transfers selected data to information management module, so that data is stored in categories corresponding to reference categories
FR2762460A1 (en) SYSTEM INTENDED TO PROVIDE AN ENHANCED ENVIRONMENT AND USER INTERFACE FOR ONLINE DISCUSSION TECHNOLOGIES
CN1825312A (en) Method and system for locating contact information collected from contact sources
AU2001268674A1 (en) Distributed computing services platform
EP1687729A2 (en) Method and system for collaboration
CN101095161A (en) Contact management
KR100919606B1 (en) Distributed computing services platform
EP1559258A2 (en) Multistage network computer architecture, with user-centered remote operating system
WO2004015897A2 (en) Multi-user collaboration system and method
FR3069076A1 (en) SYSTEM AND METHOD FOR DYNAMICALLY DELIVERING CONTENT
US20080028070A1 (en) Method and system for remote management of online activities
EP1375016B1 (en) Process of creating and updating a database of a postal sorting system
JP2023048138A (en) Computer-implemented method, computer system and computer program for distributing content in virtual meeting session
EP1320822A2 (en) Intelligent electronic personal assistant
Hayes-Roth et al. Radical simplicity: transforming computers into ME-centric appliances
CN112286500A (en) Front-end system
Sørensen Beyond the Transaction Perspective for Knowledge Management Software Artifacts
WO2005031620A2 (en) Electronic inquiry method
WO2005034541A1 (en) Method, system and equipment for broadcasting information on forthcoming events to terminals
FR2835335A1 (en) Method and device for editing, conservation and distribution of documents for creation of documents at a company level, whereby storage of documents online reduces traditional production constraints
FR2835332A1 (en) Creation of dynamic applications and maintenance of databases for sales or field personnel linking to a central location via PDAs, mobile phones, etc., without any need for programming of the mobile terminal

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20050525

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LI LU MC NL PT RO SE SI SK TR

AX Request for extension of the european patent

Extension state: AL LT LV MK

DAX Request for extension of the european patent (deleted)
RIN1 Information on inventor provided before grant (corrected)

Inventor name: SACCHETTI, MARCLA CLOSERIE DES VALENCES

Inventor name: MAMOU, HAIM

Inventor name: LEVY, DIDIER

Inventor name: LEVY DREYFUS, JEAN

17Q First examination report despatched

Effective date: 20060131

RTI1 Title (correction)

Free format text: MULTISTAGE NETWORK COMPUTER ARCHITECTURE

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20100810