• No results found

Discovering the Potential of the Microsoft xrm Development Framework

N/A
N/A
Protected

Academic year: 2021

Share "Discovering the Potential of the Microsoft xrm Development Framework"

Copied!
11
0
0

Loading.... (view fulltext now)

Full text

(1)

Discovering the Potential of the Microsoft

xRM Development Framework

Authored By: Chris Griswold & Rick Gipson

Credera www.credera.com Austin Office

1250 Capital of Texas Hwy S. Building III, Suite 400

Austin, TX 78746 512.327.1112 Phone

512.233.0844 Fax

Dallas Headquarters

The Towers at Park Central 789 12770 Merit Drive, Suite 100

Dallas, TX 75251 972.692.0010 Phone

972.692.0019 Fax

Denver Office

4600 South Syracuse Street Suite 900 Denver, CO 80237 303.623.1344 Phone

(2)

White Paper: Credera’s Microsoft Solutions Practice 2

Discovering the Potential of the Microsoft xRM Development Framework

Contents

Introduction 3 Siloed Software Applications – Today’s Business Challenges 4 Potential Solution – Extensible Software 4 Extensible Software – Historical Challenges 5 The Microsoft xRM Development Framework 6 What is xRM 6

How is it different 6

xRM and CRM 7

xRM Example for Highly Specialized Applications 7

Technology & Skill Sets Required 8

Conclusion 10

References 11

About the Authors 11

(3)

White Paper: Credera’s Microsoft Solutions Practice 3

Discovering the Potential of the Microsoft xRM Development Framework

Introduction

For businesses across the globe, both large and small, the proliferation of software to manage business process and function has been both a blessing and a curse. Although software solutions have provided remarkable capability and productivity, it has also required massive investment in infrastructure, support, and maintenance. In recent years, the software industry has recognized the desire from businesses to streamline their technology footprint and reduce maintenance while at the same time increasing the capability and specificity of that software to their business. Conversely, for software companies and developers across the globe, the “holy grail” of system architecture has always been to develop an application which would have limitless capability to be modified and customized to fit any particular business purpose without the need to hire a team of software engineers. That way, the software company only has to maintain a single version of their product, and the end-user doesn’t need to employ a full-time staff of developers to maintain a custom application. This one-size-fits-all approach, although attempted many times, has never really been successfully executed. The challenge is that businesses have their own unique processes and structures, and software applications have always been traditionally inflexible.

In an attempt to counter this approach, software companies began to build larger and larger applications, with the idea that if they built every conceivable piece of functionality into the software, then it would work for every business and every situation. What they ended up with were gigantic applications which were difficult to use, expensive, and prone to error and poor performance. Despite limitless research and development efforts, these behemoth applications still did not fit all businesses or all purposes and were nearly impossible to customize.

As demand for these types of flexible and extensible applications has grown and the capabilities of modern technology have evolved, this elusive software framework is finally within reach. In January of 2003, Microsoft launched version 1.0 of a product called Microsoft CRM (Dynamics CRM). Microsoft CRM is built upon an incredibly flexible and extensible framework called the xRM Development Framework. Over the years, it has evolved and matured into an enterprise-class application used by small businesses, governments, and many Fortune 500 companies.

In this White Paper, we will explore the various benefits and advantages of the xRM framework as a platform for building robust applications to manage various parts of your business. We will also identify the key historical challenges of extensible software and the different ways in which the xRM framework enhances the CRM application and takes it far beyond the realm of sales, marketing, and customer service.

Microsoft CRM is used by companies across the globe such as Nikon, Polaris, and the Government of Dubai.

(4)

Discovering the Potential of the Microsoft xRM Development Framework 4

Siloed Software Applications – Today’s Business

Challenges

Over the past ten years, enterprises have been driven by a single goal – efficiency. In an effort to achieve this goal, each department in the organization has looked for ways to optimize its performance. This led to heavy invest-ments in “best-of- breed” specialized applications that promised the next level of efficiency through enhanced functionality. However, this desire to maximize efficiency led to a local optimum where each department selected its own tools built specifically to satisfy the needs of its users and business function.

IT organizations were then left to support these specialized business applications often developed by different

vendors, on different platforms and hardware.

Additionally, critical business data was duplicated in each application often with no means of integration. As more and more departments implemented specialized siloed applications, keeping each of these applications updated with the most recent information became a huge problem for many organizations.

For example, an organization chasing that elusive goal of efficiency has made a substantial investment

implementing the “best-of-breed” enterprise resource planning, supply chain management, eCommerce platform, and customer relationship management systems. Though these applications are the best at what they do, the organization is left with redundant

information spread across all the systems. When a customer calls the call center to inquire about the status of an online order and the call center agent is only able to access information stored in the CRM system and is unable

to view the complete status, the customer will likely become frustrated and upset with the agent’s inability to deliver the desired level of customer service.

Today’s business challenge is leveraging a single platform that can unify siloed applications, providing a holistic view of all data to all members of the organization without sacrificing the efficiencies gained by having customized “best-of-breed” tools.

Potential Solution – Extensible Software

Before we can consider extensible software as a potential solution to siloed applications, we must first define extensibility. In this context, extensibility simply means designing applications in a way that allows end users/administrators to customize the application to meet their specific business needs without having to maintain a custom code base for each department.

Traditionally, many software companies and developers attempt to provide extensibility by trying to account for every conceivable use of their software. In their attempt

(5)

Discovering the Potential of the Microsoft xRM Development Framework 5

to be all things to all businesses, their applications become so complex with an endless number of options, settings, and modules. For that reason, it is called proprietary extensibility. Often, to support their extensibility goals, software companies leveraging proprietary extensibility will develop their own programming language and suite of tools.

An example of this type of extensibility is SAP’s ERP software, where SAP created the ABAP programming language. A business wishing to customize the SAP’s ERP software must enlist an army of specialized ABAP programmers to make the out-of-the box software valuable to the organization.

An alternative to proprietary extensibility is to release software applications with an API or SDK that provides an abstraction layer to the frameworks core functionality. The API or SDK is usually limited to a smaller subset of functionality – we will call this limited extensibility. Limited extensibility applications are very common and tend to mature over time.

A popular example of limited extensibility is the Facebook API, which exposes a predefined subset of functionality allowing integrations to the popular social networking website.

Extensible Software – Historical Challenges

Traditionally, there are three primary challenges with extensible software: performance, limited functionality, and version locking.

Performance issues with extensible software stem from both proprietary and limited extensibility. In the case of proprietary extensibility, the size of the application and its inherent complexity makes the software slower. In the case of limited extensibility, it is the underlying abstraction layer that hinders performance.

In addition to performance issues, limited extensibility by nature has a draw back in that the software’s core functionality cannot be customized. This is common in our root problem of siloed applications as the software cannot be integrated to support other business needs or leverage the data within its data store.

Another concern of extensible software is version locking – customizing the software to the point that it no longer can be upgraded to new versions of the software. Version locking is most commonly caused by developers customizing the software in ways that are not supported.

When it is time to upgrade to the next version, the unsupported customizations require re-architecting to

(6)

Discovering the Potential of the Microsoft xRM Development Framework 6

fork-lift those changes to the new version, which can be cost-prohibitive. As newer versions of the software continue to be released, the version locked application becomes more and more outdated. By preventing users from leveraging new features, the customized application ends up being an impediment to efficiency.

In the next section, we will explore how Microsoft has tackled these challenges and produced a product that is quickly becoming the leader in extensibility and performance.

The Microsoft xRM Development Framework

What is xRM

Software companies are notorious for their use of code words and acronyms to drum up interest and intrigue for their products and services, and Microsoft is no different. In this case, Microsoft combined algebra and CRM to create “xRM”, which stands for “Anything Relationship Management”. In the case of Dynamics CRM, the “anything” is Customers, but what the xRM development framework gives you is the ability to build robust, feature-rich applications to manage just about…anything. The xRM development framework provides a non-technical user the ability to create new business objects, data fields, web pages and forms, views of data, relationships

between business objects, workflows, security, and various other functions necessary to build an application to manage the desired process, activity, asset, etc.

For example, a delivery company may use xRM to manage its fleet of trucks, or a manufacturing company may use xRM to manage all of its tools, machines, and robots including purchase dates, value, maintenance records, certified users, and the products which use those tools. With a tool as flexible as xRM, its capability is only limited by the imagination of the designer.

How is it different

As discussed briefly in the previous section, when creating an extensible software framework, performance and functionality become major issues. Dynamics CRM is different in this regard because the entire system is built on the xRM framework, so there is no additional abstraction layer. The extensible framework is used by all the CRM components and modules, thus there is no performance bottleneck. Additionally, because this type of extensible architecture exists at the core of the product, functionality is not limited.

(7)

Discovering the Potential of the Microsoft xRM Development Framework 7

Typical Extensibility Architecture

xRM and CRM

Now that we know what xRM is and how its architecture is unique, let’s step back and look at how xRM helps to enhance the standard CRM functionality out-of-the-box. Every company operates and manages their business differently, and even if the standard CRM functionality works for 90% of your processes, there is still 10% that will need to be modified.

Out-of-the-box, CRM is a best-of-class sales, marketing, and customer service application. Dynamics CRM provides core functionality for managing the sales cycle from Lead to Order, building pointed marketing lists and delivering feature-rich campaigns, and providing complete customer service with cases and full-service scheduling

functionality. Dynamics CRM is a great start toward empowering a company that manufactures, sells, and services a product to grow and excel in those areas. However, suppose your company sells services or handles charitable donations. For these types of organizations, CRM would need to be customized to fulfill those special business processes, and that is where the xRM framework shines. In many of these cases, you might just want to modify the existing business objects and user-interface to take advantage of existing features and functionality. Since core functionality is built on top of the xRM framework, modifying these objects is just as accessible as building them from scratch.

For example, suppose that instead of having “Orders” you have “Projects”. Instead of creating a new business object called project, why not modify the existing order entity and take advantage of its existing fields and functionality, and just add or take away what is relevant for your business. Either way you have not adversely affected performance or limited the amount of functionality you can have.

xRM Examples for Highly Specialized

Applications

Extensibility for Professional Services

Let’s take for example a small professional services company which receives a large part of its funding from state and federal grants. Instead of tracking orders in CRM, this company desires to manage projects and resources once a quote has been accepted and a contract signed. For this company, we would use xRM to modify the SalesOrder entity in CRM to handle project

(8)

Discovering the Potential of the Microsoft xRM Development Framework 8

budgeting and scheduling, and we would also create a couple of new entities to track hours worked against this project. We would then create custom forms which would allow resources to enter their time against each project they worked and that data would then feed into the budgeting component of the new project entity allowing managers to view actuals against the budget in real-time. Then, using CRM’s highly customizable reporting capabilities, we would produce the necessary reports to allow the company to report project details to the state and federal organizations, which provide their funding. In this case, we see the sales cycle merge seamlessly into the revenue cycle allowing the company to, with a single system, manage both customer service and delivery.

Extensibility for the Staffing Industry

In another example, let’s explore the use of CRM in a global staffing company to not only qualify leads and manage customers, but also to track employment candidates, qualify, and hire those candidates, and then assign those new staffing employees to customer orders. For this situation, we would need several new entities, as well as, significant modifications to existing ones. To support the business, we would make changes to the Product and PriceList entities to support Job Types and Skill Sets. We would create two new entities to represent the Candidate and the Assignment of that candidate to the Order. Then, we would modify the SalesOrder to be able to capture that Assignment or Assignments. Again, using xRM we are able to merge the Sales process with the Revenue and Delivery process, and by doing all of this with a single system, we have reduced the amount of

software applications to maintain and made it easier for employees at all levels of the business to find necessary information quickly.

Technology & Skill Sets Required

Dynamics CRM customizations fall into three major categories. The first category can be considered Product Configuration. Configuration of CRM involves the use of the CRM user-interface to add or modify business entities, fields, forms, views, relationships, security, and other standard xRM components. Forms can also be customized using JavaScript and other client side scripting technologies.

The second category includes plug-ins, workflows, and guided processes. Plug-ins are custom .NET code components that can be attached to very specific events and objects inside CRM. These components utilize the CRM API to retrieve and persist data within CRM.

The third category involves the development of standalone .NET applications that interact with CRM via the API web services layer. This would be necessary in the event that your solution needed a user-interface that cannot be created via the xRM tools or to facilitate complex integrations to other systems. Traditionally, developing custom applications/workflows for an extensible framework requires complex coding and an understanding of the vendor’s proprietary language. However, due to the design and flexibility of the xRM framework, standard .NET code can be used, and all the

(9)

Discovering the Potential of the Microsoft xRM Development Framework 9

functionality built using xRM is fully accessible via the CRM API web services component.

Microsoft’s CRM 2011 is available for installation on-premise or in the cloud. CRM 2011 in the cloud has feature parity with CRM on-premise and companies can quickly go-to-market by choosing the cloud option.

(10)

Discovering the Potential of the Microsoft xRM Development Framework 10

Conclusion

With the latest version of Dynamics CRM even more companies will begin to consider it as a viable solution not only for CRM, but also for its remarkable ability to be flexible and extensible. This unique ability ensures that the software can accommodate your unique business process, as well as, grow with your company, and change to create an optimal fit for both the business and the IT department which supports it.

(11)

Discovering the Potential of the Microsoft xRM Development Framework 11

References

Microsoft Dynamics CRM website (http://crm.dynamics.com/en-us/)

About the Authors

Chris Griswold is a Manager with Credera’s Microsoft Solutions Practice. He has over 13 years of experience in custom

software architecture design and development working with both Java and Microsoft technologies. Prior to joining Credera, Chris worked for a global application service provider where he was responsible for designing, architecting, and building very high transaction custom web applications for Fortune 100 companies. His prior work also included five years with one of the largest technology consulting firms in the world where he excelled in building custom Java web applications for clients in the telecom and energy industries. Since joining Credera, Chris has worked on a diverse collection of client engagements primarily focused on interpreting complex business requirements into powerful technology solutions. These projects have included architecting and building custom .NET web applications, as well as, implementing and customizing Microsoft Dynamics CRM. Chris has a B.A. degree in Computer Science from Baylor University and a M.S. degree in Engineering Management from Southern Methodist University. Chris is a certified Microsoft Dynamics CRM 4.0 Technical Specialist, a Microsoft Certified Business Management Solutions Specialist, and holds several other technical Microsoft certifications.

Rick Gipson is a Manager with Credera. He has more than 13 years of management and IT experience, specializing in

Microsoft web development and solutions. Prior to joining Credera, he was a Senior .NET Consultant/Architect with TEKsystems where he led project teams at American Airlines, NEC, Tyco Electronics, Siemens, and Greyhound. Recently, his projects have included business process automation, web service integrations, and Dynamics CRM deployments. Mr. Gipson is a Microsoft Certified Professional Developer in .NET 3.5 and received his B.B.A. in Business Administration and

Management from Angelo State University.

About Credera

Credera is a full-service business and technology consulting firm. Working with Fortune 1,000 companies, medium-sized businesses, government organizations, and clients across a broad range of industries, we provide the experience and commitment necessary to solve today's toughest business and technology challenges. Because it's not just about meeting expectations - it's about exceeding them. Founded in 1999, Credera is headquartered in Dallas, TX and hosts offices and staffing locations around the country, including Austin, Denver, and Seattle. For additional information, visit

www.credera.com.

Copyright © 2011 Credera. All rights reserved. Printed in the USA. 04/11 [MSFT-CG]

References

Related documents

This Census Paper uses income data from the 2016 Census to analyse the income distribution in Australia both within the Indigenous population and between the Indigenous

OMB Circular A-11, Part 7, describes the Exhibit 300 as, “a format for the IPT to demonstrate to agency management and OMB that it has employed the disciplines of good

-Natural gas heavy duty engines exist -Good payback if annual VMT is high -Vehicle design can fit CNG

1) Weekly measurement of four types of diagrams: DMM, DFD, WFA, and ERD (18 diagrams total, shaded part of Table 1). 2) Interviews of the project leader with a checklist to

Mice sensitized and challenged with CE using the short term protocol developed AHR (Figure 1B) and increased numbers of inflammatory cells (Figure 1C), primarily eosinophils

Per University Policy S16-9, university-wide policy information relevant to all courses, such as academic integrity, accommodations, Student Counseling and Psychological

Here, we describe a piezoelectric membrane-based approach that uses specific interactions with magnetic beads to quantify prostate cancer biomarkers with many advantages for

Applicants with a three-year bachelor’s degree from the following countries will be considered: Australia, Canada, Bangladesh, New Zealand, Pakistan, Bhutan, Nepal, South