Custom Software Development

Custom Software Development

Century's software division encourages a culture of service that places our customers' needs at the forefront of our solutions. We believe that technology should deliver, as its first priority, the timely realization of the best solution for the business problem. Our priority is your priority - to get the work done on a schedule that meets your requirements, while striving to improve efficiency and reduce costs.

Application Software

The domain of Application Software includes but is not limited to business software and productivity software that is installed and run directly from your users' PCs. Application Software is often referred to by other names such as Client Applications, Rich Client, Fat Client, and Thick Client software.

General everyday examples of Application Software include accounting packages like QuickBooks and Peachtree Accounting, and productivity applications like Microsoft Word, Excel, and PowerPoint.  These applications have traditionally been deployed to the desktop, though that is changing in some cases (see Web Applications below). 

Likewise, business applications that provide a significant number of features to display or manipulate localized business data, processes, or documents and that are utilized by a limited audience of specialized users, are good candidates to be developed as Application Software. 

The key drivers for the development of a software solution as Application Software are usually the complexity of the software's feature set and its presentation, its need to interact with peripheral devices, and its secured or limited usage by its users.

Reasons not to develop a software solution as Application Software might include a convincing need to centrally deploy, update, or manage the software and/or its data and the need to expose the software to a large number of users (see Web Applications below).

Century has developed several products and solutions as Application Software.  We can guide you through the process of needs assessment, design and prototyping, and provide the development, testing, deployment, training, and maintenance of your Application Software solution.

Century uses best-in-class technologies and associated best practices to implement our software solutions.  Our Application Software solutions are generally built on the Microsoft .NET Framework and might utilize technology stacks such as Windows Presentation Framework (WPF) or Windows Forms.  If a non-Microsoft or Operating System independent solution is needed we might develop your solution using the Java platform with technology stacks like JavaFX or Swing.  In addition to the platform technologies we often use proven third-party and Open Source APIs to enhance the quality and capability of your Application Software solution.

Web Applications

Web Applications are becoming ubiquitous these days as businesses strive to increase their customer reach and offer self-service options to their customers and partners. Beyond the capabilities of web sites, Web Applications provide real business-to-business (B2B) and business-to-consumer (B2C) solutions to address real business opportunities. Web Applications are often referred to by other names such as Thin Client or Browser-based software. A hybrid type of software that is increasingly falling under the domain of Web Applications is the Rich Internet Application (RIA).

General examples of Web Applications include online banking web sites and other account based financial sites like Mint, ecommerce sites such as Amazon and EBay, search engines and productivity applications offered through Google and Bing, social media sites like Facebook, and the list goes on. Almost all Web Applications are utilized through an Internet/Web Browser such as Google Chrome, Mozilla Firefox, Microsoft Internet Explorer, etc.

Business applications that need to be centrally deployed, updated, or managed; have a centralized database or derive their data from the Cloud; or that need to expose the software to a large number of users are good candidates to be developed as Web Applications.

The key driver for the development of a software solution as a Web Application is usually the need to expose the software to any authenticated and authorized user, anywhere that user happens to be.

Reasons not to develop a software solution as a Web Application might include the need for a rich feature set that is possibly dependent on peripheral devices, and that should be made available only to a limited number of specialized users (see Application Software above).

Century has developed several products and solutions as Web Applications.  We can guide you through the process of needs assessment, design and prototyping, and provide the development, testing, deployment, training, and maintenance of your Web Application solution.

Century uses best-in-class technologies and associated best practices to implement our software solutions.  Our Web Application solutions are generally built on the Microsoft .NET Framework and might utilize technology stacks such as ASP.NET MVC (Model View Controller) or ASP.NET Web Pages.  If a non-Microsoft or Operating System indepedent solution is needed we might develop your solution using the Java Enterprise Edition (JEE) platform with technology stacks like JavaServer Pages (JSP) or JavaServer Faces (JSF).  In addition to the platform technologies we often use proven third-party and Open Source APIs to enhance the quality and capability of your Web Application solution -- these APIs include or are based on proven standards such as jQuery, HTML5, CSS, JSON, AJAX, REST, XML, PDF, etc.

Enterprise Middleware & Web/Cloud Services

Enterprise Middleware and Service Oriented Applications such as Web Services and Cloud Services all refer to server-based software that securely and robustly serves content and data either to end user software such as Application Software or Web Applications, or to other server-based software to provide Business-to-Business (B2B) Systems Integration over the Internet. The water muddies a bit here, but terms such as Enterprise System, Server-Side, Backend System, Back Office System, Infrastructure, Application Tier, Data Tier, Software-as-a-Service (SaaS), Platform-as-a-Service (PaaS), Infrastructure-as-a-Service (IaaS), Web Service, Cloud Service, and "the Cloud" may all be used to refer to Enterprise Middleware and Service Oriented Applications.

There are many general examples of these Enterprise Middleware and Service Oriented Applications; some are more consumer facing than others, such as Salesforce.com, but many will be less familiar as they tend to be B2B services such as Windows Azure, the Google App Engine, Amazon EC2, and Rackspace.

Business applications, as they are generally conceptualized by customers and other end users, seem to be just the Application Software or Web Applications that the end users interact with; in truth, however, most data dependent business applications require some form of Enterprise Middleware or Service Oriented Application to exist to provide data to those end users and to receive instructions from those end users as to how to manipulate the data for the business purpose.

The key driver for the development of Enterprise Middleware or a Service Oriented Application as part of a software solution then, is not so much whether to develop it, but how much of it to develop.

As a matter of fact, the only reason not to develop Enterprise Middleware or a Service Oriented Application as part of a software solution, is that the software solution has been determined to have no need of any network served data and will be completely self-contained (not likely but possible for Application Software -- Web Applications by their nature will require Enterprise Middleware) or that the Enterprise Middleware or Service Oriented Application already exists and can be "consumed" by the software solution.

Century has developed many Enterprise Middleware and Service Oriented Applications.  We can guide you through the process of needs assessment, design and prototyping, and provide the development, integration, testing, deployment, training, and maintenance of your complete software solution.

Century uses best-in-class technologies and associated best practices to implement our software solutions.  Our Enterprise Middleware and Service Oriented Applications are generally built on the Microsoft .NET Framework and might utilize technology stacks such as ASP.NET MVC (Model View Controller)EntityFramework (EF), Unity IoC Container, Windows Azure, Windows Communication Foundation (WCF), Internet Information Services (IIS) or Microsoft SQL Server, among others.  If a non-Microsoft or Operating System independent solution is needed we might develop your solution using the Java Enterprise Edition (JEE) platform with technology stacks like the Java API for RESTful Web Services (JAX-RS)Java API for XML-Based Web Services (JAX-WS) or Java Database Connectivity (JDBC).  In addition to the platform technologies, we often use proven third-party and Open Source APIs to enhance the quality and capability of the solution -- these APIs include or are based on proven standards such as HTTP/SSL, REST, SOAP, XML, LINQ, SQL, Apache Software Foundation APIs and Containers, etc.

Systems Integration

To this point we have discussed the particulars of the different types of software solutions that Century can produce to address your business needs; but what about your existing software infrastructure and investment?  Can Century assist you to leverage your existing resources?

Century has had great success in using our technologies to integrate with existing software systems. Where it is determined to be necessary or desired, we have also had great success in extracting valuable business data from legacy systems for conversion and migration to newer systems (see Data Conversion/Migration under Data Services).

Our approach to Systems Integration starts with an interview as to what you know about your current systems and the technologies they employ. Typically, thereafter, we will be granted some level of access on your network to research the systems and to develop a strategy for the integration.  In some cases we find that we can use the technology as it stands; in other cases we will either write a software bridge that will allow your new software to interact with your legacy system, or we will write a software utility to completely convert and migrate the data to the newer system (see Application Software above and Data Conversion/Migration under Data Services).

Each System Integration engagement is different from the last, but we are confident in our approach and our technologies.  We can guide you through the process of needs assessment, design and prototyping, and provide the development, integration, testing, deployment, training, and maintenance of your Systems Integration solution.

If you would like more information about our custom software services, please call us, chat with us online, or submit the contact form on this page and a Century representative will contact you promptly.