Lower Development Costs with .NET      Looking for a Portal?      Windows or Web Application?

What Does it Take to Create a Successful .NET Application?

Most companies are cautious when it comes to wading into the waters of the Microsoft .NET platform, but take a look at some of the techniques that Celeritas Technologies has used to build successful Microsoft .NET applications...

Contents:

Reliable and Flexible Methodology
Change Management
Quality Architecture
Reusable Components
Experienced Developers


Reliable and Flexible Methodology

The first ingredient in a successful application is to start with a good method for building it. The Celeritas Technologies' Software Engineering Process (SEP) is a framework for building applications which consists of four main phases of development:

  • Requirements - The high-level business problem is analyzed and critical requirements are captured
  • Design - Architecture is planned, functional prototypes help to further refine requirements, framework, patterns, and systems are designed
  • Construction - The application takes shape as systems are built based on the architecture and patterns developed from the design phase. Automated builds ensure continuous integration testing, while periodic code reviews and coding standards ensure consistency across systems
  • Implementation - Formal iterative testing and repair ensure quality, along with automated load testing that identifies critical areas for performance optimization

Change Management

Your project will change, that cannot be avoided. The larger a project is, the more it will change, which is why Celeritas Technologies will design a phased approach to application deployment to break the application into smaller, more manageable pieces. When changes do occur it is important that everyone understands the changes, the impact of the changes to the rest of the system, and the cost of such changes. Celeritas Technologies uses a change request system that requires approval and sign-off of changes before implementation to make sure that everyone is on board with changes to the system.

Anticipating change is another benefit gained by working with an experienced development company. Celeritas Technologies knows how to build frameworks that can anticipate change and minimize the cost and impact when changes do occur.

Quality Architecture

The new world of Web Services has opened up new opportunities for disconnected applications, and many of the deployment features built into the Microsoft .NET framework make Windows and Web applications each viable options with their own strengths and weaknesses. Celeritas Technologies' .NETworks Architecture was designed to take advantage of these new opportunities with a four-tier architecture consisting of the following layers:

  • Data Access/Storage - Most enterprise applications are built on a relational database system. Many of the "one size fits all" solutions that try to make the choice of a database flexible will often sacrifice speed for flexibility, and will rarely maintain the database neutrality that they are seeking. That is why Celeritas has designed a database layer that contains all of the SQL that will be used for the interaction with the database. In this manner, queries that are optimized for the particular database can be used to ensure maximum performance while being encapsulated in a layer that can be easily replaced, should a different database need to be targeted. When accessing data in a database table, the Create, Update, and Delete statements almost never change, so by taking advantage of the SQL generation features of Visual Studio, much of this layer can be automatically generated by the development tools which will shorten development time. Additionally, Celeritas Technologies has built a Query Builder engine that helps to encapsulate SQL clauses which can be easily assembled to retrieve the information you are looking for and centrally optimized for fastest database access
  • Business Rules - Building on top of the Data Storage layer, but separated from it is the Business Rules layer. Here we start to implement the business-specific rules about how data is access and manipulated. This layer enforces constraints, helps maintain data integrity, and coordinates data access across multiple tables that are logically related. By building on top of the Data Storage layer, a different DBMS can be swapped in and the business rules would not have to change
  • Data Transport - Web Services has opened up new mechanisms for data sharing and transport that were not possible a few years ago. Web Services are used by the Celeritas .NETworks Architecture to aggregate data and provide a widely available central point of access for the presentation layer
  • Presentation - The combination of new deployment features in Microsoft .NET and it's simplicity for working with Web Services has now made it possible for the .NETworks Architecture to provide both a Windows and Web interface to the client for the same application. Since both the Windows and the Web clients know how to talk to the Data Transport layer it is simply a matter of deciding how to best group and present the information based upon which client is being used. For windows type presentations, Celeritas Technologies has a wealth of pre-built components that are designed to speed development and provide user interfaces that are not available with standard windows controls

Reusable Components

As the software systems get more complex and are called upon to have more functionality, building upon past development efforts can be critical to ensuring that an application is built on-time and under budget. Celeritas Technologies brings a host of pre-built, tested, reusable components to any development effort to help improve the quality and shorten development time. Be sure to browse through our .NETWorks Toolkit to see how we can help speed up your development efforts.

Experienced Developers

Never underestimate the value of experience. Technologies come and go, but experienced developers understand how technologies are all the same and can relate the best of past experience with he new technology. The purpose of technology is to solve business problems and an experienced developer understands the delicate balance between developing the fastest solution and developing the most maintainable solution.

Return to Articles page


Top | Home | Contact Us | .NET Articles | .NET Case Studies | .NET Resources | Sitemap