views:

67

answers:

1
  • What things one should keep in mind while designing and developing Portals ?

  • What design considerations would change with different types of portals like information portal, content management portal, application centric portal, content centric portal, vertical enterprise portals and horizontal enterprise portals ?

+1  A: 

The biggest consideration I can think of is user management/control, as the security in an information portal is easier for a portal designed for use by one company, than for a horizontal enterprise portal, as you will have multiple companies involved, most likely.

But, the first problem to solve is to properly scope out whom will be using this portal, and what will it be doing. This is needed so you can start to determine architecture, which will include which language to use.

Also, are you using an off-the-shelf portal, such as one by MS, Oracle or a proprietary solution or an open source one, such as writing portlets in JBoss?

Once you have these questions answered then you will find that the odds the portal will have one use is unlikely, so a horizontal enterprise portal will most likely also be a content management system.

Design to be as flexible as possible, so each part should be decoupled, so you may use an ESB if you need to integrate multiple portals, for example, if the user information is in an LDAP and some information is in Sharepoint, and others are in something like Sakai (an education portal), otherwise there will be a lot of custom code just to pull from disparate systems.

By designing where the systems are decoupled then you can also adapt it to other situations, so, if the database layer is decoupled then you can easily switch between MySQL and Oracle by just swapping out the layer.

You may want to look at SOA, as, though you won't follow it completely, many of the concepts of having a distributed system will be useful, especially for the last two example portals you asked about. For example, if a CEO needs to get some information it may need to have a different QOS than if an intern needs some information.

It would be nice if you could narrow this question down a bit, as my answer is general for an incredibly general question.

James Black