Should ROI hold much weight?

9 02 2010

When working as a consultant I often get asked about ROI, and how best to calculate this. Now when working for previous companies, this had to be done (especially when in a pre-sales phase) and I can see clearly why. Like anything in business, if you can show something is worth doing from a money point of view, then it is likely to get done.  

But how much weight does ROI calculations actually hold? I have read a couple of blog posts about this in the past couple of days, some of which see ROI as a complete joke and pull no punches in saying so. Have a quick read of this article submitted by Alan Peiz-Sharpe (@CMSWatch on twitter) http://www.cmswatch.com/Trends/1798-ROI-Joke

Working as an analyst myself, and also as a technical guy, I can see Alan’s point, ROI calculations are very vague and often based on presumptions. But does this mean they are no good at all? I beg to differ.

Business Case                                                                       

Ok, I am not saying use a ROI in the traditional term. I see ROI as an illustrative tool when looking at smaller parts of a business case. So when investing in IT, make sure you draw up a good and detailed business case for the solution you are purchasing (lets use ECM here as this is more of a specialist field of my own). Building a business case is not easy, especially for ECM and don’t think that a couple of hours on line reading up on ECM is going to help you write a good business case. This is an area that I often help businesses with, and it is one where businesses should really look to outside help if they can.

Ok, so you have a good case for your business, one which looks at the business benefits of the system and technology available, one that looks at what is the best fit for your organisations (don’t get hung up on price at this stage).

Where to use ROI type calculations

I never use ROI calculations as an argument for anything, especially for something as large as a complete solution for an organisation. (Many of the problems with these are illustrated in Alan’s post – though typically these are user case presumptions, over optimistic calculations etc). So where do I use these types of ROI illustrations…Well I use them based on “cases”. 

So let’s look at what I mean by a case. Ok, let’s say you have all your content stored in paper, and unfortunately your storage area goes up in a nasty fire. What is the estimated cost to your business of this? Don’t try to actually put a value on this, but imagine if you had a good ECM system you know you don’t have this as a problem for you. So in this case, your real ROI would be whatever you would saved in this scenario, which is more than measurable money….Don’t like that one?

Ok, what about the cost in fines to your organisation if you are found to be “non-compliant” to government legislation – with a particular solution you would be compliant. Is the fine greater than the investment? Yes – so the system is therefore a good ROI in this case scenario.

You can keep on doing this, looking at smaller business scenarios within your business case for a particular IT solution (doesn’t have to be ECM) and carry out ROI type of illustrations. You can of course be tempted to actually place monetary values in your ROI scenario illustrations, but please, if you do this, be very cautious and make sure you get your “variables” as accurate as possible. Let’s look at a quick example…

An example is monitoring how long it takes an individual to locate a paper file. Now obviously this is going to be different each time that person searches for a file – sometimes it will be on their desk, or the desk adjacent to them, it may be filled correctly, or it may be miss-filed or worse still, missing. So, take an average of that person’s time spent looking for files over a couple of days. Then spend the same period of time monitoring a person using an ECM system to locate files. What’s the time saving? I would use Time as my ROI in this case and let others put a price on this. Why? Well though you can put a price on this time saving, does it actually equate to that money saving? You still pay that person the same wage do you not? So the only way to calculate a real saving is looking at efficiency gains in this case, and that can be tricky. Though in theory it is easy, what actually happens when that staff member has more time to do their work? Do they actually work harder and faster? Or do they only marginally increase the amount of work they complete – actually, do they get given anymore work because they are working more efficiently or do they still only receive the same amount of work to do… You can quickly see how ROI as a money calculation can come back to bite you later…

Conclusion…

Basing any investment, especially on IT based on an ROI calculation is asking for trouble. Instead look at a valid business case that may contain scenarios which will illustrate areas where investment return can be measured, not necessarily in hard cash. Within my blog you will find a number of posts on ECM savings, some of which do look at scenarios and cases where monetary values could be added, however, my aim is to make illustrations and put forward a business case, rather than a simply ROI calculation…





Redefine the way we use the web, to unlock its potential…Web 3.0?

6 02 2010

This is something I have been thinking about for a number of years now, but more so recently with a lot of talk of HTML 5. Basically we haven’t really changed the way we use the internet (from a technical point of view) since the web became mainstream shall we say. Sure, we now use it in new ways which we hadn’t dreamed of (habits and the way we communicate with each other), but essentially the web still works the same way it always has. We use the web as content rendered as HTML that is displayed back to us in a web browser. Even if HTML 5 is the magic version and delivers so much more in terms of animation and streaming has it actually changed the way in which we use / the web works for us? No…

Let’s not go back to the good old Mainframe environment…

It seems more and more IT professionals and large organisations see the web as the new mainframe, especially when you start talking “thin client” and “cloud computing” (the cloud could be seen as our mainframe..scary). When you start looking at mainframe environments and then cloud and thin client computing, you see that the basic concepts are very similar. So what do I mean, well, all of the processing happens on a server, the machine you actually use to access it, doesn’t really have to do anything. In a mainframe environment we have dumb terminals, in the new way of thinking (trying not to laugh, sorry) we have a PC that run’s a browser (this could be a very low spec machine), and if all we did is “cloud compute” we perhaps wouldn’t need anything else?

Sure I see benefits, some of which are green, but the negatives are so obvious to see. These are essentially the same problems we have with mainframes and the same problems that lead us to using the “PC” and the “Network” to replace mainframes?

Some thin client issues?

Let me give you an example. Imagine you and I are working as designers, creating 3D computer models of pretty much anything. We may even be responsible for animating these 3D models (think something like toy story, I don’t know why, it just popped in my head). Ok, now imagine you are part of a team of say 20 working on these models, of course you are designing Buzz, someone else Woody etc. Let’s think just how much “processing” power do we need for this – just you and your requirements? The answer, quite a bit, well a lot. Now image having to times that by 20. Oh, and now let’s have that processing carried out in a “thin cloud computing environment” (of course your application is written with the fab HTML 5 which means we can do anything), which at the end of the day needs a hell of a lot of work going on at the server, oh and traffic across our network… Do you see the problems?

Well basically, even with the advances of our hardware, the server will be doing too much and things won’t go well. The system will be going slow, maybe crashing, you as a designer will be going mad with frustration, along with the rest of your team, oh and not to mention you are working to a deadline so the project manager is now going mad. Let’s throw into the mix too, that our team is distributed across the States and the UK, and some of us love using Internet Explorer, some FireFox, some even Chrome…Hmm though in theory the web is great here, it is no match to a good old client desktop, some distributed servers…

Now I know I am focusing here on a situation that doesn’t lend itself to “cloud computing” or “thin clients” but if we believe all the hype of HTML 5, cloud computing why shouldn’t we be thinking this is possible? But, as our hardware advances so does our software (though at a slower rate granted) and we as users (be us general public users or business) expect more and more performance and capabilities. So while some of our user requirements do seem to lean us toward a cloud computing way of working, soon our requirements will no doubt swing back the other way (and wont we be repeating the Mainframe and PC story all over again?)

There is an answer

The answer is pretty simple to be honest and it is something Flash showed us the way to a number of years ago when it first started popping up on the web. The answer is a mixture of the two.

So let’s start evolving how we use the web properly (not just our habits) but how it is used. The web becomes a communications network and in some ways returns to its roots. We can still use it in the way we are used to, as in we find websites and we view them in a web browser, however, those websites that aren’t just presenting us with some information, or basic shopping facilities, websites that are more “applications”, get themselves installed on the client machine. So think MS Office on the web. Why install on the client? So that the user experience is not restricted by the web architecture, nor the browser, and that “processing loads” are removed from the server and distributed back down to the client PC.

Isn’t that what Flash was doing, installed and running on the client, err years ago? Yes, and that’s why Flash has worked so well to now…The problems with Flash are not what it visually looks like, nor its basic architecture (running on the client), the problems are that it doesn’t lend itself to being able to deliver “applications”. So it is great for the web to show animations, and funky banners, slick movies etc but don’t think it will be great at delivering that 3D modelling tool we spoke about earlier…

So let’s go back to our 3D modelling requirement in the designer’s studio. In our new web world we are now working with a RIA that actually runs on the client machine, uses local storage on the machine and uses the web only for bare communications and maybe storage of files that are to be shared. All of a sudden, all of the issues with “thin client” and “cloud computing” and server loads are removed, yet essentially we are still using the web and “cloud computing” to an extent…

So the answer is RIAs that use the client processing power and that do not run in the web browser.

Is this available…

Yes it is. Since Microsoft launched its Silverlight platform (which many see only as a competitor to Flash) it has been working towards this type of scenario, where we can maximise the benefits of the PC and the benefits of the web and cloud computing. Silverlight 3 was the first version to deliver an out of the browser experience and this has been taken further with Silverlight 4, with it being able to run as a trusted application on the client machine. Oh it also runs on Mac’s and PCs and if in the browser, any browser…

Silverlight, though in some ways similar to Flash and even the old Java Applets, is a new way of using the internet, rather than us re-inventing the same way of using the web with more bells and whistles. Like flash and Java applets, Silverlight essentially runs on the client PC. Which means we can utilise its processing power to do our work, it doesn’t need to go back to the server for updates to the UI, business rules or anything like that, and it can be done there on the client machine? However, it is connected and delivered essentially through the web as a communications network, so its data and files can be easily pulled and pushed across the web and stored there. Updates to the software are also delivered through the web, with the user being able to get the latest versions of the software just by using the software itself.

At present this is all still young, but the potential is there to change our web experiences and what we realistically should be using the web for. MS Office could be delivered as nothing but a Silverlight OOB (out of browser) application, allowing us to purchase it online and using it within moments. And it would look and feel just like the version we currently have from a CD (not the slightly less functional web version). Business applications could be delivered through organisations intranets, or their “cloud providers”. Websites that provide “secure” trade or partner areas would essentially have these installed on the client machine. Twitter, Facebook and other types of highly interactive websites would be delivered as RIAs installed on the machine (there is a prototype for Facebook already built and made, which you can download and use at http://www.silverlight.net/content/samples/apps/facebookclient/sfcquickinstall.aspx). You havent used the flexibility of the web at all, if you were on a new machine and wanted to get to facebook, still visit the website where you would get prompted to install the client, which would be a simply and quick install…and away you go, back on facebook.

The future then is…

Re-defining the web as a communications network and moving RIAs out of the web browser and down onto the client. By using the web in this fashion we get a truly distributed environment that has the benefits of the web, but also the benefits of the client machine…





Abandon Flash / Silverlight for HTML 5? No WAY!

4 02 2010

I have been reading a lot of drivel lately about how great HTML 5 will be and that it means the death of Flash and Silverlight. Sure, Flash isn’t available on the iPad or the iPhone (though it seems Silverlight will be) but isn’t that a failing of Apple rather than Flash?

At the moment when you surf the web, if you do so without Flash installed on your machine you soon notice that your web experiences aren’t the same as everyone else’s and are very much poorer for it. The same is starting to be said of Silverlight, and this is in a world where HTML has been around since day dot of the web. So why should people start to dream that HTML 5 change this?

Bloggers don’t like proprietary platforms

It does seem that a lot of “Journalists” and “bloggers” just don’t like anything proprietary, or for that matter, anything in the world of IT that you have to pay for (well at least to do with the web).  I can see and hear the arguments for HTML 5 being a standard that all browsers understand, a standard that supports multi-media etc etc. But let’s face the fact, that good old HTML 4 still isn’t a standard between all of the browsers. How many times do we visit websites in different browsers and get a slightly different experience. On top of that, let’s look at this from the developer’s point of view. At my own company we spend massive amounts of time checking and building “fixes” so that websites and web applications run on multiple browsers. This is not an exaggeration. When we build websites over a third of our time (if not more) can be for making adjustments for all the browsers interpretation of HTML.

I know a lot of people are now going to say, “That’s the browsers fault for not adopting the standards strictly enough” – but my answer to that is “get in the real world! This is fact”.

So will HTML 5 be any different? No it won’t.

What’s wrong with proprietary platforms life Flash and Silverlight?

So what is wrong with Proprietary platforms in any case? Well I am not sure on this. The only valid argument I ever sort of understand is that Adobe could start charging for us to use Flash, and the same could be said about Microsoft and Silverlight. But again, these claims are from people who don’t really understand how we develop websites and software it seems. To be able to build a flash website or Silverlight website, we need the tools to do the job. We pay for these tools so that we can then develop for that platform. So we are already paying to use these technologies, and it is the developers and development companies that do make this payment. So no “end user” pays for this. Please now don’t say about companies etc paying for these expensive developers, as they still pay for developers when we build websites in pure HTML (which is so very limiting!). I have seen claims that SMEs spend massive amounts on web developers because they use Flash or Silverlight…Well this isn’t the case, sure you may pay more for these types of websites, but that’s because they do more. With HTML 5, even if it can provide similar results to Flash and Silverlight, if you want those results you will still have to pay a developer to develop them for you…

When it comes to web development, you can pick up websites for peanuts; these are simple websites, couple of static pages that may even contain Silverlight and Flash. But, if you are spending massive amounts of money on a website (as some try to claim) then what is your website doing? I can bet it isn’t just displaying a couple of static pages and pretty animations.

At this point I would like to set people a challenge. Go on the web, spend an hour or so surfing and then look at just how many sites are delivered in pure HTML. Sometimes this is easy to spot as the URL at the top of your screen will say HTML. (Though this doesn’t mean the site is developed in pure HTML). Many, you will find will have .aspx extensions or. php or nothing at all. All of this means websites are mainly developed with proprietary software in any case, such as ASP.NET (.aspx) or PHP etc.  If you are wondering why, well it’s simply, HTML maybe a standard for how the browser displays a web page, but you can’t really do anything with it. So if you need a website that dynamically builds itself, or reads in content from others websites, databases, web services etc, you can’t do it in HTML and notepad. You will need something with substance, something like ASP.NET, which then delivers the results as HTML to the browser…(So if you are doing this already, you are tied in to the proprietary software of Microsoft in any case, so why be against Silverlight? Oh and you are developing using the same tools that can build Silverlight applications…)

And there is more

My big big big gripe with people that say they love HTML and that we shouldn’t be using Flash and Silverlight is that they are stuck in the past it seems. The internet wasn’t designed to deliver rich media and RIA’s (Rich Internet Applications). It was designed to allow the sharing of documents that were delivered in the form of HTML. Remember this, because the biggest problem with the internet is the need for a browser.

It is the browser that puts so many limitations on your web experiences and web applications. Imagine only using a browser to search for websites and get simple websites back. That would be great. However, take Facebook for example, lets find it on the web perhaps (if for the first time), decide we like what the website has to say so we want to use it. So let’s pop out of the browser and start using it as an application – no limitations put on us by the browser, we are free to enjoy a great web experience… (Have you seen Silverlight 4 quick prototype of Facebook? If not, try it here http://www.silverlight.net/content/samples/apps/facebookclient/sfcquickinstall.aspx  ). By the way, anyone thinking of Security issues etc, please understand that applications run in a sandbox like this, so they cannot do anything malicious. Though you can use “Trusted” applications – which do have more “roam” on your machine, but again – security is not an issue here…

Ok, I need a simply illustration why the browser can be limiting….So, to illustrate my problem with using the browser, let’s take some very simply and crude examples of how the browser is so limiting. Key strokes…

In Internet Explorer for example, I may have a web application (or plain old website) that wants to allow the user to utilise the keyboard in some way. Let’s say by pressing F5. Oh, but when I do this, my web page is re-loaded, why? Well it’s because you are in an application that is displaying another application / website. Which means F5 is a key reserved for “Refreshing” within IE. Now you could try to suppress these keystrokes from the user (In IE), but, won’t the user expect F5 to be a refresh within the application / website. Hmmmm You see some of the issues.

There are many more simpler problems too, think real-estate of your screen, especially with business applications. The browser is just another window that is holding your application in it, in addition you may have all sorts of add-ins installed on that browser which take up the top 2 inches of the window in any case…Are these any use for the web application you are using? No…

Architecture…

Finally, before I start getting carried away, the whole architecture is not great for web applications (well delivered in HTML etc). When I do something on a website (even if it uses AJAX or lots of JavaScript) most of the processing is carried out between the server and the web page. Which means communication over the network, the web, and more work for the web server to do. This is a pain and not efficient. Some of our processing and “rules” etc could be done in the website / application, and even better if it is carried out by the clients PC and not the server (means we can scale more and work more efficiently).  We really only want to communicate between the client PC and the Server when we need to request new data, or we are saving changes. We for sure, don’t want to be communicating to check validation, get new lists from memory and anything to do with visual elements.

So how can we do all this with HTML? Well we can’t, even with the great HTML 5 we will still be very limited because of the architecture for the web, which means we will always be using Flash and Silverlight to bridge the Server and Client gap when doing things more complicated.

The Future is then? What?

The future is not new developments of HTML etc, rather it is the re-vamp of how we use websites on our machines – opting for web applications to live and sit on our PC as if we went to a shop, bought the CD and installed it (however, communicating and working through the web). Sure there is still a place for traditional HTML websites, these displaying content, wikis etc, but for applications – think Facebook even, and you will see massive benefits from technologies such as Silverlight, with Facebook being accessed on your PC outside of the browser.

So have Apple got it wrong? Yes, if you want to provide a “web experience” then you need to support Flash and Silverlight, simple as that, stop making excuses Apple and get on with it…





Facebook, Silverlight, Silverlight Facebook?

28 01 2010

Social Media is quite an important part of the web these days, and Facebook is pretty much something that most of us are on these days. Of course there are other social networks out there, such as Bebo and MySpace, but I believe many would agree that Facebook is the market leader, and also provides a slightly improved user experience compared to the likes of MySpace (which I have to say is a nightmare)

Many of us know that Microsoft does have quite a bit of interest in Facebook, and with the recent opening up of Facebooks core API, we see Microsoft demonstrating some facebook love inside a swish new demonstration of its web technology, Silverlight…

Silverlight Beta 4 Client for Facebook

Silverlight 4 is still at its beta stage, however it brings some great features to the web, such as an out of the browser experience, slick and stylish interfaces, seamless linkage with HTML and many other features. I see this client more of a quick peek and demonstration of what Silverlight can potentially bring to the web.

By using Facebook in this client example, Microsoft aim to let us get a feel for Silverlight while still within an application we know and understand. Anyone can try it and its available for Windows and Mac. You can access it here:

http://www.silverlight.net/content/samples/apps/facebookclient/sfcquickinstall.aspx

 

What does it provide

Well first off, the Silverlight client runs in “out of browser” mode, which means that the application (though still essentially a website) can run out of your web browser, something that is of great relief to many of us who hate using “applications” within a web browser. Don’t think then this is simply a client installation, it isn’t. The application is still “tied” to its web page, and it uses this to detect updates for the application and to pull down new versions.

Though essentially this is a new client for Facebook, Microsoft have chosen to keep much of the Facebook navigation / layout in the same place – probably to ensure we don’t start getting frustrated hunting around for menu options etc. The look and feel though is very different, with the client app opting for a dark and moody type background, large clear fonts, and some nice “glowing” buttons and text.

Your main view shows the News Feed, and it seamlessly updates this as and when a new post is picked up. You will also find your typical filters available from Facebook. You can also post your own status updates etc etc. I won’t bore you with what you can and can’t do with the application as you can have a play with it yourself. Needless to say, this is a demonstration of some of the features Silverlight 4 will bring to the web, using Facebook as its test subject.

There are some odd control issues with things not running quite a smoothly as no doubt they will do, but that being said, I do like the client and will no doubt use this more than the actual Facebook website for sure. The application is lacking some “live polish” for sure, but even so, it’s a vast improvement on the current Facebook client (though no adds hmmmmm)





Collaboration in your business?

26 01 2010

After doing my usual scouting around blogs and discussions, I noticed that there are quite a few people not grasping what Collaboration is, and more to the point wondering who would take responsibility, or be a business sponsor if you like, of collaboration within an organisation…

So what is Collaboration?

Well let’s not get caught up in too many definitions here. Basically Collaboration is a way of working together to achieve a similar (or the same) goal, be it individuals within a department, departments within an organisation, or organisations with other organisations. For me a big “No No” is thinking of collaboration as a set of “tools” or “workspaces” such as wikis and blogs. I think of Collaboration as a group of many different elements, each element being made up of a particular tool or technology… So let’s work on the basis that Collaboration is a goal and a way of working, which may well utilise many tools and multiple mediums.

How do I understand Collaboration in my organisation?

Like many questions / problems I find it best to break down Collaboration in this sense into smaller chunks or in this case, categories. By understanding each category and what it is, we can soon start to grasp where collaboration occurs currently in an organisation and also start to understand what it can do within an organisation (also – sometimes more importantly – start to assign a business owner to collaboration)

Messaging Collaboration: Think of how messages get sent around your organisation. Typically you will use eMail, but messaging collaboration also includes instant messaging and SMS texting for example. This type of collaboration can lead to some rather bad practices – such as multiple large attachments embedded within emails, massive Cc and BCc lists in an email etc.

Content Collaboration: Think of working in a group to put together and create a word document – say a contract or proposal for example. ECM is a great example of a tool within this type of Collaboration,  allowing multiple people to work on single files, providing annotations, and generating multiple versions, all working to get to the goal of a “Published / released” version

Conversation Collaboration: Think conversations you may have between individuals within an organisation – especially those that are spread geographically across the country or the world. You can also lump into this form of Collaboration certain forms of Social media. Tools within this form of collaboration include micro-blogging, blogging, wikis, instant messaging.

Business Process Collaboration: Think people working together within a business process to complete “work”. In essence, true workflow and BPM is a form of collaboration as it brings people / departments / organisations together to complete the workstream. However, you can also collaborate at singular steps within a process to move the process along or deal with exceptions. BPM can pull in other forms of Collaboration quickly at this point – such as messaging, conversation and content – just to process a piece of work more efficiently.

Collaboration Management: Think sharing calendars and workspaces. This type of collaboration is ensuring people are free to collaborate at a particular time.

Now that you can understand the different components of Collaboration – you can quickly see that your organisation already uses a number of collaboration tools and elements.

Using collaboration more effectively

This is where tools for that are good for a particular form of collaboration help. Obviously collaboration goes on every second of every day within your business in some form or another. The trick is to make collaboration on a particular piece of work / topic easier to occur and manage. This means you need a good and clear strategy on how you wish to use collaboration within your organisation, more importantly where do you see collaboration taking place and how does it take place. Once you have done this your business can start to identify tools that are easy to integrate into other areas of your business – so pick an instant messaging tool that potentially can be added to your BPM software. Far too often organisations end up with a multitude of collaboration tools, many of which do the same job and are costing the organisation a fair few pounds and pennies in licensing…

 Identifying a singular business owner as such is tough. I think it is better to identify as many business owners as possible and bring them together in a “steering” type group. After all, with Collaboration your business professionals must collaborate with your IT professionals to ensure Collaboration is a success…(oohh the irony…)





Can Silverlight save Windows Mobile?

22 01 2010

I love the Silverlight technology and since I first started working with it (back in Alpha 1.1) I have always wanted to see it working on my mobile phone. Could Silverlight 4 be the release that finally makes it to our mobiles?

iPhone?

In a recent post I looked at Silverlight being used on the iPhone, allowing streaming of video content over the web to the iPhone. (http://andrewonedegree.wordpress.com/2009/11/27/silverlight-on-your-iphone-even/ ) I took this as a big positive move from Microsoft that they are seriously looking a Silverlight being used on the mobile phone. The iPhone is currently seen as the “bench” mark for smart phones (though a lot of other manufacturers offer far more features and functions in their phones) so for Silverlight to be a true mobile success, it will need to be able to work on the iPhone as well as Windows Mobile. We should also include other popular mobile platforms, such as Android etc.

Windows Mobile 7

For some time now, windows phones have been stuck using v6.5 which is based on the Windows CE 5.2 kernel, which was the same that powered Windows Mobile 5 (so that’s back to 2004). It has meant that while Windows Mobile phones still offer great office integration etc, they lack that certain wow factor, which is seen in abundance on the iPhone for example.

One of the reasons why the iPhone is so popular is the vast number of applications yo

Silverlight RIA

Silverlight delivers RIA and on your Mobile?

u can get for the phone, which is brought about simply by the vast number of developers out there for iPhone applications. So for Windows Mobile 7 to really compete, it too needs access the development community and have vast numbers of applications being developed for the platform…This is where Silverlight can step in…

Silverlight 4, the platform for building Windows Mobile 7 apps?

Looking through a recent ChannelWeb blog, it seems that a number of people have stepped forward and indicated that Windows Mobile 7 applications will be written and delivered via Silverlight 4. This makes great sense as it opens up the mobile platform to vast numbers of .NET and Silverlight developers. It also provides a real useable platform for business applications to work on multiple devices. (Something I have been looking into myself – http://andrewonedegree.wordpress.com/2010/01/07/ecm-access-on-my-phone/ ) My own company uses Silverlight to deliver a number of solutions, so having the capabilities to re-use our Silverlight and .NET code, to put-together mobile versions of these powerful business applications would be highly desirable…

It’s also worth pointing out that Silverlight development is moving along rapidly, with v3.0 being released back in July 2009 only for v 4.0beta to be launched just 4 months later in November. With this rapid development of the Silverlight platform, we are also starting to see more and more businesses and software providers switching and using Silverlight as their technology of choice.

The benefits go on, by using a “web” technology such as Silverlight, you don’t need to limit your applications to a particular native SDK, which is what you have to do for the iPhone or Android.

Conclusion

Is Silverlight the silver bullet that will make Windows Mobile 7 competitive and cool again? Well it will go a hell of a long way to helping, however the underlying operating system will have to run smoothly, be highly intuitive, support touch without the need of a stylus and above all, look great while still providing all that office integration we expect from a Windows platform. If Windows Mobile 7 can deliver this, then Silverlight will ensure a raft of developers get involved building cool applications, not just for the general public, but for businesses too…

Watch this space.





Virtualisation, it’s not a cloud

20 01 2010

In the world of IT we often come across confusion, especially when you are from a “business” perspective. Often this confusion is brought about by IT professionals and blogging, mixing what is technology with a business concept / way in which to implement IT technology. I see this time and time again when people are talking about cloud computing, with the technology being mixed up with or as the business concept that is cloud computing.

Virtualisation is the big thing that always gets associated with the cloud or as the same thing. This is a prime example of a technology being confused with a business solution / concept / way of implementing IT.

The lines of difference…

It can get confusing and downright cloudy when talking about technology and concepts of how to implement technology. However, these are very different things, and if we can make a clear distinction between the two, it is far easier to talk to the business about the benefits of a “concept” or a technology.

The key in making clear distinctions between technology and implementation is down to IT professionals. At the end of the day, business does not need to know the nitty gritty, rather they need to know the business benefits that a solution will bring them.

Virtualisation – a technology

I hate saying something is a “technology” but it does make things easier to explain. Virtualisation is a technology that allows “IT” to get more out of hardware resources. How it does this, really isn’t of great concern to a business, only the fact that it does it (why have IT professionals in your business if you want to understand all the IT yourself?). Basically though, Virtualisation allows your hardware to become more than just one server. (Please I am being very basic in my explanation I know). So, lets take a single server (physical hardware) and allow it to become 3 for example. So in your company you used to have 3 servers all running different solutions on them etc. But now, with Virtualisation you have 3 servers all running on one physical box (doesn’t matter if one server run Windows, another UNIX etc). I am not going into any more detail than that, as that’s all that is required in this type of post…

Cloud Computing – A way of working

Cloud computing is not a technology; rather it is a way in which we can use technology to decrease IT overheads (cost wise in theory).  Cloud computing is essentially letting someone else (outsourcing) provide you with the hardware and infrastructure required to run aspects of your IT. You then connect to that IT over the internet. Simple explanation I know, but I like to keep things simple. Cloud Computing is therefore a business model that companies can adopt…

So why does Virtualisation get confused with or as Cloud Computing? Well I am sure it is because Virtualisation is used by cloud providers in order for them to maximise their own IT infrastructure. Bloggers often confuse things by talking about Virtualisation in great length in their posts about the benefits of using the cloud. There is also one other reason why Virtualisation gets confused with the cloud, and that’s due to “perspective”…

Perspective of your IT

We love to use diagrams to illustrate how something works, and IT infrastructure is no different. As a business person, you could get a little confused between Virtualisation and the Cloud because of diagrams and some less than helpful statements by us in IT.

If you choose to use Virtualisation in house, you may well see the odd diagrams popping up that represent a cluster of servers (on your own system) as a “cloud” especially if you are using virtualisation. This shouldn’t be the case, often the “cloud” is reserved for the internet (hence the cloud computing term), however I have seen such diagrams as it is hard to represent a “virtualised” server environment. In addition, people often see Virtualisation as a way of implementing an internal “cloud” computing environment, or Virtualisation as an internal cloud solution. This isn’t right, and IT should correct this rather than encouraging this thinking. I have seen many blog posts even on “Private Clouds..” but there is no such thing as a private cloud. Remember the cloud is the “internet”…Why is it overlooked or encouraged? Well the “cloud” has a lot of buzz about it at the moment, simple as that. Its far easier to get people talking about an internal cloud or getting people to a blog titled “Private cloud” compared to “Virtualisation of your network…”

Virtualisation – not just for the cloud

So hopefully, from a business point of view, we understand the difference between “cloud” and “virtualisation”. If so, you can see why virtualisation isn’t something only used by the cloud, rather it is a technology that many businesses can take advantage of to help maximise IT hardware use. It therefore comes with a host of benefits for an organisation, some of which include:

  1. Reducing administration cost
  2. Reducing hardware cost
  3. Reducing electricity bills

I am a strong believer that we will see virtualisation use grow within businesses, no matter what their thoughts are on “cloud computing”. I also believe that Virtualisation will help many cloud computing providers – however, do I see us all switching over to cloud based solutions…..NO….But that’s a different post.





Intelligent BPM maps

14 01 2010

I have posted about BPM maps hindering flexibility and capabilities to some extent before (regarding systems integration). See:

http://andrewonedegree.wordpress.com/2009/11/30/bpm-mapping-tools-integrating-data/

http://andrewonedegree.wordpress.com/2010/01/08/incorporating-automation-into-your-processes/

However, in this post I want to take this further by looking at how BPM maps (I use the term map loosely here) can become intelligent and hold much more than just business process routing rules…

The role of the map

For many this is the “definition” if you like of a business process, shown in a graphical map format. This is great, and it’s true to some extent. However, I believe the primary role of a workflow system is to deliver systems integration, not a predefined diagram of a process.  BPM and workflow only works well when it brings together systems, people and data to maximise the efficiency of a business requirement (or process if you like).

So what is the role of the map? Well it is there to provide business rules for a cross section of applications to deliver a solution that allows users to do their work effectively. (Not easy to read that sentence). This work is shown as a process. For me, I prefer to see processes graphically, but not in my BPM system, well not used to define the rules etc within my BPM solution. Graphical representations are great for identifying the business requirement, and should be done by a BA. But process maps should be used as a “specification” if you like for a developer to build my intelligent process map…

Using a developer to implement my business rules

I know that many of us want to have a nice mapping tool that allows a business analyst (BA) to create and modify maps / business processes. However, in the real world, this means you have a couple of restrictions / issues.

  1. You can’t easily integrate with other LOBs and data required for a particular step
  2. You can be limited to other business rules / factors (that are outside the scope of your map)
  3. Automated steps often require “Robot” type step applications to be written (specifically for your requirement)
  4. Much more emphasis is placed on developers for the actual implementation / front end of much of the system (if you require intelligent integration / more complicated system integration)

As mapping tools get more powerful you still have these issues, mainly because a BA is just that, not a technical person who wants or should be bogged down in the technicalities / functions / calculations etc required for the business.

By using a developer to take your map and build business rules into a BPM system (if your BPM architecture allows this type of process definition), you open up a world of systems integration and flexibility. Effectively your business rules / map can now become intelligent.

Intelligent maps

An intelligent map is more than just business processing rules. It contains actual business processing logic, it has the capabilities to bring in data from third party software, carry out complex calculations and functions, raises events and triggers and does all of this within the map itself.

 Most BPM maps cannot provide this level of integration or capabilities to execute / carryout processing functions. Many times these types of functions are provided in the form of “Robot” applications or step processors. These are background applications or services written by developers to include business rules and functionality into the process map, because the map itself cannot support this level of intelligence. The outcome is a solution that requires much more processing power, requires greater input from developers and one that is harder and more costly to maintain.

By shifting emphasis of functions and rules to an intelligent map, you provide a BPM solution that delivers greater out of the box functionality, keeps initial costs far lower and requires less development work / bespoke step processors to be written. In addition, when your business needs to adapt and change, updating processes are far easier and quicker. Since the map itself contains the business rules of your processes (as well as the definition of that process), you need only modify one thing, your intelligent map. There are no background processors that need modification, no new application changes to be made etc. Because the business intelligence is all stored in a singular place…

Quick example…

A good example of a BPM platform that works in this way is workFile BPM. It has been architected to ensure the “map” holds all the business rules as well as having the capabilities to integrate with other LOBs and execute functions, triggers etc within the map. Developers have to build the map in this case, based on information provided by BA’s.  

The out of the box user interface is in most cases the only interface you need, simply because of the intelligence available at the map level. However, there will always be occasions when “bespoke” processors are required, and the workFile BPM platform provides a complete XML Web Service API in which developers can build on the intelligence provided in their maps within workFile BPM…

Conclusion: System integrator or process definer…

I see the main aim of BPM and workflow to raise the efficiency of businesses by making it easier for users, and the business, to complete work. Defining processes allows us to visualise this work, however, the BPM platform brings together everything that is required to complete the work. So a BPM platform should be a systems integrator first and foremost, this is the real beauty of BPM and workflow…





BPM and BI enable better decisions

14 01 2010

There are many recognised and well documented benefits of BPM (Business Process Management), many of which focus around the benefits that empower users to make better decisions. The same can be said for high level staff, people who take decisions on how the business should go about doing business. Many BPM suites provide a dashboard that allows management and key staff to review process performance, throughput etc. However, do we need to know more than these basic operational facts?

Business Intelligence (BI) can help

Now I don’t have a great amount of experience in the BI field. However, I am very aware that BI (at least the concept, practices and technologies) can add real value to BPM management dashboards. While it is great to know the through put of a particular process for example, it would be far more informative to see the type of “cases” or “workitems” that are in that process. The type of customers involved, their requests, who are carrying out the majority of cases here, what other applications are having a factor on performance etc. This is where BI can add real value.

By integrating either good BI practices or a good BI solution with BPM, you enrich the overview of how a business process is performing, and to an extent, how your business itself is performing. In addition, vast time savings will be made with regards to gathering decision making variables and showing these as informative reports.

BI solution or an intelligent BPM platform?

This is the question…It’s all well and good trying to integrate a good BI solution with your BPM platform, but this won’t be simple. Because of this the market is moving to BPM vendors purchasing BI providers (maybe vice versa) in order to bring something different and more informative to their product offering.

To write a complete BI solution would be hard, however BPM vendors can go a long way to providing BI in their own dashboards, the key is time and investment. The outcome may not demonstrate as nicely “Out of the box” as established BI solutions, but many of the benefits of using a BI solution will be incorporated. I am sure we will see many BPM solutions including “open source” BI solutions in their own product offerings over the next 18 months…

There are of course exceptions to the rule. My own company provides a BPM platform that can provide BI capabilities within processes and reporting dashboards. This is done because the maps themselves and the data stored are implemented at a more technical developer level (rather than at a high level mapping environment). This provides great flexibility in what information you want to gather and effectively store ready for reporting on. The same integration capabilities are available with custom reporting and custom dashboard controls, allowing reports to integrate with other LOBs and or its own BI type of system.

Conclusion

No matter how you choose to implement richer reports, the point is that organisations should look to BI principles when executing BPM reports or viewing dashboards. The more relevant information that is available, the more likely you are (as a business) to make better more informed decisions, which can only be a good thing. In addition, financial savings are very apparent when looking at how much money it costs to generate similar types of reports from legacy systems / other LOBs…All in all, BPM and BI is a natural fit, one which vendors and customers alike should take advantage of.





Incorporating automation into your processes

8 01 2010

This may seem quite simple, however, it is often something that is neglected somewhat. When designing your processes, ask yourself just what can be automated, and how much automation will add to the efficiency of that business process.

Identification

It can be tricky to identify everything that can be automated straight away. Only after a good analysis phase will the majority of processes / tasks that can be automated, be identified. Some of these will be obvious candidates for automation; typically these are calculations or actions that can be completed with all the information stored within the BPM system. Other automation candidates may not be so obvious. The less obvious processes / tasks are often overlooked because of the way the process is currently worked, typically requiring integration between systems (maybe even multiple LOB applications). It is always important to try and automate as much as possible, or at least indentify everything that in an ideal world, could be automated…

Restrictions

Once you have identified all your possible automated “steps”, you really need to see what you can realistically automate given your current BPM technology, LOB application integrations capabilities and of course, your budget…

One of the big problems with BPM modelling tools is that they can become very restrictive in what can be achieved with regards to integration. This is something I have blogged about in the past, http://andrewonedegree.wordpress.com/2009/11/30/bpm-mapping-tools-integrating-data/ with many automated “steps” you will require the services of a developer, hopefully your chosen BPM platform will support this kind of integration and processing…

The next hurdle is to identify what integration capabilities your other LOB applications provide. If you cannot integrate with them at all, then your step cannot be automated and will have to rely on some good old fashioned user processing power, not so efficient. Having a good IT department or use of a good IT consultancy typically means that your company will have a good and clear understanding of its IT and have some form of strategy / roadmap in place. If so, you will probably find that your LOB applications (unless very old) will provide some form of API allowing integration possibilities. (Ideally your business will have proffered technology platforms, such as .NET, Windows etc). If this is the case, then you can start to investigate just how much integration is possible and evaluate the costs involved in automating your process step…

The benefits

Automated process steps provide a number of benefits, the main two of which are:

  1. Efficiency
  2. Accuracy

There are obvious efficiency gains by automating a step, which obviously raises the efficiency of your process and improves SLAs etc. However, accuracy is often overlooked. Automated steps are far more accurate (once they have been fully tested) as they simply remove human error from that particular step. Now I am not saying this means your process will not have “issues”, but what I am saying is that an automated step removes user error from that particular part of your process, something that can be very time consuming.

With these two main benefits you also get a great “cost” benefit. If you measure your time and resources and place a monetary value on these, you will soon see a clear ROI timeline for automating a particular process step. This will typically be the deciding factor (if possible) in choosing to automate a particular step or not…

Conclusion

Whenever you review your business processes, even if you don’t have a BPM system in place, always ask yourself which processes or “steps / tasks” could be automated. Don’t feel restricted because a process spans multiple systems, departments or geographical spaces just indentify candidates for automation. A good way of doing this is by using a good independent consultant.

Automation is a great way of raising efficiency, accuracy, productivity and reducing operational costs. It there is always in the benefits of a company to automate as much as possible…