Machine Learning Applications In Software Engineering

Chapter 7: ML Applications in Requirement Acquisition

Overview

In this chapter, ML methods are utilized to acquire requirements specifications for new software development or for understanding and transformation of legacy software. Legacy systems are old systems that are critical to the operation of an organization which uses them and that must still be maintained. Most legacy systems were developed before software engineering techniques were widely used. Thus they may be poorly structured and their documentation may be either out-of-date or non-existent. In order to bring to bear the legacy system maintenance, the first task is to recover the design or specification of a legacy system from its source or executable code, hence, the term of reverse engineering, or program comprehension and understanding. It has been estimated that more than half of the time spent on maintenance of large software systems is on program understanding. ML applications include derivation of specifications from training cases or scenarios, extraction of specifications from software, and specification refinement. Table 27 summarizes the current state-of-the-practice in this application area.

Table 27: ML methods used in requirement specification acquisition.

NN

IBL CBR

DT

GA

GP

ILP

EBL

CL

BL

AL

IAL

RL

EL

SVM

Derivation of Specifications

?

Extract Specifications from Software

?

Specification Refinement

?

?

Acquire Specification from Scenarios

UNLIMITED FREE
ACCESS
TO THE WORLD'S BEST IDEAS

SUBMIT
Already a GlobalSpec user? Log in.

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.

Customize Your GlobalSpec Experience

Category: Human Machine Interface (HMI) Software
Finish!
Privacy Policy

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.