GB2356470A - Using WebDAV for distributed development of a complex software application - Google Patents

Using WebDAV for distributed development of a complex software application Download PDF

Info

Publication number
GB2356470A
GB2356470A GB9927059A GB9927059A GB2356470A GB 2356470 A GB2356470 A GB 2356470A GB 9927059 A GB9927059 A GB 9927059A GB 9927059 A GB9927059 A GB 9927059A GB 2356470 A GB2356470 A GB 2356470A
Authority
GB
United Kingdom
Prior art keywords
webdav
server
client
software application
computer
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.)
Granted
Application number
GB9927059A
Other versions
GB2356470B (en
GB9927059D0 (en
Inventor
Wayne Boland
Gaetan Nadon
Marc-Thomas Schmidt
Alek Seelemann
Michael Starkey
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to GB9927059A priority Critical patent/GB2356470B/en
Publication of GB9927059D0 publication Critical patent/GB9927059D0/en
Priority to GB0007574A priority patent/GB0007574D0/en
Priority to US09/680,836 priority patent/US6760886B1/en
Publication of GB2356470A publication Critical patent/GB2356470A/en
Application granted granted Critical
Publication of GB2356470B publication Critical patent/GB2356470B/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design

Abstract

A method of performing distributed development of a computer software application by using a WebDAV (Web Distributed Authoring and Versioning) client to access a WebDAV server, includes steps carried out at the WebDAV client of: creating a WebDAV document containing a software development operation command to be carried out with respect to a computer software application which is currently being developed; and making a WebDAV PUT call to the WebDAV server, the PUT call including the created WebDAV document and a WebDAV identifier identifying the WebDAV server.

Description

1 2356470
USING WEBDAV FOR DISTRIBUTED DEVELOPMENT OF A COMPLEX SOFTWARE APPLICATION 5 Field of the Invention
The present invention relates to the field of data processing and more particularly to the distributed development of a software application which, once fully developed, is run in a data processing environment.
Background of the Invention
Software applications are becoming more and more complex in their internal structure. It has thus proven useful for the development of such applications to be carried out in a distributed fashion, meaning that multiple application developers can work on developing an application each from their own local workstation.
In such environments, it is necessary to store at least one repository of configuration data so that the distributed application developers can share this configuration data (also known as tool metadata) during the coordinated development of the complex application.
For example, a message broker is a well known complex application which benefits from being developed according to the distributed development idea discussed above. In a message broker, the configuration data stored in a repository includes data for defining a sequence of message processing nodes which process input messages as they pass through the message broker.
In the current state of the art, such distributed development of software applications has been carried out using proprietary repositories for storing configuration data and proprietary protocols for allowing remote clients to access the proprietary repositories. This has worked well when all of the application developer clients are located within the same organization (e.g., the developers all work for the same company, even though they may be spread around the world). However, this technique does not provide the flexibility of allowing application developer clients from outside of the organization (e.g., temporary contractors, customers, employees working from home) to work transparently on developing the application alongside clients from within the organization. The proprietary nature of the repositories and/or protocols prevent this transparent cooperation.
2 It is highly desirable that open standards be employed in the use of repositories and communication protocols for the distributed development of complex applications so that the development can be performed via a plurality of different clients running on different data processing platforms (e.g., different operating systems, protocols and data formats) both inside and outside of a single organization open standards-based software application configuration has been described in "Collaborative Authoring on the Web: introducing webDAVII, ASIS (American Society for Information Science) Bulletin, October/November 1998, E. James Whitehead, Jr, pp 1-6. Whitehead describes an extension to the standard HTTP (hypertext transfer protocol) protocol which allows a plurality of client computers, each running a World wide Web (WWW) browser application (e.g., Netscape Navigator), to perform collaborative authoring over the Internet of a set of common documents being held at a Web server. The extension is called WebDAV (Web Distributed Authoring and Versioning) and the clients are called WebDAV clients and the server is called a WebDAV server. The WebDAV server stores configuration data in the form of documents for a particular software application and WebDAV clients (tools) use the WebDAV protocol to access the WebDAV server over the Internet to make changes to the configuration data documents in order to carry out the configuration of a software application prior to deployment of the software application in a running data processing environment.
Because the Web is used, the client configuration tools can be located far away (geographically) from the site where the software product to be configured is located. Further, the clients can be situated on data processing platforms which are very different from (heterogeneous) the platform of the software application to be configured. However, there is a great need in the art for not only the configuration of a software application to be carried out via the Web but also for the actual development of the software application to be carried out over the Web. Thus, according to the current state of the art, distributed development of a software application must be done via proprietary tools and not based on open standards, thus greatly limiting the use of such tools and, correspondingly, limiting their commercial value in the marketplace.
Summary of the Invention
According to a first aspect, the present invention provides d-:'.
method of performing distributed development of a computer software application by using a WebDAV (Web Distributed Authoring and Versioning) client to access a WebDAV server, comprising steps carried out at the WebDAV client of: creating a WebDAV document containing a software 3 development operation command to be carried out with respect to a computer software application which is currently being developed; and making a WebDAV PUT call to the WebDAV server, the PUT Call including the created webDAV document and a WebDAV identifier identifying the webDAv server.
According to a second aspect, the invention provides a method of performing distributed development of a computer software application by using a WebDAV (Web Distributed Authoring and Versioning) client to access a WebDAV serv er, comprising steps carried out at the WebDAV server of: receiving a WebDAV PUT call from the WebDAV client, the WebDAV PUT call including a WebDAV document containing a software development operation command and the WebDAV PUT call also including a WebDAV identifier identifying the WebDAV server; interpreting the contents of the document as a command to carry out a software development operation with respect to a computer software application which is currently being developed; and facilitating the carrying out of the command to trigger a corresponding change in the computer software application which is currently being developed.
According to third and fourth aspects, the present invention provides data processing apparatuses for carrying out the respective methods of the first and second aspects.
According to fifth and sixth aspects, the invention provides computer program products for, when run on a computer, carrying out the method steps of the first and second aspects, respectively.
Thus, with the present invention, a standard Web-based mechanism, the WebDAV protocol, is used for accessing tool metadata from a repository. Thus, neither the repository nor the protocols are proprietary and instead open standards are used. Accordingly, any WebDAV server can be used as a metadata repository, and thus the application development tools are not tied in to a proprietary solution. Further, the invention not only provides distributed application development over an Intranet but also over the Internet transparently so that multiple organizations can cooperate on distributed application development.
Still further, since the WebDAV protocol is non-proprietary, many different tools can be used to manipulate the content of the tool metadata (even Web browsers support the WebDAV protocol).
Brief Description of the Drawings
The present invention will be better understood by the below described detailed description of the preferred embodiments thereof which will be presented in conjunction with the following drawing figures:
4 Figure 1 is a block diagram showing a basic architecture of a conventional WebDAV system to which the present invention can be advantageously applied; Figure 2 is a flowchart showing the steps taking place in a WebDAV client, according to a preferred embodiment of the present invention; and Figure 3 is a flowchart showing the steps taking place in a WebDAV server, according to a preferred embodiment of the present invention.
Detailed Description of the Preferred Embodiments
AS was described above, the WebDAV protocol is a recent extension to the HTTP protocol which allows web clients to perform distributed and collaborative authoring of web documents stored at a Web server. For example, as shown in Fig. 1, WebDAV clients 11, 12 and 13 can access a WebDAV server 14 over the Internet using the WebDAV protocol in order to add to, delete from or generally change WebDAV documents being held in the WebDAV server 14. The WebDAV protocol provides the appropriate locking mechanisms to make sure that only one WebDAV client at a time can access the same document in the WebDAV server 14. The WebDAV protocol also provides the appropriate namespace functionality so that each WebDAV client knows the appropriate names for the documents stored at the WebDAV server 14.
In addition to the document cited above, the WebDAV protocol is also described in "Distributed Authoring and Versioning Extensions for HTTP Enable Team Authoring" Microsoft Systems Journal, June 1999, Leonid Braginski and Matthew Powell, p. 53-67; and "WebDAV A Network Protocol for Remote Collaborative Authoring on the Web", European Computer Supported Cooperative work Conference 1999 (ECSCW 199), E. James Whitehead, Jr. & Yaron Y. Goland.
According to the WebDAV protocol, a WebDAV client (e.g., 11) can issue a PUT command in order to place some accompanying data into a file at the WebDAV server 14. The WebDAV client 11 provides the PUT command together with the data in the form of a document which is to be added to the WebDAV server 14 and a uniform Resource Identifier (URI) to identify a location within the namespace of the WebDAV server 14 where the document is to be added. The preferred embodiment of the present invention extends the notion of what a document is by defining tool metadata as documents. Once tool metadata is defined as documents, all of the facilities of WebDAV can be used for distributed development of applications based on the metadata in a WebDAV server.
First, the steps in the WebDAV client application (e.g., 11) will be described with reference to Fig. 2.
1) Create a WebDAV document using, for example, an editor (step 21 of Fig. 2). This is where the WebDAV client (e.g., 11) creates the particular application development command(s) that the WebDAV client 11 wants to be carried out on the WebDAV server in order to further develop an application.
2) Build a URI (step 22) <WebDAN__server>/<hostname>:<port>/, where <webDAV-server> gives the name of the WebDAV server implementation <hostname>:<port> specifies the machine and port that the WebDAV server resides on.
3) Make a WebDAV PUT call (step 23) over the Internet to the WebDAV server 14 specifying the URI built at step 22 and passing the document created at step 21 as data.
Second, the steps taking place within the WebDAV server 14 on host <hostname> listening on port <port> will be described with reference to the flowchart of Fig. 3.
1) WebDAV server 14 receives (step 31) the WebDAV PUT call from WebDAV client 11 along with the WebDAV document.
2) Interpret the contents of the PUT call's WebDAV document as an application development command (or as plural commands if the document contains plural commands) (step 32).
3) Facilitating (step 33) the carrying out of the command so that the application under development is further developed in accordance with the contents of the PUT call's document. In this step, the WebDAV server updates the tool metadata in the repository to reflect the change made by the WebDAV client and uses the overall tool metadata in the repository to trigger a corresponding change in the application under development.
6

Claims (14)

1. A method of performing distributed development of a computer software application by using a WebDAV (Web Distributed Authoring and Versioning) client to access a WebDAV server, comprising steps carried out at the WebDAV client of:
creating a WebDAV document containing a software development operation command to be carried out with respect to a computer software application which is currently being developed; and making a WebDAV PUT call to the WebDAV server, the PUT call including the created WebDAV document and a WebDAV identifier identifying the WebDAV server.
2. The method of claim 1 wherein the WebDAV client accesses the WebDAV server over the Internet.
3. The method of claim 1 wherein the WebDAV identifier is a Uniform Resource Identifier (URI).
4. A method of performing distributed development of a computer software application by using a WebDAV (Web Distributed Authoring and Versioning) client to access a WebDAV server, comprising steps carried out at the WebDAV server of:
receiving a WebDAV PUT call from the WebDAV client, the WebDAV PUT call including a WebDAV document containing a software development operation command and the WebDAV PUT call also including a WebDAV identifier identifying the WebDAV server; interpreting the contents of the document as a command to carry out a software development operation with respect to a computer software application which is currently being developed; and facilitating the carrying out of the command to trigger a corresponding change in the computer software application which is currently being developed.
5. The method of claim 4 wherein the WebDAV client accesses the WebDAV server over the Internet.
6. The method of claim 4 wherein the WebDAV identifier is a Uniform Resource Identifier (URI).
7 7. A data processing apparatus for performing distributed development of a computer software application by using a WebDAV (Web Distributed Authoring and Versioning) client to access a WebDAV server, comprising at the WebDAV client: 5 means for creating a WebDAV document containing a software development operation command to be carried out with respect to a computer software application which is currently being developed; and means for making a WebDAV PUT call to the WebDAV server, the PUT call including the created WebDAV document and a WebDAV identifier identifying the WebDAV server.
8. The apparatus of claim 7 wherein the WebDAV client accesses the WebDAV server over the Internet.
9. The apparatus of claim 7 wherein the WebDAV identifier is a Uniform Resource Identifier (URI).
10. A data processing apparatus for performing distributed development of a computer software application by using a WebDAV (Web Distributed Authoring and Versioning) client to access a WebDAV server, comprising at the WebDAV server:
means for receiving a WebDAV PUT call from the WebDAV client, the WebDAV PUT call including a WebDAV document containing a software development operation command and the WebDAV PUT call also including a WebDAV identifier identifying the WebDAV server; means for interpreting the contents of the document as a command to carry out a software development operation with respect to a computer software application which is currently being developed; and means for facilitating the carrying out of the command to trigger a corresponding change in the computer software application which is currently being developed.
11. The apparatus of claim 10 wherein the WebDAV client accesses the WebDAV server over the Internet.
12. The apparatus of claim 10 wherein the WebDAV identifier is a Uniform Resource Identifier (URI).
13. A computer program product stored on a computer readable storage medium for, when run on a computer, instructing the computer to carry out the method of claim 1.
8
14. A computer program product stored on a computer readable storage medium for, when run on a computer, instructing the computer to carry out the method of claim 4.
- I
GB9927059A 1999-11-17 1999-11-17 Using webdav for distributed development of a complex software application Expired - Fee Related GB2356470B (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
GB9927059A GB2356470B (en) 1999-11-17 1999-11-17 Using webdav for distributed development of a complex software application
GB0007574A GB0007574D0 (en) 1999-11-17 2000-03-30 Ensuring referential integrity when using webdav for distributed developement of a complex software application
US09/680,836 US6760886B1 (en) 1999-11-17 2000-10-06 Ensuring referential integrity when using WebDAV for distributed development of a complex software application

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB9927059A GB2356470B (en) 1999-11-17 1999-11-17 Using webdav for distributed development of a complex software application

Publications (3)

Publication Number Publication Date
GB9927059D0 GB9927059D0 (en) 2000-01-12
GB2356470A true GB2356470A (en) 2001-05-23
GB2356470B GB2356470B (en) 2001-10-17

Family

ID=10864593

Family Applications (2)

Application Number Title Priority Date Filing Date
GB9927059A Expired - Fee Related GB2356470B (en) 1999-11-17 1999-11-17 Using webdav for distributed development of a complex software application
GB0007574A Ceased GB0007574D0 (en) 1999-11-17 2000-03-30 Ensuring referential integrity when using webdav for distributed developement of a complex software application

Family Applications After (1)

Application Number Title Priority Date Filing Date
GB0007574A Ceased GB0007574D0 (en) 1999-11-17 2000-03-30 Ensuring referential integrity when using webdav for distributed developement of a complex software application

Country Status (1)

Country Link
GB (2) GB2356470B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1308841A2 (en) * 2001-11-05 2003-05-07 Sun Microsystems, Inc. Service portal with application framework for facilitating application and feature development

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1308841A2 (en) * 2001-11-05 2003-05-07 Sun Microsystems, Inc. Service portal with application framework for facilitating application and feature development
EP1308841A3 (en) * 2001-11-05 2006-05-24 Sun Microsystems, Inc. Service portal with application framework for facilitating application and feature development

Also Published As

Publication number Publication date
GB2356470B (en) 2001-10-17
GB0007574D0 (en) 2000-05-17
GB9927059D0 (en) 2000-01-12

Similar Documents

Publication Publication Date Title
US6031977A (en) Object-oriented distributed communications directory service
US8443035B2 (en) System and method for collaboration using web browsers
EP0726004B1 (en) Object-oriented rule-based protocol system
US5594921A (en) Authentication of users with dynamically configurable protocol stack
Davis et al. Towards an integrated information environment with open hypermedia systems
US5974443A (en) Combined internet and data access system
AU2001293254B2 (en) Accessing data stored at an intermediary from a service
EP1308841A2 (en) Service portal with application framework for facilitating application and feature development
US20040024843A1 (en) Method for provisioning distributed web applications
US20120331044A1 (en) Information Messaging and Collaboration System
US6948163B2 (en) Remote electronic file builder
WO2002019131A1 (en) System and method for collaboration using web browsers
JPH09185538A (en) Method and device for front end navigator and network architecture
WO2001027833A2 (en) Method and system for operating a content management system
JPH0954782A (en) Subagent service agent for execution of request of web browser
JP2003288143A (en) Method for automatically generating user interface
JP2002183116A (en) Method and device for composing document
US6199111B1 (en) Client-led network computing system and its method
EP0815518A1 (en) Computer system and computer-implemented process for creation and maintenance of on-line services
US6760886B1 (en) Ensuring referential integrity when using WebDAV for distributed development of a complex software application
US20040163037A1 (en) System and method for invoking WebDAV methods via non-WebDAV protocols
JPH11167584A (en) Page shift method and its execution device and medium recording page shift processing program and data
EP1506478B1 (en) Exchange infrastructure system and method
Davis et al. Microcosm: An open hypermedia environment for information integration
JPH1127285A (en) Network management system and recording medium

Legal Events

Date Code Title Description
PCNP Patent ceased through non-payment of renewal fee

Effective date: 20041117