IEEE software life cycle |
---|
A concept of operations (abbreviated CONOPS, CONOPs, [1] or ConOps [2] ) is a document describing the characteristics of a proposed system from the viewpoint of an individual who will use that system. Examples include business requirements specification or stakeholder requirements specification (StRS). CONOPS is used to communicate the quantitative and qualitative system characteristics to all stakeholders. [2] CONOPS are widely used in the military, governmental services and other fields.
A CONOPS generally evolves from a concept and is a description of how a set of capabilities may be employed to achieve desired objectives or end state. [1]
The first standard was 1362-1998 - IEEE Guide for Information Technology - System Definition - Concept of Operations (ConOps) Document that was superseded by the document 29148-2011 - ISO/IEC/IEEE International Standard - Systems and software engineering -- Life cycle processes --Requirements engineering.
Then came the 2012 AIAA revision proposal Guide: Guide to the Preparation of Operational Concept Documents (ANSI/AIAA G-043A-2012) (Revision of G-043-1992), and today we have ISO/IEC/IEEE 15288:2015 Systems and software engineering -- System life cycle processes.
In the field of joint military operations, a CONOPS in DoD terminology is a verbal or graphic statement that clearly and concisely expresses what the joint force commander intends to accomplish and how it will be done using available resources. [3] [4] CONOPS may also be used or summarized in system acquisition DODAF descriptions such as the OV-1 High Level Operational Concept Graphic. [5]
Concept of Operations documents can be developed in many different ways but usually share the same properties. In general, a CONOPS will include the following: [6]
A CONOPS should relate a narrative of the process to be followed in implementing a system. It should define the roles of the stakeholders involved throughout the process. Ideally it offers clear methodology to realize the goals and objectives for the system, while not intending to be an implementation or transition plan itself. [6]
A CONOPS Standard is available to guide the development of a CONOPS document. [7] [8] The Institute of Electrical and Electronics Engineers (IEEE) Standard is structured around information systems, but the standard may be applied to other complex systems as well.
In engineering and its various subdisciplines, acceptance testing is a test conducted to determine if the requirements of a specification or contract are met. It may involve chemical tests, physical tests, or performance tests.
Software architecture is the set of structures needed to reason about a software system and the discipline of creating such structures and systems. Each structure comprises software elements, relations among them, and properties of both elements and relations.
ISO/IEC/IEEE 12207Systems and software engineering – Software life cycle processes is an international standard for software lifecycle processes. First introduced in 1995, it aims to be a primary standard that defines all the processes required for developing and maintaining software systems, including the outcomes and/or activities of each process.
In software project management, software testing, and software engineering, verification and validation is the process of checking that a software engineer system meets specifications and requirements so that it fulfills its intended purpose. It may also be referred to as software quality control. It is normally the responsibility of software testers as part of the software development lifecycle. In simple terms, software verification is: "Assuming we should build X, does our software achieve its goals without any bugs or gaps?" On the other hand, software validation is: "Was X what we should have built? Does X meet the high-level requirements?"
ISO/IEC 15504Information technology – Process assessment, also termed Software Process Improvement and Capability dEtermination (SPICE), is a set of technical standards documents for the computer software development process and related business management functions. It is one of the joint International Organization for Standardization (ISO) and International Electrotechnical Commission (IEC) standards, which was developed by the ISO and IEC joint subcommittee, ISO/IEC JTC 1/SC 7.
Requirements engineering (RE) is the process of defining, documenting, and maintaining requirements in the engineering design process. It is a common role in systems engineering and software engineering.
A software requirements specification (SRS) is a description of a software system to be developed. It is modeled after the business requirements specification (CONOPS). The software requirements specification lays out functional and non-functional requirements, and it may include a set of use cases that describe user interactions that the software must provide to the user for perfect interaction.
The Department of Defense Architecture Framework (DoDAF) is an architecture framework for the United States Department of Defense (DoD) that provides visualization infrastructure for specific stakeholders concerns through viewpoints organized by various views. These views are artifacts for visualizing, understanding, and assimilating the broad scope and complexities of an architecture description through tabular, structural, behavioral, ontological, pictorial, temporal, graphical, probabilistic, or alternative conceptual means. The current release is DoDAF 2.02.
The ISO/IEC 15288Systems and software engineering — System life cycle processes is a technical standard in systems engineering which covers processes and lifecycle stages, developed by the International Organization for Standardization (ISO) and the International Electrotechnical Commission (IEC). Planning for the ISO/IEC 15288:2002(E) standard started in 1994 when the need for a common systems engineering process framework was recognized.
IEEE 1471 is a superseded IEEE standard for describing the architecture of a "software-intensive system", also known as software architecture.
A functional specification in systems engineering and software development is a document that specifies the functions that a system or component must perform.
ISO/IEC/IEEE 42010Systems and software engineering — Architecture description is an international standard for architecture descriptions of systems and software.
A view model or viewpoints framework in systems engineering, software engineering, and enterprise engineering is a framework which defines a coherent set of views to be used in the construction of a system architecture, software architecture, or enterprise architecture. A view is a representation of the whole system from the perspective of a related set of concerns.
Software requirements for a system are the description of what the system should do, the service or services that it provides and the constraints on its operation. The IEEE Standard Glossary of Software Engineering Terminology defines a requirement as:
TRAK is a general enterprise architecture framework aimed at systems engineers. It is based on MODAF 1.2.
Software architecture description is the set of practices for expressing, communicating and analysing software architectures, and the result of applying such practices through a work product expressing a software architecture.
ISO/IEC JTC 1/SC 7 Software and systems engineering is a standardization subcommittee of the Joint Technical Committee ISO/IEC JTC 1 of the International Organization for Standardization (ISO) and the International Electrotechnical Commission (IEC), that develops and facilitates standards within the field of engineering of software products and systems. The international secretariat of ISO/IEC JTC 1/SC 7 is the Bureau of Indian Standards (BIS) located in India.
ISO/IEC/IEEE 29119Software and systems engineering -- Software testing is a series of five international standards for software testing. First developed in 2007 and released in 2013, the standard "defines vocabulary, processes, documentation, techniques, and a process assessment model for testing that can be used within any software development lifecycle."
Value-based Engineering (VBE) is a system development and innovation approach that implements the IEEE St. 7000 "Model Process for Addressing Ethical Concerns during System Design", released in 2021. The standard was developed over a five-year period based on the initial work published in "Ethical IT innovation: A value-based system design approach" in 2015. Similar to value sensitive design, IEEE St. 7000 aims to provide a framework for the consideration of human values and ethical concerns. In the fall of 2022, IEEE St. 7000 has been adopted by ISO as ISO/IEC/IEEE 24748-7000.