RESTRUCTURING PROGRAMS THROUGH PROGRAM SLICING

Author(s):  
HYEON SOO KIM ◽  
YONG RAE KWON ◽  
IN SANG CHUNG

Software restructuring is recognized as a promising method to improve logical structure and understandability of a software system which is composed of modules with loosely-coupled elements. In this paper, we present methods of restructuring an ill-structured module at the software maintenance phase. The methods identify modules performing multiple functions and restructure such modules. For identifying the multi-function modules, the notion of the tightly-coupled module that performs a single specific function is formalized. This method utilizes information on data and control dependence, and applies program slicing to carry out the task of extracting the tightly-coupled modules from the multi-function module. The identified multi-function module is restructured into a number of functional strength modules or an informational strength module. The module strength is used as a criterion to decide how to restructure. The proposed methods can be readily automated and incorporated in a software tool.

2021 ◽  
Vol 54 (3) ◽  
pp. 1-33
Author(s):  
Blesson Varghese ◽  
Nan Wang ◽  
David Bermbach ◽  
Cheol-Ho Hong ◽  
Eyal De Lara ◽  
...  

Edge computing is the next Internet frontier that will leverage computing resources located near users, sensors, and data stores to provide more responsive services. Therefore, it is envisioned that a large-scale, geographically dispersed, and resource-rich distributed system will emerge and play a key role in the future Internet. However, given the loosely coupled nature of such complex systems, their operational conditions are expected to change significantly over time. In this context, the performance characteristics of such systems will need to be captured rapidly, which is referred to as performance benchmarking, for application deployment, resource orchestration, and adaptive decision-making. Edge performance benchmarking is a nascent research avenue that has started gaining momentum over the past five years. This article first reviews articles published over the past three decades to trace the history of performance benchmarking from tightly coupled to loosely coupled systems. It then systematically classifies previous research to identify the system under test, techniques analyzed, and benchmark runtime in edge performance benchmarking.


2017 ◽  
Vol 17 (1) ◽  
Author(s):  
Romans Pancs

AbstractSome industries have consumers who seek novelty and firms that innovate vigorously and whose organizational structure is loosely coupled, or easily adaptable. Other industries have consumers who take comfort in the traditional and firms that innovate little and whose organizational structure is tightly coupled, or not easily adaptable. This paper proposes a model that explains why the described features tend to covary across industries. The model highlights the pervasiveness of equilibrium inefficiency (innovation can be insufficient or excessive) and the nonmonotonicity of welfare in the equilibrium amount of innovation.


2021 ◽  
Author(s):  
Gary M. Stump ◽  
Michael Yukish ◽  
Jonathan Cagan ◽  
Christopher McComb

Abstract Human subject experiments are often used in research efforts to understand human behavior in design. However, such research is often time-consuming, expensive, and limited in scope due to the need to experimentally control specific variables. This work develops an initial digital simulation of team-based multidisciplinary design, where the actions of individual team members are simulated using deep learning models trained on historical human design trends. The main benefit of this work is to simulate design session events and interactions without human participants, developing a complimentary method to rapidly perform digital team-based experiments. This research merges the benefits of purely data-driven modeling with minimal assumptions about process, along with the strengths of agent-based modeling in which it is possible to tailor agent behavior. Initial results show that the simulated design team sessions are able to replicate trends and distributions compared to human-based team sessions, but run approximately 21 times faster than equivalent human subject studies. The multi-disciplinary design problem currently simulated is loosely coupled, in the sense that agent behaviors can be modeled in isolation of other agents and yet replicate the behavior of the ensemble. Future work will extend the agents to sense and respond behaviors that can be used to model tightly coupled problems, and truly evaluate team formulations.


Author(s):  
Carlos Granell ◽  
Laura Díaz ◽  
Michael Gould

The development of geographic information systems (GISs) has been highly influenced by the overall progress of information technology (IT). These systems evolved from monolithic systems to become personal desktop GISs, with all or most data held locally, and then evolved to the Internet GIS paradigm in the form of Web services (Peng & Tsou, 2001). The highly distributed Web services model is such that geospatial data are loosely coupled with the underlying systems used to create and handle them, and geospatial processing functionalities are made available as remote, interoperable, discoverable geospatial services. In recent years the software industry has moved from tightly coupled application architectures such as CORBA (Common Object Request Broker Architecture?Vinoski, 1997) toward service-oriented architectures (SOAs) based on a network of interoperable, well-described services accessible via Web protocols. This has led to de facto standards for delivery of services such as Web Service Description Language (WSDL) to describe the functionality of a service, Simple Object Access Protocol (SOAP) to encapsulate Web service messages, and Universal Description, Discovery, and Integration (UDDI) to register and provide access to service offerings. Adoption of this Web services technology as an option to monolithic GISs is an emerging trend to provide distributed geospatial access, visualization, and processing. The GIS approach to SOA-based applications is perhaps best represented by the spatial data infrastructure (SDI) paradigm, in which standardized interfaces are the key to allowing geographic services to communicate with each other in an interoperable manner. This article focuses on standard interfaces and also on current implementations of geospatial data processing over the Web, commonly used in SDI environments. We also mention several challenges yet to be met, such as those concerned with semantics, discovery, and chaining of geospatial processing services and also with the extension of geospatial processing capabilities to the SOA world.


2021 ◽  
Author(s):  
Thi Mai Anh Bui ◽  
Nhat Hai Nguyen

Precisely locating buggy files for a given bug report is a cumbersome and time-consuming task, particularly in a large-scale project with thousands of source files and bug reports. An efficient bug localization module is desirable to improve the productivity of the software maintenance phase. Many previous approaches rank source files according to their relevance to a given bug report based on simple lexical matching scores. However, the lexical mismatches between natural language expressions used to describe bug reports and technical terms of software source code might reduce the bug localization system’s accuracy. Incorporating domain knowledge through some features such as the semantic similarity, the fixing frequency of a source file, the code change history and similar bug reports is crucial to efficiently locating buggy files. In this paper, we propose a bug localization model, BugLocGA that leverages both lexical and semantic information as well as explores the relation between a bug report and a source file through some domain features. Given a bug report, we calculate the ranking score with every source files through a weighted sum of all features, where the weights are trained through a genetic algorithm with the aim of maximizing the performance of the bug localization model using two evaluation metrics: mean reciprocal rank (MRR) and mean average precision (MAP). The empirical results conducted on some widely-used open source software projects have showed that our model outperformed some state of the art approaches by effectively recommending relevant files where the bug should be fixed.


Author(s):  
Yucheng Liu ◽  
Silas Whitaker ◽  
Connor Hayes ◽  
Jared Logsdon ◽  
Logan McAfee ◽  
...  

A curriculum enhancement project of embedding MATLAB and Simulink to a mechanical engineering (ME) vibrations and controls course is presented in this paper. MATLAB/Simulink is a popular software tool for vibration analysts and control designers, which is consistently regarded as one of the most in-demand technical skills that employers are looking for. In the past, the ME students at Mississippi State University (MSU) did not have the training opportunity to use MATLAB/Simulink for design and analysis of vibration and control systems. With the support of a teaching grants, the author created an experimental lab section to ask students to design and build vibration and control devices, and integrated these device into his vibrations and controls course. In this study, the author develops a computer lab section based on the implementation of MATLAB/Simulink, which complements with the experimental lab section to provide the students with a full lab experience. The experimental-computational lab allows the students to not only observe and characterize the dynamic response of vibration and control systems through experimental operations and measurements, but also validate experimental results and confirm experimental phenomena through computational analysis. As well as exploring dynamic behaviors of the systems in a variety of conditions through numerical simulations with different settings. An example of student project is presented to show an experimental-computational study conducted by a student team using MATLAB/Simulink software tool and self-developed data acquisition systems based on a base excitation model demonstrated in class. A questionnaire was conducted at the end of that class and results confirms that the implementation of MATLAB/Simulink into the course effectively develops the ME students’ programming skills and strengthens their capacity in modeling, simulating, and analyzing vibration, control, and other dynamic systems. The developed computational lab and the current experimental lab complementarily promote student understanding of principles and concepts conveyed in classroom lectures.


2020 ◽  
Vol 10 (15) ◽  
pp. 5027 ◽  
Author(s):  
Erik Kučera ◽  
Oto Haffner ◽  
Peter Drahoš ◽  
Ján Cigánek ◽  
Roman Leskovský  ◽  
...  

For the development of modern complex production processes in Industry 4.0, it is appropriate to effectively use advanced mathematical models based on Petri nets. Due to their versatility in modeling discrete-event systems, Petri nets are an important support in creating new platforms for digitized production systems. The main aim of the proposed article is to design a new software tool for modeling and control of discrete-event and hybrid systems using Arduino and similar microcontrollers. To accomplish these tasks, a new tool called PN2ARDUINO based on Petri nets is proposed able to communicate with the microcontroller. Communication with the microcontroller is based on the modified Firmata protocol hence, the control algorithm can be implemented on all microcontrollers that support this type of protocol. The developed software tool was successfully verified in control of laboratory systems. In addition, it can be used for education and research purposes as it offers a graphical environment for designing control algorithms for hybrid and mainly discrete-event systems. The proposed software tool can improve education and practice in cyber-physical systems (Industry 4.0).


2018 ◽  
Vol 10 (11) ◽  
pp. 110 ◽  
Author(s):  
Linbo Zhai ◽  
Wenwen Jiang

In recent years, the laboratory security of universities has become an important issue for students and devices. To solve this security issue, this paper proposes an intelligent monitoring system to realize environment detection in university laboratories. The main purpose of this system is to monitor the laboratory environment data in time and improve the laboratory inspection efficiency. The system consists of a single chip microcomputer, which is the core of this system, a sensor function module and GPRS wireless communication, realizing data monitoring and short message warning. Therefore, three features, front-end data acquisition, data wireless transmission and a security alarm, are achieved by the proposed system. The real experiments show that front-end data acquisition is effective, data transmission is reliable, and the alarm message is received in time. Furthermore, the system, with the modified function modules, can be used in other scenarios to detect environments, and thus has a significant applied value in other areas.


Author(s):  
Kwan-Ming Wan ◽  
Pouwan Lei ◽  
Chris Chatwin ◽  
Rupert Young

The established global business environment is under intense pressure from Asian countries such as Korea, China, and India. This forces businesses to concentrate on their core competencies and adopt leaner management structures. The coordination of activities both within companies and with suppliers and customers has become a crucial competitive advantage. At the same time, the Internet has transformed the way in which businesses run. As the Internet becomes a cheap and effective communication channel, businesses are quick to adopt the Web for integrating their systems together and linking them with their suppliers and customers. Current enterprise computing using J2EE (Java 2 Platform, Enterprise Edition) has yielded systems in which the coupling between various components in them are too tight to be effective for ubiquitous B2B (business-to-business) and B2C (business-to-consumer) e-business over the Internet. This approach requires too much agreement and shared context between business systems from different organizations. There is a need to move away from tightly coupled, monolithic systems and toward systems of loosely coupled, dynamically bound components. The emerging technology, Web services, provides the tools to accomplish this integration, but this approach presents many new challenges and problems that must be overcome. In this article, we will discuss the current approaches in enterprise application integration (EAI) and the limitations. There is also a need for service-oriented applications, that is, Web services. Finally, the challenges in implementing Web services are outlined.


Author(s):  
Melih Kirlidog

Virtual Communities (VC), as defined by Rheingold (2000), are the social groups formed in the cyberspace when enough people carry on public discussions long enough and with sufficient human feeling. VC enabled by the ICT technologies are formed in two ways. Either their members can be actively engaged with each other and tightly coupled in e-mail discussion and communication groups, or they can be the passive observers of the Web pages and thereby loosely coupled with other members of the community.


Sign in / Sign up

Export Citation Format

Share Document