Page 237 - DCAP104_EXPOSURE_TO_COMPUTER_DISCPLINES
P. 237

Exposure to Computer Disciplines



                   Notes
                                 ISO 15504
                                 ISO 15504, also known as Software Process Improvement Capability Determination (SPICE), is
                                 a “framework for the assessment of software processes”. This standard is aimed at setting out
                                 a clear model for process comparison. SPICE is used much like CMMI. It models processes to
                                 manage, control, guide and monitor software development. This model is then used to measure
                                 what a development organization or project team actually does during software development.
                                 This information is analyzed to identify weaknesses and drive improvement. It also identifies
                                 strengths that can be continued or integrated into common practice for that organization or team.
                                 12.5.1 Formal Methods

                                 Formal methods are mathematical approaches to solving software (and hardware) problems at the
                                 requirements, specification and design levels. Examples of formal methods include the B-Method,
                                 Petri nets, Automated theorem proving, RAISE and VDM. Various formal specification notations
                                 are available, such as the Z notation. More generally, automata theory can be used to build up
                                 and validate application behavior by designing a system of finite state machines.

                                 Finite state machine (FSM) based methodologies allow executable software specification and by-
                                 passing of conventional coding (see virtual finite state machine or event driven finite state machine).
                                 Formal methods are most likely to be applied in avionics software, particularly where the software
                                 is safety critical. Software safety assurance standards, such as DO178B demand formal methods at
                                 the highest level of categorization (Level A). Formalization of software development is creeping
                                 in, in other places, with the application of Object Constraint Language (and specializations such
                                 as Java Modeling Language) and especially with Model-driven architecture allowing execution
                                 of designs, if not specifications.
                                 Another emerging trend in software development is to write a specification in some form of logic
                                 (usually a variation of FOL), and then to directly execute the logic as though it were a program. The
                                 OWL language, based on Description Logic, is an example. There is also work on mapping some
                                 version of English (or another natural language) automatically to and from logic, and executing
                                 the logic directly. Examples are Attempto Controlled English, and Internet Business Logic, which
                                 does not seek to control the vocabulary or syntax. A feature of systems that support bidirectional
                                 English-logic mapping and direct execution of the logic is that they can be made to explain their
                                 results, in English, at the business or scientific level.

                                 The Government Accountability Office, in a 2003 report on one of the Federal Aviation
                                 Administration’s air traffic control modernization programs, recommends following the agency’s
                                 guidance for managing major acquisition systems by
                                   —  establishing, maintaining, and controlling an accurate, valid, and current performance
                                      measurement baseline, which would include negotiating all authorized, unpriced work
                                      within 3 months;
                                   —  conducting an integrated baseline review of any major contract modifications within 6
                                      months; and
                                   —  preparing a rigorous life-cycle cost estimate, including a risk assessment, in accordance
                                      with the Acquisition System Toolset’s guidance and identifying the level of uncertainty
                                      inherent in the estimate.







        230                               LOVELY PROFESSIONAL UNIVERSITY
   232   233   234   235   236   237   238   239   240   241   242