Capabilities & Services
Information Technology & Engineering
FWG Solutions provides Agile methodology-based computer software analysis, design, development, testing, and debugging throughout a wide range of activities to integrate and enhance software designs. We develop detailed test cases and test scenarios to ensure full functional requirement coverage, and create and execute manual and automated functional test plan validations on modules, releases, message based transactions, and databases to support the overall architecture of developed systems.
Within each of our Enterprise IT & Software Development efforts, FWG Solutions meets with all major stakeholders to gather input that is critical to define our development methodology. FWG Solutions uses Software Development Life Cycle (SDLC) best practices within the iterative Agile development and testing cycles while following the following iteration phases.
During this phase, FWG Solutions stresses the importance of accurately capturing major requirements by working with stakeholders and analyzing the captured requirements while identifying risks, and developing a strategy to mitigate or otherwise address relevant risk that is specific and impactful to the iteration. Using this method, FWG Solutions manages “bite sized” chunks of risk to the effort within each iteration and may account for the cost of addressing each risk based on manageable strings of tasks and activities that result in a transparent safety budget (the customer may see how the safety budget directly correlates with the managed risk) vs. over-estimating task and activity efforts to accommodate the risks identified within the requirements gathered. One of the key risks that FWG Solutions mitigates by design is the impact associated with “broken” or “untested code” that we directly mitigate throughout the Software Development Life Cycle.
In our design phase, FWG Solutions breaks down the gathered requirements to form the project baseline, identify each requirement’s level of effort, and define each iteration’s scope and the workflow necessary to support recognize each iteration’s Critical Paths using the Critical Chain methodology that manages associated risk throughout each iteration.
Through the design phase, FWG Solutions works with project stakeholders to evaluate what they believe they need and make recommendations that support or improve upon their ideas, using the latest technologies or methodologies. Upon completion of User Story requirement capture, and analysis, FWG Solutions identifies the scope of the work to be performed and includes it into a Work Breakdown Schedule (WBS). For each WBS task and activity, FWG Solutions defines the work to be performed, and its result, and its acceptance criteria that determine when the task is complete and provides input to our staff to develop each iteration’s Test Cases prior to performing any kind of iteration development. To stage for the Development phase, development staff code the acceptance criteria of each Test Case requirement that signal acceptance when met, but do produce application code until the full scope of the iteration’s requirement is understood, documented, and may be actively tested using Test Driven Development methodology.
Using the Test Driven Development (TDD), FWG Solutions produces hardened code modules that directly address design phase requirements. As developed code is written using the Test Case criteria as the destination, and that multiple module test case criteria are automatically validated (or shown buggy for repair) throughout the course of code development, FWG Solutions ensures that the quality and integrity of the development effort is maintained as code is being developed throughout the testing phase, and that code developed is compatible with other aspects of the coded system. In many cases, coded modules can be initiated from each module’s test case requirements using TDD development modules that integrate with commonly used Integrated Development Environments (IDEs). In most cases the IDE can provide a module test case compliant skeleton code set for the developer to modify, which saves the developer time, thereby reducing project cost as the methodology is by the development team as a whole. During the development phase, each module is documented using inline and external documentation techniques supported by the IDE to associate documentation with the code. In addition, final module test results are also documented to include what was tested, how it was tested, and the result of each test.
Following the completion of the development phase, FWG Solutions uses the Test Case code criteria at the activity level that was developed during the Design Phase of the iteration to support Unit Testing under TDD methodology to determine if the coded modules developed under the Development Phase fit together as planned to support a larger code assembly that is intended to suit the overall purpose for the developed application. The result of this phase is a stable set of code that has been iteratively tested against established acceptance criteria while under development, and determined to work as planned and desired as a unit when assembled as production code. Upon successful Unit Testing, FWG Solutions captures all source code, documentation, and testing evidence as a configuration item to support the overall configuration of the software system being developed. Although perhaps incomplete of code requirements that are planned for future iterations, specifically in the instance of prototype development, FWG Solutions will release the code after successful Unit Testing to serve as the baseline for improvement in a Requirement Gathering and Analysis Phase within a new iteration, or if all development is complete, FWG Solutions will release the code as a Production code release in support of the Production Implementation Phase.
Once a production code release is established, FWG Solutions prepares and supports the implementation and deployment of the release. Once fully deployed, FWG Solutions will fully test the code within the production environment to ensure that the release works as promised (and tested) within the production environment. When the test is determined to be successful, FWG Solutions finalizes all documentation for the released production code, and works with the customer to identify future maintenance releases that would undergo a similar Agile, SDLC, TDD development process, or close the project development effort. FWG Solutions stands prepared to support your Enterprise IT and Software Development effort, leveraging industry best-practices as previously described. FWG Solutions is Technology Agnostic, and may support your effort with the team with the right skill sets, the best management approach, and the best value for your available budget.