Composite solutions can be divided into the following three types, as shown in Figure 1:
-
Simple
. Built using the out-of-the-box capabilities within
SharePoint. Many of these simple solutions require that the definition
of how to connect to the external system is already in existence. The
solution is built almost entirely using the ribbon in the browser or
Office applications.
-
Intermediate
. Built by power users, site owners, or business
analysts. Such users, termed “citizen developers” by Gartner, Inc., and
also known as consumer developers,
operate outside the scope of IT, work in the business domain, and can
use the What You See Is What You Get (WYSIWYG) tools to create new
business applications for consumption by others.
Citizen developers use a combination of technologies, such as Access
web apps, Microsoft InfoPath forms, business intelligence tools, Visio
diagrams, webpages, workflows, and integration into Office
applications, such as Outlook task panes or Microsoft Word documents.
Citizen developers know what they want to achieve, they understand
their business needs, and with a bit of SharePoint knowledge, they can
wire together the business processes or sets of tasks.
Intermediate solutions are more complex than simple solutions, and
they may involve the use of Office application macros or the
manipulation of XSLT using the code view of Microsoft SharePoint
Designer. Therefore, citizen developers may initially need some
training or help from the organization’s central SharePoint team,
particularly if they have never used SharePoint Designer, Access, or
Visio before.
Note
Gartner, Inc., reports that citizen developers will build at least 25 percent of new business applications by 2014 (www.gartner.com/it/page.jsp?id=1744514)
and warns that IT departments that fail to capitalize on the
opportunities that citizen development presents will find themselves
unable to respond to rapidly changing market forces and customer
preferences.
-
Advanced
. Built by the IT department and professional
developers, involving the development of reusable components to augment
simple and intermediate solutions or solutions that require a deep
knowledge of architectural concerns and a formal code, test, deploy,
and support management processes. Such reusable components could
include SharePoint Apps, .NET assembly connectors to connect,
aggregate, and transform data from external systems, custom web parts,
custom workflow actions that can be used from within SharePoint
Designer, and extensions to the browser UI. Many of these components
will necessitate the use of Visual Studio.
IT departments will need to differentiate between the types of
solutions that citizen developers can create and those that the IT
department should develop. When this identification process is
completed successfully, it should free up IT resources for more complex
problems.
Although many business users will have developed complex solutions
with such programs as Microsoft Excel that involve thousands of rows of
data, the simple and intermediate types of BCS solutions will be based
around forms or business processes. Many users in an organization may
not have the specific data skills to build solutions in Excel or
Access, but by taking advantage of their SharePoint skills, solutions
involving data from multiple external systems will be more invasive and
prolific in an organization.
The shift to citizen developers may be new to an organization and
may instigate a user adoption strategy as well as an education program.
This education program should be focused more on introducing and
managing the changes in the way the business will work going forward
rather than enhancing skill sets. Other organizations may assimilate
the use of SharePoint and its tools into their formal/informal
reengineering processes. The introduction of SharePoint and the use of
BCS to hook external data with SharePoint and Office applications
should not be seen by users as another task to complete in their
already busy day; rather, users should be encouraged to view the use of
these technologies as a new way of working so that they can accomplish
more in the same amount of time.
Many
of the most successful SharePoint solutions are built by the users who
use them: the citizen developers. The solutions are successful because
the citizen developers know what they want to achieve, they are using
the solutions as they develop them, and they can resolve any
problems—including issues that can be uncovered only by using the
solution. Citizen developers find that there is no need to provide
feedback to others or raise incidents with their organization’s help
desk. These citizen developers are probably very passionate about their
own SharePoint solutions. Therefore, when an organization encourages
citizen developers to instigate the business reengineering process, it
is more likely that other users in the organization will take to the
solution, as one of their own developed it and that person knew the
business requirements and experienced firsthand the issues of the
solution.
Key to the success of this paradigm shift is that organizations need
to take the citizen development strategy into consideration with any
development process. That is, any SharePoint-related development
project needs to add to the list of citizen developer tools, continuing
the SharePoint philosophy of self-service for users, content owners,
business owners, and site owners.