Extensio Excel Technical Whitepaper

Embed Size (px)

Citation preview

  • 8/2/2019 Extensio Excel Technical Whitepaper

    1/19

    Extensio Software, Inc. 1

    There is no denying tha t spreadsheets have becom e cr i t ica lor al l operat ional processes inc luding repor t ing, budge t ing,

    o r e c a s t ing , and ana lys i s. M icr os o ft Excel has essent ial lybecom e a s cr a tch pad and a da ta b r ow s er tha t can q u ick lybe put to use for in format ion ga thering and d ecis ion-m a king . How ever , ther e i s l i tt l e con t r o l in how da ta com es

    i n t o E xc e l , and how i t ge t s upda t ed . T h e i n f o r m a t i o ns u pp ly cha in f eed ing in to Ex ce l r em a ins ad hoc a nd wi thou t any ce n t r a l i zed IT con t r o l .

    This pape r sugges ts the use o f Extens io technolog y for dataco l l ec tion and da ta m a in tenance pr oces s in Ex ce l . I t thendescribes how E xtensios ser v i ce-o r i e n t e d a r c h i t e c tu r e( SOA ) bas ed in fo r m a t ion ga ther ing and con t r o l t echn iq u esam el io ra te the p i t f a ll s o f u s ing Ex ce l wh i le im pr ov ing thein tegri ty o f da ta , boost ing the produ ct iv i ty o f the business

    users , and bu i ld ing con tro ls to sa t is fy the requ ireme nts o f Se c t i on 404 o f the Sarba ne s-Oxley Act.

    Controlling the Information Flow in

    Microsoft Excel with Extensio

    For more information, please contact: [email protected], or call 1.408.961.6050.C o py ri g h t E x te n si o So ft w a re , In c . 2 00 5. A ll ri g h ts re se rv ed . A ll o th er tr a d em a rk s a re p ro p ert ie s o f th e ir re sp ec ti ve o w n ers .

  • 8/2/2019 Extensio Excel Technical Whitepaper

    2/19

    Extensio Software, Inc. 2

    here are plenty of examples of full-fledged Microsoft Excel based businessapplications with multiple inputs, outputs, and graphs that are being used for criticalbusiness processes in many companies. The reasons for Excels widespread

    adoption by its 400 million users include its perceived simplicity, familiarity, andmodeling abilities. However, the businesses also have to live with the various data collectionand logic errors that creep into these spreadsheets. In this paper, we would be focusingmainly on the errors in data collection and in the flow of information in and out of Excel.

    While primitive data gathering tools that import external data into Excel have been availablefrom the inception, most users still depend upon populating their handpicked data intoExcel using C ont ro l-Cand C ont ro l-V. Given the nature of critical operations that the businessusers perform with Excel, and the increased control measures mandated by the Sarbanes-Oxley Act, it is increasingly becoming urgent for businesses to remove dependency onC ont ro l-Cand C ont ro l-V primitives and also address the quality, freshness, and the accuracy of

    data in Excel.

    This paper describes how the Service-Oriented Architecture (SOA) based ExtensioInformation Delivery Server coupled with a customized Excel Add-In addresses theproblems associated with the information supply chain of Excel for regular business users.Extensio enables users to automate data collection through the use of Information Servicesinstead of Control-C and Control-V operations, and enables them to update the data in theback-end applications from the spreadsheet itself. The Extensio technology for Excel boostsuser productivity, improves data integrity, and addresses some of the requirements ofSarbanes-Oxley Act without compromising on the flexibility and ease-of-use of Excel.

    1. MANAGING INFORMATION INSIDE EXCEL SPREADSHEET

    Spreadsheets started off as a personal productivity tool for calculations and managingoperations with persistent data. It then evolved into a scratch pad to keep lists, performmathematical functions, and show graphs. Later, Excel began to be used for collecting datafrom multiple places,building informationmodels, and conductingiterative and incrementalanalysis. Somewhere alongthis time, Excel also startedgetting used as a groupproductivity tool eventhough there were nospecific features that helpedwith the collaborative effort.Today, Excel basedapplications exist in most

  • 8/2/2019 Extensio Excel Technical Whitepaper

    3/19

    Extensio Software, Inc. 3

    companies performing tasks ranging from simple ones such as weekly reporting to complexones such as financial accounting, budgeting, forecasting, and operational planning. Despitehuge investments in IT, most business users still depend upon handpicking data for Excelfrom CRM, ERP, Portals, and databases.

    In a survey by CFO IT [Durfee 2004] of 168 finance executives on the use of IT bycorporate finance departments, they found that only 2 out of 14 finance-specifictechnologies were widely used, and they were spreadsheets (100%) and basic budgeting andplanning systems (66%). The survey also reported that when executives were asked aboutthe usage of spreadsheets five years from now, 91% of them thought that the spreadsheetswould have the same or more importance.

    The extent of Excel usage in enterprises is indeed quite deep and widespread. According toForresters Keith Gile [Gile 2005], 14 percen t o f end users are producers - those who create analy t icr e por t s and au t hor e n t e rpr i s e r e por ts . The r e m a i n ing 8 6 pe r c e n t a r e c ons u m e r s o f t he in fo r ma t i on and d a ta . He further adds that most business users (25% of the total) and casual users (30% of the

    total) prefer canned reports, or reports in Excel formats that they can then parameterize anduse. Further, the extended enterprise users (38%) need read-only Excel reports.

    As Excel is here to stay for a long time within businesses, it is important to mitigate some ofthe pitfalls without sacrificing its ease-of-use. Excel is indeed a free-format scratch pad, butunfortunately is getting used by business users who are not trained in structuredprogramming, and version control [Panko 2000]. The free world of spreadsheets makesthem vulnerable to the following types of errors:

    Input errors: These errors are due to inaccurate cut-paste, inadvertent changes in cells,incorrect links, import of incorrect data or import with wrong parameters.

    Logic errors: These errors are due to incorrect formulas, and incorrect input data.

    Usage errors: These errors include incorrect use of functions, ranges, and references.

    For the remainder of this document, we would be concerned mainly about input errors,how data comes into Excel, and how it is maintained in the spreadsheet.

    1.1 Current Methods for Getting Data into Excel

    Here are the drawbacks of the common ways/tools used by users to get data in Excel:

    Tools Used LimitationsCopy-paste external

    data with Control-C,Control-V

    Manual process, with high error and no validation

    No trace of the source of dataUsers need to reformat data as per their requirements

    Neither systematic nor reproducible process

  • 8/2/2019 Extensio Excel Technical Whitepaper

    4/19

    Extensio Software, Inc. 4

    Tools Used Limitations

    Import the .xls or .csvfile created by the

    application

    No linkage with the originating application

    Users need to reformat data as per their requirements

    Does not support update of data using ExcelLimited use when data is in multiple applications

    Import from databasesusing ODBC

    Considered complex for typical business users as itrequires knowledge of database structures and SQL

    Not applicable when the source is not a database

    Practical only with few resources and few users

    No meta-data available for advanced manipulations

    Import using webquery

    Typically used for HTML reports from public pages

    Requires users to specify the complete URL along withparameters and embedded authentication information.

    No ability to select fields, or header information.Import data using webservices (Excel 2003Prof. edition only)

    Considered complex for business users as they need tospecify the web service, and map the XML schema

    Works only with web service resources

    Authentication issues with multiple web services

    Access data warehousewith Excel Add-in

    Works only against historical data in data warehouse

    Unsuitable for daily operational needs of typical users

    Not possible to update data

    None of the above approaches are satisfactory as they have the following deficiencies:

    Loss of Linkage. Once data is copied without tracking the source of data, anyupdates in the source cannot be propagated to the eco-system.

    No Support for Multiple Sources. Much of the data needed comes from multipletypes of sources. Doing it manually is error-prone and time consuming.

    Stale Data. Without easy ways to refresh data, decisions are made with old data if ittakes a long time to collect data.

    Non-repeatable and difficult-to-manage process: Each user performs theseoperations independently on their own spreadsheets making it impossible for IT toverify, automate, audit or validate the data transfer mechanism. Further, due to lackof IT management and control, efforts spent in building expensive dataimports/exports cannot be re-used within the organization.

    Read-

    Only Data. Without being able to update the back-end right from Excel,users have to learn new applications, and depend upon copy-paste to transfer data.

    Lack of Ease-of-Use. If the data collection process is cumbersome, the users arelikely to go back to their current cut-paste model to meet their objectives.

    Missing Audit Trail. Without the means to track the spreadsheets as they change,compliance and auditing becomes difficult.

  • 8/2/2019 Extensio Excel Technical Whitepaper

    5/19

    Extensio Software, Inc. 5

    1.2 Sarbanes-Oxley (SOX) Enters the Picture

    The SOX regulations mandate that companies need some controls over all aspects offinancial reporting. Most data that business users touch have some impact, whether direct orindirect, into the financial reporting of the business. Starting from a sales person, to an

    inventory manager, or a warehouse manager, all submit their figures using Excel. Thechannel or the resellers also aggregate their bookings, returns, and forecasts, all using Excel.

    Computer World [Horowitz 2004] reported, F a n n i e M a e m a d e a $1.2 billion accountingerror l as t year becau se o f w hat it ca l led hone s t m i s tak es mad e i n a spreadshee t . T ransA l ta C orp . t ook a$24 millioncharge a f t e r a sna f u caused by a cu t -a n d-p a s te e rro r in a n E xce l sp rea d shee t .

    The real problem is that the C ont ro l-C , C o n t r o l-Vprimitives take zero time to master, andwhile this works in the favor of busy business users, it doesnt create a systematic andreproducible process that can stand the scrutiny of their departmental policies and financialauditors. This increases the long-term cost of the Excel-based solution including its

    maintenance, auditing and compliance.

    Excels autonomy is what made it popular, but without adequate controls, this can become ahuge liability. The challenge is to address the following SOX compliance issues whilekeeping usability into consideration:

    Control over the data input and output process for spreadsheets

    Control over who is authorized to get that data

    Control over who modified the data, and when

    Control over how repeatable is this entire process

    1.3 Paying for the Inefficient Information Supply-Chain for Excel

    The key constituencies that pay for these inherent Excel weaknesses are:a) Business Users: The users pay dearly by the hours they take in data hunting -and-

    gathering. They also take hours in learning how to get data from multiple sources.b) IT Department: The IT departments pay because once the data leaves their home

    repositories they lose control over it. As the data spreads through the enterprise, there isloss of the attached metadata, security, management, integrity, and data constraints.Locking the data repositories from user access is not a viable alternative, as it wouldforce IT to do all the reporting work, and increase their load.

    c) Business: The business suffers because decisions are made with stale, inaccurate, andinsufficient data. There is no single version of truth across the enterprise.

    2. CONTROLLING THE INFORMATION FLOW WITH EXTENSIO

    There are two root causes for the information flow problem. The first is that the users dealwith data directly and touch it by hand, and the second is that there is no control over thedata once it leaves the IT managed application repositories and reaches Excel.

  • 8/2/2019 Extensio Excel Technical Whitepaper

    6/19

    Extensio Software, Inc. 6

    The Extensio Information Delivery technology provides the means for controlling the flowof information in/out of Excel. Essentially a service-oriented architecture (SOA) basedInformation Delivery Server and an Excel add-in, Extensio provides an abstraction layer thatextracts data from multiple back-end data sources and delivers them directly into Excel.

    The Extensio technology is designed to hide the end-users from the technology complexityof underlying multiple enterprise applications, and it provides an easy-to-use mechanism ofdelivering information services that the user can pick, choose and drop on desired Excelcell locations. This approach ensures that the users work with simple and easy to useinterfaces, while technology is handled and managed by the IT side, which is equipped andtrained to handle for this complexity. Further, since information services are built, designedand managed by IT, it provides for better data and access controls.

    2.1 Introduction to Information Services

    Information Services, broadlyspeaking, can be defined as alogically grouped set ofinformation elements, extractedfrom data source(s) about aninformation entity (the key).An information service mayhave information elementscombined from multiple datasource, or could be the result ofsome transform operation on

    the original data. For example, a Customer Information service may take a customer ID andreturn the Customer name, address, phone number, and credit rating. End users view andconsume this service without knowing that the customer name, address and phone numbershave come from their back-end CRM application, while the credit rating has come fromtheir custom database application or a SOAP service. These information services aretypically hosted on a server within the data-center.

  • 8/2/2019 Extensio Excel Technical Whitepaper

    7/19

    Extensio Software, Inc. 7

    By moving to a service-based approach, the users just specify the service they want (e.g.customer rating service), and then get the related data from the service directly into theirExcel cells, without having to know the where, the how, and the when of the data. It is theservice now that knows the details of getting the data and not the user.

    2.2 Extensio Information Delivery Technology for Excel: Key Benefits

    The Extensio SOA based Information Delivery Server and the Extensio Extender for Excelat the users desktop provides the foundation for managing the information flow into Excel.The underlying SOA architecture improves the accessibility and quality of data from back-end resources, while the Excel Extender automates data delivery, and limits the human error.

    Here are the main benefits of Extensio enabled Excel:

    Automates data collection: Allows users to collect/refresh data without c o p y -p a s te

    Ensures data integrity: Enables one version of truth by linking cells to the source.

    Updates data: Allows users to update data in back-end sources directly from Excel.

    Audits cell updates: Allows viewing of previous n values for auditing or tracing.Version Control. Enables users to easily switch between versions of worksheets.

    Centralized control. Centrallymanages all service/resource changes and security.Primed for growth. Supports a large user base, both internal and external.

    2.3 The SOA based Extensio Information Delivery Technology

    The Extensio Information Delivery server using service-oriented architecture provides aloosely coupled integration of the back-end resources such that it masks the applicationconsuming this data from the underlying IT complexity. This complexity includes the back-end resource structure, data-format, session management, security, and connection pooling.

    The main value of the Extensio SOA-based architecture is in deriving value out of theexisting applications and resources without duplicating data, business logic or securityefforts. The SOA based Extensio framework is composed of the following elements:

    Resource Native Interfaces to connect, authenticate, and access back-end sourcesusing SOAP, SQL, HTTP, SAP BAPI, or other custom protocols.

    Information Integration Layer to combine the data from multiple sources. Thiscan be a simple JOIN statement to complex scripting depending upon the needs.

    Information Delivery Layer to expose the combined data elements as aninformation service that can be consumed by end-users, or devices.

    Information Service Directory to publish service directory and service schema

    In addition to the SOA framework for collecting data, the Extensio technology implementsthese additional components to provide end-to-end Information Delivery:

    Presentation Layer Modules to map the result data to interfaces such as Excel

    Authentication Protocols to connect and authenticate various end-user interfaces

    Front-end interface specific service publication and registry

    Front-end interface specific update process

  • 8/2/2019 Extensio Excel Technical Whitepaper

    8/19

    Extensio Software, Inc. 8

    The Extensio Information delivery servercontains the service metadata elementssuch as the data keys, connection details,transformation, assembly, resourceinformation, and security. The servicespecific meta-data is stored in a XML rulesdatabase and used at run-time for requestprocessing. If there are any changes to thequery, they can be made centrally withoutany user impact.

    The server publishes a directory containingthe services and their attributes. When theuser chooses the service and the inputparameters, and sends the request to theserver, the server responds by calling the

    enterprise application, getting the result inthe native format, extracting the relevantdata, converting the data format and finallysending results to the end-user.

    The Extensio Extender, implemented as an Excel Add-in, provides the end-user interfaceand the delivery component. It sends the users parameterized requests to the Extensioserver using XML/HTTP. The Add-in then interprets the XML results sent back by theserver and updates the cells. By sending the results back as XML, the Extensio Serverretains the ability to send any other related meta-data such as refresh period, associatedupdate services for this element, any special formatting, and other future requirements.

    2.4 The Extensio Extender for Excel

    The Extensio Extender for Excel is an Excel Add-in that gets downloaded on users desktopfrom the web. Extensio leverages the well-defined Excel Add-in interfaces to add customcommands and features. While most Add-ins typically just manipulate static Excel data, theExtensio Add-in does a lot more including contacting the Server, and fetching/updating externaldata. The Extensio Add-in embeds a toolbar as shown to enable the user to invoke services.

  • 8/2/2019 Extensio Excel Technical Whitepaper

    9/19

    Extensio Software, Inc. 9

    3. DATA COLLECTION AND UPDATE USING EXTENSIO

    3.1 Select the Service

    The Excel users use the toolbar fromtheir Extensio Extender to browsetheir authorized services as servicemenu with information elements. Asshown in the adjoining figure, usersclick on the Query button from thetoolbar, select the service category,and then select one of the authorizedthe services. In this particular case,the user has selected the Product

    Lookup service from the set ofauthorized services.

    3.2 Inputs for the Service

    After selecting the service, the userprovides the input parameters, ifrequired. The parameters are providedeither as values, the location, or arange of addresses. The range istypically useful in cases where the usemay want to fetch multiple items such

    as a range of product items (e.g.=A2:A10). With input parameters,services can take inputs directly fromusers current spreadsheet.

    3.3 Output Locations

    Once the inputs are provided, the userselects the output locations such as thestarting cell where the results should bepasted, and the specific fields ofinterest. This allows the user to embed

    the selected data at the location orcolumn of choice without interferingwith the existing format of thespreadsheet. The flexibility of both theoutput and the input are key for theacceptance of such solutions.

  • 8/2/2019 Extensio Excel Technical Whitepaper

    10/19

    Extensio Software, Inc. 10

    3.4 The Result in the Spreadsheet

    The request is then sent to the Extensio Information server, and the resulting data isdisplayed in the users spreadsheet based upon their preferences as shown below. The userstill retains the freedom to delete the rows/columns, or move them as required.

    Once the data has been obtained, these data values can be refreshed as explained later to

    keep the data in sync with the back-end applications.

    3.5 Preformatted Reports

    Extensio also enables users to get pre-formatted reports along with theirpredetermined fields, headers and footers.Users choose from the authorized reportsmade available from the Extensio Server,provide any input if required, and specifythe location of the report. Once thereport has been obtained, the report can

    be refreshed later.

    Preformatted reports are especially usefulwhen the users want to get pre-cannedreports in just one click.

  • 8/2/2019 Extensio Excel Technical Whitepaper

    11/19

    Extensio Software, Inc. 11

    3.6 Data Refresh

    Once services or reports have been imported intothe spreadsheet, the data can then be refreshed ondemand or after a predetermined time interval

    automatically. If the user has multiple services inthe same spreadsheet, they can be refreshedseparately. The user can also decide to refresh theentire worksheet or the entire workbook at thesame time.

    With one-click refresh of data, the decisions can bemade quickly, and with more accuracy.

    3.7 Related Information with Bubble-up

    One of the deficiencies of Excel is inbeing able to get related informationabout any specific cell value. For

    example, if a user is looking at theProduct availability sheet, he/she maywant to find the product pricing. Theonly way to get this data today is for theuser to use some ERP, CRM, or SCMapplication to get those details. Thisrequires training, takes time, and distractsthe user from the current task at hand.

    Extensio provides a quick way tobubble-up related information about anycell. The user just picks the service fromthe desktop toolbar, ALT-clicks on the given cell, and gets the related information in a pop-up window. For example, if the user is looking at the Product availability sheet, but wants tofind the product pricing, the user can invoke a query using ALT-Click from the cell itself toget the results as shown. In addition, the user can click on any of the other services on theleft hand side of the menu to get a 360o view on that object.

    3.8 Data Update Using Extensio

    In addition to the lookup service, the user can use the Extensio Extender to update, insert,or delete data in the back-end systems from the current spreadsheet itself as shown.

    The Extensio Extender gets the details of columns of the data to be updated from the user,and performs the basic validation function on the data provided, before sending the userrequest to the Information server. The server sends the updates to the respective sources.

  • 8/2/2019 Extensio Excel Technical Whitepaper

    12/19

    Extensio Software, Inc. 12

    Both the server and the back-endsystems may apply additional logicbefore accepting the user updates.

    Any later updates can be made usingthe established templates that definethe location and the service to be usedfor updates.

    By being able to use Excel as a front-end for update, the users do not haveto learn other applications, and do nothave to again resort to copy-paste toget the data to the application.

    4. SPREADSHEET MAINTENANCE USING EXTENSIOFor Excel to become a reliable and dependable tool, in addition to the automatic collectionof data, it also has to be able to audit, checkpoint, and look at the cell properties.

    4.1 Cell Level Audit

    Extensio allows the user to audit every cellto find out the values over the history ofthe spreadsheet along with informationsuch as who changed it and when.

    This audit feature is specifically usefulwhen the spreadsheet is reviewed byothers, or when others have updated thespreadsheet, and the user wants to knowthe previous values for historical orcomparison purposes.

    4.2 Version Control

    Most users typically maintain variousversions of the spreadsheets such as theirmonthly and quarterly reports, but

    managing multiple files gets cumbersome.With Extensio Checkpoint and Restore,the users can maintain multiple versionswithin the same Excel file. Users justcheckpoint their data at appropriate time,and then on need restore the spreadsheet

  • 8/2/2019 Extensio Excel Technical Whitepaper

    13/19

    Extensio Software, Inc. 13

    for auditing or archiving.

    4.3 Highlight Linked Cells

    In any complex spreadsheet, users find

    it difficult to track their input cells, theexternal cells, and their own cells. TheExtensio Extender provides visual cuesto the user so that the spreadsheets canbe analyzed easily using the appropriatecues for input (green), output (purple)and users own custom data (noshading).

    When external data is mixed withinternal user data, it is important for the

    user to be able to easily see the differenttypes of cells for faster debugging andauditing. This improves the usabilityand acceptance by the regular businessusers.

    4.4 Block Cells from Unintended Modifications

    In any critical spreadsheet, it becomes essential that users ensure accuracy of data by lockingcertain cells from getting modified. The Extensio Block feature disallows any modificationsfrom end-users in the Extensio delivered cells, while still retaining the capability for them tobe refreshed from the Extensio Server.

    5. DEFINING AND BUILDING INFORMATION SERVICES

    The IT department in conjunction with the business analysts and users typically develops theExtensio information services. Alternately, the application vendors can ship prepackagedinformation services that access their own applications, and then the IT department canmodify those services, and change the layout and the fields required by the users.

    5.1 Building Services with Extensio Studio

    The IT Developers use the Extensio Studio, the service development environment andfollow these steps to build the services:

    1. Identify information entities such as customer, products, shipment, or employeesand define their programmatic or custom validation and mapping.

    2. Identify the data sources that contain information elements for the entity.

  • 8/2/2019 Extensio Excel Technical Whitepaper

    14/19

    Extensio Software, Inc. 14

    3. Define the rules to fetch/update data from data sources using the resourcespecific wizards such as the SQL query wizard, SOAP wizard, XML/HTML filter,LDAP wizard, and the IMAP filter. One such panel for the database adapter isshown below. In addition to SQL query, it can also execute stored procedures.

    If it is a SOAP web service, it can access the service details from the providedWSDL location, or the developer can provide the method details. In addition to theabove listed technology adapters, Extensio also provides adapters to popular ERPand EAI technologies.

    The Extensio adapter development kit could also be used to write new adapters.

    4. Optionally transform and map the result data using Java and JavaScript.

    5. Optionally invoke additional request processes, whether in series or in parallel,that can take the result of the existing request process for further processing.

    6. Assemble the results returned from multiple request processors with a simple drag-and-drop process, or add some custom processing to further filter the results.

  • 8/2/2019 Extensio Excel Technical Whitepaper

    15/19

    Extensio Software, Inc. 15

    7. Define the presentation format as appropriate for Excel, desktop, PDA or mobile.This

    figure

    sho

    ws

    The above figure shows the presentation layer for Excel where the developer canchange the default suggested layout and headers.

    8. Publish the information service on the Extensio tool bar, the Extensio servicesdirectory for the end-user.

    9. Assign user/group permissions for information services.

    Depending upon the complexity of the service, it may take from a few minutes to a fewhours to build a set of information services, whether for lookup, reports, update, or alerts.

    The meta-data attached with the information service is typically stored in a XML rule that isthen used at run-time for processing the service request. If there are any changes requiredsuch as a modified query, they can be made at the server-level without impacting the user.

    5.2 Security Considerations

    Security is an important consideration for information integration and delivery approachesusing SOA. It is important to support applications own access control and authentication,and yet provide a unification layer that simplifies administration, ease-of-use, andstrengthens security. Many of the issues are the similar to the ones faced by portal

    implementations as portals also integrate and unify data from multiple back-end resources.

    5.2.1 AuthenticationIn addition to supporting its own native username and password authentication, Extensiointegrates with the existing LDAP directories for user password verification. Custom single-sign-on (SSO) modules can be built to accommodate the SSO requirements.

  • 8/2/2019 Extensio Excel Technical Whitepaper

    16/19

    Extensio Software, Inc. 16

    If the application requires individual user logon, Extensio provides a secure credential storethat provides the user credential at run-time to the application. Alternately, if the applicationtrusts the Extensio server, it can proxy on behalf of the users.

    5.2.2 AuthorizationExtensio enforces access controls for service registry lookup and service execution (read,update, alerts) at both user and group levels. Depending upon the application requirements,the application can also enforce its own access control policies.

    5.2.3 EncryptionExtensio provides transport encryption between Extensio Add-in and Extensio Server usingHTTPS. It also implements the available encryption protocols between the Extensio serverand the various back-end resources.

    5.2.4 Separation of Role for AdministrationExtensio supports special roles for service development with E x t e n s i o S t u d i o , serveradministration with Ex te n s io Co n so le , and user management with E x t en s i o U s e r M a n a g e r .

    5.3 Performance Considerations

    The Extensio Information Delivery server adds a thin-layer between the client and the back-end resources. Depending upon the service requirements, its own processing and assemblyoverhead ranges from a few milliseconds to tens of milliseconds. The Extensio Server canpre-fetch data or tables so that there is minimum load on the operational data stores. It alsocaches the results for faster processing.

    5.4 Deployment Configurations

    The Extensio Information Server supports the most commonly deployed Microsoft Exceland desktop OS within the extended enterprise. Please refer to the Appendix for details.

    The Extensio Server connects to a variety of back-end systems with its Technology Adaptersfor standards based technology, Application Adapters for ERP systems and portals, andMiddleware Adapters for EAI systems. The Adapter development kit can also be madeavailable for connecting it to other sources.

    The J2EE based Extensio Server itself runs on a wide range of commercially available andopen source software for application servers, databases, and LDAP.

    For details, please refer to the Appendix.

    6. BENEFITS OF EXTENSIO ENABLED EXCEL

    The Extensio Information Delivery Server and the Extensio Extender for Excel work intandem to manage the information flow into Excel spreadsheets.

  • 8/2/2019 Extensio Excel Technical Whitepaper

    17/19

    Extensio Software, Inc. 17

    For any IT solution to succeed, it is important that it address the requirements of all majorconstituencies including the end-users, the business and the IT. The end-users on one endwant agility, flexibility, and immediate delivery of data, and the IT on the other hand wantscontrol, ease-of-deployment, and reuse of existing investments.

    6.1 Benefits for the Business User

    By supporting a service-based model with Extensio Information Delivery server andExtensio Add-in, the enterprises can provide their employees, partners, and customers all oftheir relevant data right within their daily tool, Excel. In particular, Extensio benefits theusers in the following ways:

    Provides relevant data to a wide variety of business users in Excel whilemaintaining the ease-of-use and flexibility of Excel. This includes casual users,power users, management, and extended enterprise users.

    Boosts productivity by eliminating the time spent in moving data in/out of Excel.Having a replicable and verifiable data collection process minimizes risk, and

    increases the confidence in the numbers.Enables decisions with accurate and latest data without the users having to dealwith the complications of the back-end applications. Extensio provides one versionof truth,minimizes data conflicts, and reduces spreadsheet proliferation.

    Updates the back-end applications from Excel directly instead of copy-paste,and thereby improves productivity, and eliminates errors.

    Provides audit trail of changes and version control within Excelfor tracking,archival, and maintenance of spreadsheets.

    Reduces dependency on IT stafffor periodic reports as users have direct access totheir relevant data.

    6.2 Benefits for the IT Department

    By moving to a SOA based Extensio Information Delivery, the IT benefits significantly inthe following ways:

    Shrinks the load of creating custom reports with the users becoming self-sufficient with authorized access to their relevant data.

    Connects existing internal and external applications to Excel without rip-and-replace, but with the embrace-and-extend model using SOA.

    Support internal and external users with support for HTTP/HTTPS, and supportfor all existing versions starting from Excel 2000.

    Reduces compliance issues by providing fresh data, avoiding copy-paste,

    eliminating user errors, and centralized control over information access. Extensioprovides controls for SOX compliance, and makes the data collection and updateprocess repeatable, verifiable and controllable.

    Secures the Information Supply Chain with centralized control and encryption.Provides centralized control over data and services.

    Extends the enterprise data to all desktop applications and mobile without anyadditional effort, and thus increases the value of the IT investment to all users.

  • 8/2/2019 Extensio Excel Technical Whitepaper

    18/19

    Extensio Software, Inc. 18

    7. SUMMARY

    Most businesses depend upon spreadsheets for financial reporting and managing operationalprocesses. However, this flexibility comes at a significant cost of data integrity, loss ofproductivity, and loss of IT control. The paper highlighted some of the reasons for these

    information flow problems, and proposed a service-oriented architecture through which onecan have adequate controls to mitigate these risks.

    With its SOA based Extensio Information Delivery Server and Extensio Extender for Excel,users can use information services instead of cutting-and-pasting data. This retains the linkof the Excel with the enterprise data sources, and improves IT control over the data in thespreadsheet. Besides helping in compliance with Section 404 under Sarbanes-Oxley, theproposed approach boosts productivity, improves data integrity, and increases security whileretaining Excels flexibility and ease-of-use.

    REFERENCES

    Panko R. (2000), What We Know About Spreadsheet Errors, http://panko.cba.hawaii.edu/ssr/

    Horowitz, A. and Betts, M. (2004) Oops! Many spreadsheets have errors, Computer World, May24, 2004,http://www.computerworld.com/databasetopics/businessintelligence/story/0,10801,93294,00.html

    Gile, K. (2005) How Sexy Reporting Has Become, DM Review, Jan. 2005,http://dmreview.com/article_sub.cfm?articleID=1016330

    Durfee, D. (2004), Spreadsheet Hell, CFO.com, June 2004,http://www.cfo.com/printable/article.cfm/3014451?f=options

    http://www.cfo.com/printable/article.cfm/3014451?f=optionshttp://dmreview.com/article_sub.cfm?articleID=1016330http://www.computerworld.com/databasetopics/businessintelligence/story/0,10801,93294,00.htmlhttp://panko.cba.hawaii.edu/ssr/
  • 8/2/2019 Extensio Excel Technical Whitepaper

    19/19

    E t i S ft I 19

    APPENDIX: SUPPORTED CONFIGURATIONS AND PLATFORMS

    Supported Client Configuration for Extensio Extender:

    Desktop OS Windows 98 and laterMicrosoft Excel Microsoft Office/Excel 2000 and later

    Desktop Applications All Windows applications including PDF, Microsoft Outlook, Word,and Powerpoint

    Internet Browser Microsoft Internet Explorer 5.5 and later

    Disk-space on Client 2 MB downloadable Add-in, and 4 MB of disk-space

    Memory Needed 64 MB and higher

    Run-time Environment for Extensio Information Delivery Server:

    Application Server IBM Websphere, Oracle Application Server, JBOSS, Pramati, Tomcat

    Server OS Windows, LinuxDatabase Oracle, IBM, Microsoft SQL Server 2000, mySQL

    LDAP Microsoft Active Directory, IBM, Sun, OpenLDAP

    Processor Pentium class III server machine with 1GHz or higher

    Disk-space 100 MB

    Memory requirements 512 MB or higher

    Supported Back-end Resources:

    Extensio Technology Adapters for Standard Interfaces:

    Databases: Oracle, IBM, Microsoft SQL Server, Microsoft Access, mySQL

    HTTP/HTTPS

    SOAP/XML

    Microsoft Excel

    Flat files

    LDAP

    IMAP

    Extensio Application Adapters:

    SAP

    IBM WebSphere Portal Server

    Microsoft Exchange

    Extensio Middleware Adapters:WebMethods EAI

    IBM MQ Series

    Th is l i s t keep s g e t tin g rev i sed o n a reg ula r b a s i s . P lea se co n ta c t sa le s@ex ten s io .co m fo r la tes t in format ion on sup por t fo r s p e c if ic v e r s io n s o f a p p li c a ti o n s a n d te c h n o lo g ie s .