Santa Clara, Calif. February 7, 2006: A small team of software engineers has discovered a simpler approach to building pet shops that sell fast. Prajakta Bahekar, Neelima Sangeneni, and Renu Kolli have re-architected the Microsoft .NET Pet Shop application by using Software Tree’s NJDX object-relational mapping (OR-Mapping) technology, which removes the complexity out of .NET/database programming. The resulting application has 35% less lines of code, provides greater flexibility, and delivers superb performance.
The .NET Pet Shop application is designed to show the best practices for building enterprise n-tier applications on Microsoft’s .NET platform. In this ASP.NET-based web application, classes are defined to represent domain model objects like products, users, addresses, and orders. These domain model objects are stored in relational databases (e.g., SQL Server, Oracle) using a data access layer (DAL). The original DAL implementation, which uses raw SQL and low-level database APIs, is hard to understand and maintain.
“Remodeling the Pet Shop required us to replace a fragile and inflexible data access layer with a sturdy and supple layer,” comments Prajakta. “The challenge was to cleanly replace the original layer without making any changes to the existing object model, the existing database schema, and the existing client code.”
Said Neelima, “There was quite a bit of mismatch between the original object model and the relational model; the existing implementation bridged that mismatch with many complex SQL statements incorporating complicated joins buried inside the DAL code. The NJDX OR-Mapping technology, with its intuitive GUI tools, came in very handy as it provided a non-intrusive, lightweight, and flexible data integration framework that can easily and efficiently bridge the gap between any object model and any relational schema.”
Renu says, “Using NJDX helped us eliminate the complex spaghetti code involving tedious SQL statements and their elaborate processing. We have achieved a cleaner design, a smaller and more intuitive code base, and an apparently higher performance implementation of the .NET Pet Shop application in a short timeframe. For example, the new DAL implementation with NJDX shrunk the code size of the Order module from 234 lines to 68 lines (a 70% reduction). Overall, the NJDX DAL layer has 35% less code compared to the original implementation. Best of all, the new implementation can work with any backend database including SQL Server, Oracle, and IBM DB2.”
“Clean design, simpler code, quick development, high performance, database independence… what more can you ask for?” says Damodar Periwal, President and CEO of Software Tree. “NJDX is based on some well thought-out KISS (Keep It Simple and Straightforward) principles that emphasize simplicity, efficiency, and pragmatism. It is gratifying to know that Prajakta, Neelima, and Renu could easily create a simpler and faster implementation of a sophisticated enterprise class application like .NET Pet Shop using NJDX, our patented OR-Mapping product. We invite all .NET developers to reap the benefits of using this versatile and practical product in creating higher-quality applications with improved productivity.”
A detailed project report describing the re-architecture of the .NET Pet Shop application using NJDX OR-Mapper is available on Software Tree’s web site at http://www.softwaretree.com. The full implementation code ships with the NJDX software. Please visit the company website for more details including demos, white papers, and a free evaluation download of NJDX.
About Software Tree
Founded in 1997, Software Tree is a Silicon Valley-based technology leader in providing superior software infrastructure that simplifies data integration. Software Tree has licensed its products to leading-edge organizations around the world, such as British Telecom, Xerox, CNT, Los Alamos National Labs, UAB Medical Center, Electronic Arts, and Darden Business School. For more information, visit http://www.softwaretree.com.
Note: NJDX and “The KISS OR-Mapper” are trademarks of Software Tree. .NET is a trademark of Microsoft. All other marks are the property of their respective owners.