scholarly journals Exploring the Quality Improvement in Small- Scale Project Using Aspect-Oriented Design

Aspect-oriented software development (AOSD) seeks to renovate the software quality by use of alteration to the design in object-oriented based systems. Each system component has been divided into numbers of modules and arranges a design in a way that the module has not crosscut to each other. A module is a collection of block of codes, whose role is to restrict and conceal the design definition. This type of behavior is known as the Separation of Concerns (SoC). AOP helps programmers for separating crosscutting concerns. It can be helpful at better modularizing system, the problem with complex system is that the component require different, crosscutting descriptions at different levels and need maintenance too. In this paper, a study was conducted to analyses quality in aspect-oriented software design. This paper also explores varieties of existing metrics related to AOP also and will discuss in detail with comparison of OOPs using small scale projects that how the new programming paradigm design effects on quality of the software.

Author(s):  
Yann-Gaël Gueheneuc ◽  
Jean-Yves Guyomarc’h ◽  
Khashayar Khosravi ◽  
Hourari Sahraoui

Software quality models link internal attributes of programs with external quality characteristics. They help in understanding relationships among internal attributes and between internal attributes and quality characteristics. Object-oriented software quality models usually use metrics on classes (such as number of methods) or on relationships between classes (for example coupling) to measure internal attributes of programs. However, the quality of object-oriented programs does not depend on classes solely: it depends on the organisation of classes also. We propose an approach to build quality models using patterns to consider program architectures. We justify the use of patterns to build quality models, describe the advantages and limitations of such an approach, and introduce a first case study in building and in applying a quality model using design patterns on the JHotDraw, JUnit, and Lexi programs. We conclude on the advantages of using patterns to build software quality models and on the difficulty of doing so.


2020 ◽  
Vol 14 (1) ◽  
pp. 57-63
Author(s):  
Andrés Armando Sánchez Martin ◽  
Luis Eduardo Barreto Santamaría ◽  
Juan José Ochoa Ortiz ◽  
Sebastián Enrique Villanueva Navarro

One of the difficulties for the development and testing of data analysis applications used by IoT devices is the economic and temporary cost of building the IoT network, to mitigate these costs and expedite the development of IoT and analytical applications, it is proposed NIOTE, an IoT network emulator that generates sensor and actuator data from different devices that are easy to configure and deploy over TCP/IP and MQTT protocols, this tool serves as support in academic environments and conceptual validation in the design of IoT networks. The emulator facilitates the development of this type of application, optimizing the development time and improving the final quality of the product. Object-oriented programming concepts, architecture, and software design patterns are used to develop this emulator, which allows us to emulate the behavior of IoT devices that are inside a specific network, where you can add the number of necessary devices, model and design any network. Each network sends data that is stored locally to emulate the process of transporting the data to a platform, through a specific format and will be sent to perform Data Analysis.


2021 ◽  
Vol 12 (3) ◽  
pp. 1-16
Author(s):  
Mokhtaria Bouslama ◽  
Mustapha Kamel Abdi

The cost of software maintenance is always increasing. The companies are often confronted to failures and software errors. The quality of software to use is so required. In this paper, the authors propose a new formal approach for assessing the quality of object-oriented system design according to the quality assessment model. This approach consists in modeling the input software system by an automaton based on object-oriented design metrics and their relationship with the quality attributes. The model exhibits the importance of metrics through their links with the attributes of software quality. In addition, it is very practical and flexible for all changes. It allows the quality estimation and its validation. For the verification of proposed probabilistic model (automaton), they use the model-checking and the prism tool. The model-checking is very interesting for the evaluation and validation of the probabilistic automaton. They use it to approve the software quality of the three experimental projects. The obtained results are very interesting and of great importance.


2020 ◽  
Vol 5 (17) ◽  
pp. 1-5
Author(s):  
Jitendrea Kumar Saha ◽  
Kailash Patidar ◽  
Rishi Kushwah ◽  
Gaurav Saxena

Software quality estimation is an important aspect as it eliminates design and code defects. Object- oriented quality metrics prediction can help in the estimation of software quality of any defects and the chances of errors. In this paper a survey and the case analytics have been presented for the object-oriented quality prediction. It shows the analytical and experimental aspects of previous methodologies. This survey also elaborates different object-oriented parameters which is useful for the same problem. It also elaborates the problem aspects as well the limitations for the future directions. Machine learning and artificial intelligence methods have been considered mostly for this survey. The parameters considered are inheritance, dynamic behavior, encapsulation, objects etc.


2016 ◽  
Author(s):  
Mariana De Azevedo Santos ◽  
Paulo Henrique De Souza Bermejo ◽  
Heitor Costa

Although it is necessary, activities regarding quality assurance and maintenance of software are considered the longest and most complex in software development lifecycle. Taking advantage of this growing trend and of the benefits obtained from open-source initiative, researches on open-source software quality and maintainability have gained renewed interest. The use of robust statistical techniques, such as PLS-SEM to investigate and empirically validate software quality models has also been an efficient alternative to obtain information on open-source software quality. The aim of this study was evaluate and build a conceptual model to characterize the internal quality in Java open-source software in different domains, validated with the PLS-SEM technique. The study results indicate that there are domains with similarities among them and four factors can influence the internal quality of object-oriented software to present better maintainability (Complexity Reduce, Normalized Cohesion, Non-normalized Cohesion, and Increase of the Modularity Level). Besides, we identified some measures are more effective to evaluate internal quality in object-oriented open-source, such as, Fan-out (FOUT), Lack of Cohesion of Methods 2 (LCOM2), Response for Class (RFC), Tight Class Cohesion (TCC), and Loose Class Cohesion (LCC). Thus, this study aims at supporting software engineers and project managers to develop measurement strategies to ensure internal quality of source code and reduce maintenance costs.


Author(s):  
B Vasundhara ◽  
KV Chalapati Rao

Software modularity is a software design technique that increases the level to which software is composed of separate interchangeable components called modules. The modules are devised by breaking down the program functions. Each module accomplishes one function and contains all that is necessary to accomplish it. Modules represent a separation of concerns, and improve the maintainability by enforcing logical boundaries between the components. Languages that formally support the module concept include Java, AspectJ, etc. OOP supports modularity, i.e., the source code for an object can be written and maintained independently of the source code for other objects. Once created, an object can be passed around inside the system. When compared to OOP, AOP is more finely grained, making it more functional for software engineering. In OOP, a software module corresponds directly to a block of executable code. Whereas in AOP, a crosscutting concern, can be located in multiple code blocks. This can turn modules into a tangled mess of crosscutting concerns. AOP is a programming paradigm that increases modularity by allowing the separation of cross-cutting concerns. AOP does not replace OOP in the maintenance of the systems but adds certain decomposition features that address the domination of crosscutting concerns. The effectiveness of AOP is illustrated by discussing the logging function in the online shopping catalogue application.


2020 ◽  
Vol 20 (4) ◽  
pp. 36-54
Author(s):  
Boyan Bontchev ◽  
Emanuela Milanova

AbstractSoftware design patterns incarnate expert knowledge distilled from the practical experience in object-oriented design, in a compact and reusable form. The article presents a quantitative study of the usability of the object-oriented software design patterns (known as Gang of Four patterns) applied for improving the testability, maintainability, extendibility, readability, reliability, and performance efficiency of software applications. We received 82 usable responses from software professionals in Bulgaria, with 65 of them addressing both the usability and recognition of each one of the Gang of Four patterns, together with their impact on important software quality characteristics. As well, we studied the approach of each software developer in choosing a particular design pattern to use in order to solve a problem. We found statistically significant differences between the most recognized and most useful patterns and between the most unrecognized and most useless patterns, split into creational, structural, and behavioral groups.


2020 ◽  
Vol 51 (5) ◽  
pp. 1350-1356
Author(s):  
Contreras & et al.

The objective of this study was to evaluate the effects of yeast (Saccharomyces cereviceae) as additive for barley silage preparation at different ensiling times. Small scale silages were prepared from barley forage and four yeast levels were evaluated (0 (control), 5, 10 and 15 g/kg FM). Silos were opened at 6, 12 and 24 days. Three silage-replicates were prepared for each yeast level × ensiling time combination. Silage quality in terms of CP and NDF and ADF concentration appeared to improve when yeast was added at 5 and 10 g/kg, compared with the control, but the quality decreased again when 15 g yeast/kg FM were aded to the silage. However, gas production, metabolisable energy and organic matter digestibility linearly decreased by yeast addition. This indicates a likely negative effect of yeast over the fermentation process during fermentation of barley silage. No time effects were observed for most of the parameters with the exception of ether extract concentration. Based on the results of this study, yeast addition is detrimental to the nutritional quality of barley silage. Mechanisms for this still remain unknown, but an undesirable fermentation provoked by yeast addition might be an explanation for our findings.


Sign in / Sign up

Export Citation Format

Share Document