What Makes an Application Web Portal System Friendly
May 15, 2011 by Igor Lozhkin
Contemporary web portal systems are designed to integrate output from multiple applications into solid web pages and present resulting cumulative output to the end user. Examples of applications which may feed their content to a web portal include dynamic reports, web forms, static news releases, collections of links, charts, social networking discussion threads, etc. These applications are likely developed without prior knowledge of whether or not they will be used in a standalone mode or integrated with other applications by a web portal system.
In practice, some applications are very easy to integrate, while others require substantial workarounds to get them working with other applications within the same web portal framework, or they cannot be integrated at all and are destined to run in standalone mode only.
What makes an application web portal system friendly? This question becomes more and more important in contemporary IT solutions as web portals become the primary content and functionality delivery tool to employees in corporate intranets, to customers and vendors on company extranets, and on many other business portals and content rich interactive web sites.
The short list of factors which make an application portal system friendly are:
- HTML content - the simpler the technique used in application generated content, the easier it is to integrate it. Consistently well structured HTML code generated by applicationis is easier to parse in order to extract content parts or subcontent, which is needed to display in a particular context;
- Low or moderate use or java scripts - some applications generate almost no content, but instead send heavy-duty java script code to the client browser, which generates client-side presentation. Pages produced this way are often designed to work in standalone mode, and although they have the benefit of bringing a lot of presentation dynamics, they are usually harder to integrate with content generated by other applicatons;
- Use of absolute URLs - when content is integrated with other content, the base URL of the resulting page may be different from the URL, which a particular application might require to resolve relative URLs pointing to images, java scripts, CSS, and other resources. Use of absolute URLs ensures that all resoures may still be accessed when content generated by the application is re-integrated with a difefrent page.
- Ability to use various access control methods - if applications generating content for the web portal were designed to use only a specific method of authentication and authorization, they will most likely not be able to participate in a single sign on (SSO) session maintained by the web portal system if it uses a different SSO method. The ability for the application to interface with various access control systems ensures smooth user experience in integrated mode with other applications;
- Re-integration capabilities - this is a feature, which becomes especially important in modern intranet and extranet implementations. For example, a particular web reporting server presents a list of last orders by customer and a web form displays customer properties such as name, address and contact information. This report and the web form are displayed on the CRM portal page which targets internal sales. If you can re-use the same web form and the same report in a different scenario, e.g. display the form on a customer executive dashboard, and display the report on an accounts receivable dashboard - each time integrated with different applications, which are relevant to different types of users, that means the form and the report possess re-integratiion capability.
The last position in the list, re-integration, is also important when creating virtual (or composite) applications from previously designed components. Web portal system, as a primary integration tool, assemble such virtual applications for targeted types of users; while the same components (e.g. report and web form in the example above) may be used simultaneously for different types of users in the context of various virtual applications.