Journal of Software Engineering and Applications, 2013, 6, 630-637
Published Online December 2013 (http://www.scirp.org/journal/jsea)
http://dx.doi.org/10.4236/jsea.2013.612075
Open Access JSEA
Intelligent Agent Based Mapping of Software Requirement
Specification to Design Model
Emdad Khan, Mohammed Alawairdhi
College of Computer and Information Sciences, Al-Imam Muhammad Ibn Saud Islamic University, Riyadh, KSA.
Email: emdad@ccis.imamu.edu.sa, awairdhi@ccis.imamu.edu.sa
Received September 23
rd
, 2013; revised October 20
th
, 2013; accepted October 28
th
, 2013
Copyright © 2013 Emdad Khan et al. This is an open access article distributed under the Creative Commons Attribution License,
which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. In accor-
dance of the Creative Commons Attribution License all Copyrights © 2013 are reserved for SCIRP and the owner of the intellectual
property Emdad Khan et al. All Copyright © 2013 are guarded by law and by SCIRP as a guardian.
ABSTRACT
Automatically mapping a requirement specification to design model in Software Engineering is an open complex prob-
lem. Existing methods use a complex manual process that use the knowledge from the requirement specifica-
tion/modeling and the design, and try to find a good match between them. The key task done by designers is to convert
a natural language based requirement specification (or corresponding UML based representation) into a predominantly
computer language based design model—thus the process is very complex as there is a very large gap between our
natural language and computer language. Moreover, this is not just a simple language conversion, but rather a complex
knowledge conversion that can lead to meaningful design implementation. In this paper, we describe an automated
method to map Requirement Model to Design Model and thus automate/partially automate the Structured Design (SD)
process. We believe, this is the first logical step in mapping a more complex requirement specification to design model.
We call it IRTDM (Intelligent Agent based requirement model to design model mapping). The main theme of IRTDM
is to use some AI (Artificial Intelligence) based algorithms, semantic representation using Ontology or Predicate Logic,
design structures using some well known design framework and Machine Learning algorithms for learning over time.
Semantics help convert natural language based requirement specification (and associated UML representation) into high
level design model followed by mapping to design structures. AI method can also be used to convert high level design
structures into lower level design which then can be refined further by some manual and/or semi automated process. We
emphasize that automation is one of the key ways to minimize the software cost, and is very important for all, especially,
for the “Design for the Bottom 90% People” or BOP (Base of the Pyramid People).
Keywords: Software Engineering; Artificial Intelligence; Ontology; Intelligent Agent; Requirements Specification;
Requirements Modeling; Design Modeling; Semantics; Natural Language Understanding; Machine
Learning; Universal Modeling Language (UML); ICT (Information and Communication Technology and
BOP (Base of the Pyramid People)
1. Introduction
Converting requirement specification or model to design
model followed by an implementation is an important
part of software engineering, especially for a large scale
software. It is both information conversion and know-
ledge conversion, and it involves both art and science.
Hence the process is complex. In fact, the various levels
of abstractions involved in such mapping (e.g. from
requirement model to design model, to architecture, to
implementation) make the process even more complex.
Designers use their expertise and various available tools
to successfully complete the process. Since software cost
is an important factor for many organizations (in fact, it
is a key factor for almost all countries as it is a sig-
nificant part of GDP, Gross Domestic Products), it is
important that we keep the software cost minimal. This is
even more true for underdeveloped and developing
countries dominated by BOP (Base of the Pyramid
People)—many of them are poor i.e. income is less than
$2 per day. Minimizing software cost will help such
countries afford ICT (Information and Communication
Technologies) and associated software; and thus will
provide the benefits of the Information Age to such