Effective Methods for Software and Systems Integration

Summary:

Effective software and systems integration methods allow you to understand the importance of critical factors such as planning, systems design, requirements, software design, configuration management, integration, testing, subcontractors, quality integration, and test facilities.

In order to develop, operate, and maintain software and systems integration capabilities inside work-product facilities, you must understand and support the entire software lifecycle, which includes planning, systems, requirements, design, builds, installations, integration, subcontractors, quality, and delivery. Figure 1 shows the necessary disciplines in the software lifecycle.

Figure 1. Disciplines in the Software Lifecycle.

Program and Project Planning
Program and projects are established inside organizations and companies for software- and test-team participation as well as for assignments provided by management. Program and project planning provides the necessary process steps for system planning and the software design and development work that takes place within integration efforts. This type of planning ensures effective results when working on the implementation of supporting software and systems integration activities. The planning and engineering tasks are related to the software-lifecycle disciplines. Engineering tasks, which include software design and development, configuration management, quality, and subcontractor assigned duties regarding programs and/or projects used by engineers during the software lifecycle, require communication, planning, risk management, and deployment.

Software Engineering Tasks

Communication

Planning

Risk Management

Deployment

Systems design

x

 

 

 

Requirements

 

 x

 

 

Design

 

 x

 

 

Configuration control

 

 

 x

 

Integration

 

 

 x

 

Delivery

 

 

 

 x

Subcontractor

 

 

 

 

Quality product evaluations

 

 

 

 x

Table 1. Planning and engineering tasks  

Systems Design
External software interfaces are defined as part of derived software requirements. To support systems design, graphical representations are prepared and take the form of data flow, collaboration and communications, and component diagrams.

Proper systems design is needed by the product team and the requirements personnel that works with users to ensure an accurate and complete understanding of the restrictions of a system or subsystem that affects work products. Systems design allows you to analyze customer requirements, satisfy specified requirements, and develop a software design and development migration plan for defining the architecture, components, modules, interfaces, and necessary data. This is important for communication, knowledge, the visibility into the software life-cycle, and integration operations. The system and subsystem requirements reviewed by program and project personal ensure accurate and complete understanding of the restrictions of systems design and applied work products. If program or project plans include reusable software interfaces, you can identify and evaluate the requirements. The term “reusable software” is a common term used in military and aerospace programs and/or projects. External software interfaces are defined as part of derived software requirements. To support systems design, graphical representations are prepared and take the form of data flow, collaboration and communications, and component diagrams. The requirements for a system design definition are reviewed with applicable users to ensure an accurate and complete understanding of the restrictions of a system or subsystem that affects work products. The external software interface is defined at those levels and verified for completeness. The program and project plans at times include reusable software and identified interface requirements for use. The external interfaces based on software architecture definitions are part of derived software requirements also.

Software Requirements
Defined and documented software requirements provide a systematic approach to developing software requirements derived from multiple resources. The combination of functional software interfaces, performance, verification, and production with required plans, documentation, and procedures make up the basis for software design or development. This discipline can be applied to the initial development of software requirements and any changes to requirement baselines.

Software Design and Development
Software design and development is a consistent approach and method to the development of software requirements in defined designs of a work product. The software

About the author

Boyd Summers's picture
Boyd Summers

Boyd L. Summers is currently working as a software engineer in quality for the Boeing Company in Seattle, Washington. With thirty years of experience in software engineering and as a leader of multiple software development teams, he continues to solve complex technical challenges to ensure that system and software engineering problems are addressed, resolved, and compliant. He is the author of two published software technology books: Software Engineering Reviews and Audits and Effective Methods for Software and Systems Integration.