Testing Enterprise 2.0: Are You Ready?

[article]
Member Submitted
Summary:

It may take a while before enterprises change their mindset, make use of Enterprise 2.0 technologies, and adapt to social ways of doing business. Until then, what are the implications for testing Enterprise 2.0?

Social enterprise computing (or Enterprise 2.0) is evolving fast and is slated to have considerable impact on the way large enterprises will run businesses in the future. But this is old news. The focus now is whether the existing enterprises are prepared to adopt the emerging technologies, and more importantly, have the mindset for adoption and going beyond rhetoric. It may take a while before enterprises change their mindset, make use of Enterprise 2.0 technologies and adapt to social ways of doing business. What, till then, are the implications for testing Enterprise 2.0?

Understanding Enterprise 2.0
The term, Enterprise 2.0, has been in existence for quite sometime now and can simply be depicted as a ‘Web 2.0 enabled for Enterprise’. Harvard Business School Professor Andrew McAfee coined the term "Enterprise 2.0" in 2006 and describes it as -

"Use of emergent social software platforms within companies, or between companies and their partners or customers"

Arguably, technology for social software platforms is older than web itself, considering examples like Usenet, but we are noticing its widespread use only recently. Enterprise 2.0 represents a social business model for corporate functions such as customer relationship management, operations, marketing, general collaboration and communication and other similar business functions. Blogs, Wikis and other social computing tools have been in wide-spread existence for a while; still not being used for critical business functions or revenue impacting applications, at least not yet. Enterprise 2.0 generally describes the class of tools. It, in itself, makes use of social environments to capture and collaborate knowledge in a searchable and re-usable way. Typically the tools are highly social (though not always have to be). Enterprise 2.0 is generally applied in business context to three types of participants – employees or workers, business partners and customers. Let’s take an example of social CRM – Organization could implement an open forum where customers can communicate their issues (customer support) or wishes (enhancements) and workers and business partners can openly delve into these issues. Whatever is the chosen method or tool, the key is that everyone in the conversation can contribute in a collaborative fashion.

Enterprise 2.0, based on Web 2.0 principles, has the potential to transform, not only peer-to-peer collaboration but also various other types and combinations of business-to-consumer (B2C), business-to-business (B2B), Consumer-to-consumer (C2C), business-to-government etc., collaborations and commerce.

Tenets For Testing Enterprise 2.0
The image below depicts the principle tenets of Web 2.0 and in turn Enterprise 2.0. There are subtle differences in the context in which both – Enterprise 2.0 and Web 2.0 operate, but the value dimensions are equally applicable to both. Each dimension opens up opportunities as well as concerns. Security, loss of control of information flow, information reliability–are some of the Enterprise 2.0 implementation risks perceived by organizations. Testing functions, within the organization, need to take an objective and balanced view for de-risking the perceived concerns and implement a strategy in tune with the specific characteristics of these principles.

Source –Web 2.0 Research, Infosys SETLabs

Figure 1Rich User Interfaces And Collective Intelligence
The fundamental tenet of Web 2.0 principle is providing intuitive user experience to facilitate collective intelligence –to share, access, and consume information and knowledge. The primary backbone of Enterprise 2.0 implementations is the web based applications whose behavioral characteristics are similar to that of desktop applications. The traditional ways of testing web based applications will still prevail. Web interfaces will be rich in UI but will not change the way functional testing is carried out to validate the information flows and business functionality offered. Use of enterprise automation tools, implementing model based testing techniques can accelerate the testing efforts.

Compliance and regulatory aspects–One of the important considerations for Enterprise 2.0 is the compliance to local-foreign laws, rules and regulations. With increasing end-user controlled information flow, any user can easily disseminate sensitive information across an entire organization, or even across the world. Compliance testing will play a major role especially for public companies and regulated industries.

Network As A Platform
With world becoming flatter, a user base can come from any part of the world. Though HTML and similar web UI content rendering technologies remain the same, different browser combinations tend to differ while rendering the content. Add to that the new age mobile computing devices capable of running internet based applications. Mobile and wireless computing is

Collaboration
With Enterprise 2.0, there is a shift from centrally managed collaboration towards end-user managed collaboration. The end-user collaboration centric applications will need to be more secure and restricted with various user roles and access privileges with user traffic going to various tools. A single sign-on across the apps for users, giving them centralized administration and control of user identity on various channels and social media may become the basic necessity. Open standard such as OpenID may become a vehicle to implement single sign-on. Security testing needs to consider these aspects and adopt relevant authentication-authorization and penetration testing strategies.

The amount of information shared by participants in the network and the number of participants itself, both these can increase exponentially. Performance testing will need to consider for a user base spread across organizations and geographies, increasing volume of information generated by collective collaboration and ability to capture rendering time on rich application interfaces (and not only server response times).

Modularity
Application integration is organic in Web 2.0 or in consumer web where application provider (for example – Facebook) defines interface using which other apps can integrate to. There is more stress on usage of smaller modular constituents that makes up the larger part. In the Enterprise space, application integration is more complex and impacts all layers of the system (presentation, logic and data). Integration testing needs to take into account the modularity of components, architectural blue-prints, and validate cross-application integration and usage.

Open Standards
At a technical implementation level, Enterprise 2.0 includes various technologies and there are no de-facto standards yet. On the surface it may use rich UI interfaces that will bring in platform and technology independence (e.g. Ajax) or use specific vendor driven technologies and may implement Service Oriented Architecture (SOA) under the hood. Enterprise 2.0 will be a heterogeneous combination of technologies and architectures. Techniques such as SOA testing can help streamline the overall testing effort in the long run by taking a non-traditional approach.

The Bottom Line
Customers are captivated by capabilities offered by social computing principles and will not accept anything less than what they are getting used to. The option of not adopting social or collaborative computing just doesn't exist. Enterprise 2.0 is no different than what we already see around us today. Existing set of testing methodologies and tools can readily be leveraged, as long as we acknowledge the subtle differences that exist and are ready to tweak our testing strategy accordingly.

About the author

CMCrossroads is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.