People Research Events Home
Contacts Projects Jobs Index

 

WCML Questions & Answers

What is Web-Engineering (WebE)?
WebE is a structured aproach, similar to Software Engineering, for assuring the quality of web-applications by introducing modells and processes for design, management and maintenance of web-applications.

Who needs Web-Engineering?
Everybody involved in working on a web-application that is non-trivial.

Why do I need Web-Engineering?
Without a structured approach it is difficult to develop and maintain any kind of software-application that has reached a certain size or involves more than one person. You might end up with the web-equivalent to spaghetti code: lots of hardcoded and often broken links, an inconsistent logical and navigational structure, small changes affect lots of resources, nobody really understands the design concepts anymore if there were any,...

What's the motivation for Web-Composition?
The implementation model of the web is based on document resources which means it is quite coarse grained. Often you are forced to duplicate elements (e.g. corporate identity elements) placeing copies in many documents which often results in a maintenance nightmare when you need to make changes. Furthermore for a successful and incremental engineering process with lots of redesign loops (typical for web-applications) you should have abstractions of your project that are as seemlessly integrated with your development code as possible.

So, what does Web-Composition do?
Web-Composition introduces a prototype instance object model for components of arbitrary size. This allows you to design components of any granularity, create different levels of abstraction by inheritance and aggregation and easily reuse code. The result of your work will automatically be mapped by a compiler to normal web-server resources like html documents. It will also be stored in a component store which enables you and any other person you like to access, use and reuse your code and much of your design architecture that would otherwise have been lost.

Does Web-Composition depend on any plattform or programming language?
Web-Composition is a design plattform that is independent from any OS, programming language, development environment or other product.

What is WCML?
WCML stands for Web-Composition Markup Language. It is an XML based language (as HTML is) and used to define components and relationships (inheritance, aggregation) between them.

Is WCML a programming language? Does my webserver/client have to know WCML?
It is not really a programming language. It is only used to describe relationships between components. The components themselves can contain any kind of code in any kind of language (HTML, Javascript, natural language, whatever,...). The WCML compiler uses the WCML tags to generate normal document resources that don't contain any WCML. Thus no webserver or client needs to know about WCML.

What can I do with WCML that I can't do with Java?
Java is a really powerful tool. You can do almost everything with it, theoretically making any other programming language, including even HTML, obsolete. But to use Java you have to know java and you really have to know programming. Lots of people know HTML or scripting and look for an easy and lightweight approach to bring more structure into their web-projects. They don't want to deal with data-types and classes. The complexity of WCML you could easily map to a graphical click and drop editor which you can't do with Java. It is pretty much like C++ compared to Visual Basic Script. Besides, to use Java, your web-server or web-client needs to be java-enabled which is not the case with WCML.

What can I do with WCML that I can't do with server side includes?
You could simulate prototype instance inheritance as well as aggregation using server side includes. This is a little bit like simulating inheritance in C. It works, but it is not what you really want. There is no error checking, it is difficult to teach, it is web-server dependant, it might slow down your server with lots of nested includes, you can't use any tools like the ones that exist or are under development for WCML,...

What can I do with WCML that I can't do with server side scripting?
WCML is in contrast to server side scripting plattform and language independent. Most web scripting languages furthermore don't support inheritance, although this might change. WCML can even be used by your HTML people, ideally with a graphical editor, without the need for them to learn any scripting language. You also needn't port any existing code, you only need to wrap it in WCML tags.

 


Submit your own questions to:     graef@teco.uni-karlsruhe.de


last modified on April, 1999 by Guntram Graef