Software Development and Engineering Services

eSA has been working with DoD Air Force organizations at Gunter and Wright-Patterson AFBs for more than 5 years providing Software Development and Engineering Services. eSA's experience with software development includes all aspects of planning, design, construction and testing. Standard tools such as PVCS, Subversion, MS Project, JDeveloper, Eclipse, LoadRunner, Oracle SQL Developer and TOAD have been used by eSA in the performance of the software development services. Our staff has participated in development projects using spiral development, RAD/JAD, Agile and waterfall methodologies.

Requirements Management

As part of eSA's software development projects we assist our customers with the definition, management (Change Management and Configuration Management), and documentation of requirements from the elicitation through the elaboration phase. Our approach uses a combination of UML and our own Unified Process to document and assure traceability of the customer's software requirements. We document our customer's requirements using templates that are based on industry best practices, including: Software Requirements Specification (SRS), Requirements Traceability Matrix (RTM) and Use Cases. For some efforts, eSA has been asked to provide architectural artifacts supporting Information Assurance objectives and DoDAF Architectural initiatives. eSA has developed and delivered DoDAF 2.0 compliant views depicting:

  • AV-1 Overview and summary information
  • OV-1 High Level Operational Concept Graphic
  • OV-2 Operational Node Connectivity Description
  • OV-4 Organizational Relationships Chart
  • OV-5 Operational Activity Model

A common practice during requirements definition is to develop logical data models depicting the entities and relationships necessary to implement the requirements captured during user group sessions.

Software Engineering

eSA follows our unified process as a basis for all software projects. In addition, eSA also applies processes that our customers have defined for use during their software development, such as the Software Engineering Process (SEP) that is used at Gunter AFB.

Brief description on Unified Process:

The Unified Process is an iterative and incremental process. The Elaboration, Construction and Transition phases are divided into a series of time boxed iterations. (The Inception phase may also be divided into iterations for a large project.) Each iteration results in an increment, which is a release of the system that contains added or improved functionality compared with the previous release.

Brief Description of SEP:

SEP is a life cycle management and systems engineering process based on the Defense Acquisition, Technology, and Logistics Life Cycle Management System as tailored for Information Technology Systems and the Capability Maturity Model Integrated.

SEP Phases

  • Define Need
  • Design Phase
  • Build & Test Phase
  • Release & Support Phase

Software and System Testing

eSA's testing practices begin at the definition of system requirements. Our engineering staff will attempt to ensure all system requirements are quantifiable in terms of bounds checking, capacity, and functional testing (according to our customer's business rules). These quantified criteria are added to unit tests, test scripts, and test plans and verified throughout the development and test cycles.

eSA uses automated testing methods based on HP Quick Test Pro and HP Quality Center to perform during component validation testing. The scripts created to support the component validation phase of software development are provided to the customer as a deliverable item.

eSA documents software/system problems discovered during component validation testing in HP Quality Center and prepares a test report, and presents any test findings our customer.

Section 508 Compliance Assessment

eSA uses industry standard tools to perform the assessment, including: Quick Test Pro, AccVerify, and the JAWS screen reader.