Business Intelligence Portfolio - SSIS, SSAS, SSRS, SQL Server, SharePoint (MOSS), Excel Services, Performance Point Server

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    6 Favorites

    Business Intelligence Portfolio - SSIS, SSAS, SSRS, SQL Server, SharePoint (MOSS), Excel Services, Performance Point Server - Presentation Transcript

    1. Business Intelligence Portfolio by Sheryl Underhill May 2009
    2. Table of Contents Executive Summary 3 OLAP Data Modeling 4 SQL Server Integration Services (SSIS) 5 SQL Server Analysis Services (SSAS) 12 Calculated Members, KPIs, Excel Services 16 MDX Queries 22 SQL Server Reporting Services (SSRS) 26 Excel Services Pivot Chart 30 Microsoft Performance Point Server (PPS) 31 Microsoft Office SharePoint Server (MOSS) 37 Resume 43 2 Business Intelligence Portfolio © Sheryl Underhill 2009
    3. Executive Summary Introduction This Business Intelligence Portfolio contains a small sampling of project work related to 500+ hours worked in an intense, boot-camp style, hands-on Business Intelligence training course with SetFocus LLC using the following Microsoft core technologies: • SQL Server 2005 T-SQL • SQL Server 2005 MDX • SQL Server 2005 • SQL Server 2005 Integration Services (SSIS) • SQL Server 2005 Analysis Services (SSAS) • SQL Server 2005 Reporting Services (SSRS) • Microsoft Office 2007 SharePoint Server (MOSS) • Microsoft Office 2007 Performance Point Server (PPS) The purpose of the portfolio is to demonstrate the depth and breadth of hands-on project work, which approximates two years’ work experience in business intelligence. Project Summary Design and build a complete Business Intelligence solution for a simulated construction company “All Works” to capture, validate, track, report and analyze operational and financial data about employees, customers, and job orders. Project Goals • Create an ETL Database Staging area • Create an ETL solution to update the SQL Server 2005 database from Excel and flat file sources using SQL Server 2005 Integration Services (SSIS). • Create an OLAP cube using SQL Server 2005 Analysis Services (SSAS). • Create required Hierarchies and Partitions, and define Calculated Members and Key Performance Indicators (KPIS) in SSAS. • Write custom MDX queries based on given specifications. • Create a variety of parameterized reports and charts using SQL Server 2005 Reporting Services (SSRS) and Microsoft Excel. • Create several parameterized reports, charts, scorecards and dashboards in Microsoft Office 2007 Performance Point Server (PPS). • Implement SSRS, Excel, and PPS reports, charts, scorecards and dashboards in Microsoft Office 2007 SharePoint Services (MOSS). 3 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    4. OLAP “Star Schema” Data Model Visio was used to design the OLAP “Star Schema” model for the OLTP database staging area. We could use Visio to generate a T-SQL script to create the database staging area. The staging area is an abstract representation of the OLAP cube that we’ll eventually build with SQL Server Analysis Services. Before building the cube in SSAS, we need to extract, transform and load our data into the OLTP database staging area using SQL Server Integration Services (SSIS). SAMPLE NOTES: s6: Create unique indexes on CustName and CustAbbr to use in a dropdown. s7: The CustCategory attribute is in this table as a part of a Star Schema, but it could be placed in a separate table in a Snowflake Schema. 4 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    5. SSIS Project - Order & Flow of All Packages The Master package controls the order and flow of execution of all packages in the SSIS project. A “success” or “failure” email is generated after each package within the Master package is executed. A “success” email includes counts of records read, updated, and inserted into the SQL Server 2005 database. The email also includes a count of invalid records, along with an attached log file that lists the invalid records for resolution. This satisfies two business requirements: (1) prevent bad data from being included in the OLAP cube, and (2) notify data owners about bad data so they can clean it up. 5 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    6. SSIS Project - Job Time Sheets Control Flow The Project Job Time Sheets package is one of ten packages in the project. The Control Flow handles the reading of a variable number of Project Job Time Sheets using a ForEach container. Record counts are handled here, as well as the sending of a “success” or “failure” email at the completion of package execution. 6 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    7. SSIS Project - Custom .NET Code in a Script Task Appropriately scoped variables and custom Visual Basic .NET code written inside a Script Task control flow object allow us to get file- level and package-level row counts processed through a ForEach container. The counts are included in an email sent upon the completion of package execution. 'This script gets each file's row counts from container-level variable and then adds each 'file's counts to the package-level row count variables Public Sub Main() 'declare & set variables for file-level row counts that reset at the start of 'each loop in the FOREACH container Dim TotalSheetRowsRead As Integer = CInt(Dts.Variables("TotalSheetRowsRead").Value) Dim TotalSheetRowsInserted As Integer = CInt(Dts.Variables("TotalSheetRowsInserted").Value) Dim TotalSheetRowsModified As Integer = CInt(Dts.Variables("TotalSheetRowsModified").Value) Dim TotalSheetInvalidJobMasterID As Integer = CInt(Dts.Variables("TotalSheetInvalidJobMasterID").Value) Dim TotalSheetRowsNullFields As Integer = CInt(Dts.Variables("TotalSheetRowsNullFields").Value) Dim TotalSheetInvalidEmployeeID As Integer = CInt(Dts.Variables("TotalSheetInvalidEmployeeID").Value) Dim TotalSheetJobsClosed As Integer = CInt(Dts.Variables("TotalSheetJobsClosed").Value) Dim TotalSheetRowsUnchanged As Integer = CInt(Dts.Variables("TotalSheetRowsUnchanged").Value) 'declare & set variables for package-level row counts that accumulate the 'individual file row counts for each type of row count. These counts reset 'at the start of each package run Dim TotalPkgRowsRead As Integer = CInt(Dts.Variables("TotalPkgRowsRead").Value) Dim TotalPkgRowsInserted As Integer = CInt(Dts.Variables("TotalPkgRowsInserted").Value) Dim TotalPkgRowsModified As Integer = CInt(Dts.Variables("TotalPkgRowsModified").Value) Dim TotalPkgInvalidJobMasterID As Integer = CInt(Dts.Variables("TotalPkgInvalidJobMasterID").Value) Dim TotalPkgRowsNullFields As Integer = CInt(Dts.Variables("TotalPkgRowsNullFields").Value) Dim TotalPkgInvalidEmployeeID As Integer = CInt(Dts.Variables("TotalPkgInvalidEmployeeID").Value) Dim TotalPkgJobsClosed As Integer = CInt(Dts.Variables("TotalPkgJobsClosed").Value) Dim TotalPkgRowsUnchanged As Integer = CInt(Dts.Variables("TotalPkgRowsUnchanged").Value) 'accumulating the individual file level counts at each FOREACH iteration, so we 'can get the packee-level row counts Dts.Variables("TotalPkgRowsRead").Value = TotalPkgRowsRead + TotalSheetRowsRead Dts.Variables("TotalPkgRowsInserted").Value = TotalPkgRowsInserted + TotalSheetRowsInserted Dts.Variables("TotalPkgRowsModified").Value = TotalPkgRowsModified + TotalSheetRowsModified Dts.Variables("TotalPkgInvalidJobMasterID").Value = TotalPkgInvalidJobMasterID + TotalSheetInvalidJobMasterID Dts.Variables("TotalPkgRowsNullFields").Value = TotalPkgRowsNullFields + TotalSheetRowsNullFields Dts.Variables("TotalPkgInvalidEmployeeID").Value = TotalPkgInvalidEmployeeID + TotalSheetInvalidEmployeeID Dts.Variables("TotalPkgJobsClosed").Value = TotalPkgJobsClosed + TotalSheetJobsClosed Dts.Variables("TotalPkgRowsUnchanged").Value = TotalPkgRowsUnchanged + TotalSheetRowsUnchanged Dts.TaskResult = ScriptResults.Success End Sub 7 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    8. SSIS Project - Maintenance Package The Maintenance package runs after all of the other packages are successfully executed. The Maintenance package shrinks the database, rebuilds the index, updates statistics and performs a backup of the database. SQL Server Agent (shown below) is also set up to run this package daily at midnight. 8 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    9. SSIS Project - Job Time Sheets Data Flow This is the Data Flow of the Project Job Time Sheets package. It’s reading a variable number of records from a variable number of time sheet files. The data is being converted and validated. Validated data is being inserted or updated into the OLTP staging area database. Invalid data is being written to a log file for resolution, and is not included in the staging area per business requirements. 9 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    10. SSIS Project - Job Time Sheets Documentation This is a sample of the SSIS Project documentation. 10 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    11. SSIS Project - Send Email Task Editor Example of the code and variables used in the Send Mail Task for an email sent upon successful package execution. CODE for the MessageSource (above): "Package Name: " +(DT_STR,35,1252)@[System::PackageName] + "rn" + "Execution Start Time: " +(DT_STR,25,1252)@[System::StartTime] + "rn" + "rn" + "Total Pkg Rows Read: " +(DT_STR,10,1252) @[User::TotalPkgRowsRead] + "rn" + "Total Pkg Rows Inserted: " +(DT_STR,10,1252)@[User::TotalPkgRowsInserted] + "rn" + "Total Pkg Rows Modified: " +(DT_STR,10,1252)@[User::TotalPkgRowsModified] + "rn" + "Total Pkg Rows with Null Fields: " +(DT_STR,10,1252) @[User::TotalPkgRowsNullFields] + "rn" + "Total Pkg Rows with Invalid Employee IDs: " +(DT_STR,10,1252) @ [User::TotalPkgInvalidEmployeeID] + "rn" + "rn" + "Total Pkg Rows with Invalid JobMaster IDs: " +(DT_STR,10,1252) @ [User::TotalPkgInvalidJobMasterID] + "rn" + "rn" + "Total Pkg Rows with Jobs Closed: " +(DT_STR,10,1252) @[User::TotalPkgJobsClosed] + "rn" + "rn" + "Total Pkg Rows Unchanged: " +(DT_STR,10,1252) @[User::TotalPkgRowsUnchanged] 11 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    12. SSAS Project - Data Source View The Data Source View (DSV) in BIDS (Business Intelligence Development Studio) shown below functions like a relational view, but with added features. We can use the DSV to modify the schema by adding a named calculation, a new relationship, to explore the source data, alias column names, or to hide, replace or remove a table. We can also create additional diagrams to view subsets of the DSV in a complex schema. The DSV is a logical reference to the data source, and can be used as a model to construct the cube. SSAS cubes require DSVs as sources. 12 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    13. SSAS Project - Cube Structure The SSAS cube structure in BIDS for our “AllWorks” OLAP cube is shown below. 13 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    14. SSAS Project - Dimension Usage The relationships between the Dimensions and Measure Groups in the OLAP cube are shown below. 14 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    15. SSAS Project - Partitioning The requirements of the project specified two partitions for each of the four fact tables: (1) Data Before 2005, and (2) Data After 2005. The Partition Wizard in SSAS makes this task easy and generates the T-SQL code needed. We only need to modify the Where clause to specify the relevant time period for the partition. 15 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    16. SSAS Calculated Member - Open Receivables Percent of Invoice Calculated member “OpenReceivablesPercentOfInvoice” was created in SSAS to simplify the creation of a Key Performance Indicator (KPI). The MDX code in the calculated member defines what to display based on four scenarios about the data for the “Amount Received” (numerator) and the “Invoiced Amount” (denominator). 16 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    17. SSAS Key Performance Indicator (KPI) - Open Receivables as Percent of Invoice The KPI formula for the open receivables as a percentage of invoiced amount is shown below. A Key Performance Indicator (KPI) allows end users, usually management, to quickly and routinely monitor the performance of their company’s financial, internal processes, customer service, or other business metrics. The actual metric is compared to a preset goal. A business report (which can be generated and rendered by a variety of tools) will display an icon (such as a traffic light) to provide a quick visual indication of how actual performance compares to a preset goal. The actual metric and goal are also usually displayed in the report. If a traffic light is the icon, then a green light may depict that actual sales are greater than the goal. If sales are close to goal, then a yellow light may indicate closer monitoring is needed. A red light can indicate poor performance to the goal. 17 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    18. SSAS - View KPI in Excel - Open Receivables as Percent of Invoice The KPI can be rendered through different reporting mechanisms, but one simple, familiar and effective mechanism is to use Microsoft Excel Services to connect directly to the OLAP cube via a data connection to SSAS. The screenshot below is a developer’s view of the KPI in Excel. Extra columns of data were purposefully added to verify the accuracy of the KPI. An end user may only want to see columns A, B and C, and with more user-friendly column names. They may also want to pivot (slice) the data by looking at specific clients, or different time periods. Additionally, they may not want any percentage to display if the Amount Received and Invoice Amount are the same. Business requirements would determine the actual report layout and handling of several different scenarios with the data. 18 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    19. SSAS Calculated Member - Quarterly Percent Overhead Change Calculated Member “QtrOverheadPercentChange” was created in SSAS to simplify the creation of a Key Performance Indicator (KPI) that displays the percentage change in the selected quarter’s overhead expense compared with the previous quarter. The MDX code in the calculated member defines what to display if the previous quarter’s data does not exist, along with the formula to compute the percentage change in the overhead spend from quarter to quarter. 19 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    20. SSAS Key Performance Indicator (KPI) - Quarterly Overhead Percent Change The KPI formula for the percent change in quarterly overhead is shown below. In this KPI, the traffic light is green (meaning good) if the Overhead costs for the selected quarter are less than 10% higher than Overhead costs in the previous quarter. If the spend is more than 15% greater than the previous quarter, the traffic light is red (not good). An increase in Overhead spend that’s between 10% and 15% is a yellow light indicating that Overhead costs should be monitored closely to get them back on goal. Business requirements are the driving force behind defining performance to goals. There may be more complex scenarios involving Overhead spend relative to Sales performance. Perhaps the Overhead spend is increasing, because Sales are sky-rocketing. Excellent definition of business requirements will address these important nuances, leading to an outstanding business intelligence solution. 20 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    21. SSAS - View KPI in Excel - Quarterly Overhead Percent Change This is a screenshot of the report developer’s view of the KPI in Excel Services. That is, additional columns and labels have been added to verify the KPI data before finalizing it for the end user. An end user would probably see columns A, B, C, and D with relevant column headers, and the ability to select different quarters to pivot the data. 2006 Q1 2006 Q2 21 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    22. MDX Queries 22 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    23. MDX Queries 23 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    24. MDX Queries 24 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    25. MDX Queries 25 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    26. SSRS Project - Overhead Category Report Here’s a preview of the completed Overhead Category report in SSRS, and a view of the contents of each dataset for the report. To run the report, an end user selects a year’s quarter from a drop-down that’s populated with all quarters containing data. The data for the selected quarter is displayed in the “Current Qtr” column. The previous quarter’s data (“Prev Qtr”) and percent change (“Pct Change”) are each computed in a calculated member. 26 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    27. SSRS Project - Overhead Category Report Details of the “dsOverheadCategory” dataset for the main body of the report are shown below. Several calculated members were created to compute field values. The formula for the calculate member (“Pct Change”) is shown below. 27 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    28. SSRS Project - Overhead Category Report SSRS created a dataset called the “ProjectOverheadViewFYQtr” based on the FY Qtr (fiscal year quarter) parameter specified when creating the “dsOverheadCategory” dataset. The new dataset populates the FY Qtr drop-down list on the report. Custom MDX code was added (as shown below) to display a FY Qtr in the drop-down list based on two conditions: (1) the FY Qtr contains data, and (2) the previous quarter contains data. For example, if Q1 2002 was the earliest quarter with data, then the earliest quarter displayed in the drop-down list would be Q2 2002. Doing this ensures there is previous quarter data to display when a specific quarter is selected by the end user. 28 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    29. SSRS Project - Overhead Category Report The layout of the Overhead Category report is shown below, along with the formula to compute the “Pct Change” for the “TOTAL” row. This report is somewhat unique in that the “TOTAL” row is displayed above the details that comprise the total. There’s also a formula in the Properties dialog that conditionally formats the “Pct Change” data to display in red font if the overhead spend has increased from the previous quarter, or in black font if the spend has decreased. The formula and conditional formatting for this field are shown below 29 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    30. Excel Services Pivot Chart Here’s an example of a dual-axis pivot chart created in Excel that will be published to SharePoint Server (MOSS) using Excel Services (page 35). The pivot chart is connected to an OLAP cube using a SSAS data connection. Excel data, objects and functionality are incorporated in SharePoint sites through Excel Services. After configuring a trusted location in SharePoint for Excel workbooks, an Excel workbook is uploaded to the trusted location (specified document library) through Excel Services. Pivot Chart created in Excel using an SSAS data source (OLAP cube). We use Excel Services Options to specify which Excel objects and parameters in the workbook will be available on the SharePoint site. 30 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    31. Performance Point Server (PPS) - KPI Open Receivables as a % of Invoiced The graphics below show some of the Dashboard Designer interface in Performance Point (PPS). The Key Performance Indicator (KPI) “Open Receivables as a % of Invoiced” required some customization: (1) The Value calculation is “Average of Children” since the %’s of the children are not additive; and (2) The data mapping for both the Value and Goal/Status is the MDX tuple formula for the KPI calculation that comes from the OLAP cube built in SSAS. This KPI is used in a PPS Scorecard “SLU_ClientJobFinancials” shown below, and is then added to a Dashboard in PPS, and eventually published to a SharePoint Server site where end users will view it (page 41). 31 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    32. Performance Point Server (PPS) - % of Labor Dollars by Project The “% of Labor Dollars by Project” is an analytic grid report that shows the selected employee’s (Carl Imhoff) total labor dollars by project, the labor dollars of all employees who worked on the project, and the selected employee’s percentage of labor to the total labor for each project. The MDX code to produce the report is shown on the next page. 32 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    33. Performance Point Server (PPS) - MDX for % of Labor Dollars by Project The custom MDX code shown below was required to create the “% of Labor Dollars by Project” report. The parameter “<<SelectEmployee>>“ in the Where clause of the MDX code supplies the value of the Employee Name, which is selected from a drop-down list on the report in the Dashboard. The Dashboard contains a Filter that uses MDX code to generate a list of Employee names for the drop-down list. This report will become part of a PPS Dashboard rendered in SharePoint Server (page 38). Filter for the drop-down list 33 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    34. Performance Point Server (PPS) - % of Quarterly Labor Dollars Here’s an example of a PPS dual-axis report and the custom MDX code used to generate it. This report is also rendered on a SharePoint Server site as part of PPS Dashboard (page 38). 34 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    35. Performance Point (PPS) - Excel Services Pivot Chart from MOSS To the left is the Excel Services Pivot Chart as published in MOSS to the ExcelDocument library (it’s not Pivot Chart published to MOSS using Excel Services yet part of a PPS Dashboard). Below, we’re configuring an Excel Report type in PPS for the Pivot Chart above. We will use this Pivot Chart in a PPS Dashboard that will be published to MOSS (page 37). In PPS Dashboard Designer, the View Options dialog in the Report Settings allows us to specify the functionality of the workbook when it is published to MOSS via PPS. 35 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    36. Performance Point (PPS) - Excel Services Pivot Chart & Dashboard Here’s a preview of the Pivot Chart in PPS. Below we are defining the Excel Services Dashboard in PPS, which includes the Pivot Chart. Pivot Chart as part of the Excel Services Dashboard in PPS To the right, Filters & Parameters (Endpoints) are defined in PPS for the Excel Services Dashboard Project 36 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    37. SharePoint Server (MOSS) - Excel Service Report on PPS Dashboard The Excel Services Dashboard created in PPS has been deployed to MOSS, and the Pivot Chart page of the Dashboard is shown below as it appears in MOSS. The counties selected for the view below were chosen by the end user from a Multi-Select Tree object defined in PPS that is deployed with the Dashboard to MOSS. The Multi-Select Tree object is also shown below. The Multi-Select Tree object displays when the end user clicks on the list of Counties above the Pivot Chart. It allows the end user to select multiple counties to be included in the report. 37 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    38. SharePoint Server (MOSS) - PPS Analytic Chart & Grid on Dashboard Here’s another example of a PPS Dashboard deployed to MOSS. Both reports shown comprise the “Employee Labor Analysis” page of the Dashboard. These reports were created and customized in PPS (pages 32-34), as opposed to being created in Excel or SSRS and then brought into PPS. We can combine several reports and/or charts on one page of a Dashboard through the definition of zones. Both reports are run using the employee parameter selected by the end user from the “Select Employees” drop-down list. To the right, Filters & Parameters (Endpoints) are defined in PPS for the Dashboard. 38 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    39. SharePoint Server (MOSS) - SSRS Reports In SSRS, we configure the report project properties to deploy the reports to the SSRSReports document library in MOSS. In MOSS, we can see the two SSRS reports listed in the SSRSReports document library. Finally, the Overhead Category report and FY Qtr parameter selection is shown as it appears in MOSS. See pages 26-29 for the creation of the report in SSRS. 39 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    40. SharePoint Server (MOSS) - Generated Report An automated shared schedule was created in MOSS to run the Overhead Category report every day at 8:00 am. The daily reports are saved to the GeneratedReports document library in MOSS. 40 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    41. SharePoint Server (MOSS) - KPI Scorecards on Dashboard The two Scorecards below were created in PPS and combine several KPIs created in SSAS. These Scorecards were added to a PPS Dashboard and then deployed to MOSS (as shown below). 41 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    42. SharePoint Server (MOSS) - SSAS KPI in Excel Services Pivot Table An SSAS KPI was pulled into an Excel Pivot Chart and then published on a SharePoint Server site using Excel Services. This KPI shows both a KPI Status and a KPI Trend. The KPI Status compares the selected period to a goal. The Trend compares performance in the selected period to a prior period. 42 Go to Table of Contents Business Intelligence Portfolio © Sheryl Underhill 2009
    43. SHERYL UNDERHILL, MBA Raleigh, NC 27615 (919) 815-7858 sheryl.underhill@setfocus.com SUMMARY Results-driven, versatile Business Intelligence & Finance Professional using a variety of technologies, most recently with SQL Server 2005 and Microsoft BI tools. Significant experience in many IT roles in the systems development life cycle, and in many industries. Significant experience in financial, accounting, and analysis roles, including Big Four experience. Demonstrated leadership abilities, team work skills, and the ability to accomplish tasks under minimal direction and supervision. CERTIFICATIONS Microsoft Certified Professional in Visual Basic 5.0 10/97 Pursuing Microsoft Certified IT Professional: Business Intelligence Developer 2008 TECHNICAL SKILLS Microsoft Technologies: SQL Server 2005 Integration Services (SSIS), SQL Server 2005 Analysis Services (SSAS), SQL Server 2005 Reporting Services (SSRS), Microsoft Office SharePoint Server 2007 (MOSS), Microsoft Office Performance Point Server 2007 (PPS), Microsoft Visio, Microsoft Office 2007 & 2003 Other Technologies: Hyperion Essbase 5, Crystal Reports, Cognos Impromptu, Oracle PL/SQL, Rational Rose, Rational Requisite Pro, Deltek Costpoint, JD Edwards Databases: MS SQL Server 2005, MS SQL Server 6.5, MS SQL Server 7.0, Oracle Database 7.3, Oracle Database 8, Microsoft Access Software: SQL Server Business Intelligence Development Studio (BIDS), Microsoft Visual Studio 6.0, Microsoft Visual Studio 5.0, Microsoft Windows 95, Microsoft Windows 98, Microsoft Windows NT 4.0, Microsoft Office XP, Microsoft Office 1997, Microsoft Office 2003, Microsoft Office 2007, Microsoft Visual SourceSafe 6.0 (VSS), Microsoft T-SQL, Microsoft Visual Basic 5.0, Microsoft Visual basic 6.0, Microsoft Visual Basic for Applications 4.0, Microsoft Visual Basic for Applications 5.0, Microsoft .NET, Microsoft FrontPage SetFocus, LLC Parsippany, NJ 3/09 - 5/09 Master’s Program – Business Intelligence • Implemented a Finance & Marketing Analysis Business Intelligence solution for a cognitive training company. • Existing data from diverse data sources were consolidated into a uniform SQL Server 2005 database. SQL Server Integration Services (SSIS) was used to define imports of the data, build scheduling packages, to define integration flow, log data error exceptions and orphaned data and to define Database Maintenance Plans and send emails. • Created a number of cubes, dimensions and business critical KPIs using SQL Server Analysis Services (SSAS) representing aggregations in several different ways - hierarchically and using custom groupings that the company will use to analyze performance. Created several MDX queries according to business requirements. • Developed several detail and summary reports including line and pie charts, trend analysis reports and sub-reports, parameterized and drill-down according to business requirements using SQL Server Reporting Services (SSRS).
    44. • Implemented business intelligence dashboards using MOSS 2007 Report Center and Excel Services producing different summary results based on user view and role membership. • Created score cards with executive summary dashboards using MS Office Performance Point Server 2007 Dashboard Designer (PPS) that display performance monitoring measures for sales, sales trends, and book return rates for a simulated book publisher deriving data from a SQL Server 2005 OLAP data source and deployed them to SharePoint sites. The dashboards also contain drill-down capabilities to view book sales by book category and customer, through summary reports and sales trend charts. • Created score cards with advanced set of dashboards using MS Office Performance Point Server 2007 Dashboard Designer that feature executive summary measures for revenue, overhead costs, material purchases, labor and profitability trends for a simulated construction company extracting data from a SQL Server 2005 OLAP data source and deployed them to SharePoint sites. The dashboards also contain pages to view performance by employee, by region, and by quarter enabling end-users to make filter selections. PROFESSIONAL EXPERIENCE LearningRx Raleigh, NC 12/04 – 03/09 Owner/Director • Generated over $1 million in program sales. • Supervised and trained staff (who now competently operate the day-to-day business 100%). • Presented information about cognitive skills testing, training programs, benefits and demos to doctors, psychologists, schools, and other organizations. • Managed day-to-day business with P&L responsibility. • Developed and executed marketing plans to successfully build the LearningRx brand in the Raleigh area. Manpower Technical (at GlaxoSmithKline) Research Triangle Park, NC 3/01 – 1/04 Contract Project Manager, Technical Lead, Developer, Tester, Business & Systems Analyst Software/Hardware: • ElectronicNoteBook 6 (validated LIMS system), SMS2000 (validated LIMS system), Oracle 7/8, VB6.0, PL/SQL, VisualSourceSafe, SMS Installer, Farpoint, Excel VBA, ActiveX, ADO, OLE Automation, Systems Development Life Cycle, Rational Rose, Toad, Oracle Designer in a Windows NT client/server environment. Contributions at GlaxoSmithKline: • Project technical lead and developer in the technology upgrade and functionality enhancement of the validated SMS2000 Laboratory Information Management System (LIMS) application written in VB6 and Oracle stored procedures. Gathered and analyzed business and system requirements. Wrote and deployed installation scripts. This system has approximately 200 global end-users. • Developed and tested the ENB 6 (Electronic Notebook) validated application written in VB6/Oracle, featuring an automated review process and electronic notes for approximately 1000 global end-users. Gathered and analyzed business and system requirements. Fixed bugs. Led testing process. Wrote and executed test scripts. Managed change control process. Wrote and deployed installation scripts. • Project Manager, Developer, Tester and Business/Systems Analyst of small projects written in Excel VBA to automate routine scientific processes. Partnered with business owner to gather, interpret, and translate business and system requirements. Created design specifications, developed code, wrote test plan and test cases. Training: • Microsoft Programming with C# and ASP.Net Web Applications • Rational Object-Oriented Analysis & Design, Rational Rose 2001, and Rational RequisitePro
    45. Bayer Pharmaceutical Research Triangle Park, NC 8/00 - 3/01 Division Information Systems Staff Analyst Software/Hardware: • Oracle 7.3, VB6.0, VSS, Excel VBA, MIS Alea Multidimensional Database (OLAP), and FrontPage 98 in a Windows 98/NT client/server environment. Contributions: • IT Project Lead for a new World Wide Consolidated Sales application that was built with an Excel VBA user interface and MIS Alea multidimensional database (OLAP). Monitored project timelines and deliverables, gathered business and system requirements, developed test plans, tested deliverables and communicated test results to MIS consultants. Partnered with internal financial customers to ensure their business needs and requirements were timely met. Provided IS systems support on other applications to the Finance and Strategic Planning groups. Training: • HTML Levels 1-3, FrontPage 98 and 2000, and MIS Alea Multidimensional Database API Programming Maxim Group Raleigh, NC 9/99 - 8/00 Contract Business Analyst & Systems Developer Software/Hardware: • SQL Server 7.0, IIS, VB6.0, VSS, Crystal 7.0, ADO, Stored Procedures and some web experience. • Oracle 7.3, SQL, VBA, Cognos Impromptu, Microsoft Office 97 Development (Excel & Access), Deltek Costpoint 2.1B (Project Billing & Revenue, General Ledger (GL), Accounts receivable (AR) modules and custom reports) in Windows 95/NT client/server environment. Contributions at ElectriCities and Strategic Resource Solutions: • Enhanced Annual Planning & Budgeting Application in VB code and SQL Server stored procedures. • Automated corporate expense reporting with VBA in Excel 97 leading to improvements in processing and data accuracy. • Partnered with financial personnel to gather business and system requirements. Developed custom financial, inventory and project reports, automated with macros to replace manual processes and to facilitate analysis by corporate and divisional financial and business services personnel. • Developed, tested, implemented, trained users and documented system and business process solutions to financial and accounting problems. Hanson Aggregates East Morrisville, NC 1/99 - 8/99 Systems Developer Software/Hardware: • Microsoft Excel 97 Development using VBA and Hyperion Essbase 5.0 (OLAP) in a Windows 95/NT client/server environment. Exposure to JD Edwards World A7.3 in AS400 environment. Contributions: • Gathered and analyzed business and system requirements. Developed, tested and implemented the creation and tracking of divisional and regional budgeting spreadsheets for hundreds of manufacturing facilities to standardize and improve the consolidation processes. Automated processes to download current and historical actual data, and upload budget data to the multi- dimensional database. • Upgraded VBA code and the presentation of periodic financial reports for division and regional senior management. Training: • Hyperion Essbase Database Partitioning and Fundamentals • JD Edwards World Software Technical Foundation for A7.3
    46. North Carolina Raleigh, NC 1997-1999 Department of Public Instruction Contract Project Manager, Business Analyst, Developer Software/Hardware: • VB 5.0, Visual SourceSafe, SQL Server 6.5, Microsoft Project, Visio, Seagate Crystal Reports 6.0, Cognos Impromptu 5.0 in a Windows 95/NT 4.0 client/server environment. DBS/GEAC financial software in an AS400 environment. Contributions: • Led the third-party consulting team and internal personnel in the first n-tier client/server development of a statewide Salary Certification System using a systems development life cycle methodology. Gathered and analyzed business and system requirements. Team-developed the application during the construction phase. Also, developed the application’s end-user and management reports. • Documented financial applications and related business processes using Visio to support cross- platform training, impact analyses, and analysis of applications and related processes for re- engineering opportunities. Training: • Earned Microsoft Certified Professional status in Visual Basic 5.0 • Internet and Client/Server Development Using Visual Basic 5.0 • Mastering Visual Basic Fundamentals 5.0 Financial & Accounting Work Experience 1984-1996 Companies: Corning Bio, Perstorp Flooring, Nortel, AlliedSignal, CP&L (now Progress Energy), Kennametal, Airmold, and Touche Ross & Co (now Deloitte & Touche) Contributions: • Performed data conversions and data mapping to support migration to new financial packages. • Heavy involvement in financial analyses, cost/benefit analyses using discounted cash flow techniques, planning and budgeting, and interpreting/narrating financial performance for senior management. • Conducted financial analyses on marketing, sales, and operations data. • Consolidated financial data, prepared periodic financial statements, prepared tax returns and performed audits of financial statements. EDUCATION & PROFESSIONAL Passed the CPA Examination at the first sitting. Member of the AICPA (American Institute of Certified Public Accountants) Niagara University Niagara Falls, NY Master of Business Administration, Finance - Overall GPA 3.64 General Motors Engineering & Management Institute (now Kettering University) Flint, MI Bachelor of Industrial Administration, Production Management & Organizational Development 5th Year thesis to fulfill baccalaureate: Designed & Implemented a Machine Scrap Control System for the Chevrolet Tonawanda Engine Plants.

    + psunderhillpsunderhill, 4 months ago

    custom

    1033 views, 6 favs, 1 embeds more stats

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 1033
      • 1032 on SlideShare
      • 1 from embeds
    • Comments 0
    • Favorites 6
    • Downloads 0
    Most viewed embeds
    • 1 views on http://www.lmodules.com

    more

    All embeds
    • 1 views on http://www.lmodules.com

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories