© Copyright 2018 Amalga Systems Inc.            | All Rights Reserved  

Agile Development Methodology

Have you experienced any of the following situations?

   >   ​Too much time being spent on planning and analysis instead of programming

   >   A few days before the project deadline, developers report that they need three more months to complete the system

   >   ​The system is delivered on time, but many critical errors are identified during user acceptance testing (UAT)

   >   ​The patch for one bug introduces other bugs

   >   ​An error-free system is delivered but users claim that the functionality does not meet their requirements

   >   ​System performance is below expectation

   >   A breach of security is present within your finished product causing uneasiness with your customers

   >   QA identifies security problems when the production deadline is near

   >   QA does not test a security requirement not documented anywhere

Here at Amalga Systems we understand these risks and potential problems that may arise and are prepared to handle each situation to our utmost ability. Our Secure and Agile methodology is designed to reduce these risks and involves customers’ in the developmental process. How does this development plan work? The development plan consists of multiple short iterative cycles with the higher risk or key work items of the project being tackled first. Each work item may be a requirement, change requests, or bug fixes. The ideal length of each work item is within 8 work hours. Throughout the project, we break down a large work item into smaller work items so that we can maximize time efficiency used on the project. Each iterative cycle consists of a daily process lasting two to six weeks. On a daily basis, our software engineers work on items that are of the highest priority at the current point of the project. Each step in the development life cycle, iteration, or daily process may introduce change requests or bugs that will be added to the queue of work items. The mentality for this process is to adjust to every situation in a seamless transition as we analyze and implement each requirement and bring forth a secure product utilizing all the tools that are at our disposal. The key benefits of our approach are multi-folds:

   >   ​By taking a proactive approach in monitoring the development process, we prevent surprises and unexpected delay in the project. Project managers can better plan and control the project schedule and costs, and address problems as they arise

   >   The customer’s direct involvement helps keep the communication line between themselves and developers open which helps reduce the risk of any missed requirements and major system changes near the end. This also maximizes resource usage and  eliminates frustration during UAT

   >   ​Automated regression tests reduce the intensive resources required to retest the entire system after each software modification

   >   ​The project does not suffer from analysis paralysis because of the iterative short cycle approach.

   >   ​Through this adaptive approach, the development process for the team becomes increasingly efficient as the project progresses

   >   ​Each application developed is secure and kept up-to-date within the development process to avoid any breach of security

   >   Security requirements and thread modeling are documented early on so that our QA will not forget to test them

   >   Security issues are identified in each iteration early in the development cycle