Automatic Reusability Appraisal of Software Components using Neuro-fuzzy Approach

Automatic reusability appraisal could be helpful in evaluating the quality of developed or developing reusable software components and in identification of reusable components from existing legacy systems; that can save cost of developing the software from scratch. But the issue of how to identify reusable components from existing systems has remained relatively unexplored. In this paper, we have mentioned two-tier approach by studying the structural attributes as well as usability or relevancy of the component to a particular domain. Latent semantic analysis is used for the feature vector representation of various software domains. It exploits the fact that FeatureVector codes can be seen as documents containing terms -the idenifiers present in the components- and so text modeling methods that capture co-occurrence information in low-dimensional spaces can be used. Further, we devised Neuro- Fuzzy hybrid Inference System, which takes structural metric values as input and calculates the reusability of the software component. Decision tree algorithm is used to decide initial set of fuzzy rules for the Neuro-fuzzy system. The results obtained are convincing enough to propose the system for economical identification and retrieval of reusable software components.

Use of Agricultural Waste for the Removal of Nickel Ions from Aqueous Solutions: Equilibrium and Kinetics Studies

The potential of economically cheaper cellulose containing natural materials like rice husk was assessed for nickel adsorption from aqueous solutions. The effects of pH, contact time, sorbent dose, initial metal ion concentration and temperature on the uptake of nickel were studied in batch process. The removal of nickel was dependent on the physico-chemical characteristics of the adsorbent, adsorbate concentration and other studied process parameters. The sorption data has been correlated with Langmuir, Freundlich and Dubinin-Radush kevich (D-R) adsorption models. It was found that Freundlich and Langmuir isotherms fitted well to the data. Maximum nickel removal was observed at pH 6.0. The efficiency of rice husk for nickel removal was 51.8% for dilute solutions at 20 g L-1 adsorbent dose. FTIR, SEM and EDAX were recorded before and after adsorption to explore the number and position of the functional groups available for nickel binding on to the studied adsorbent and changes in surface morphology and elemental constitution of the adsorbent. Pseudo-second order model explains the nickel kinetics more effectively. Reusability of the adsorbent was examined by desorption in which HCl eluted 78.93% nickel. The results revealed that nickel is considerably adsorbed on rice husk and it could be and economic method for the removal of nickel from aqueous solutions.

Prediction of Reusability of Object Oriented Software Systems using Clustering Approach

In literature, there are metrics for identifying the quality of reusable components but the framework that makes use of these metrics to precisely predict reusability of software components is still need to be worked out. These reusability metrics if identified in the design phase or even in the coding phase can help us to reduce the rework by improving quality of reuse of the software component and hence improve the productivity due to probabilistic increase in the reuse level. As CK metric suit is most widely used metrics for extraction of structural features of an object oriented (OO) software; So, in this study, tuned CK metric suit i.e. WMC, DIT, NOC, CBO and LCOM, is used to obtain the structural analysis of OO-based software components. An algorithm has been proposed in which the inputs can be given to K-Means Clustering system in form of tuned values of the OO software component and decision tree is formed for the 10-fold cross validation of data to evaluate the in terms of linguistic reusability value of the component. The developed reusability model has produced high precision results as desired.

A Metric Framework for Analysis of Quality of Object Oriented Design

The impact of OO design on software quality characteristics such as defect density and rework by mean of experimental validation. Encapsulation, inheritance, polymorphism, reusability, Data hiding and message-passing are the major attribute of an Object Oriented system. In order to evaluate the quality of an Object oriented system the above said attributes can act as indicators. The metrics are the well known quantifiable approach to express any attribute. Hence, in this paper we tried to formulate a framework of metrics representing the attributes of object oriented system. Empirical Data is collected from three different projects based on object oriented paradigms to calculate the metrics.

Software Maintenance Severity Prediction for Object Oriented Systems

As the majority of faults are found in a few of its modules so there is a need to investigate the modules that are affected severely as compared to other modules and proper maintenance need to be done in time especially for the critical applications. As, Neural networks, which have been already applied in software engineering applications to build reliability growth models predict the gross change or reusability metrics. Neural networks are non-linear sophisticated modeling techniques that are able to model complex functions. Neural network techniques are used when exact nature of input and outputs is not known. A key feature is that they learn the relationship between input and output through training. In this present work, various Neural Network Based techniques are explored and comparative analysis is performed for the prediction of level of need of maintenance by predicting level severity of faults present in NASA-s public domain defect dataset. The comparison of different algorithms is made on the basis of Mean Absolute Error, Root Mean Square Error and Accuracy Values. It is concluded that Generalized Regression Networks is the best algorithm for classification of the software components into different level of severity of impact of the faults. The algorithm can be used to develop model that can be used for identifying modules that are heavily affected by the faults.

Identification of Reusable Software Modules in Function Oriented Software Systems using Neural Network Based Technique

The cost of developing the software from scratch can be saved by identifying and extracting the reusable components from already developed and existing software systems or legacy systems [6]. But the issue of how to identify reusable components from existing systems has remained relatively unexplored. We have used metric based approach for characterizing a software module. In this present work, the metrics McCabe-s Cyclometric Complexity Measure for Complexity measurement, Regularity Metric, Halstead Software Science Indicator for Volume indication, Reuse Frequency metric and Coupling Metric values of the software component are used as input attributes to the different types of Neural Network system and reusability of the software component is calculated. The results are recorded in terms of Accuracy, Mean Absolute Error (MAE) and Root Mean Squared Error (RMSE).

A Reusability Evaluation Model for OO-Based Software Components

The requirement to improve software productivity has promoted the research on software metric technology. There are metrics for identifying the quality of reusable components but the function that makes use of these metrics to find reusability of software components is still not clear. These metrics if identified in the design phase or even in the coding phase can help us to reduce the rework by improving quality of reuse of the component and hence improve the productivity due to probabilistic increase in the reuse level. CK metric suit is most widely used metrics for the objectoriented (OO) software; we critically analyzed the CK metrics, tried to remove the inconsistencies and devised the framework of metrics to obtain the structural analysis of OO-based software components. Neural network can learn new relationships with new input data and can be used to refine fuzzy rules to create fuzzy adaptive system. Hence, Neuro-fuzzy inference engine can be used to evaluate the reusability of OO-based component using its structural attributes as inputs. In this paper, an algorithm has been proposed in which the inputs can be given to Neuro-fuzzy system in form of tuned WMC, DIT, NOC, CBO , LCOM values of the OO software component and output can be obtained in terms of reusability. The developed reusability model has produced high precision results as expected by the human experts.

Improving the Reusability and Interoperability of E-Learning Material

A key requirement for e-learning materials is reusability and interoperability, that is the possibility to use at least part of the contents in different courses, and to deliver them trough different platforms. These features make possible to limit the cost of new packages, but require the development of material according to proper specifications. SCORM (Sharable Content Object Reference Model) is a set of guidelines suitable for this purpose. A specific adaptation project has been started to make possible to reuse existing materials. The paper describes the main characteristics of SCORM specification, and the procedure used to modify the existing material.

Collaborative Web Platform for Rich Media Educational Material Creation

This paper describes a platform that faces the main research areas for e-learning educational contents. Reusability tackles the possibility to use contents in different courses reducing costs and exploiting available data from repositories. In our approach the production of educational material is based on templates to reuse learning objects. In terms of interoperability the main challenge lays on reaching the audience through different platforms. E-learning solution must track social consumption evolution where nowadays lots of multimedia contents are accessed through the social networks. Our work faces it by implementing a platform for generation of multimedia presentations focused on the new paradigm related to social media. The system produces videos-courses on top of web standard SMIL (Synchronized Multimedia Integration Language) ready to be published and shared. Regarding interfaces it is mandatory to satisfy user needs and ease communication. To overcome it the platform deploys virtual teachers that provide natural interfaces while multimodal features remove barriers to pupils with disabilities.

Measuring Process Component Design on Achieving Managerial Goals

Process-oriented software development is a new software development paradigm in which software design is modeled by a business process which is in turn translated into a process execution language for execution. The building blocks of this paradigm are software units that are composed together to work according to the flow of the business process. This new paradigm still exhibits the characteristic of the applications built with the traditional software component technology. This paper discusses an approach to apply a traditional technique for software component fabrication to the design of process-oriented software units, called process components. These process components result from decomposing a business process of a particular application domain into subprocesses, and these process components can be reused to design the business processes of other application domains. The decomposition considers five managerial goals, namely cost effectiveness, ease of assembly, customization, reusability, and maintainability. The paper presents how to design or decompose process components from a business process model and measure some technical features of the design that would affect the managerial goals. A comparison between the measurement values from different designs can tell which process component design is more appropriate for the managerial goals that have been set. The proposed approach can be applied in Web Services environment which accommodates process-oriented software development.

Using Services Oriented Architecture to Improve Efficient Web-Services for Postgraduate Students

The main aim of this paper is to present the research findings on the solution of centralized Web-Services for students by adopting a framework and a prototype for Service Oriented Architecture (SOA) Web-Services. The current situation of students- Web-based application services has been identified and proposed an effective SOA to increase the operational efficiency of Web-Services for them it was necessary to identify the challenges in delivering a SOA technology to increase operational efficiency of Web-Services. Moreover, the SOA is an emerging concept, used for delivering efficient student SOA Web-Services. Therefore, service reusability from SOA Web-Services is provided and logically divided services into smaller services to increase reusability and modularity. In this case each service is a modular unit by itself and interoperability services.

A Critical Survey of Reusability Aspects for Component-Based Systems

The last decade has shown that object-oriented concept by itself is not that powerful to cope with the rapidly changing requirements of ongoing applications. Component-based systems achieve flexibility by clearly separating the stable parts of systems (i.e. the components) from the specification of their composition. In order to realize the reuse of components effectively in CBSD, it is required to measure the reusability of components. However, due to the black-box nature of components where the source code of these components are not available, it is difficult to use conventional metrics in Component-based Development as these metrics require analysis of source codes. In this paper, we survey few existing component-based reusability metrics. These metrics give a border view of component-s understandability, adaptability, and portability. It also describes the analysis, in terms of quality factors related to reusability, contained in an approach that aids significantly in assessing existing components for reusability.

Dynamic Coupling Metrics for Service – Oriented Software

Service-oriented systems have become popular and presented many advantages in develop and maintain process. The coupling is the most important attribute of services when they are integrated into a system. In this paper, we propose a suite of metrics to evaluate service-s quality according to its ability of coupling. We use the coupling metrics to measure the maintainability, reliability, testability, and reusability of services. Our proposed metrics are operated in run-time which bring more exact results.

Knowledge Mining in Web-based Learning Environments

The state of the art in instructional design for computer-assisted learning has been strongly influenced by advances in information technology, Internet and Web-based systems. The emphasis of educational systems has shifted from training to learning. The course delivered has also been changed from large inflexible content to sequential small chunks of learning objects. The concepts of learning objects together with the advanced technologies of Web and communications support the reusability, interoperability, and accessibility design criteria currently exploited by most learning systems. These concepts enable just-in-time learning. We propose to extend theses design criteria further to include the learnability concept that will help adapting content to the needs of learners. The learnability concept offers a better personalization leading to the creation and delivery of course content more appropriate to performance and interest of each learner. In this paper we present a new framework of learning environments containing knowledge discovery as a tool to automatically learn patterns of learning behavior from learners' profiles and history.

Design Based Performance Prediction of Component Based Software Products

Component-Based software engineering provides an opportunity for better quality and increased productivity in software development by using reusable software components [10]. One of the most critical aspects of the quality of a software system is its performance. The systematic application of software performance engineering techniques throughout the development process can help to identify design alternatives that preserve desirable qualities such as extensibility and reusability while meeting performance objectives [1]. In the present scenario, software engineering methodologies strongly focus on the functionality of the system, while applying a “fix- it-later" approach to software performance aspects [3]. As a result, lengthy fine-tunings, expensive extra hard ware, or even redesigns are necessary for the system to meet the performance requirements. In this paper, we propose design based, implementation independent, performance prediction approach to reduce the overhead associated in the later phases while developing a performance guaranteed software product with the help of Unified Modeling Language (UML).