Success Stories


Real-world implementations of the .NET Design Pattern Framework and the SPARKTM Platform.



Project: Stay4free.com



The business

Stay4free is a home-exchange site where users exchange their homes for of period of time for vacation. This home-sharing model is rapidly becoming popular as a low-cost vacation alternative.

Stay4free.com is functionally very similar to the large home rental sites, such as Airbnb, HomeAway, VRBO, and HouseTrip.

The only difference is that on Stay4free users don't pay for rent; instead, they arrange to exchange (or swap) their homes for a period of time, usually 2-3 weeks. Members pay a subscription fee, but no money is paid for the actual home exchange.













The objectives

Before the project started, Stay4free already had a basic website. However, to stay competitive they needed to bring it to the next level. This required a total rebuild of the application from the bottom up, including a new database to support the new functionality.

With only limited resources available, the solution had to be 1) low-cost, 2) fast and easy to develop, 3) able to handle high traffic volumes and complex searches, and 4) be easy to maintain and support.

In addition, the new site had to be visually stunning and easy to navigate. This last point meant that a very large portion of the project would need be devoted to design and front-end work, rather than on the underlying code, such as the business- and data-layers.







The project

To meet their objectives SPARK was used as the .NET platform, including the SPARK code generator technology -- note: the SPARK platform and code generation tools come with the .NET Design Pattern Framework 4.5 and the the PRO .NET Design Pattern Framework 4.5 respectively.

SPARK offers the exact features as required by this demanding project. Development can be very fast and the platform is low-cost, lightweight, high-performance, and the learning curve is minimal.

Using the SPARK code generator allowed them to focus almost entirely on the presentation layer, rather than on the more mundane task of getting data in and out of the database. The generated code handled the data access easily and effectively.









SPARK in Action

In the first few days of the project, the functional requirements were translated into a data model with 26 tables. SPARK keeps the data model simple by not using views, stored procedures, triggers, or any other data objects. To the right is an ERD of the model (in case you're wondering, the 2 large tables are 'User' and 'Home').

With the new database in hand, the SPARK code generator automatically created the service-, business-, and data-layers in just seconds. Each table was mapped to a business object, some of which were customized by adding simple code snippets to their partial classes. The service and data layers performed extremely well and never needed any change or adjustment.

The development cycle was rapid and highly iterative using a process of continuous improvement and refactoring. Whenever a datamodel adjustment was required (which happened regularly) the SPARK code generator would run and within seconds the new fields were available to the UI -- allowing very rapid iterations.









Project Metrics

To the left are the architectural layers of the Stay4free application. The SPARK code generator created 3 out of the 4 layers.

The figure also shows the estimated development time spent on each of the layers. Work on the database took about 4% of the time. Other than a few business object customizations, no time was spent on any of the 3 generated application layers.

This meant that 95% of the time was available to crafting the presentation tier (the Controllers, their Action methods, and the Views). The ability to dedicate such a large portion to the UI greatly contributed to the success of the project

The total project was 6 man-months of work, or 3 months for two senior .NET developers. The database required about a week, the business objects a couple days, and the rest was devoted to building MVC Controllers, Views, and their supporting classes and components. This distribution was just perfect.







Conclusion

Using the .NET Design Pattern Framework and the SPARK platform, the Stay4free project was a complete success.

The site is easy to support and maintain. Adding new functionality is easy -- even when bringing in a new .NET developer who will quickly get up to speed with the well-organized code base.

The application is hosted on Azure and it is fast, robust, and reliable. Actually, you can check it out on www.stay4free.com.


Would you like your projects to be equally successful? If so, start using SPARK to help you build your apps faster and better than any other platform.

As a first step, get your own copy of the .NET Design Pattern Framework .4.5. Then, if you like it, go PRO with the SPARK code generation technology.



.NET Design Pattern Framework 4.5
PRO .NET Design Pattern Framework 4.5






Here are some additional screenshots of the Stay4free application.

Search Results page






Property Details page






Member's Profile and Private Message page






Plans and Pricing page






Signup Wizard pages






Extensive Administration area (private)