Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Wp Beyond The Thin Client On Erp
1. W H I T E
P A P E R
Beyond the Thin Client
Why a Smart Client ERP Solution May Be a Smarter Choice
Executive Summary
Over the last decade, browser-based “thin
client” applications have come to dominate
the enterprise application space due to
their ease of deployment, updating, and
administration. However, while thin client
applications address IT deployment issues,
they typically fail to meet end-user expectations in terms of robustness, performance,
and usability. Given that user adoption is critical to the success of enterprise resource
planning (ERP) projects, today's organizations must place high importance on the
user experience in selecting an ERP solution. So what are your alternatives if your
organization wants an ERP application that is not only easy to deploy and access,
but also creates a rich user experience?
This white paper compares and contrasts the two primary alternatives to thin clients—
enhanced thin clients that use technologies such as ActiveX, AJAX, and ASP.NET and
the new generation of “smart clients”—and examines the differentiating characteristics
that could impact your ERP implementation. It concludes that a smart client ERP
application is a better solution for most enterprise users, based on performance,
usability, total cost of ownership, security, and ease of integration.
2. Introduction Finding a Better Alternative
Today’s IT organizations are under pressure to deliver IT professionals have faced a major challenge in realizing
robust, usable, and efficient business applications that the benefits older Windows-based applications offered
meet the increasing expectations of business users and over thin clients, without adding the complexities and the
executives who need contextual access to business high management costs that were associated with these
data and tools to help them stay competitive. These traditional “rich clients.” To address the shortcomings of
applications must also be flexible enough to enable the both thin clients and the previous generation of Windows
company to adapt to ever-changing market conditions rich (client/server–based) clients, companies have been
and demands. looking at two main alternatives:
Over the last decade, browser-
based “thin client” applications • Thin clients that have been enhanced with the use of
Users now expect faster and more technologies such as ActiveX, AJAX, and ASP.NET to
have come to dominate
responsive applications that enable mimic a richer user interface (hereafter referred to as
the enterprise application
them to perform their daily work in a space due to their ease of "enhanced thin clients")
flexible and efficient manner that is deployment, updating, and • Smart clients, which promise to take full advantage of
not always possible with thin client administration. the rich client model, providing a rich user experience,
applications while at the same time reaping the benefits of thin
However, while thin client
clients
applications address IT
deployment issues, they typically fail to meet end-user
expectations in terms of robustness, performance, and
usability. Users now expect faster and more
responsive applications that enable them to perform
their daily work in a flexible and efficient manner that is
not always possible given the inherent limitations of thin
clients. Add these factors together and it becomes clear
that a new category of client application is required to
meet expanding business-user needs.
Given that user adoption is critical to the success of
enterprise resource planning (ERP) projects, today's
organizations must place high importance on the user
experience in selecting an ERP solution. So what are your
alternatives if your organization wants an ERP application
that is not only easy to deploy and access, but also
Since both of these clients are superior to pure thin
creates a rich user experience?
clients, this white paper will focus not on thin clients but
This white paper compares and contrasts the two primary on the differences between these two main alternatives.
alternatives to thin clients—enhanced thin clients that use
Enhanced thin clients typically use AJAX, ActiveX, or ASP.
technologies such as ActiveX, AJAX, and ASP.NET and
NET technologies to expand the capabilities of traditional
the new generation of “smart clients”—and examines the
thin clients. These technologies allow developers to create
differentiating characteristics that could impact your ERP
more dynamic, responsive applications for web delivery
implementation.
while retaining advantages such as the ability to leverage
the internet and provide easy remote access to data.
A smart client is a .NET technology for building rich
internet applications that provide users with a highly
interactive user interface. Smart clients aim to provide “the
best of both worlds” and bridge the gap between web
and desktop applications by adding the intelligence to
manage data and connectivity to produce a superior user
experience. While smart clients provide the benefits of a
rich client model with thin client manageability, they also
provide more flexibility and capabilities than traditional rich
client applications.
CDC Software | Key Drivers of ERP System Adoption in the Pharmaceutical Industry 1
3. These two client technologies, smart clients and multi-threading, which drastically increases performance
enhanced thin clients, are both necessary technologies; by allowing different tasks to occur simultaneously. In
they do not replace each other so much as provide addition, smart clients can perform well in low-bandwidth
companies with a greater range of options. When looking and high-latency environments because they take
to choose the right enterprise applications, especially criti- advantage of client-side caching, whereas thin clients
cal department-spanning applications such as enterprise are seriously compromised by bandwidth limitations and
resource planning (ERP) systems, a company must latency.
examine the characteristics of the underlying client
technologies and determine which option best suits their Smart clients minimize server round-trips by enforcing
requirements and target users’ profile. Companies should certain logic on the client side and maintaining user
evaluate clients comprehensively, examining the impact of interface (UI) definitions locally. This results in substantially
an application’s client on performance, usability, deploy- better performance than thin clients, which download
ment and maintenance, ease of integration, security, every screen with each click or have to go back and forth
total cost of ownership, and to the server for each and every request.
more. What follows is a com-
The key success factors of any ERP Unlike AJAX-based clients, smart clients load the
parison of the two core client
project are Usability, Interoperability appropriate net data when they load a form. This means
alternatives to assist business
and Performance that users don’t have to wait to retrieve data each time
decision-makers in evaluating
they navigate from one tab to another tab within the same
their options.
form.
Performance These factors combine to give smart clients the clear
Application performance is typically—and most advantage when it comes to application performance.
practically—determined by measuring how quickly a user Smart client application users enjoy a faster, more respon-
can complete an end-to-end business task. This measure- sive usage experience.
ment depends on two factors:
In the context of ERP, where the application is being used
1. How quickly the user can retrieve data and access to call up important customer data in time-sensitive con-
functionality over a local or wide area network (for texts, such as during a service call, this responsiveness is
example, how long it takes to open a form) critical to delivering a high-quality customer experience.
2. How quickly they can complete the business task Usability and User Interface
once they are in the application and the information is
One of the key success factors of any ERP project is
retrieved.
usability. ERP is a back-end application, where users
Factors that affect the first point include bandwidth, are forced to use the system or they can’t do their jobs.
latency, server round trips, compression, and perfor- Likewise, the value of the system is directly correlated to
mance optimization. Factors that affect the second point the extent to which it is used and integrated into every
are screen design, navigation design in relation to the front-office activity.
business context, number of clicks required to complete
To improve user’s productivity and make their life easier,
the task, ability to multi-task, availability and presentation
companies must make sure that usability, flexibility, per-
of information, number of applications the user has to
formance, and multiple access methods are among their
access to complete the task, and so on.
top priorities in selecting an ERP application, in addition
Smart clients can take advantage of local resources (CPU, to ensuring the right functionality and manageability. They
hard disk, peripherals, etc.) to do work at the local level— must also ensure that the system is flexible enough to
on the user’s computer. Given the power of workstation mirror their processes, rather than forcing them to adapt
and notebook hardware that has been available for the their processes to the system.
past few years, users will therefore usually experience
Heavily weighted factors in ERP usability include
greater responsiveness and performance from a smart
performance, ease of use, tight integration with Microsoft
client application. In contrast, thin clients generally do not
Office, quick access to data and functionality, access
access local resources, and if they do, it is through an
from anywhere (offline/online/home/mobile), integration
extra layer, such as COM, which requires information to
with other applications, and minimized clicks. Evaluators
be passed back and forth to the central server.
should also look for the best use of screen design and
Smart clients can not only take advantage of the local navigation to optimize screen real estate for presenting
CPU, but they also have the advantage of permitting data and functionality, as well to create an appealing,
familiar, and comfortable interface for end users.
CDC Software | Key Drivers of ERP System Adoption in the Pharmaceutical Industry 2
4. Unfortunately, for most business users, browsers are Smart client solutions can be composed of functionality
slow and cumbersome to navigate, and toggling between from more than one client application, with each applica-
screens is painful, putting even enhanced thin clients at a tion collaborating with the others to provide just the right
disadvantage. In addition, the individual browser specifies functionality to the user. Such "composite" applications
the limits of what can be accomplished graphically in the can integrate client-side software resources into a
user interface, which limits a company’s ability to tailor coherent solution or extend the functionality of an existing
and streamline the interface and make it more user- application to provide smart client features.
friendly.
Additional usability advantages of smart clients over
When business users are enhanced thin clients include the ability to update data
expected to do the major-
With Microsoft ClickOnce in certain sections of the application without having to
ity of their daily work in an
technology, smart clients match and refresh the entire display, as well as the ability to use
application—as is the case
even exceed thin clients in ease of keyboard-driven shortcuts. Furthermore, smart clients can
with enterprise resource
deployment and maintenance gracefully switch between connected and disconnected
planning applications, where
all customer interactions are states, rather than losing data and work when a connec-
expected to be recorded in tion drops.
the ERP system—usability and the user interface simply
As is evident from the discussion above, several key
cannot be thought of as secondary considerations: they
user interface and usability requirements are difficult for
can have a significant impact on the utility of the system
browser-based applications to handle. While individually
to its users and the speed with which they can complete
business tasks, not to mention whether they embrace they may seem minor, cumulatively, they can have
the system in the first place. A rich highly interactive user a major impact on the user experience. A poor user
interface such as those made possible by smart clients experience often hinders ERP adoption, jeopardizing the
offer a more compelling experience and is more likely to attainment of an ERP implementation’s business goals.
encourage adoption than similar web-based applications.
Deployment and Maintenance
If an application is CPU-intensive, such as corporate
applications that do a lot of complex data-sorting, editing, Web applications have always had a clear deployment
and manipulation with the use of graphic-intensive charts advantage: no need to install software (other than the
and graphs (as is often the case with ERP systems), users browser, of course) on users’ computers makes for an
are more likely have a better experience with a smart easy and rapid deployment. With the cost of deployment,
client–based application that can take advantage of local maintenance, and administration playing a significant part
CPU power to offer a more responsive application. Typical in the overall cost of an ERP application, thin clients have
web-based applications are very sequential and linear for the last several years been favored by cost-conscious
in nature. Smart clients, on the other hand, allow you to organizations.
branch off at any point and to multi-task in a non-linear,
The emergence of smart client alternatives that leverage
decision-tree-like fashion.
Microsoft ClickOnce technology, however, have begun
Smart client applications combine standard Windows to seriously challenge one of the major AJAX and
tools with the point-and-click functionality of web pages. browser-based development advantages. With Microsoft
This familiarity and ease of use means users can log ClickOnce technology, smart clients match and even
on and start using them at once, reducing training exceed thin clients in ease of deployment and mainte-
requirements. Since smart clients still share many of the nance:
features of browsers (such as back and forth, history, and • Smart clients are centrally deployed and managed and
favorites), the learning curve for users is reduced. require no administration on client workstations.
With browser-based applications, however, some of the • The ClickOnce technology installs the application via
browser features that users expect to work may not work, a simple hyperlink, without the need for administrator
such as managing “state.” (Web browsing is inherently oversight.
“stateless”—that is, the browser doesn’t “remember” • Smart clients are downloaded over the web (HTTP), just
anything from moment to moment—but users expect like file copies.
applications to “remember” what they’ve done.) For • Smart clients update seamlessly in real time, without
example, hitting a “back” or “refresh” button or closing user action, by downloading net meta-changes from a
a window in a thin client application could result in an centralized server.
unanticipated loss of data and work, whereas with a
smart-client application, users can be easily prompted to In addition, unlike with thin client applications, powerful
save their work before exiting or leaving a page. servers are not needed to support smart clients, since
CDC Software | Key Drivers of ERP System Adoption in the Pharmaceutical Industry 3
5. smart clients leverage the computing power of every leaks. Smart clients provide APIs that give administrators
desktop and laptop to process data and display informa- the flexibility to use the web programming approach that
tion. Smart client applications can support hundreds of works best in each browser.
end users from a single, inexpensive server.
Thin clients using AJAX can handle some user interface
Development logic programmed via JavaScript and make subsequent
requests for more functionality/data from the application
Taken together, the development
advantages of a smart application and Total Cost of server. This poses a challenge, in that when using
client-side JavaScript, applications don't have a powerful
clearly ease and accelerate
development for organizations,
Ownership (TCO) framework of class libraries to fall back on (such as the
.NET base class libraries). Because of this, in some cases
resulting in a significantly lower total Out-of-the-box applications developers have to move logic back onto the server and
cost of ownership while providing seldom meet all the needs create a cross-process call over the web to reach it, or
greater flexibility to closely meet user of complex organizations “as write their own. In addition, JavaScript is an interpreted
is,” which makes the ease of scripting language and quite inefficient compared with full
demands, providing an accelerated
development on an applica- compiled .NET-based dynamic link libraries (DLLs) used
time to value, increased user
tion’s platform extremely as client tasks by smart clients.
effectiveness, and efficiency and important, as companies often
satisfaction for end users and IT need to modify or add on Smart clients, on the other hand, can validate input from
staff alike to the core system, or even the user before making calls to the application server. This
develop entirely different appli- user interface logic can be programmed with any .NET
cations to complement it. Thin language. The UI logic renders data to the client via calls
client and smart client development offer very different into WinForms namespaces. This reduces the develop-
scenarios to technology teams, which can dramatically ment time required to write .NET Windows Forms–rich
impact an application’s total cost of ownership. Internet applications compared with writing thin client
applications.
Companies can very easily create other smart client–
based solutions to meet the needs of different parts of With smart clients, developers can leverage the full
the organization with a low total cost of ownership. Smart capabilities of Visual Studio libraries to reduce coding
client solutions can become an integral part of an orga- times when creating client tasks for smart clients. Writing
nization's information infrastructure, accessing corporate JavaScript, in contrast, is no different than coding in
data and services and providing a powerful and familiar Notepad, as users do not have access to Visual Studio
working environment. Web Services provide a natural way Intellisense. This increases the risk of issues due to
for companies to expose data and services, and smart the need to remember specific methods and go back
client applications are the ultimate consumers of these and forth to understand available API calls, as well as
Web Services. For these and other reasons, smart client introducing an increased risk of typos and spelling errors.
development is on the whole less expensive and faster Debugging a client task in a smart client is also much
than enhanced thin client development. simpler than debugging client scripts such as JavaScript,
because smart client users have access to the full Visual
Thin client developers face unique challenges and con- Studio debugging environment.
straints due to the applications' reliance on browsers. Due
to the pervasiveness of Internet Explorer (IE), developers The user interface for an AJAX application is rendered
must commonly rely upon this browser as their main as a combination of HTML DOM objects and CSS styles,
delivery method. ActiveX, MSXML, and XMLHTTP provide while the user interface for a smart client application
IE-supported options for enhancing a web application’s is rendered via Win32 calls on the Windows operating
features, but developers are then subject to the limitations system, providing greater flexibility. The smart client
of Internet Explorer. New IE releases, which are becoming approach to “skinning” and branding requires only
increasingly automatic and unavoidable, often wreak rudimentary knowledge of page styling, sufficient to set
havoc on web applications and cause procedures to colors and fonts. Even when deeply customizing look and
break, resulting in unacceptable production downtime. feel, you don't have to deal with browser layout inconsis-
Meanwhile, alternative browsers such as Firefox and tencies. Many properties that require programming with
Google Chrome are gaining popularity, introducing more other kinds of applications, such as color and the ability to
complexity and cost into testing and programming if make an item “read-only” or hidden, can be done without
companies want to support more than just IE. programming in smart client applications.
In contrast, smart clients are browser-independent and
are tied only to the operating system, rather than the
specific versions or updates of the browser. Smart client–
based applications are not subject to destructive browser
issues such as timing-dependent bugs and memory
CDC Software | Key Drivers of ERP System Adoption in the Pharmaceutical Industry 4
6. Security Lastly, smart client forms can easily integrate and embed
web pages by dynamically creating a parameter-based
Customer data is one of a company’s most vital assets, URL in the context of what the user is doing. For example,
and data security is of equally high concern to a company a smart client could integrate Google Map plug-ins to
and its customers, who need to trust that their data is map the location of a customer right within the customer
safe. Unfortunately, because they rely on browsers for form, without leaving the existing page.
data access and transfer, thin client applications are
prone to various security weaknesses that smart clients Ross ERP:
are able to avoid. For example, changes in browser secu-
rity settings can result in issues for thin client applications Smart Client Innovation at Work
(for example, disabling scripts and downloads). Ask any ERP expert what really makes or breaks an ERP
implementation, and you'll get the one or more of these
Since smart clients are web applications that do not use answers: usability, interoperability and performance.
browsers to access data, data is shielded from the secu-
rity holes, bugs, and malicious codes that are associated CDC Software understands this, and it's why we've built
with browser-access applications. the next-generation Ross ERP with a Smart Client solution
your users will love.
Integration
Built on the Microsoft .NET platform, Its use of Microsoft's ClickOnce deployment technology
Integration is often one of the makes it easy to implement and update. The Ross ERP
Ross ERP Smart Client takes full greatest sources of expense smart client downloads to the C:Document and Settings
advantage of all of the benefits and complexity when imple- folder of the user’s computer. All users have full permis-
of smart client architecture, menting applications. Smart sion to their individual folders; therefore there are no secu-
combining the best of "thick" - a rich clients alleviate this challenge rity considerations for installation. But most importantly, it
user experience, high developer because they can interact offers features your users will love: an intuitive interface,
productivity and responsiveness with other applications much deep integration with the Microsoft tools they use every
- and "thin" clients - broad reach, more easily than other kinds day, and the ability to tailor and personalize the solution
easy change management and ease of clients. Because they utilize to match unique business processes and individual
of IT deployment - to create a truly Web Services, smart clients user needs—all made possible by a combination of the
are also less dependent on underlying smart client foundation and a next-generation
superior ERP solution
platforms and browsers than application that takes full advantage of smart client
other available options. innovations.
A major integration advantage of smart clients is their User productivity is at the heart of Ross ERP Smart Client.
support for the Composite UI Application Block (CAB). The Ross ERP Smart Client is modeled around the busi-
This architecture allows developers to plug in and ness structure, rather than the database model, it makes
combine disparate applications using web, WinForm, and navigation much easier, improve search
Windows Presentation Foundation (WPF) technologies to
create a single coherent solution. Such solutions can be reporting capabilities, allows users to move through the
formed by coupling desktop applications or by providing a system more easily with far fewer clicks to access, and
generic “shell” application that houses multiple lightweight supporting better decision-making and helping them
applications that are combined to form the solution. deliver better experiences to your customers.
Smart clients extend far beyond mere UI widgets, provid- Smart Client capabilities offer increased user visibility,
ing a comprehensive data-binding architecture, a powerful business automation, usability improvements, accelerated
cross-browser toolset, and metadata management that performance, and enhanced interoperability to support
radically reduce duplication and complexity. improved critical business decision making in a more
timely manner, and to gain measurable competitive
Smart client forms also support .NET controls. This industry advantage.
means that .NET controls that you may have developed
for another application or purpose can easily be dropped
onto a smart client form and be used and re-used without
re-programming. These .NET controls can provide integra-
tion of functionality or features from your other enterprise
applications through the use of Web Services, providing a
“one-stop shop” for end users, who save time by working
within a single application.
CDC Software | Key Drivers of ERP System Adoption in the Pharmaceutical Industry 5
7. Conclusion In essence, smart clients take all the benefits of Windows
clients and thin clients, remove the drawbacks of tradi-
Both smart client and thin client technologies have their tional Windows clients, and add new advantages and flex-
place. Enhanced thin client technologies are typically well ibility to reduce an application’s total cost of ownership as
suited to consumer-targeted applications. On the other well increase user adoption. Smart clients do more than
hand, businesses seeking enterprise applications such just address the shortcomings of other client options; they
as ERP typically have a finite number of users and need also offer many new capabilities. Smart client technology
an application that mimics their business processes and has opened the doors to ongoing innovation. Developers
offers a rich and highly interactive user interface. For now have access to technology and capabilities that
these businesses, a smart client application usually offers allow them to create business applications that far exceed
a more flexible, powerful, and usable solution. former possibilities.
Smart clients represent the future of corporate desktop CDC Software has been a pioneer in leveraging these
applications. In contrast, the use of AJAX, ASP.NET, and new capabilities, as evidenced by Ross ERP Smart Client,
ActiveX in enhanced thin clients is more of an attempt to its leading enterprise resource planning solution that takes
dress up old technologies to cover up their flaws. While full advantage of smart client capabilities. CDC Software
they allow developers to do new things with old technolo- has invested millions in revamping Ross ERP’s user
gies such as reducing full-page refreshes and working interface using Microsoft smart client technology, while
asynchronously, they oust control from the presentation preserving the proven Ross ERP architecture; and this has
tier and cannot effectively leverage the power of today’s been welcomed wholeheartedly by the market and our
inexpensive yet powerful workstations. Thin clients simply loyal base of industry-leading customers.
cannot provide the performance and the rich and interac-
tive experience that today’s corporate users demand. Looking ahead, CDC Software continues this path of inno-
vation, migrating Ross ERP to the Windows Presentation
This is not to say that thin clients and Web 2.0 are things Foundation, which allows for richer media content such
of the past; they just have a different purpose. Thin as videos, further enhancing the user experience. Without
clients are better suited for consumer-based applications question, Ross ERP is today the most flexible enterprise
that anyone and everyone can access. Smart clients application on the market, offering the lowest total cost
are meant for corporate users who value multi-tasking, of ownership. With Ross ERP’s intelligent application of
interactivity, a rich user interface, integration with Office smart client technology, our customers enjoy unmatched
Applications, minimized clicks, and best use of screen ERP usability and flexibility today, and they will be able to
design very highly—all features that lead to user adoption, realize more and more benefits as we unleash the added
a critical success factor in the deployment of a enterprise power and capabilities of this new technology.
resource planning system or any other enterprise applica-
tion.
Microsoft has spent millions of dollars developing
and embracing smart client technology, and this new
technology has been welcomed enthusiastically by
developer communities. With the smart client, Microsoft
has addressed the shortcomings of traditional Windows
clients, including:
• Difficulty deploying and updating
• Heavy DLL administration
• Lack of access from the Internet
• Poor performance
• Lack of integration capabilities
• The limited capabilities of older desktops
CDC Software | Key Drivers of ERP System Adoption in the Pharmaceutical Industry 6
8. Table 1: Comparison of Enhanced Thin Client and Smart Client Architectures
Enhanced Thin Client Smart Client
Can leverage local processing power to deliver superior
Slower application response time because browser performance
must retrieve both the application user interface and
the data Can be multi-threaded, allowing different tasks to occur
Performance simultaneously
Cannot take direct advantage of local processing
power Performs better in lower bandwidth and higher latency
environments
Slow and cumbersome to navigate; does not Excellent user experience with responsive and interactive
behave as expected by user (e.g., saving data) applications
Usability
Linear in nature Provides multi-tasking capabilities (non-linear)
Rich and sophisticated user interface
User interface limited by browser constraints and
User Interface potential compatibility issues between browsers Navigation structure can mirror business structure, rather than
data structure
Can be easily deployed, updated, and maintained from a central
Deployment and Can be easily deployed, updated, and maintained web server with Microsoft ClickOnce Technology enhanced with
over the web, but may require certain security rights, CDC's unique Updater Service for incremental updates
Maintenance e.g., for ActiveX control downloads
Does not require administration rights on the local PC
Faster and easier to develop and debug
Limited by browser constraints, and code created is Ultimate consumer of Web Services, which can be reused
Development not reusable across the enterprise
Can leverage the full .NET class library
Low cost of customization, integration, and development result
Low as long as customization, integration, and
Total Cost of in low TCO
development are minimal
Ownership Can use less expensive servers because it can take advantage
Requires more expensive servers
of local processing power of workstations
Offline
None—connectivity is required Users can work regardless of bandwidth and connectivity
Capabilities
Reliance on browsers for data access and transfer Data is not accessed through a browser and is thus in a trusted
Security can introduce security issues environment and shielded from browser security holes
CAB architecture and Web Services enable developers to easily
Integration can be complex and limited by browser
Integration constraints
combine disparate applications to create a single coherent
solution (can plug in disparate technologies)
Optimal User Best for use by consumers and light business users Best for use by heavier business and corporate users
Profiles (mostly B2C) (mostly B2B)
CDC Software | Key Drivers of ERP System Adoption in the Pharmaceutical Industry 7