An Ontology Based Reuse Algorithm towards Process Planning in Software Development

— The process planning task for specified design provisions in software development can be significantly developed by referencing the knowledge reuse scheme. Reuse is considered to be one of the most promising techniques to improve software excellence and productivity. Reuse during software development depends much on the existing design knowledge in meta-model, a " read only " repository of information. We have proposed, an ontology based reuse algorithm towards process planning in software development. According to the common conceptual base facilitated by ontology and the characteristics of knowledge, the concepts and the entities are represented into meta-model and endeavor prospects. The relations between these prospects and its linkage knowledge are used to construct an ontology based reuse algorithm. In addition, our experiment illustrates realization of process planning in software development by practicing this algorithm. Subsequently, its benefits are delineated.


INTRODUCTION
Reuse practice has become a significant issue in the field of software engineering.
The increasing demand for progressively larger and complex systems is one of the causes that reuse has been preferred when dealing with such tribulations in software development.Reuse also responds to an increasing insist for highly reliable, high excellence and less expensive systems.
Accordingly, knowledge reuse will benefit and improve the process planning in software development greatly.Process planning is an intermediate phase between design and implementation.Lucidity and prescribed specification of concepts play a key role in the inclusion of reuse in the process planning.Therefore, a most important issue is to build a common conceptual base characterized by knowledge.Our exploration focuses on this task through the use of defined system elements and layering principal, illustrating various prospects.We have proposed a knowledge based process planning method and it seems indispensable and potential in real applications.
As to knowledge-based process planning, a significant prose already exists for general software implementation processes.Ontology is the basis for the sharing of resources, which provides a common understanding of field knowledge.The scope of ontology application is widespread, and its pursuit is large and whole, and applicable to entire software engineering environment [1] [2].Therefore, we construct and use a fixed ontology oriented procedure through locating the linkage knowledge.When executing it, irrelevant knowledge items would consequently be avoided in knowledge retrieval so as the effectiveness and efficiency of knowledge reuse may be improved.This may help train novice users to quickly become familiar with the process and achieve efficient and high quality builds.
Ontology has been defined as the vocabulary of unambiguous domain-related concepts and meanings of the concepts anchored in consensus domain knowledge [3].Also, ontology may provide a reusable and sharable information model.It is popular in engineering knowledge modeling and retrieval for its devastating searching ability [4].Thus, we have proposed an ontological knowledge modeling in Section II that illustrates the meta-level descriptions to divulge the building blocks of it.Based on ontological knowledge modeling, Section III confers ontology based reuse algorithm towards process planning in software development.Section IV exemplifies a case study to substantiate the efficacy of ontology based reuse algorithm.Finally, we conclude with the advantage of practicing it towards process planning in software

II. ONTOLOGICAL KNOWLEDGE MODELING
We have proposed an ontological knowledge modeling for knowledge integration and reuse towards process planning in software development.It constitutes System Element Classification, Ontolayering Principle and Knowledge Reuse Scheme to provide reusable and shareable engineering applications.System Element Classification is developed to capture important characteristics to reduce the growing complexity of information and increasing need to exchange it among various software applications.Subsequently, the Ontolayering principle uses the ontology in a resource usage manner, specifically by understanding and dissimilating the information comprised by entities.Conversely, natural language is too ambiguous to provide enough and clear definition in engineering applications.Thus, Knowledge Reuse Scheme is defined consistent interpretation between different users and different applications.These building blocks are defined as follows:

A. System Element Classification
The classification includes abstract concepts such as work units, stages, work products, model units and people as shown in Fig. 1.Work units are the tasks or activities that software www.ijacsa.thesai.org/developers perform, and have a start and end time as well as duration.Stages are major time frames, helps the wok units in giving some temporal structure.Work products, such as documents or software, are intangible results of performing work units and have creations and last change times with status.The status of work product is always one of the enumerated list such as Initial, Complete, Accepted or Approved.Finally, the producers are the people and teams that actually perform the work units in order to create work products.

B. Ontolayering Principle
The principle uses the ontology in a resource usage manner specifically by understanding and dissimilating the information comprised by entities [5].The three prospects namely: Metamodel, Process and Product prospects have been defined around the communities that network with the ontology as shown in Fig. 2. The meta-model prospect acts as a common standard determining the other prospects.The meta-model is intended to be used as an origin by method engineers so that the methodologies can be developed.Method engineers typically uses the concepts in the meta-model prospect by sub typing and instantiation, thereby creating new concepts (subtype of existing ones) and entities (instances of concepts).All these new concepts and entities created by method engineers are seized to form a process prospect.Software developers use it by creating the instances of concepts in it and also, by following the guidance explained by entities.Thus, the instances created by software developers are apprehended to form the product prospect.

C. Knowledge Reuse Scheme
The scheme starts with formalizing the system element requirements according to the representation approach of System Element Classification.Subsequently, identification of the related process concepts and entities that need to be revised according to the Ontolayering principle stored in the knowledge base.Consequently, modification of the producer entities, associated concepts based on Ontolayering principle Finally, simulation of the results is done if the reuse requirements are satisfied; else consider changing a different process concept and entities.

III. ONTOLOGY BASED REUSE ALGORITHM (ONTOREUSEALGO)
We have proposed an Ontology Based Reuse Algorithm (OntoReuseAlgo) using ontological knowledge modeling approach to aid the product redesign of process plans.The key idea is that a new process plan under new implementation requirements may be obtained by modification of certain concepts and entities of the current process.Ontological knowledge modeling is used to give a uniform representation of the involved information.It starts with understanding the system elements.It includes identifying process concepts and entities that need to change followed by altering with Ontolayering principle and modify the producer entity and the associated concepts which help in revising the influencing product attributes for simulating the final process plan.Fig. 3 shows the overall procedure of the proposed approach and the knowledge reuse strategy in process planning.
Different systems may use different concepts and terminology to express the same thing while the same words may be used to represent different things by different systems.Both situations hinder information communication.Therefore, step 1 uses the System Element Classification.Conversely, the process and product concepts that need to change could be properly identified and revised through mappings of related Ontolayering Principle to certain process and product prospects in step 2, 3 and 4. Subsequently, natural language is too ambiguous to provide enough and clear definition in engineering applications.In addition, text-based definitions are too rigid and insufficient in information retrieval because it necessitates text-match searching.Thus, Knowledge Reuse Scheme is applied to step 5 for providing vocabulary and the specification of the meaning or semiotics of the terminology within this vocabulary.There are 5 steps from the beginning to the end of process planning task, as shown in Figure 1 Step 1: Formalize the system element requirements according to the representation approach of system element classification Step 2: Identify the related process concepts and entities that need to be revised according to the layering principle stored in the knowledge base In this section, the design of process planning for redistribution between warehouses is described, based on the proposed reuse approach an OntoAlgoReuse.Various people are responsible for carrying out different activities such as Foreman is responsible for one warehouse though Warehouse worker works in a warehouse for loading and unloading subsequently Truck driver is accountable for transportation.In addition, Forklift operator drives a forklift in one warehouse and Official personal receive orders and requests from customers.
Step1-We have analyzed following set of system element requirements, when a foreman performs redistribution of items between the warehouses.

S.No System element Requirement Description
1 Initialization (when foreman request for the redistribution) 1.The foreman gives a command for redistribution between warehouses 2. The window in Fig. 4 is presented to the foreman 3. The items can be ordered in a number of ways with ORDER menu such as alphabetical, index, turnover of the items and storing order.4. In the "From place" table we may choose to view either all places in the current warehouse or, if we have selected an item, the place where the item exists 5.In the "To warehouse" table we may select all warehouses or the warehouses that we have to transport to this week 6.The "Issuer" and "warehouse" fields are automatically filled when the window pops up.7. The foreman selects an item by pointing to it and dragging it to the Redistribution form then selects from which place to take the items and to which warehouse to transport them.8.The foreman then gives the quantity to be moved and the date.A Truck driver asks for a transportation request.The request is marked as ongoing.2. Give an appropriate request to the Forklift operators to have the items ready when and where the truck is expected.3. When the Warehouse Worker gets a request to fetch items at appropriate time, orders Forklift operators to move the items to the loading platform 4.
When the Truck driver arrives the items are loaded.The Truck driver tells the system when the truck is loaded and when it is expected to be at the new warehouse.

5.
Decrease the number of items in this ware house and mark the transport request as on transport 3 Unloading (when a truck delivers the items to the new warehouse) 1.
When the truck has arrived at the new warehouse, the items are unloaded 2. The Truck driver tells the system that the transport to this warehouse has been done.3. The Warehouse workers receive the items and determine a place for them in the warehouse 4. Forklift operators are told to move the items to the new place in the new warehouse 5.When the Truck driver confirms the insertion, the system updates the new place for the items 6.The transportation time is recorded and stored in the system 7.
The Redistribution and the transport request are marked as performed.Step 5: Table III shows the results after executing the knowledge reuse scheme for the task of process planning.Thus, planning endow with new transport requests and therefore change existing transport requests previously in the system

Planning Description
To coordinate transports and issue transport requests 1.When the redistribution is executed the items to be moved are marked as move-pending 2. Minimize the use of trucks on condition that all delivery dates should be held and the trucks should be compatible with any delivery requirements for the items.3. The transport requests are connected to a specific truck"s transportation plan.

V. CONCLUSION
An OntoReuseAlgo aims to improve the knowledge reuse in process planning for software development.It supports the application from three aspects: system element classification, representation on the basis of layering principle and knowledge reuse scheme for process planning.The system element classification and the layering principle are adjoined for the workflow control of the knowledge reuse.We have observed the following significant benefits and are as follows:  Through organizing and modeling the knowledge towards the characteristics of design processes, unnecessary search time can be avoided on irrelevant knowledge items  It allows explicit credentials for analysis and comparison of different domain theories  It describes knowledge acquisition approach to structure the entities and relations that need to be acquired in the domain;  It provides a metalevel view (vocabulary and structure) on their domain which facilitates adequate system documentation and constructs reusable knowledge-system design  It can be used to define assumptions that enable knowledge exchange between different agents.

Step 3 :
Modify the producer entities and associated concepts based on layering principleStep 4: Revise the influencing product attributes Step 5: Simulation of the results in step 4 if the reuse requirements are satisfied, then shift to step 5; or else, shift to step 2 and consider changing a different process concept and entities Describe abstract concepts such as Work Units, Stages, Work Products, Model Units and People.Identify and alter the related process concepts and entities to change Modify the producer entity and the associated concepts such as Roles, Persons, Tools & Teams.

9 .
It is possible to change the information when the form has been edited.When the foreman EXECUTES the redistribution, the transport is planned.It is also possible to CANCEL the redistribution.Selecting HELP shows window of information about the current window.2 Loading (when truck fetches the item from the warehouse) 1.

TABLE I :
SYSTEM ELEMENT REQUIREMENTS OF RETRIEVED CASE