Delivering Innovative Results
Phone407-823-9991
In order to minimize risk, ECS uses a hybrid software development model that combines tenants from both the “Agile” software development models and “plan driven” approaches. In our approach, software is typically developed in a series of “sprints” which last anywhere from four to six weeks. Each sprint is essentially its own software development project that incorporates all of the tasks necessary for the development of new features and/or functionality. The process for each sprint includes planning, requirements definition, design, coding, testing and documentation with the goal of delivering major feature releases at the end of each sprint. This approach is similar to an agile software development method; however, the initial requirements for components of each sprint are identified early in the project’s development cycle as part of the design document, which is a major tenant of a more traditional, plan-driven software development approach.
This approach emphasizes team communication and working software as the primary measures of progress and allows the team to adapt quickly to changing requirements. This also benefits our clients as they are able to see measurable progress in the form of completely developed and tested features every few weeks or months. In this fashion, an application will be able to be demonstrated with minimal features early on in the development process, but will be continually improved through out the project. This also helps negate many of the issues with changing requirements.
Key principles in the ECS software development model include daily Scrums by the development team where progress is explained, upcoming work is described and any impediments to the goals of the sprint or the project are raised. This management style promotes a cross-pollination of ideas across the various components of the project and encourages communication. In addition to the daily Scrums, weekly project status reviews are held to identify new issues and mitigate risks. One other mechanism that is used to help mitigate risk is the process of tracking costs for all major features and components of the project. In this fashion, risks are identified, tracked and their impact on the project can be catalogued and mitigated.
ECS uses a standard set of tools to effectively plan and manage our software development programs. Microsoft Office, including Outlook and Exchange allows interoperable communication between team members. Microsoft Project is used to manage resources, assign tasks, track progress, manage budgets and analyze workloads. It also gives us the ability to evaluate the impact of new project requirements and change requests against existing plans, budget, schedule and resources.
ECS currently uses a web-based bug tracking system called Mantis. Mantis is a lightweight and simple bug tracking system that uses the PHP scripting language and MySQL to create a highly extensible system. This allows us to edit and add different fields for each project. Additionally, it has been tested and works with almost any browser. Its list of features includes the ability to assign priorities, email notifications, simple searches and filtered viewing among others.
ECS also uses the Subversion, version control system to manage our files and directories over time. This system uses a central repository, which is backed up nightly and acts as an ordinary file server, except that it stores every change ever made to a file or directory. This system is used for both code and content.
11825 High Tech Avenue
Suite 250
Orlando, Florida 32817
T : 407-823-9991
877-823-9991
F : 407-823-8299
Delivering Innovative Results
Copyright © 2012 Engineering & Computer Simulations, Inc.