in

The SoftTeq Community Site

SoftTeq blogs

John Viner's Thoughts

John Viner on Software Engineering, .Net and other techo stuff
  • Business Scorecard Manager ... questions from the course

        I thought I'd share some of the questions that came up during my recent Business Scorecard Manager course (see http://community.softteq.com/blogs/john/archive/2006/05/21/61.aspx).

    Q1: What do the 2 columns required for KPI ODBC queries correspond to?
    A1: They correspond to the previous and actual value. e.g. select

    Q2: Can a Scorecard View be selected based on the user viewing it?
    A2: Microsoft has indicated that this functionality can be achieved, but not via configuration in Business Scorecard Manager. It is done via Sharepoint using the concept of Audiences or alternatively using Personal Views.

    Q3: What are the Security Best Practices for BSM and Sharepoint
    A3: There are currently no best-practices from Microsoft for BSM, however given that the public view/interaction with scorecards is all via Sharepoint, then security issues can all be addressed via Sharepoint.

    Here is the link to the Sharepoint Admin Guide which has a section on security:

    http://www.microsoft.com/downloads/details.aspx?amp;displaylang=en&familyid=a637eff6-8224-4b19-a6a4-3e33fa13d230&displaylang=en


    As you can see, it will be important that you have a close relationship with those responsible with your Sharepoint site, as Sharepoint holds the key to managing security and visibility of your scorecards.
  • Business Scorecard Manager course

    Last week I delivered a 1 day introductory course on Microsoft's new scorecarding application called Business Scorecard Manager. For those not familiar with this product type, a dashboarding application allows business to monitor the progress of their strategic objectives. Gartners Group estimates that 40% of fortune 1000 companies are using balanced scorecarding methodologies  (http://searchcio.techtarget.com/sDefinition/0,,sid19_gci347160,00.html) so as an IT  provider it is important to know how scorecarding applications work. The essential building blocks of a scorecards are:

    Objectives - what is the strategy trying to acheive? e.g. increase customer confidence in our advice

    KPI's (Key Performance Indicators) - How will the performance of the objectives be  monitored? e.g. % of customer surveyed who rate us as their top source of advice

    Targets - What performance level is required? e.g. 65% #1 and 90% #1 or #2

    Microsoft's Business Scorecard Manager comprises of

    - a builder application; a windows app that is used to build scorecards, objectives, kpi's, targets and indicators. The builder can work offline and when connected, scorecards are published to the server.

    - the business scorecard manager server component

    - the scorecard meta data stored on SQL Server

    - sharepoint web parts which are used to display the scorecards (and supporting report views) on sharepoint pages.

    Here is an image of a sample dashboard using Business Scorecard Manager.

    To find out more check out the Microsoft site at  http://office.microsoft.com/en-au/FX012225041033.aspx
  • Prototyping Tools - a new release of Denim

    I have had a long running interest in tools that help analysts prototype applications. I have dealt with many specs that are strong on words but weak on visualisation of the system that a client requires.

    I would say this is because prototypes can be quite expensive to produce. I have seen some specs that go halfway by producing a series of visio digrams of required screens, but the lack of interactivity between those means developers can lack a vision of the final system required.

    One of the more interesting attempts to provide rapid specification prototypes is the Denim project, at the university of Washington. What I like about their solution is that they take a series of hand drawn mockups and bring them to life. This is a very intuitive way of approaching prototypes, as normally the mockups exist as a part of the analysis phase, so there is no need for an analyst to 'recreate' those mockups in some screen design tool.

    Denim is now on release 2.0, so I will be looking forward to using this tool for my upcoming projects.

  • Using Data Access Application Blocks without Configuration


    During my last presentation at the Perth .Net Community of Practice on Enterprise Library 2.0 (see this blog and here for newly posted code), I was asked if you could use the Data Access Application Blocks (DAAB) without using Enterprise Library configuration data. I indicated that you could and this post explains how.

    Regular usage of DAAB and the EL config looks something like this:

    Database customerDatabase = DatabaseFactory.CreateDatabase();
    IDataReader reader = customerDatabase.ExecuteReader("GetAllCustomers");


    where the CreateDatabase method will refer to the EL config to find the default database:
    <dataConfiguration defaultDatabase="EntLibQuickStarts" />
    which in turn uses the standard .Net connection strings section (note: new to EL 2.0):
    <connectionStrings> ...

    For configuration-less usage of DAAB there are 2 options for creating a 'Database' instance:

    Option 1: Know database type - If you are happy to create a SqlDatabase type because you do not need to support database-agnostic code then use this code (NOTE: you will need to add using Microsoft.Practices.EnterpriseLibrary.Data.Sql; to your data access code):

    SqlDatabase
    sqlDatabase = new SqlDatabase(mySqlConnectionString);

    Option 2: Generic database type - If you require database-agnostic code then use this (NOTE: you will need to add using System.Data.Odbc; to your data access code):

    GenericDatabase db = new GenericDatabase(myOdbcConnectionString,OdbcFactory.Instance);

    So again, not too much code is required to create the Database instance even when you are not using the standard config of the Enterprise Library.


  • Enterprise Library 2.0 Perth User Group Presentation Slides

    Last night I presented to the Perth .Net Community of Practice for the first time. The topic was an overview of Enterprise Library 2.0. The presentation went well and there seemed to be quite a bit of interest, from both experienced V1.0 users and those that hadn't yet used the library. There was some good questions at the end, including one about using the blocks without the config files. I'll post another blog with a summary of how to go about that.

    So the powerpoint presentation will be posted to the user group site, and i have also posted a version to the SoftTeq community files site. Click here for that file.

    If anyone wants the sample app that i worked through let me know and i will post that also. As the demo showed though, with Enterprise Library 2.0, the code almost becomes trivial, the p&p team have done a great job of getting common tasks down to a couple of lines of code. I managed to demo 5 of the blocks in probably less than 20 lines of code.
  • Enterprise Library - Getting the Exception Block and Logging Block working together

    With Enterprise Library, you can sometimes struggle to find configuration errors, so I thought I'd mention this little gotcha.

    I created an Exception Handling Application Block policy which i wanted to log the exception (as well as rethrow the exception as a new type using the Replace Handler). So I created a Logging Handler as well as a Logging Application Block Category.

    On running the web app I received the error:

    Configuration Error
    Parser Error Message: The type Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.Logging.LoggingExceptionHandler, Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.Logging, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null from configuration could not be created.

    The solution was to add a reference to the assembly Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.Logging.dll, which is not apparent at first. This cleared the error and the exception was logged successfully.

    Posted Mar 28 2006, 04:39 AM by john with no comments
    Filed under:
  • Introduction ...

    Hi, I'm John Viner, a software engineer living in Perth, Western Australia. I have recently joined SoftTeq, a technology consultancy based here in Perth. I've been in the software business for 14 years now, having worked in Perth, Sydney, Chicago, Melbourne and most recently in London as a .Net consultant.

    I'll be blogging about all kinds of technology stuff, our primary development platform is Microsoft .Net, so that will feature heavily.

More Posts
Copyright SoftTeq 2007
Powered by Community Server (Non-Commercial Edition), by Telligent Systems