`
alanwu
  • 浏览: 200401 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

zzPortal: Select Application pattern

阅读更多

http://www.ibm.com/developerworks/patterns/portal/select-application-topology.html

 

Portal: Select Application pattern

Overview
After identifying the Business and Integration patterns that comprise the Portal composite pattern, the next step in planning an e-business application is to choose the Application pattern(s) that apply to the business drivers and objectives. An Application pattern shows the principal layout of the application, focusing on the shape of the application, the application logic, and the associated data.

The selection of an Application pattern is based on the selected Business patterns, Integration patterns, and Composite patterns. The Application patterns use logical tiers to illustrate various ways to configure the interaction between users, applications and data.

The building of each solution requires that specific business drivers be satisfied. There is a high probability that each solution will share characteristics with many of the Application patterns mentioned; however, the Application patterns available range from simple to more complex. Therefore, chose the simplest Application pattern that satisfies the requirements of your business objectives.

Each Application pattern has associated Business and IT drivers. The architect should review each of the Business and IT drivers with the associated Application pattern to determine the best fit for the requirements.

Recall the Business and Integration patterns identified earlier as the mandatory building blocks of the Portal composite pattern were:

  • Access Integration
  • Self-Service
  • Collaboration
  • Information Aggregation
  • Application Integration


The figure below shows the specific Application patterns that can be used to enable various types of functionality found in each Business and Integration pattern. Note that some of these Applications are mandatory (blue type) to a properly-functioning Portal, and some are optional (red type).

Portal application patterns
This figure differs slightly from the original redbook (SG24-6087) because the Dec 2004 re-engineering of the Information Aggregation and Data Integration patterns changed some of the Application pattern names.
Portal application patterns

Application patterns
Though a complete Portal solution requires multiple Application patterns, each Application pattern can be analyzed individually in terms of the functionality it brings to the overall solution, and the business and IT drivers it satisfies. Review the following Application patterns and select those for which you would like to see additional Runtime information.

Access Integration::Web Single Sign-On application pattern
Access Integration::Web Single Sign-On application pattern

The Web Single Sign-On application pattern (as part of the Access Integration pattern) provides a framework for seamless application access through unified authentication services.

Business and IT Drivers

  • Provide single sign on across multiple applications
  • Reduce Total Cost of Ownership (TCO)
  • Reduce user administration cost


The primary business driver for choosing this Application pattern is to provide seamless access to multiple applications with a single sign-on while continuing to protect the security of enterprise information and applications.

Simplification and increased efficiency of user profile management is the main IT driver for Single Sign-On.

Benefits

  • Users can access their application portfolio easily and securely
  • User profile information is centralized in a common directory, simplifying profile management and reducing costs
  • Application development cost is reduced by providing a standard security solution

Limitations
Many existing applications are not capable of accepting a standard set of user credentials as a substitute for local authentication. Integration with such systems can be difficult or even impossible.

The Portal composite pattern
A fundamental characteristic of a portal implementation is that of information aggregation. In order to enhance this experience for the user, a Single Sign-On (SSO) solution makes sense. This allows the user to more quickly access the information and avoid worrying about which application they are accessing. It also allows for easier maintainability by the organization sponsoring the portal.

Single Sign-On functionality requires more than just making sure that the applications that already exist in an enterprise support a central authentication capability. The existing processes must be changed to accommodate this new method of validating a user’s access capability. An analysis of the existing profiling mechanisms and overall security policies in a organization is the starting point for this type of effort.

For more information, please see the IBM Redpaper A Secure Portal Extended With Single Sign-On, REDP-3743.

Access Integration::Pervasive Device Access application pattern
Access Integration::Pervasive Device Access application pattern

The Access Integration pattern is used to provide consistent access to various applications using multiple device types. In order to provide pervasive device access to an existing Business pattern, the Pervasive Device Access application pattern adds a new tier to the architecture. This tier is responsible for the pervasive extensions to the original application. The function of this tier is to convert the HTML issued by the application presentation logic into a format appropriate for the pervasive device. In this way, the Pervasive Device Access application pattern provides a structure for extending the reach of individual applications from browsers and fat clients to pervasive devices such as PDAs and mobile phones.

Business and IT Drivers

  • Provide universal access to information and services
  • Time to Market
  • Reduce Total Cost of Ownership (TCO)


Striving to provide universal access to information and applications is often the primary business driver for choosing this Application pattern. The primary IT driver for choosing this Application pattern is to quickly extend the reach of applications to new device types without having to modify every individual application to enable its use by additional device types.

The Portal composite pattern
The Portal composite pattern supports the use of pervasive device access. In fact, "any type of device" access is supported through the use of templates in the pervasive access device tier. At this tier, the session data containing the type of device is known and the properly formatted content can be delivered. This formatted content can be transcoded in content management or datasource nodes, or it can be transcoded "dynamically" when requested by a specific type of client. This will depend on the frequency of updates to the data.

It is architecturally sound to separate the storage, management, and transcoding of content from the presentation of that content. This means that it is best to allow the content management system to reduce the requirements of the Web server tier to the output of this already formatted content.

Access Integration::Personalized Delivery application pattern
Access Integration::Personalized Delivery application pattern

The Access Integration::Personalized Delivery application pattern provides a framework for giving access to applications and information tailored to the interests and roles of a specific user or group. This Application pattern extends basic user management by collecting rich profile data that can be kept current up to the user’s current session. Data collected can be related to application, business, personal, interaction, or access device-specific preferences.

Business and IT Drivers
The primary business driver for choosing this Application pattern is to increase usability and improve the efficiency of Web applications by tailoring their presentation to the user’s role, interests, habits and/or preferences.

Benefits

  • Users’ interaction with the site is benefited because of increased perception of control and efficiency
  • Fine-grained control of users’ access to applications is enabled according to role and preferences by the enterprise
  • Improved user effectiveness is enabled by adapting the complexity and detail of content to a user’s skill level


Limitations
Personalized Delivery can be very complex and expensive to fully implement.

The Portal composite pattern
This Application pattern supports the separation of the business logic, business rules, and presentation. Each one of these has part of the responsibility for providing the personalized experience to the user of the portal. The application server handles business logic that implements the business rules meta-data contained in the personalization server node. Once presentation of the personalized data is required, the presentation server node will access the correctly formatted and/or aggregated data for display to the portal user.

Self-Service::Directly Integrated Single Channel application pattern
Self-Service::Directly Integrated Single Channel application pattern

The Directly Integrated Single Channel application pattern (from the Self-Service business pattern) provides a structure for applications that need one or more point-to-point connections with back-end applications but only need to focus on one delivery channel. This Application pattern can also be used to implement any one of the delivery channels.

Business and IT Drivers

  • Improve the organizational efficiency
  • Reduce the latency of business events
  • Leverage existing skills
  • Leverage legacy investment
  • Back end application integration


The primary business driver for choosing this Application pattern is to reduce the latency of business events by providing real-time access to back-end applications and data from Web applications.

The IT Driver for choosing this Application pattern is to leverage legacy investments and existing skills.

The Portal composite pattern
The Portal composite pattern is involved in the direct connection between the portal user and a back-end application (e.g. Lotus Sametime or CICS based application). Once the portal user is authenticated via the directory and security services node and the session level security in the application server node, the WPS Portlet API will pass authentication credential information to the back-end application or datasource. Once complete, the user will now have a direct connection to that application and the portal system will not generally broker the communication. This works in most implementations.

As shown in the figure below, the Directly Integrated Single Channel application pattern can be used in a variety of ways. For example, the portal application can be more than just green screen scraping with Host on Demand/Host Publisher portlet. The portal application can also be a collaboration portlet using collaboration services as well as a roll your own portlet for using Web services.

Directly Integrated Single Channel application pattern

Collaboration::Store and Retrieve application pattern
Collaboration::Store and Retrieve application pattern

The Store and Retrieve application pattern (as part of the Collaboration business pattern) allows users to collaborate with others on the network interactively. Unlike the Point-to-Point application pattern, this pattern does not require both partners to be online at the same time. It also does not require the client to know the physical or direct address of other users of the solution.

A common implementation of this pattern is content management. Content Management allows two or more users to interact on a single piece "content" (e.g. images, text, other data, etc.) via the content management mechanism.

Business and IT Drivers

  • Time to market
  • Improve the organizational efficiency
  • Reduce the latency of business events
  • Easy to adapt during mergers and acquisitions
  • Require deferred collaboration
  • Many users
  • Leverage existing skills
  • Network addressing independence
  • Managed service
  • Maintainability


Guidelines for use
This Application pattern should be used when:

  • The physical or direct addresses of other clients on the network are not known
  • The pattern can support both synchronous and asynchronous communication. This provides ability to support a wide range of solutions from bulletin boards and workrooms to interactive chat rooms
  • A server can be set up that will allow multiple clients to log in and share information with other users by posting messages on (or sending e-mail to) the server for later retrieval


Benefits

  • This Application pattern is simple to implement
  • Since this Application pattern does not require that a client know the direct address of the destination, it is ideal for solutions where the network addresses are not published or where these addresses change frequently
  • Most of the functions of this pattern can be implemented using commercially available collaboration solutions
  • This pattern requires very minimal custom code and is cost effective to maintain


Limitations

  • This pattern calls for the implementation of server software and associated hardware to support new users. This means that this will add to the overall complexity of the solution
  • The nature and type of collaboration supported by this pattern are simplistic. For more complex communications, later Application patterns are more appropriate


The Portal composite pattern
The Portal composite pattern supports this through the use of the content management and collaboration nodes. Content Management can provide asynchronous collaboration on content assets or documents and the collaboration can be in the form of threaded discussion forums or teamrooms where information is shared in a common space.

Collaboration::Directed Collaboration application pattern
Collaboration::Directed Collaboration application pattern

The Collaboration::Directed Collaboration application pattern allows users to collaborate with others on the network interactively. This Application pattern requires the two interacting users to be online simultaneously. It also requires users to register with a server. In this pattern all of the users are peers and there are no client-server or master-slave relationships between the tiers in the pattern.

Business and IT Drivers

  • Time to market
  • Improve organizational efficiency
  • Reduce the latency of business events
  • Easy to adapt during mergers and acquisitions
  • Require instantaneous collaboration
  • Many users
  • Leverage existing skills
  • Network addressing independence
  • Managed service
  • Maintainability
  • Complex data types
  • Significant network bandwidth


This approach can be used to quickly establish collaboration between users of a solution without having to go through the process of developing a lot of custom code. It allows users to simultaneously and interactively modify shared applications and data.

This pattern requires all the users to register with the server. The user’s profile, preferences and security privileges are stored on a server directory. This means that the client does not need to know the physical or direct address of other clients. It also allows us to implement different security levels, and implement more complex collaboration styles that include sharing applications and complex data types.

This is the ideal Application pattern to choose if the current focus is to establish synchronous sophisticated collaboration functions within a solution. This solution is also applicable when the clients have permanent and preferably high-speed network connections. The solution is also cost-effective to develop because many of these functions are available in off-the-shelf products.

This pattern is not a good fit for solutions where there are limitations on the processing power of the clients.

The Portal composite pattern
Collaboration in the case of the Portal composite pattern is usually enabled through this type of collaboration. It is generally in the form of instant messaging because communication is essentially a brokered real-time interaction.

Information Aggregation::User Information Access application pattern
Information Aggregation::User Information Access application pattern

Business and IT Drivers

  • Require specialized derived data (e.g. subset, point in time, correlated datat, targeted to user group etc)
  • Distil meaningful information from a vast amount of sructured and unstructured data
  • Require R/O access to derived or aggregated data allowing data manipulation under user control
  • Require option to drill through source data
  • Require reliable, extended availability of the data
  • Optimized for future access performance
  • Require protection of operational system performance


Benefits
The use of read-only data provides for maximum consistency in a multi-user analysis or reporting environment.

Limitations
As mentioned, the vast majority of access to data in the UIA pattern is read-only. However, this is really a convention, since UIA products and the data access methods they use are fully open to read/write access as well. As shown in the figure above, read/write access, when allowed, should be against data sources that are not owned or managed by applications. This reduces the risk to data integrity somewhat, but does not eliminate it entirely, depending on how the data source is maintained.

The Portal composite pattern
The Portal composite pattern supports this through the use of the Search & Indexing node. For more information on this application pattern, please see the IBM Redbook Patterns: Information Aggregation and Data Integration with DB2 Information Integrator, SG24-7101.

Application Integration::Population application pattern
Application Integration::Population application pattern

The Application Integration::Population application pattern structures the population of a data-store with data that requires minimal transformation and restructuring. The Population application pattern is a preparatory step and is not documented to the Runtime pattern level for the Portal composite pattern.

Business and IT Drivers

  • Improve organizational efficiency
  • Reduce the latency of business events
  • Distill meaningful information from a vast amount of structure data
  • Minimize total cost of ownership (TCO)
  • Promote consistency of Operational Data
  • Maintainability


The primary business driver for choosing Population is to copy data from the source data store to a target data store with minimal transformation. The main reason for creating a copy of the data is to avoid manipulating the primary source of a company’s operational data often maintained by Operational Systems.

The Portal composite pattern
The Portal composite pattern supports this no-transformation population through a centralized database server. However, in many installations, data will be transformed before reaching its final destination (e.g. database or file system for serving to the web).

For more information on this application pattern, please see the IBM Redbook Patterns: Information Aggregation and Data Integration with DB2 Information Integrator, SG24-7101.

Application Integration::Population=Multi Step application pattern
Application Integration::Population=Multi Step application pattern

The Information Aggregation::Population=Multi Step application pattern structures the population of a data-store with structured data that requires extensive reconciliation, transformation, and restructuring.

Business and IT Drivers

  • Improve organizational efficiency
  • Reduce the latency of business events
  • Distill meaningful information from vast amounts of structured data
  • Extensive reconciliation, transformation, and restructuring of structured data
  • Minimize total cost of ownership (TCO)
  • Promote consistency of Operational Data
  • Maintainability


The primary business driver for choosing Population=Multi Step is to reconcile data from multiple data sources and to transform and restructure it extensively to enable efficient access to information.

This Application pattern is best suited for the aggregation and distillation of meaningful information from structured data.

Benefits
This is the ideal architecture when the complex transformation of structured data between the source and target data store is required.

Limitations
Reconciling data from multiple sources is often a complex undertaking and requires a considerable amount of effort, time, and resources. This is especially true when different systems use different semantics.

The Portal composite pattern
The Portal composite pattern supports the iterative transformation of data. This data transformation can take place in the datasource tier, in the content management node, in the presentation server node, or at the application server node (although this is not a suggested route). This pattern supports all of these options.

Application Integration::Population=Multi Step Gather application pattern
>Application Integration::Population=Multi Step Gather application pattern

The Data Integration::Population=Multi Step Gather application pattern provides a structure for applications that retrieve and parse documents and create an index of relevant documents that match a specified selection criteria. This design is actually a specific instance of the Population application pattern described above. In practice, this design may also extend the Population=Multi Step application pattern, when transformation of data is required. In either case, the crawling and discovery mechanisms of this design aggregate a set of unstructured data. This pattern is also useful for solutions where there is a need to discovery content expertise within the organization.

The Population=Multi Step Gather application pattern is a preparatory step and is not documented to the Runtime pattern level for the Portal composite pattern.

Business and IT Drivers

  • Improve organizational efficiency
  • Reduce the latency of business events
  • Provide easier access to vast amounts of unstructured data through indexing and categorization
  • Reduce information overload
  • Identify the experts for collaboration to improve decision cycle times
  • Reduce knowledge loss from personnel turnover
  • Help new employees to reduce the learning curve
  • Minimize total cost of ownership
  • Promote consistency of Operational Data
  • Maintainability


The primary business driver for choosing Population=Multi Step Gather is to select relevant documents from a vast set of documents based on specified selection criteria. The objective is to provide quick access to useful information instead of bombarding the user with too much information.

Search engines that crawl the World Wide Web implement this Application pattern. It is best suited for selecting useful information from a huge collection of unstructured text data. A variation of this Application pattern can be used for working with other forms of unstructured data such as images, audio, and video files.

The Portal composite pattern
In any portal implementation, the ability to locate data and information as it is updated in the system is vital. The whole value proposition depends, in part, on a portal user’s ability to locate the information they need. The Portal composite pattern supports this through the Search and Indexing node. This represents both the ability to "free-text" search or navigate the content (but only that content that should be available to the user) and to index the content as it is updated.

 

分享到:
评论

相关推荐

    SpringMVC中form:select的使用

    本文将深入探讨`form:select`的使用方法,以及其背后的原理和相关知识点。 首先,`form:select`是Spring Web MVC提供的JSP标签库`spring-form.tld`的一部分,这个库是用来帮助开发者构建基于模型绑定的Web表单的。...

    <html:select>: 选择默认值

    ### `&lt;html:select&gt;`:选择默认值 在Web开发中,`&lt;html:select&gt;`标签是一种常用的表单元素,用于创建下拉列表。这个标签属于Struts标签库的一部分,Struts是一个基于MVC(Model-View-Controller)设计模式的Java ...

    jsp中htmlselect标签的用法

    &lt;html:select property="beanProperty"&gt; &lt;html:options collection="collectionName" property="valueProp" labelProperty="labelProp"/&gt; &lt;/html:select&gt; ``` - `property="beanProperty"`: 指定ActionForm或Bean...

    struts2标签实例(s:textfield、s:select) + spring

    这个是自己试验的实例,不多,只有s:textfield和s:select。里面有注释,页面、xml和action里的注释序号都是相互对应的。jar都在,直接去掉注释就可以运行。我用的开发环境是jdk5和myeclipes5

    jsp 开发之struts2中s:select标签的使用

    本篇文章将详细介绍在Struts2中如何使用`s:select`标签,以及通过几个具体例子来展示其用法。 1. 第一个例子: ```jsp &lt;s:select list="{'aa','bb','cc'}" theme="simple" headerKey="00" headerValue="00"&gt;&lt;/s:...

    UCenter info: MySQL Query Error SQL:SELECT value FROM [Table]vars WHERE noteexists

    SQL:SELECT value FROM [Table]vars WHERE name=’noteexists2′ UCenter info: MySQL Query Error SQL:SELECT value FROM [Table]vars WHERE name=’noteexists2′ Error:SELECT command denied to user ‘数据库...

    数据库应用(SQL Server):11 操作符和函数.ppt

    * Pattern (模式):用于指定匹配的模式,例如:SELECT 'abc' LIKE 'abc'; * % (百分号):用于匹配任意个字符,例如:SELECT 'abc' LIKE 'a%'; * _ (下划线):用于匹配一个字符,例如:SELECT 'abc' LIKE '_b_'; 本...

    select各种效果:select带搜索框 多个option项目选择

    随着现代Web应用的需求日益复杂,传统的`&lt;select&gt;`元素已经不能满足所有需求。因此,开发者开始寻找方法来增强其功能,比如添加搜索框以及支持多个option项目的选取。 **1. 带搜索框的Select** 在大型数据集或选项...

    SQLServer和Oracle常用函数对比

     S:select abs(-1) value  O:select abs(-1) value from dual  2.取整(大)  S:select ceiling(-1.001) value  O:select ceil(-1.001) value from dual  3.取整(小)  S:select floor(-1.001) value ...

    sqlserver数据库常用语句基本涵盖日常所需,带中文解释说明

    选择:select * from table1 where 范围 插入:insert into table1(field1,field2) values(value1,value2) 删除:delete from table1 where 范围 更新:update table1 set field1=value1 where 范围 查找:select * ...

    juqeryplugin:selectBox,仿能输入的下拉框,能搜索,自动完成,转换原生下拉框

    **jQuery Plugin: SelectBox - 一个可搜索、自动完成的下拉框** 在网页开发中,下拉框(Select Box)是一种常见的用户交互元素,用于提供一组预设选项供用户选择。然而,原生的HTML `&lt;select&gt;` 元素功能相对有限,...

    Oracle数据库Sql语句详解大全.pptx

    本资源总结了 Oracle 数据库中 SQL 语句的详解大全,涵盖了 SELECT 查询、条件查询、运算符、空值处理、列别名、去重复行等多方面的知识点。 一、SELECT 查询 * 基本语法:SELECT 列名 &gt; FROM 表名 &gt; * 查询所有列...

    使用c:forEach模拟s:select标签

    这是一份让你可以理解JavaWeb开发中如何使用struts2对下拉列表数据初始化,对于初学Struts2的同学是非常不错的入门代码实例,并且有助于理解struts里的select标签与c:forEach标签之间的关系。

    SQL2008表达式:是常量、变量、列或函数等运算符的任意组合

    CHARINDEX函数:select charindex('ab','BCabTabD') 返回 3 DIFFERENCE函数:select difference('Green','Greene') 返回 4 LEFT函数:select left('abcdefg',2) 返回 ab RIGHT函数:select right('abcdefg',2) ...

    SQLite3 轻量级数据库及SQL语法指导

    选择查询: select 字段(以”,”隔开) from 表名 where 条件; 日期和时间: Select datetime('now') 日期: select date('now'); 时间: select time('now'); 总数:select count(*) from table1; 求和:select sum...

    sql基础语句总结-本人自己总结的-非常适合初学者

    本文总结了 SQL 的基础语句,包括 SELECT、DISTINCT、WHERE、AND、OR、IN、BETWEEN、LIKE、ORDER BY、函数、GROUP BY、HAVING 和内部连接等。这些语句是 SQL 的基础知识,掌握这些语句可以帮助您更好地管理和分析...

    db2函数大全,使用方法

    SELECT AVG(SALARY) FROM BSEMPMS; 2. CORR() 函数 CORR() 函数用于计算一对数值的关系系数。例如: SELECT CORRELATION(SALARY, BONUS) FROM BSEMPMS; 3. COUNT() 函数 COUNT() 函数用于计算一组行或值的个数。...

    DB2常用命令列表,DB2常用命令列表

    20. 强迫应用程序断开:FORCE APPLICATION命令用于强迫应用程序断开,例如:kill application FORCE APPLICATION(0); db2 force applications all (强迫所有应用程序从数据库断开)。 21. 锁定表:lock table命令...

    db2常用函数

    示例:SELECT COUNT(*) FROM EMPLOYEE; 2. AVG() 函数:返回一组数值的平均值。 示例:SELECT AVG(SALARY) FROM EMPLOYEE; 3. MAX() 函数:返回一组数值中的最大值。 示例:SELECT MAX(SALARY) FROM EMPLOYEE; ...

Global site tag (gtag.js) - Google Analytics