Software Engineering

Software Engineering Services

Full and Partial Life Cycle DO-178B/C Services

With more than 28 years of history in software Development, Accord has a highly competent work force in both the System and Application software domains. More than 6000 person years of cumulative experience has been gained through many successfully completed prestigious projects. Accord provides Engineering Services for Avionics/Aerospace Software per DO-178C standards using streamlined processes and advanced tools. Accord’s range of Engineering Services includes Requirements Management, High-level Design, Low-level Design, software Integration, Independent Verification and Validation, Certification as well as Sustaining Engineering to cover the entire life cycle of Avionics Software. Accord has extensive experience of participation in Full and Partial Life cycle Projects per DO-178B/C Design Assurance Levels A to E, across Military and Civil Domains, over a wide variety of Platforms.

Engineering activities in all life cycle phases are strictly per the Quality Standards laid down for the process. The net result is a highly streamlined project execution reducing Development and Maintenance Costs. Accord's software Engineering experience is described below.


Requirements Management

Requirements gathering is one of the most important activities in the development of a Product. Defining accurate System Requirements requires a lot of Forward Looking Vision and Domain Expertise. Accord uses expert System and Software Engineers to generate System-Level and High-Level Requirements for a well defined end Product or Software.

Accord's Engineers are also experienced in ensuring compliance to the relevant DO-178C Requirements Guidelines

Requirements are developed keeping the ease of Verification in mind, so that there are no Requirement Creeps during Verification. Requirements are always supplemented with additional information or references as required, so that a designer makes the correct decisions and comes up with a correct design.

The Requirements Management Process at Accord is aimed at helping all stakeholders understand and approve the defined requirements. System Safety Objectives are analyzed for each requirement and Safety Requirements are determined.

Quality Audits like System/Software Requirements Reviews (SRR) are conducted before proceeding to the Design Phase. Accord Quality Processes also ensure maintenance of Quality Artifacts through the lifetime of the Product.


High Level and Detailed Design

High Level Requirements are refined during the Software Design Phase and a Design is generated. A Design that is clear and accurate helps in the correct implementation of the Product/System.

Due Diligence is done during the design phase for getting it right the first time.

A Two Leveled Design approach helps in providing a complete picture of the Product or System and helps an Implementer develop Source code efficiently. Derived Requirements are identified and are taken through a Safety Assessment Process to determine if there is any impact on System Safety.

Design Patterns and latest design methodologies like Model Based Development are employed to ensure success of the design phase. A Modular approach is followed in generating SW Design. The interface between modules (data and control flow) is adequately well defined to ensure consistency between the modules.

Accord Engineers are well versed in ensuring the software designs comply to DO-178C Guidelines.


Software Implementation and Integration

Accord has very strong Software development teams that are skilled in various programming languages. Software Implementation that strictly adheres to an accurate design produces high quality Software.

Often, Design and Implementation are performed in modular fashion and the different modules/blocks are then integrated. Inter-block communication is as defined in an Interface Specification

Accord has generated a comprehensive Software Coding Standards. The Source code development Standards ensure maintainability of source code and also help in avoiding common programming errors.

Accord has Software development experience in a variety of programming and scripting languages on various hardware platforms.


Software Porting Experience

Accord's Software engineers have experience in porting existing Source code to a different hardware platform. Compliance to design and requirements is ensured on the new platform. Accord teams also provide support for Certification of the Product on the new Platform.

Porting is performed in conformance to the new Hardware and Software Architecture

Port and Enhance Projects have also been successfully executed. Such projects have also undergone Certification successfully. Accord Designs ensure that the Software is implemented in a modular fashion so that it can be ported easily. Isolated Hardware Abstraction Layers ensure minimal changes in the Application Modules during Porting.


Design Assurance Level Upgrade

There are situations where a Product previously certified is updated to include enhancements and better performing Hardware. The newer release of the Product may need to be certified to a higher Design Assurance Level. Accord has undertaken several projects where existing functionality is enhanced and the new Software is Re-Certified.

Accord ensures that cost and schedule are optimized by making use of the already existing Certification Artifacts. Maximum reusability is ensured.

With good experience in such projects, Accord can help with Certificate Upgrades with a minimum cost Impact.


Reverse Engineering

Accord has worked on several projects where existing designs and products were reverse engineered and re-certified on newer platforms. There is capability within Accord to even Reverse Engineer products with very little documentation and from only System Specification.

A complete Certification Package can be developed to support the recertification process.

More often than not, Reverse Engineering is not performed at the product level, but within the different development phases, for example, generation of Low Level Requirements that comply to the High Level Requirements, Software Architecture and the Source Code.

Accord can help fill-in the missing blocks in the Product Certification Process.


Independent V& V

Since Inception, Accord has more than 1200 Person Years of experience in Independent V&V of various projects that are part of big Aerospace Programs. Accord has gained considerable expertise in different Verification and Validation activities covering Requirements, Design and Source Code Validation, High and Low Level Verification and generation of the necessary artifacts for Certification.

Accord's Core expertise is in performing IV&V in compliance to DO-178C, DAL A-E. There is considerable experience in performing V&V using the different V&V Models - V Model, Iterative Enhancement, Agile/Kanban.

Accord has a talented Pool of Exerienced engineers with expertise in different levels of testing - Hardware in Loop Testing, Software in Loop Testing, Low Level Verification and Validation Activities, and even System Level Testing.


Tool Qualification

Accord has good Tool Qualification Experience per DO-178C, TQL A through E (DO-330). All the Software Lifecycle tools that have been developed internally at Accord are qualified per DO-178C and have been used successfully on various Customer Certification Programs.

Accord specializes in generating Tool Operational Requirements, Tool Qualification Plans and Tool Qualification Indices.


Software Skills

Operating System - Windows (Pro & CE), Linux (Pro & Ent), GHS Integrity, VxWorks, DSP-OS, VDK, MicroC/OS, OASYS (Accord's ARINC 653 Compliant RTOS)

Processors - Intel x86, MPC56xx, Blackfin, ARM-OMAP35x, LPC3xxx, ARM 7/9, Cortex, Power PC, Freescale, ADI DSP, TI DSP, Motorola DSP, PAX

Programming Languages: C, C++, Ada, VC++ (MFC), Java, C# .NET

Drivers - USB, SPI, SPORT, I2C, UART, LVDS, Ethernet controller, MIL 1553, ARINC 429, CMI, DVI, IRIG, RS-232, RS-422, PCI, SD card, CF Interface, Flash, EEPROM, SDRAM, GSM-GPRS & CDMA modem drivers, AC/97 Codec, VGA, QVGA, Touch Screen, Keypads

Network protocol - UDP, IPV4, IPV6, Ethernet Controller Driver

Scripting - Python, MATLAB, HTML/Java Script, DOORS DXL, Proprietary Scripts

Graphics Packages - GDI, GDI+, OpenGL, SWT


Software TOOLS Experience

Requirements Management

DOORS, ReMa (Accord's Proprietary Requirements Management Tool)

Software Design

Mentor Graphics CASE Tool, Rhapsody, Teamwork/Ada, Easy CASE

Software Testing

IBM RT-RT, IPL Cantata, IPL AdaTest, VectorCast C/C++, LDRA, Smart Tester C(Accord's proprietary Unit and Integration Test Tool), Logiscope and Lint

Coverage/Source Code Analysis

C-Cover, Logiscope, VectorCast/Cover, CodeTrax

Project Management

MS-Project, Smart Planner (Accord's Proprietary Project Planning Tool)

Configuration Management

SVN, CVS, Clearcase, RCS, PVCS

Life Cycle Models

Accord has a vast experience in the different Life Cycle Models
  • Waterfall Model and V model
  • Iterative Enhancement model
  • Modified Waterfall model
  • Agile Methodologies – Scrum and Kanban

Waterfall Model


V Model


Iterative Enhancement model


Modified Waterfall Model


Agile Methodologie


Accord Tools - Save on Licensing Cost

Accord has developed several in-house tools with the goal of reducing costs in Certifying Products.

The SW Life Cycle Tools that are used to automate processes are tool qualified and have been used previously in Certification.

The Enterprise Tools described below are also used in Project Management.

The use of these tools translates into cost savings for the customer as their Industry standard equivalents (DOORS, RT-RT, MS Project, ClearQuest etc.) involve hefty licensing costs.

In addition, the tools can import/export data from the Industry Standard Tools for easy portability to/from a Customer's environment.

  1. Developed for Avionics Applications
  2. Implements the complete ARINC 653 Part 1 Basic Services and supports space and time partitioning concepts
  3. Certified in DO-178 Life Cycle Process Avionics Application
ARINC 615 Data Loader
  1. This software library implements the data loading protocol described by ARINC 615A standards.
  2. Implements the TFTP protocol with a lower level UDP-IP stack
Graphics Library
  1. Implements the APIs required for rendering 2D and 3D graphics for Safety Critical profile.