SOA and Software Solutions
Delivering Game Changing SOA Solutions to the Warfighter
GITI provides enterprise level software solutions that dramatically accelerate our customer’s mission and business objectives. Our solutions for the Department of Defense (DoD) and the Intelligence Community (IC) address the key elements of Service Oriented Architecture (SOA) based environments that result in worldwide deployed software. Scalability, limited bandwidth users, large data sets, enterprise testing, cross mission discovery, governance and training are areas that GITI provides extensive experience and expertise in the delivery of SOA solutions. Additionally, our award winning software agent capability addresses the most critical issues facing today’s warfighters and analysts; information overload, time critical data and near real time course of action execution.
Our successful systems deliveries have been a result of several key guiding factors in our SOA and Agent Enterprise Solutions:
- Scalability Designed Into Solutions From Inception
- Open Standards and Enterprise Architectures
- Semantically Aware Data Services
- Incremental Development for Rapid Return on Investment (ROI)
- Governance and Metrics Integrated Throughout Program
- Exceptional Focus on Testing Using Inherent Scalability Laboratories .Use a test framework and tools for automated testing
- Security and Confidentiality where there are many data and service owners are coordinated early in development
- Plan for longevity and ensure that there are owners for all of the services
GITI provides certified experienced architects and senior developers to address the following
Engineering and Software Development
GITI develops software for mission critical applications for the Intelligence Community and DoD. Our development capabilities support both traditional and agile development methodologies. GITI's staff are experts in intelligent systems, software development, and systems engineering, with backgrounds in computer science, engineering, mathematics, and operations research. Our research and development areas include machine learning, knowledge discovery, predictive analysis, user modeling for capturing users interests and context, policy management using ontology and semantic interoperability, collaboration agents for overcoming barrier to collaboration, knowledge-based reasoning systems, and information security. We form multi-disciplinary teams consisting of GITI staff and world-class researchers from academia to provide the best value and highest quality of research and products.
Our software architects and development team have extensive hands-on practical experience with designing and developing distributed information systems. We develop applications using J2EE, Web Services, AJAX , and JXTA.
We have transitioned many research projects into the DoD community and the commercial market place. Our significant hands-on experience with many technologies of interest such as agents, multi modal interfaces, advanced visualization, knowledge acquisition, collaboration, and knowledge management will contribute to the success of any program.
-back to top-
Planning, Analysis, and Governance
We help our customers develop a service delivery strategy for their enterprise. A service delivery strategy is a process that organizes the lifecycle of services to coordinate the delivery of atomic, composite, process, and presentation services. We have experience delivering services in both traditional and agile environments.
We use a Service Oriented Modeling Framework (SOMF) that is business-process centric and comprises a set of structured activities grouped into three phases; Service Identification, Service Specification, and Service Realization.
- Service Identification is an iterative process to engineer an optimal set of services, and minimize redundancy. The aim is to first establish clear and well-defined boundaries between collaborating systems, followed by reduction of interdependencies and limiting of interactions to well-defined points.
- A Service Specification describes everything that a potential consumer of the service needs to identify and to use the service (the service description). It also specifies everything a service provider must know to successfully implement the service. The key products of this phase are service contracts.
- Service Realization defines transformation strategies for transition from the current architecture to the future architecture through reuse, build, outsource, and subscribe to third party services. It also includes data model identification, vocabulary and ontology development, and data strategy.
We support our customers in establishing and executing SOA Governance policies, strategies, and processes. SOA Governance extends IT Governance to cover those new activities added to IT by the adoption of a Service Oriented Architecture. We help our customers with developing a set of policies to regulate the processes of planning, developing, using and evolving SOA-based applications.
Governance also includes defining the requirements for the service environment operations, including software and hardware requirements, impact on current systems, networks, and infrastructure.
-back to top-
We assist our customers to develop strategies to define security goals, identify potential challenges to mitigate risks, identify standard protocols and off the shelf solutions to address authentication, authorization, integrity, confidentiality, non-repudiation, auditing, and availability. We use agile SOA security strategies to accommodate changes in policies and relationships among organizations and communities of interests.
GITI has developed numerous applications that have successfully passed certification and accreditation and deployed on the NIPRNET and SIPRNET for operational use. In addition to the requirements for applications and services as described in the Department of Defense Information Assurance Certification and Accreditation Process (DIACAP), GITI leverages our extensive experience in the cyber defense research area (see Cyber R&D Center of Excellence) to develop capabilities that address the rapidly evolving threat. We employ standards based SOA Security approaches such as WS-Security Additionally, we work closely with existing infrastructure to provide an integrated experience for the user.
-back to top-
SOA Solutions for the Tactical Edge
“SOA provides many advantages across the missions of DoD and the Intelligence Community. It makes services and data reliably available and discoverable across the enterprise. Proper engineering eliminates redundant interfaces and results in more rapid development and lower cost. SOA on the Tactical Edge, however, presents challenges that more traditional SOA implementations do not address. GITI develops solutions for the tactical user and we have combined this expertise with our in-depth SOA capability to provide services-oriented enterprise solutions to the warfighters in the most difficult of environments.”
GITI assists its customers in realizing the benefits of SOA by delivering a full range of net-centric service and solutions. We support Governance, develop Architectures, build Data Models and Ontologies, implement secure intelligent solutions, and test large scale distributed systems.
GITI also offers the Intelligent Service Layer (ISL) framework - an integration and interoperability solution that helps our customers rapidly develop distributed services and agent applications. ISL extends the SOA fabric to the tactical edge. It enables services and agents to communicate and share information, access diverse information systems, and interoperate with existing applications using a SOA. Web Services-based SOAs have benefits in the enterprise environment, but they also have limitations in highly dynamic environments. To overcome these limitations, ISL was designed to be a lightweight SOA framework to:
- Extend enterprise SOA implementations into dynamic settings such as battlefields and Cloud computing environments.
- Enable development of adaptive SOA applications to better meet the user’s information needs
- Reduce the time and cost to incorporate existing applications into SOA.
Used with mainstream Web Services or RESTful Services, ISL creates an enhanced SOA solution that extends the benefits of enterprise services to users at the battlefield’s edge.
ISL is designed to address some of the limitations of the Web Services. These include:
-back to top-
- Reliance on XML; which increases network demands
- Static services registration; services are not automatically registered, discovered, or de-registered
- Web Services are reactive; they run when a message is received, not autonomously
- Lock in to vendor tool sets: Web Services are hard for developers to create, so developers rely on vendor tools
- Poor support for intermittent/low bandwidth networks: Frequent network disruption reduces the viability of Web Services for mobile computing
SOA End user Composability
SOA promises greater run-time control at the user’s discretion. We help our customers engineer and develop solutions that provide the power of dynamic, end user composability of services to meet the changing needs of today’s warfighter. For example, Composable Heterogeneous Agents for Intelligent Notification, or CHAIN, provides the users the ability to dynamically orchestrate services to meet their needs.
CHAIN allows our customers to graphically build analysis or notification plans. End-users can specify data-sources to be monitored, perform pre-defined analysis in response to events, and report critical events across disparate information sources. CHAIN enables analysts to rapidly assemble and task teams of agents to detect and respond to opportunities and anomalies based on user-definable, agent-executable conditions.
-back to top-
- Composable: CHAIN helps users to plan, assemble, and execute a task or set of tasks. Users identify data sources to monitor, event triggers, and the analytical conditions that drive them, and what notification actions to take based on resultant events.
- Heterogeneous: CHAIN has been tested by the US Navy and enables run-time integration of distributed, heterogeneous information sources, sensors, web services, agents, and legacy systems.
- Agents: CHAIN Plans are able to communicate with agents distributed across multiple systems and platforms to increase system scalability and redundancy.
- Intelligent: CHAIN logic can be extended to include COTS, GOTS, legacy, and open source analysis engines that support anomaly detection, rule-based reasoning, inferencing, and heuristics.
- Notification: CHAIN alerts and notifies users when reportable events occur. Notification agents help tailor the information to the user by identifying the who, what, when, and how of reporting through a variety of reporting devices such as email, instant message, telephone, pager, PDA, and digital notebooks.
||Software Quality Assurance, Testing, and SOA Laboratories
Software Quality Assurance Services
The true measure of software success is a delivered, operational and supportable capability for the Warfighter and is best achieved through rigorous and thorough testing. GITI supports this success with extensive experience and dedicated laboratories to meet the testing challenge for enterprise software solutions. In particular, SOA testing requires a dynamic testing environment that can test services in a multitude of conditions from limited bandwidth to high user volume conditions. During our work with DARPA, Army and Air Force our team has concurred these challenges through the GITI mission of delivering enterprise level testing of both internally developed software and as an independent verification and validation contractor.
The following is a list of services and test labs available through the GITI's Quality Assurance department
In addition to creating and maintaining documentation, the QA team is in charge of software release management. This includes coordinating schedules of the releases from the developers and eventually promotion to production. They are also responsible for version control and the creation of release packages ensuring that the software gets to the targeted recipient.
Types of Testing Performed:
GITI design and develop mission critical applications that are subjected to variety of tests to ensure that they meet highest quality requirements and flawless support under variety of challenging operational requirements. Our tests include:
- Smoke: Ensures the software can run with the new changes before introducing it into the test environment
- Acceptance: Accepting new changes made to the software
- Installation and upgrades: The software installation on clients and servers along with the ability to field configure each
- Reliability & Endurance: Includes measuring availability and the absence of system crashes over extended periods of time as well as the absence of data corruption
- Regression: Testing the functionality of all previous features to ensure backwards compatibility
Feature: Ensures that the newly added features work in the existing software
- Integration: If there are separate software applications that work together, integration testing is conducted. This includes testing the complete software suite to ensure compatibility and relationships are still strong.
- Usability & documentation: Includes the UI functionality along with the ability to perform maintenance tasks easily using documentation provided in the user guides
- Stress or Performance & User Load: Deals with large data sets from two or more users over an extended period of time. This includes extensive collaboration between users and large amounts of data created. The servers are monitored to ensure they can run for extended periods of time with continuous load and during usage spikes. These tests are performed to discover the software system limitations.
- Collaboration: The ability for users to interact and exchange information using the software tested
- Network Impairment: Introduces the following conditions for one or more subnets to assess the effect it has on the software:
- Packet Loss: a percentage of packets discarded randomly
- Bit Error Rate: Inserts random or periodic errors in the packet
- Bandwidth restriction: Limiting the rate of data transfer
- Latency: introduces a time delay between packets sent and packets received
- Congestion: a link or node is carrying so much data that the quality of service deteriorates
- Maximum Transmission Unit (MTU): All packets are fragmented according to the MTU.
The Global InfoTek Quality Assurance Team maintains a suite of documentation for each project according to its specific needs. A few types of documents created are:
- Test Plans: Individual road maps on how to test new features added to the software for each version
- Test Cases: Actual tests that are executed to test the features mentioned in the test plan and other tests conducted on the software
- Software Version Document: This document shows the difference between the versions of software helping to track files that have been changed, added, or deleted
- Help Documentation: End user documentation that explains the features and how to properly use the software
- Quick Start Guide: Quick and easy directions for the administrator to install the software
- Software Architecture Documentation: Document the design of the software product by creating and maintaining views, interfaces, and diagrams using Enterprise Architect.
In addition to creating and maintaining documentation, the QA team is in charge of software release management. This includes coordinating schedules of the releases from the developers to test and promote code to production. The QA team is also responsible for version control and the creation of release packages ensuring that the software gets to the targeted recipient.
We design and develop a light-weight infrastructure to support timely, large-scale experimentation and evaluation, while minimizing the integration efforts of performers. Depending on the needs of the program, we provide the following capabilities:
- Testbed Harness Services: included Logging, Administration, Event, Subscription, Publication, Registration, Instrumentation and Security, and will be developed by building upon a proven integration framework. This creative application of existing capability to a new problem domain will allow us to (a) offer an initial capability at the program kickoff, (b) accelerate program-wide progress, and (c) reduce the need for each performer to develop infrastructure not core to their approach
- Command and Control Services: provides a highly automated environment for management of a complex distributed system. It manages the testbed configuration from (a) initialization, (b) pre-execution distributed health monitoring for ensuring successful execution of the tests, (c) stimulating the system under test using dynamically generated scenarios, and (d) instrumentation and data capture. This set of services will provide the basis for large-scale experimentation. These experimentations will provide the basis for statistically meaningful analyses, problem space exploration, and the development of quantitative models of systems.
- Evaluation and Experimentation Services: offers an integrated, extensible environment for visualization and analysis of experimental data. We offer a powerful end-to-end evaluation process to increase the value of experimentation to performers and accelerate their research progress. The overall approach includes the application of the discipline of Design of Experiments and the exploration of novel analytical techniques.
Test and Evaluation Laboratory
Our corporate office has multiple distributed laboratories consisting of both several secure and unclassified facilities. The labs are used to support Government sponsored program test and evaluations, integration and interoperability software development, and software quality assurance projects at GITI.
Large Scale Distributed Agents and SOA Testbed
This testbed consists of 150 physical nodes which is used for the testing, experimentation, and evaluation of SOA and distributed agent technology. This lab has the ability to execute massive numbers of tests and record resulting data, in a completely automated, fault tolerant fashion. A simple configuration request for a specific test can cause the lab to automatically reconfigure itself, via dynamic configuration of VLAN, into secure subnets of an arbitrary number and size. This significantly increases the flexibility of the lab, giving much higher run throughput.
Impairment can be applied to the individual subnets and different test jobs can run simultaneously. As the test jobs are running, the entire lab is monitored to ensure that all machines are running and healthy. The test administrator can remotely manage the test lab by accessing a website that shows individual machine log files in real-time along with health status. At the end of each test job, logs and other output are gathered and sent to the test administrator. Then the machines are cleaned of the test job and returned to the available pool to await the next test job. Over the past two years, the lab has executed over 200,000 tests to evaluate multi-agent systems. The Government uses the results of this lab to down select performers.
C4I and Service Oriented Engineering Solutions & Capabilities Laboratories
This Lab is used for integration and testing of SOA applications and C4I systems. This laboratory consists Army’s Battle Command Systems (ABCS), Command Post of the Future (CPOF), Distributed Common Ground System (DCGS) Integration Backbone, and COTS SOA framework, numerous Geographic Information Systems.
Our lab enables our partners and customers access to a secure environment with powerful state of the art hardware and software solutions to meet today's engineering expectations. By utilizing generously equipped servers and the latest software solutions together with a purpose-built workspace, the SOA lab presents a facility to create & test systems and agents in a dedicated network.
- SOA Engineering Lab
- State-of-the-art servers capable of running multiple development environments and testing platforms
- Networks and application monitoring in tactical environments.
- Fully scalable and able to support the demands and uniqueness inherent in each SOA project
- Ability to simulate actual business environments ensuring relevant development and deployment.
- SOA configuration management and governance
- Facility to create collaborative projects with multiple agents across various servers
- Software Development
- Engineer SOA enterprise architectures.
- Extending enterprise SOA to the tactical edge
- Dynamic database development, integration, mining
- Software development, customization, and integration
- GIS experts experienced with ESRI, CJMTK, Mole, Tactical Graphics, symbology and Google Earth (KML) overlays
- Testing and Evaluation
- Large scale distributed SOA testing and evaluation
- Platform virtualization (e.g. VMware experience)
- Disadvantaged Network Emulation
Mobile Ad-hoc Network Lab
This Lab is comprised of several Linux and Windows workstations operating in wired and wireless peer-to-peer ad hoc modes to support evaluation of agent systems in a MANET environment. This lab was originally designed to support ONR research in MANET
-back to top-