Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Epicor ERP 10 Architected For Efficiency WP A4 ENS

Download as pdf or txt
Download as pdf or txt
You are on page 1of 14

An Epicor® White Paper

Epicor ERP 10—


Architected for Efficiency
Epicor ERP 10—Architected for Efficiency

Table of Content
Introduction ..............................................................................................1

How Epicor ERP 10 Is Built ........................................................................2

System Architecture ..................................................................................3

Performance and Scalability ......................................................................8

System Requirements ..............................................................................10

Conclusion: A Foundation for Success ....................................................11

i
Epicor ERP 10—Architected for Efficiency

Introduction
Today’s global business environment has transformed what enterprises need from their ERP
systems. Global competition has led to the development of extended value networks, with
facilities, suppliers, and partners in every part of the globe; moreover, it is much more nuanced
than was ever imagined. Change is constant. Innovation is accelerating. Competitive pressures
and customer expectations are higher. In this dynamic and challenging environment, technology
must support the goals of better collaboration, increased agility, real-time responsiveness, and
higher performance while reducing complexity in what is inherently a complex structure. Failing to
do so may hinder what technology is meant to drive: growth and opportunity.

Epicor ERP 10 has been built from the ground up to comprehensively respond to these needs
and provide the support organizations require to thrive in today’s competitive global business
landscape. Guided by the needs of today’s organizations, Epicor ERP 10 streamlines the use of
ERP across multiple devices while providing greater deployment choices, reduced complexity, and
remarkable ease-of-use. Built on agile technology to provide rich, global functionality, we believe
it is a truly inspired ERP solution, one that not only unleashes the full potential of ERP, but also
changes its role from necessary infrastructure to active facilitator of business growth
and sustainability.

1
Epicor ERP 10—Architected for Efficiency

How Epicor ERP 10 Is Built


Epicor ERP 10 is built on a server architecture fully optimized for Microsoft® Windows® Server and
Microsoft SQL Server®. This helps make it simple to manage and very hardware efficient. Relatively
easy to deploy, the solution includes new features such as Epicor Social Enterprise and Epicor
Enterprise Search, while incorporating all the rich business capabilities and global functionality of
its predecessor suite, Epicor 9. In addition, Epicor Web Access, the browser client for Epicor ERP,
has been re-architected to improve speed and user friendliness.

Microsoft® .NET® 4.51 and SQL Server combine to form the underlying platform for Epicor ERP 10.
These platform components were chosen not only for their proven reliability, but also because the
stack has a very low total cost of ownership (TCO). Microsoft SQL Server has long been a popular
database technology for Epicor customers, and ERP 10 doubles down on the Epicor commitment
to build fast and robust applications that make the most of SQL Server’s capabilities in the
enterprise. ERP 10 services are hosted on Microsoft Internet Information Services (IIS), which means
the entire architecture can be managed and extended using commonly available technical skills.

Generaly speaking, ERP 10 delivers twice the performance of Epicor 9 and scales more than four
times higher than the previous release. Most hardware configurations cost less than $90 (USD)
per concurrent user. What’s more, ERP 10 is “by the book” architected for Windows Server and
SQL Server, which means all the management and monitoring tools familiar to IT staff can be
leveraged with little or no additional training—a real time and cost savings. The solution is highly
interoperable with all kinds of IT systems and supremely adaptable to unique and constantly
changing business environments.

Built on a comprehensive services architecture, Epicor ERP 10 is easy and flexible to deploy,
either on premise or in the cloud. Consequently, it provides the flexibility and choice today’s
organizations need for deploying and managing multiple ERP instances.

Epicor has been offering ERP as a subscription service (SaaS) since 2009 in three editions: Express
and Standard for small manufacturers and distributors, and an Enterprise edition, which includes
the same functionality suite as on premise Epicor ERP. Epicor does not dilute development, support,
or services resources by managing multiple code lines for cloud and on premise deployments.
Epicor SaaS ERP 10 follows the same strategy but with a new architecture that provides cloud-
based customers with better performance, higher reliability, and exceptional IT efficiency.

2
Epicor ERP 10—Architected for Efficiency

System Architecture
Epicor ERP 10 is completely built on the Microsoft .NET® Framework using managed code, written
primarily in C#, along with state-of-the-art components such as Windows Communications
Foundation (WCF) and Entity Framework. This approach allows the Epicor ERP applications code
to run on any system compatible with Microsoft .NET 4.51 and the relevant extensions. ERP 10
relies on Microsoft SQL Server for data storage, Microsoft SQL Server Reporting Services (SSRS) for
reports, and Internet Information Services (IIS) for hosting.
Scale Up or Scale Out

Epicor ERP 10 was designed for Microsoft Internet Information Services (IIS), an exceptional
application server. IIS is a proven, reliable, and scalable technology that includes a powerful
administration console and tools to configure, secure, and troubleshoot application services.
Epicor ERP 10 also includes a dedicated management system for deploying and managing ERP
instances. Once an ERP 10 release is installed, the Epicor Administration Console is used to easily
create and manage databases, migrate data and applications from previous versions of Epicor ERP,
bind ERP instances to licensing, and manage users and sessions.

The Epicor ERP Administration Console, ERP 10 architecture, and IIS all work together to provide
a highly available ERP system. ERP 10 services are fully multi-threaded and load resources on
demand, as they are needed. ERP services can be hosted in a single process, a multi-process Web
garden (recommended), or by using load balancing across multiple application servers. Hardware-
based load balancing is recommended for configurations intended to support more than 200 to
300 users. (ERP 10’s Sizing Guide provides complete details.)

The solution is built as a collection of more than 1,300 independent services and nearly 20,000
operations. All access to the application logic—whether from an Epicor client application or
any other enterprise system—is managed by calling one or more of these services. There are no
private APIs or application logic unavailable for IT to exploit. Each application service has a number
of standard operations for retrieving or updating entities such as orders, customers, parts, and
manufacturing orders. There are a multitude of other utility operations, depending on the specific
needs of user operations. Finally, ERP 10 supports other approaches to integration, including high-
speed imports using flat formats or EDI messaging.

3
Epicor ERP 10—Architected for Efficiency

1600 Individually Addressable Services


• Entity/document-oriented
• Extensible data and behavior
• All provide “standard” operations plus any number of
service-specific operations

Entity Documents
• Hierarchical data containers for
non-scalar results
• Extensible for custom data

The Windows Communication Foundation (WCF) is used to host Epicor ERP 10 services. By
default, three protocol endpoints are supported for each service. The first is a binary Net.Tcp
protocol endpoint that uses an Epicor-specific wire format, optimized and compressed for use by
the Epicor ERP client application. The Net.Tcp protocol is available for general-purpose access via
service contract assemblies that can be used in any .NET-based project.

Services Protocols Privacy Authentication

Interoperable access to services generally requires use of SOAP, which is an XML-based messaging
protocol. ERP 10 supports two SOAP implementations: SOAP 1.1 and SOAP 1.2/WS-*. SOAP 1.1
is an earlier SOAP format with simply message formats. SOAP 1.2, along with a large number
of Web Services specifications (WS-*), is the predominant standard for sending interoperable
messages across systems and platforms. ERP 10 services are all declared as WCF service contracts
and non-scalar data types are defined as data contracts. This approach ensures maximum
interoperability because ERP 10 services accept/emit simple object graphs, without any proprietary
data containers.

4
Epicor ERP 10—Architected for Efficiency

There are three aspects to ERP service security: authentication, privacy, and authorization. ERP 10
has two authentication providers: Windows single sign-on (SS0) and Epicor-defined username/
password tokens. The Windows single sign-on option is fully integrated with the Windows
operating system and Active Directory. Privacy ensures that messages between ERP services and
callers cannot be read by intercepting network traffic. ERP 10 uses either a Windows domain or
secure socket layer (SSL) and X509 certificate to encrypt the communications channel.

Authorization defines which services and data the caller is allowed to access. Epicor ERP 10
includes a comprehensive access rights system, where users—or groups of users—are assigned
access rights to any table, field, form, menu
option, or service operation. Access rights can
be defined inclusively (explicitly allowed access)
or exclusively (explicitly disallowed access). In
addition, there are a number of ERP-specific
security partitions supported through the
system. These include companies, departments,
territories, and manufacturing sites.

ERP Services are highly extensible. The ERP Security Partitions


underlying data model can be extended
with custom fields and tables. These
fields are usable all the way through
the stack, including client applications.
Service behavior can be modified or
extended using Epicor Business Process
Management. Moreover, services and data
exchanges can be orchestrated with other
System Security
systems using Epicor Service Connect.

The foundation of any modern enterprise application is a well-designed physical data model
coupled with a great database engine (e.g., Microsoft SQL Server). The Epicor ERP 10 data
model is comprised of about 2,000 well-normalized tables. Each table includes a declared
primary key, a GUID alternate key (with a SQL “row guide” attribute), and a row version column
(commonly called a “timestamp” value). These features make it much easier to enlist advanced
SQL Server replication and integration services. Each application table has an intermediate
“shadow” companion defined that is used by master data management features as suspension
data containers. ERP 10 also uses stored procedures generated by the Internet Component
Environment (ICE) Framework SDK to optimize data access for standard operations and efficient
data paging.

5
Epicor ERP 10—Architected for Efficiency

Supporting the applications code is the Epicor ICE Framework, which is an enterprise grade
application framework purpose-built for the Epicor ERP programming model. Epicor ICE
separates many technology aspects (e.g., hosting, data access, caching, protocols, security,
assembly management) from the applications code. The ICE framework ensures that the 1,600+
services and hundreds of forms that make up ERP 10 are built and behave consistently. The ICE
Framework also serves to “separate concerns,” a software architecture approach that ensures
that different areas of a large software set can evolve independently. The Epicor ICE Framework
can also work as a stand-alone system providing bridge services to external data and legacy
systems as well as business queries, dashboards, and search indexing.

Most Epicor ERP users access the system using the Epicor ERP smart client application, which
is also architected for Microsoft .NET. Epicor ERP is highly regarded for the rich capabilities and
flexibility of the ERP Client application. Popular features include a consistent navigation across
hierarchical business information, string usability design for “heads-down” data entry tasks, and
highly personalized styling capabilities. Application forms are comprised of multiple “tear-off”
information panels—each related to a data entity—that can be oriented or even removed to suit
the needs of the enterprise or individual users.

Most data entry forms represent information both in free form and as a spreadsheet-like grid.
Epicor ERP grid controls are powerful data entry tools. Columns can be rearranged, sorted, or
filtered. Data can be collapsed into groups and all data entry is instantly reflected in other views
contained in the same form. One of the most popular grid features is the instant export to
Microsoft Excel. Users can also paste/insert data directly from Excel into the data entry grid. This
capability is frequently used for creating orders, adding parts, or managing pricing.

Forms can be fully customized. The ERP 10 Client includes an embedded integrated development
environment (IDE) that allows controls to be moved, dropped, or added. Developers can declare
dynamic “row rules” to create data-driven behaviors such as changing color or style. Additionally,
form logic can be created in C# or VB.NET and assigned to form, panel, or control events.
All customizations are managed and stored as metadata that is propagated to deployments
automatically and on demand. More importantly, the metadata-based approach for customizing
Epicor ERP 10 is “non-invasive” to Epicorsupplied application resources. In other words,
customizations do not touch baseline code, which means deploying service packs is an easy process.

6
Epicor ERP 10—Architected for Efficiency

Epicor Web Access (EWA) allows users access for ERP 10 forms using a browser. EWA renders
the client application content using pure HTM without dependencies on browser plug-ins. HTML
forms are derived directly from the same metadata that defines ERP Client Application forms.
Many constructs supported by the Client Application customization tools are supported by EWA.
This means it is possible to customize Epicor ERP using the embedded IDE tools, and for those
changes to appear in browser versions of the form.

For ERP 10, Epicor has re-engineered the Web Access stack for easier usability, much faster
performance, and intuitive navigation via touch-enabled devices. Rather than trying to faithfully
reproduce the “heads-down” ERP Client Application, EWA reimagines form navigation using
dynamic sections and touch-friendly jump panels. This makes it easier for users carrying mobile
devices to access information and make decisions.

7
Epicor ERP 10—Architected for Efficiency

Performance and Scalability


There are three aspects to Epicor performance testing:

XXAbsolute responsiveness as measured (or perceived) by users running the Epicor


Client Application
XXServer processing times under various load models
XXThroughput testing that demonstrates how typical bulk load operations perform

Epicor development guidelines mandate that no service pack or release can ever perform worse
than a previous product version, as measured by our standardized tests. Compliance to that
mandate is required even when functionality is added to the system.

The approach Epicor takes to scale testing is simple: be accurate and report results truthfully.
Comprehensive load testing is complex and expensive. Epicor invests in load testing to understand
how products perform and how to make them better. It also publishes detailed results to provide

customers with the best information to help plan capacity and system responsiveness. As of this
publication, Epicor ERP 10 is still in beta test; scale testing has been performed for interactive
loads up to 3,000 users, and throughput testing for distribution business scenarios.

Epicor ERP 10 shows good linear scalability from one user through 3,000 users. More importantly,
database server utilization remains very low, never exceeding 10 percent CPU utilization. SQL
batch requests at 3,000 concurrent users averaged about 6,940 per second, which reflects about
12 percent of capacity for typical hardware and well under Epicor guidelines of no more than five
requests per second per user.

8
Epicor ERP 10—Architected for Efficiency

Interactive load tests are modeled using real-world Epicor ERP logs collected from live customers
who are primarily manufacturers or distributors. The test results above are from a manufacturing
model tested at 200, 1,000, 2,000, and 3,000 user levels. Note: each load test is conducted
on hardware consistent with Epicor recommendations. (For example, the 200-user test was
conducted on a single machine. For the 1,000- and 2,000-user tests, the database server,
application server, and a reporting server were used. At 3,000 users, an additional application
server was added as a load-balanced cluster.)

Epicor throughput tests are designed to allow customers to model integration capacity. Initial
tests conducted on a beta release for Epicor ERP
Transaction Per Hour
10 show good throughput numbers in order
and shipping transactions, which are typically
Order Lines 62778
automated for distribution scenarios. The results Invoices 74658
below were demonstrated on a singlemachine Shipments 34662
solution. All three tests were running
simultaneously. Note: conditions for data loads
vary widely and much higher throughput is
possible when the systems and integrations are
tuned to match the business requirements.

Generally speaking, Epicor ERP 10 performs


twice as fast as Epicor 9 and scales more than
four times higher. With Epicor 9, achieving
high performance for large numbers of
concurrent users required rigid adherence
to infrastructure requirements, especially in
scale-out (multimachine) deployments with SQL Server. Epicor ERP 10 server processing times are
two to five times faster than ERP 9 server response times. Some aspects, notably Business Activity
Queries, can be one or two orders of magnitude faster. Most server performance gains are the
result of massively reducing the number of SQL Server batch requests.

Epicor is constantly measuring the performance characteristics of Epicor ERP. Microsoft Windows
Server and SQL Server platforms make optimizing ERP 10 product performance easier because
these products are very well instrumented. Performance testing is now even more endemic to all
areas of Epicor because measuring resource impact through unit tests, standardized performance
tests, and load testing are integral parts of the tooling and practices that make up the Epicor
development process.

9
Epicor ERP 10—Architected for Efficiency

System Requirements
Epicor ERP 10 development is tied to two foundational technologies: Microsoft .NET Framework
and Microsoft SQL Server. This allows great flexibility for hosting and managing ERP 10 because
both .NET and SQL Server can run on hardware as small as a Microsoft Surface Pro tablet.
Certifying a platform for ERP 10 is an involved task because of the large testing regimen and the
costs to maintain each certified environment for the QA and Product Support teams. As such, not
every combination of hardware, operating system version, and SQL Server version that ERP 10 is
able to successfully run with will be formally certified.

At release, Epicor has certified two platform configurations for Epicor ERP 10 server applications:

XXWindows® Server 2008R2 and Windows Server 2012 operating systems (all editions)
XXSQL Server 2008 R2 and SQL Server 2014 Databases (all editions*)

SQL Server 2014 (all editions*, pending certification) is expected in Q2 2014. (*Express editions of
SQL Server are not recommended due to constraints on memory, CUP, and database size.)

Required prerequisites include Microsoft .NET Framework 4.51, Internet Information Services,
Windows Process Activation (HTTP and non-HTTP), TCP Port Sharing, and options required to
support the desired security configuration. Epicor ERP 10 reports are rendered using SQL Server
Reporting Services (SSRS). (See the Epicor ERP 10 Installation Guide for details.) Some companion
product features require Microsoft SharePoint Services or SharePoint Server.

The ERP 10 Client Application is also based on Microsoft .NET Framework and will run any version
of Windows (other than Windows RT) supported by Microsoft. Windows XP is not supported
for the ERP 10 Smart Client. At least 1GB of available memory is recommended for running the
ERP 10 Smart Client. For Epicor Web Access, Mozilla® Firefox®, Google® Chrome®, and Internet
Explorer® 9 (and later) desktop browsers are all fully supported.

Hardware configurations for ERP 10 are fully explained in the Epicor ERP 10 Hardware Sizing
Guide. A single machine server can be scaled up to support 200 or more concurrent users.
Guidance for a 200-user system includes a 2x8 (16-core) Xeon machine with 96GB RAM and
an I/O accelerator (e.g., FusionIO) for SQL data storage. For scale out configurations, typical
application server hardware includes 16 cores, 32GB RAM, and HDD storage. Database servers
require similar hardware, although FusionIO and 96GB RAM are both recommended. Scale out
configurations have been tested to 3,000 concurrent users using one database server and three
application servers (one dedicated for generating reports).
Single Machine Configurations Scale Out Configurations

10
Epicor ERP 10—Architected for Efficiency

Epicor ERP is fully compatible with VMware and Hyper-V virtualization technologies. (See the
Epicor ERP Guide to Virtualization for details and best practices.) Implementers need to pay special
attention when virtualizing the database server to avoid performance issues caused by slow I/O
performance.

Conclusion: A Foundation for Success


Epicor ERP 10 provides today’s organization with the core technological foundation to meet the
difficult and rapidly evolving challenges of today’s global competition. The five principles of Epicor
ERP support this:

XXCollaboration - In today’s extended value chains, collaboration is essential to drive


innovation, uncover opportunity, and respond to change in often-volatile markets. To
do this successfully, ERP must be accessible to everyone involved in a company’s value
chain, and business processes must be linked directly to that chain. Knowledge retention,
traceability, deep domain expertise—Epicor ERP 10 supports these objectives by enabling
communication without latency, and providing easy access and leverage via means that
users want to use.
XXChoice - Designed for rapid, flexible deployment—on premise or via the cloud—ERP 10
gives organizations the ability to adapt to their unique circumstances, easily configure,
stay current with technological advances, and scale up or out as demands dictate. This is
all done without taxing IT demands or frustrating delays.
XXResponsiveness - In a time where events on one side of the world can immediately
impact business on the other, the ability to respond is paramount. Business analysis
must be in context and business response must be agile; customer expectations allow
for nothing less. Epicor ERP 10 is designed to deliver in this taxing milieu, providing rich,
global functionality that organizations can use, in an instant, for strategic response and
competitive advantage.
XXSimplicity - As value chains become increasingly extended, nuanced, and complex,
you can’t have your core systems adding to complexity. By simplifying deployment,
management, and usage—and by providing accurate, up-to-date information that
enables a single version of the truth across multi-faceted supply and demand networks—
Epicor ERP 10 reduces complexity and makes it simpler to make the right decisions for
sustained success.
XXMobility - Today’s workers aren’t chained to their desks or their computers. They want
24/7 access to the information they need, wherever they are, on whatever device they
use. Epicor ERP 10 is designed to deliver this kind of flexibility.

Built on an unparalleled technology foundation—Epicor ICE 3, a 100% Microsoft stack, and


global functionality that includes embedded capabilities, easily configurable engines, real time
BI and analytics, as well as industry-specific business layers and support—Epicor ERP 10 delivers
performance from day one, from the ground up. In a business world where waste, delay,
complexity, and uncertainty are anathema, it provides clarity on an ongoing basis, when and
where you need Epicor ERP 10.

It is architected for efficiency as well as for your success.

11
Epicor ERP 10—Architected for Efficiency

About Epicor
Epicor Software Corporation drives business growth. We provide flexible, industry-specific software that is designed around the needs
of our manufacturing, distribution, retail, and service industry customers. More than 40 years of experience with our customers’
unique business processes and operational requirements is built into every solution—in the cloud, hosted, or on premises. With a
deep understanding of your industry, Epicor solutions spur growth while managing complexity. The result is powerful solutions that
free your resources so you can grow your business. For more information, connect with Epicor or visit www.epicor.com.

Contact us for more information on Epicor Products and Services


+1.800.999.6995 info@epicor.com www.epicor.com

Corporate Office Latin America and Caribbean Europe, Middle East and Africa Asia Australia and New Zealand
804 Las Cimas Parkway Blvd. Antonio L. Rodriguez #1882 Int. 104 No. 1 The Arena 238A Thomson Road #23-06 Suite 2 Level 8,
Austin, TX 78746 Plaza Central, Col. Santa Maria Downshire Way Novena Square Tower A 100 Pacific Highway
USA Monterrey, Nuevo Leon, CP 64650 Bracknell, Berkshire RG12 1PU Singapore 307684 North Sydney, NSW 2060
Toll Free: +1.888.448.2636 Mexico United Kingdom Singapore Australia
Direct: +1.512.328.2300 Phone: +52.81.1551.7100 Phone: +44.1344.468468 Phone: +65.6333.8121 Phone: +61.2.9927.6200
Fax: +1.512.278.5590 Fax: +52.81.1551.7117 Fax: +44.1344.468010 Fax: +65.6333.8131 Fax: +61.2.9927.6298

This document is for informational purposes only and is subject to change without notice. This document and its contents, including the viewpoints, dates and functional content expressed
herein are believed to be accurate as of its date of publication, April 2014. However, Epicor Software Corporation makes no guarantee, representations or warranties with regard to the
enclosed information and specifically disclaims any applicable implied warranties, such as fitness for a particular purpose, merchantability, satisfactory quality or reasonable skill and care. As
each user of Epicor software is likely to be unique in their requirements in the use of such software and their business processes, users of this document are always advised to discuss the content
of this document with their Epicor account manager. All information contained herein is subject to change without notice and changes to this document since printing and other important
information about the software product are made or published in release notes, and you are urged to obtain the current release notes for the software product. We welcome user comments
and reserve the right to revise this publication and/or make improvements or changes to the products or programs described in this publication at any time, without notice. The usage of any
Epicor software shall be pursuant to an Epicor end user license agreement and the performance of any consulting services by Epicor personnel shall be pursuant to Epicor’s standard services
terms and conditions. Usage of the solution(s) described in this document with other Epicor software or third party products may require the purchase of licenses for such other products. Where
any software is expressed to be compliant with local laws or requirements in this document, such compliance is not a warranty and is based solely on Epicor’s current understanding of such laws
and requirements. All laws and requirements are subject to varying interpretations as well as to change and accordingly Epicor cannot guarantee that the software will be compliant and up to
date with such changes. All statements of platform and product compatibility in this document shall be considered individually in relation to the products referred to in the relevant statement,
i.e. where any Epicor software is stated to be compatible with one product and also stated to be compatible with another product, it should not be interpreted that such Epicor software is
compatible with both of the products running at the same time on the same platform or environment. Additionally platform or product compatibility may require the application of Epicor or
third-party updates, patches and/or service packs and Epicor has no responsibility for compatibility issues which may be caused by updates, patches and/or service packs released by third parties
after the date of publication of this document. Epicor and the Epicor logo are trademarks of Epicor Software Corporation, registered in the United States, certain other countries and/or the EU.
All other trademarks mentioned are the property of their respective owners. Copyright © Epicor Software Corporation 2010. All rights reserved. No part of this publication may be reproduced in
any form without the prior written consent of Epicor Software Corporation.

You might also like