The Microsoft’s VSLive2010 developer’s event is all about development in the Visual Studio environment, and one of the big announcements this year was the launch date for Visual Studio LightSwitch. LightSwitch is a Rapid Development environment that will allow technical and somewhat-technical people the ability to create light weight Line of Business applications. While many developers don’t think LightSwitch will be useful for creating apps, we think it can be very beneficial to use in the right circumstances. Here are some reasons why.
Right-Sized vs Enterprise Ready
In recent years there has been a growing philosophy that everything needs to be enterprise ready. The prevailing thought is all solutions need to be scalable, flexible, anything-able. While that is true for anything that really does need to be enterprise ready, there are situations where enterprise ready is TOO much.
Imagine you are a small start up. You are not focused on enterprise ready. You are focused on getting through your first year. Alternately, you might be an established organization that is considering getting into a new line of business. Focusing on getting something up and running to let your employees share information in a cost effective way would ensure you are not risking valuable resources (i.e., capital). In today’s economy capital budgets are limited, and in some companies non-existent.
Best of Both Worlds
Traditionally, we have seen tools such as Access, Excel and more recently SharePoint, act as a useful starting point for a low cost prototype. The best thing that can be said of those initial forays in developing Line of Business applications is that usually all of the necessary data points have been identified and that there is a working prototype. We find that having a working prototype when starting an enterprise application development effort is immeasurably helpful.
While Access and Excel solutions do provide value when moving to the next level of maturation, LightSwitch can provide even more. Since LightSwitch can connect to Microsoft SQL Server or Oracle databases, the application can utilize either of those databases during the initial development.
LightSwitch also generates an ADO.Net EntityFramework class structure that can be used in the next iteration of development. Finally, the interface is rendered to a Silverlight application.
Recently, we had a customer request a simple application for generating quotes for customers and tracking them in a web format. Taking this use case, we decided to give LightSwitch a go. We were able to build a working prototype for the need within 4 hours, complete with the database tables, class structure and Silverlight interface. Normally this would have taken close to 40 hours to get to the same point in a traditional web development environment.
Efficiency vs. Maturation
Some people point out that if this right-sized application is successful that it will need to be rebuilt, usually from the ground up. While this is mostly true, it’s relevant to restate that having a working prototype does reduce the risk (risk = time + money) in starting a new application.
So would it be more efficient to build the enterprise ready version of the application first? The assumption there is that you are going to get the application right the first time. Or that the application will be used for a period of time to recover its ROI. But aren’t those two very big assumptions? Furthermore, aren’t those two very expensive assumptions?
Also, it’s relevant to say that enterprise software endeavors are never guaranteed successes. We all know the high rate of failure for traditional development, whether it is done using an agile or waterfall approach. As noted in a recent Gartner report, approximately 50% of all features are either never used or rarely used. Why not develop those features inexpensively first and then decide what needs to be in your final application? These are the types of benefits Microsoft’s LightSwitch can provide, making it something to consider moving forward.