News Desk
Foundations for Building Enterprise Social Networks
Connecting people and information together
Feb. 21, 2008 04:00 AM
Digg This!
Page 2 of 4
« previous page
next page »
Key Social Network Enablers
Building a social network requires technologies to create and share information and discover experts. These technologies range from simple tools for users to collaborate and share information to capabilities that help track progress toward specific goals and measure success.
Pages
In a Web 2.0 era, pages are arguably the most important way to share information. Therefore, composing pages must be intuitive, simple, collaborative, and expressive. Wikis are a good start and provide the foundation for collaboration, but they don't go far enough. A more complete list of the necessary capabilities includes:
• Rich and yet extensible set of available resources. Call them widgets, gadgets, portlets, whatever you like, but in order to express knowledge, the right components need to be available for users to compose their pages. Unfortunately, system designers can never anticipate all the user needs nor do they have the time or resources to build out every single component. In addition, these pages need to include information from throughout the enterprise, as well as across the Internet. In this case, there are key standards to consider for the page model. They include JSR-168 and WSRP. Both of these standards are familiar in the portal market space but are critical when one considers models for easily plugging new components into an existing set of pages. Therefore, any solution capable of fulfilling the needs of enterprises must support these basic standards.
• In-place rich text editing, including the ability to change styles and themes. Users need a collaborative way of sharing information that isn't dependent on passing around the "right" version of a specific document. Whether it is the entire page that will simply be a text document or a section of the page that requires text, creating a rich text page should be as simple as creating a wiki page, and adding rich text to an existing page should be extremely simple. Every person and every team wants their information and ideas to be presented and appear as clear and professional as possible. However, not everyone has the eye or skills to make their pages look as if an expert designer created the page. Including design styles and themes that can be applied quickly and easily to existing pages will encourage users by making their ideas stand out from all the rest. In this area, JSF provides the key underlying technology called Skins, which allow for these professional styles to be defined by more than just color schemes. Skins can include layouts, look and feel, and basic navigation. JSF Skins combined with some of the other technologies described below are key to providing a much more adaptive user interface.
• Sharing pages with those you want and keeping them private from those you don't. Outside of a well-defined membership space, the common usage pattern is for all pages to be available to everyone. But, for the times where a limited set of users should be the only ones with access to certain information, a user must have the ability to define who has the right to view specific content. Leveraging JavaServer Faces (JSF), the page model enables the application to keep these permissions separate from the rest of the application logic. In addition, JSF provides both the application code and a description about the application. In this way, JSF establishes the foundation for how customizations and personalizations will be saved, accessed, and presented in the context of the application. There is a more detailed description of customizations below.
• Users have high expectations for the way they interact with these new Web 2.0 applications. They expect all the bells and whistles that are available on the public Internet including capabilities such as drag-and-drop component arrangement; dynamic layout changes; in-place component editing without leaving the page; component minimize, maximize, expand and collapse; and partial page refresh of enterprise data. The Apache Foundation started the Trinidad project to enable these AJAX-based controls to foster the open source community to deliver these types of components.
• In order to make everything on the page relevant to a particular user or task enabling in-context viewing, users want to be able to mashup these components. They also want to combine enterprise information with Internet services. The key standards here are WSRP 2.0 and JSR-286 along with de facto standards like Google gadgets and Web services. They allow one component to pass context to another. The challenge here is that there is no transactional integrity across these two components. JSR-301 provides a key concept of exposing JSF fragments as portlets, so developers can build their JSF applications as they normally would and then expose a portion of the application as a portlet. This also provides developers with a single place to manage their applications and portlets rather than managing two projects: one for the application and one for creating portlets.
• Tailoring a page or application so that it works for every department or line of business is a must. Page customization, common to the portal world, is a very important technology for the enterprise. Allowing each user to modify the page is commonly referred to as personalization. Having an infrastructure that can handle all these customizations and personalizations requires a core service to manage and retrieve all this metadata. More important, these customizations should be easy to change once the application has been deployed. Figure 1 shows how all of these customizations and personalizations get layered to present an application to the user. As mentioned before, JSF provides a description of the application and then key technologies are required to save these customizations as layers. This is required so that when version 2 of the application is deployed, these layered customizations can be added on top of the new version without being lost. Developers require a set of JSF components that have this customization architecture built-in to minimize the complexity of leveraging such a powerful solution.
Documents
This is a broad category with all documents including PDF, PowerPoint, and Word along with files such as images and video. Many organizations have a standard deployment for document management or enterprise content management. Documents are an enabler to social networks when they are shared, thus the sharing and publishing capabilities of the content management system are extremely important. Several key feature considerations include:
- Simple sharing model to easily grant access to everyone including specific users or groups
- Search integration to categorize and quickly find relevant documents is essential
- Rich publishing components with expiration and approval capabilities built in
- Versioning of content so that changes can be tracked for regulatory and compliance reasons
- Large volume storage and retrieval as everyone in the organization will need access
- Document sealing so that only privileged users can gain access and read the content
- Policies and business rules for archival and storage of documents
- Easy authoring of documents similar to the previous description of wiki pages
To be able to write one application but integrate any corporate standard for content management like Oracle, Documentum, or SharePoint, Java Content Repository (JCR) 1.0 is key to insulating the developer and user from the back-end system. Leveraging another key standard, JSR-227, insulates the developer from having to connect the user interface to this back-end JCR standard.
Discussions
Quite obviously, organizations need a place where users can share ideas and refine their thoughts with others' input. Discussions provide a mechanism to keep their thoughts and feedback organized. Many users today see e-mail as the system to easily carry on discussions. This is why online discussions need tight integration with e-mail to help manage these ad-hoc conversations in a threaded or related way. In addition to e-mail, there are a set of Web services that allow developers to integrate threaded discussions directly into their applications.
Page 2 of 4
« previous page
next page »
About James OwenJames Owen is a senior group product manager with Oracle WebCenter, responsible for page composition, social networking and content management technologies. He has been a featured speaker at industry conferences such as JavaOne, holds several patents in the content management space and was an active participant in the JSR-170 expert group.
About Vince CasarezOver the past 12 years, Vince has held many key positions at Oracle. Currently, he is Vice President of Product Management for WebCenter, Portal, and Reports. He also has responsibility for managing the WebCenter development team handling the Web 2.0 services. Prior to this, he focused on hosted portal development and operations which included Oracle Portal Online for external customers, Portal Center for building a portal community, and My Oracle for the employee intranet. Previously, he was Vice President of Tools Marketing handling all tools products including development tools and business intelligence tools. Prior to running Tools Marketing, he was Director of Product Management for Oracle's JDeveloper. Before joining Oracle, Vince spent 7 years at Borland International where he was group product manager of Paradox for Windows and dBASE for Windows.