Software Development Services
We specialise in providing full Java and J2EE software solutions for the enterprise, offering both on-site and off-site development services so high-quality applications and prototypes can get developed. This allows our clients to concentrate on their own business expertise, while we develop part or all of their application. Our goal is to deliver the highest quality end-product, taking ownership of and treating each project as though it were for our own use.
As a result of vast experience acquired in the development of a wide variety of Java and J2EE based applications, we have identified some of the key issues which continuously arise in such projects, regardless of the server technology selected. From this, we have developed, and are continuing to refine with each project, a robust development process, framework and platform, to allow for rapid development of quality J2EE systems.
This includes :
development process - we advocate the use of industry best-practices, such as close user involvement during the entire development, continuous integration and testing, architectural and code reviews, full requirements gathering, and small development iterations. Our development process takes account of all system aspects, such as operational and maintainence needs, as well as pure business requirements.
development tools - we make extensive use of best-of-breed Open Source tools, such as Ant, JUnit, Log4J, Struts, JBoss and CVS, and have built a vast internal code and component library. This allows us to rapidly ramp-up a development, saving both time and money for our clients. We also have expertise in the use of commercial tools such as Oracle's 9iAS and Inprises J2EE servers, and Oracle's database.
communication issues - we encourage and apply the extensive use of analysis and design patterns, and are firm advocates of the use of documentation, modelling and coding standards and conventions. To aid in this, we apply extensive peer reviews of all project artifacts.
The Good Software Company is committed to deploying solutions using open, vendor-neutral, cross platform industry standards to ensure the highest degree of flexibility, interoperability, choice, market opportunity and support for new technology. Our systems are built using J2EE (which includes Enterprise Java Beans, Java Server Pages, JavaMail, Java Message Service, Java DataBase Connectivity (JDBC), Servlets, and Java Beans/components), XML, HTTP/S, and HTML technologies.
The open, abstracted layer design of our systems also allows us to have application server and database independence. This way as vendor products evolve, our clients can easily employ a new server product within their architecture for increased capability. This protects both our clients and us from the single vendor dependence issues.
Our development philosophy is based on building open standard, vendor independent, best-of-breed technologies that adapt easily to technological change. We are an experienced, reuse-driven software engineering group employing solid engineering principles, process, organization and strategy. We stress robustness, flexibility, reliability, scalability and reuse in every aspect of our technology. This equates to a faster time to market, fewer bugs, and lower maintenance costs which results in a stronger value proposition to our clients.