Services: Custom Software Development
GoodCore Software develops innovative custom software applications catering to the unique requirements of our clients. This includes database-driven web applications, custom workflow systems, multilingual content management systems, web based reservation systems, online shops, custom billing systems, and software catering to other custom requirements.
We have the expertise to design and develop custom web applications and custom desktop applications using state-of-the-art development technologies.
Our Approach
We have successfully delivered a wide variety of software applications: on time, on budget. Here is a how we approach a new project:
Software Requirements Analysis
A typical project at GoodCore Software begins with the project manager on our end engaging in discussing requirements with the client. We identify the objectives of the project, the budget and the time constraints, and invest the effort to understand client's vision about the software solution they are aiming to build. A high level of emphasis is placed on eliciting requirements which may not be obvious straightaway. Time and again, we've seen the benefits of investing into this phase.
Application Prototype & GUI design
Prototyping of the software application along with GUI design helps all stakeholders to get a feel of a working system at the initial stages of the project. A prototype is very useful to crystallize and further refine requirements. This phase helps reduce project risks and introduce certainty into the schedule and cost.
Custom Database Design
Once the requirements and GUI design are signed off by the client, the stage is set for detailed database and application design. Effort goes into ensuring that the database design is logical, not overly complex, and flexible to handle future requirements. We have the skills and the experience to develop scaleable database designs optimized for large Internet audiences and high performance.
Custom Application Design
Our technical architects break up the application into the logical tiers (Presentation, Logic, and Data Access) and specify the class hierarchy for an object oriented design. Typically, this doesn't need to be done from scratch. The technologies we use for our projects provide the base framework for this purpose e.g. the Zend Framework for PHP based projects, .NET development framework for .NET based applications, and frameworks like Struts for J2EE based development.
Custom Programming
Backed with a rigorous requirements analysis and technical design effort, the stage is all set for coding to begin. Attention to coding conventions and frequent peer reviews throughout development ensures a high quality code that is well structured, documented, and flexible.
Testing & bug-fixing
Skilled quality assurance personnel thoroughly and systematically test the application and prepare defect reports. The process of defect-fixing and testing proceeds iteratively until the software is considered stable to be deployed.
Deployment
The software is deployed and put in place with application monitoring and periodic data backups. Typically, we prepare a deployment manual that documents the steps to deploy and rollback releases of the application.
Development Technologies
Our team has expertise in the following development technologies:
Platforms:
Linux, Microsoft Windows Servers
Web/application servers:
Apache, Tomcat, Microsoft IIS
Programming/development:
.NET framework (C#, VB), PHP, Perl, Java/J2EE, C, C++
Databases:
MS SQL server, MySQL, Oracle
Mark-up & scripting:
HTML, XHTML, DHTML, XML, CSS, AJAX
Design:
GUI design, Website layout & design
We welcome you to contact us to discuss your requirements or to find out more about our custom software development expertise.