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% Peopleor 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