scholarly journals Building Survivable Software Systems by Automatically Adapting to Sensor Changes

2021 ◽  
Vol 11 (11) ◽  
pp. 4808
Author(s):  
Yuan Shi ◽  
Ang Li ◽  
T. K. Satish Kumar ◽  
Craig A. Knoblock

Many software systems run on long-lifespan platforms that operate in diverse and dynamic environments. If these software systems could automatically adapt to hardware changes, it would significantly reduce the maintenance cost and enable rapid upgrade. In this paper, we study the problem of how to automatically adapt to sensor changes, as an important step towards building such long-lived, survivable software systems. We address challenges in sensor adaptation when a set of sensors are replaced by new sensors. Our approach reconstructs sensor values of replaced sensors by preserving distributions of sensor values before and after the sensor change, thereby not warranting a change in higher-layer software. Compared to existing work, our approach has the following advantages: (a) ability to exploit new sensors without requiring an overlapping period of time between the new sensors and the old ones; (b) ability to provide an estimation of adaptation quality; and (c) ability to scale to a large number of sensors. Experiments on weather data and Unmanned Undersea Vehicle (UUV) data demonstrate that our approach can automatically adapt to sensor changes with 5.7% higher accuracy compared to baseline methods.

2015 ◽  
Vol 5 (4) ◽  
pp. 24-35 ◽  
Author(s):  
Mamdouh Alenezi ◽  
Fakhry Khellah

Software systems usually evolve constantly, which requires constant development and maintenance. Subsequently, the architecture of these systems tends to degrade with time. Therefore, stability is a key measure for evaluating an architecture. Open-source software systems are becoming progressively vital these days. Since open-source software systems are usually developed in a different management style, the quality of their architectures needs to be studied. ISO/IEC SQuaRe quality standard characterized stability as one of the sub-characteristics of maintainability. Unstable software architecture could cause the software to require high maintenance cost and effort. In this work, the authors propose a simple, yet efficient, technique that is based on carefully aggregating the package level stability in order to measure the change in the architecture level stability as the architecture evolution happens. The proposed method can be used to further study the cause behind the positive or negative architecture stability changes.


Author(s):  
Shohag Barman ◽  
Hira Lal Gope ◽  
M M Manjurul Islam ◽  
Md Mehedi Hasan ◽  
Umme Salma

<p>Software industries face a common problem which is the maintenance cost of industrial software systems. There are lots of reasons behind this problem. One of the possible reasons is the high maintenance cost due to lack of knowledge about understanding the software systems that are too large, and complex. Software clustering is an efficient technique to deal with such kind of problems that arise from the sheer size and complexity of large software systems. Day by day the size and complexity of industrial software systems are rapidly increasing. So, it will be a challenging task for managing software systems. Software clustering can be very helpful to understand the larger software system, decompose them into smaller and easy to maintenance. In this paper, we want to give research direction in the area of software clustering in order to develop efficient clustering techniques for software engineering. Besides, we want to describe the most recent clustering techniques and their strength as well as weakness. In addition, we propose genetic algorithm based software modularization clustering method. The result section demonstrated that proposed method can effectively produce good module structure and it outperforms the state of the art methods. </p>


2018 ◽  
Vol 9 (2) ◽  
pp. 18-38
Author(s):  
Noureddine Aribi ◽  
Yahia Lebbah

Free and open source software (FOSS) distributions are increasingly based on the abstraction of packages to manage and accommodate new features before and after the deployment stage. However, due to inter-package dependencies, package upgrade entails challenging shortcomings of deployment and management of complex software systems, inhibiting their ability to cope with frequent upgrade failures. Moreover, the upgrade process may be achieved according to some criteria (maximize the stability, minimize outdated packages, etc.). This problem is actually a multi-objective optimization problem. Throughout the article, the authors propose a Leximax approach based on mixed integer linear programming (MILP) to tackle the upgradability problem, while ensuring efficiency and fairness requirements between the objective functions. Experiments performed on real-world instances, from the MANCOOSI project, show that the authors' approach efficiently finds solutions of consistently high quality.


2010 ◽  
Vol 160-162 ◽  
pp. 564-567
Author(s):  
Wei Lin Wang ◽  
Jia Tai Zhang

From the perspectives of modularization disassembly, the influence of entity structure, function, motion and other factors of product brought to disassembly efficiency is elaborated. A way to improve design facing modularization disassembly is proposed. The time and cost of disassembly are checked by the proposed method through examples. Comparisons of disassembly evaluation before and after improvement are conducted based on the results. The general method to improve design is summarized. In terms of differences of repair probability of key parts in maintenance process, the improvement design criterion is put forward in the method, which improves the maintenance efficiency, reduces the maintenance cost and difficulty of disassembling operation and avoids data explosion of disassembly sequence because of too many parts.


Complexity ◽  
2019 ◽  
Vol 2019 ◽  
pp. 1-17 ◽  
Author(s):  
Weifeng Pan ◽  
Haibo Jiang ◽  
Hua Ming ◽  
Chunlai Chai ◽  
Bi Chen ◽  
...  

Software stability means the resistance to the amplification of changes in software. It has become one of the most important attributes that affect maintenance cost. To control the maintenance cost, many approaches have been proposed to measure software stability. However, it is still a very difficult task to evaluate the software stability especially when software becomes very large and complex. In this paper, we propose to characterize software stability via change propagation simulation. First, we propose a class coupling network (CCN) to model software structure at the class level. Then, we analyze the change propagation process in the CCN by using a simulation way, and by doing so, we develop a novel metric, SS (software stability), to measure software stability. Our SS metric is validated theoretically using the widely accepted Weyuker’s properties and empirically using a set of open source Java software systems. The theoretical results show that our SS metric satisfies most of Weyuker’s properties with only two exceptions, and the empirical results show that our metric is an effective indicator for software quality improvement and class importance. Empirical results also show that our approach has the ability to be applied to large software systems.


Clinics ◽  
2014 ◽  
Vol 69 (11) ◽  
pp. 714-722 ◽  
Author(s):  
MM Silva ◽  
PC Sala ◽  
CS Cardinelli ◽  
RS Torrinhas ◽  
DL Waitzberg

In many software systems logging has been implemented inaccurately, their effectiveness during the maintenance period to identify the failures and address them quickly is very less. This in turn increases the software maintenance cost and reduces reliability of the system as many errors are unreported. This paper aims at proposing and studying a rule based approach to make the logs more effective. The source code of the target systems gets reverse engineered and acts as the primary input for this approach to introduce the automated logs into the source code. This is instrumented by a logger code driven by a set of predefined rules which are woven around the life cycle of the system entities. The validity of the approach is verified by means of a preliminary fault injection experiment into a real world system.


Having a well-defined control of the change processes in the configuration management in the software development life cycle, before and after being put into production environment, implies an effort of development personnel and an additional cost in the maintenance system. The objective of this paper is to establish the guidelines to regulate the activities and tasks during the process of development and maintenance of software-based systems in order to control the changes, integrity and traceability of its configuration, for this purpose it is taken as a reference the peruvian technical standards NTP-ISO/IEC 12207: 2016 for Software and systems engineering, NTPISO/IEC 27001: 2014 for Information security management systems and the methodology MÉTRICA version 3 for the systematization of life cycle of the software activities. The proposal defines the roles and responsibilities, the activities of each thread and the use of control templates, the validation of the was achieved through the analysis of three software systems with results that show that there is a better organization in the development, maintenance, control of the versions of the elements and the percentage of error in the configuration.


Author(s):  
Darren Dalcher

This chapter highlights the pervasiveness of change in most developed systems, and the resulting implications on development practice. A key problem with developed software systems is the focus on discrete one-off development. Emphasizing continuity and evolution requires a way of distinguishing between systems that can be assumed to remain stable and those that continuously “live” and evolve in their environment. Developing systems that are expected to evolve calls for a dynamic activity of design that is responsive to changes in the environment. The chapter concludes by discussing the role of design in such environments and characterizing design as a complex, responsive and negotiated search for an acceptable, yet changeable trade-off. This is taken forward by highlighting the implications for the adoption of adaptive design in dynamic environments, thereby justifying the move from discrete and project-based software engineering to a more strategic, continuous and evolving discipline of adaptive design.


2019 ◽  
Vol 124 (2) ◽  
pp. 245-253 ◽  
Author(s):  
Tom De Mil ◽  
Wannes Hubau ◽  
Bhély Angoboy Ilondea ◽  
Mirvia Angela Rocha Vargas ◽  
Pascal Boeckx ◽  
...  

Abstract Background and Aims Wood traits are increasingly being used to document tree performance. In the Congo Basin, however, weaker seasonality causes asynchrony of wood traits between trees. Here, we monitor growth and phenology data to date the formation of traits. Methods For two seasons, leaf and cambial phenology were monitored on four Terminalia superba trees (Mayombe) using cameras, cambial pinning and dendrometers. Subsequently, vessel lumen and parenchyma fractions as well as high-resolution isotopes (δ13C/δ18O) were quantified on the formed rings. All traits were dated and related to weather data. Key Results We observed between-tree differences in green-up of 45 d, with trees flushing before and after the rainy season. The lag between green-up and onset of xylem formation was 59 ± 21 d. The xylem growing season lasted 159 ± 17 d with between-tree differences of up to 53 d. Synchronized vessel, parenchyma and δ13C profiles were related to each other. Only parenchyma fraction and δ13C were correlated to weather variables, whereas the δ18O pattern showed no trend. Conclusions Asynchrony of leaf and cambial phenology complicates correct interpretation of environmental information recorded in wood. An integrated approach including high-resolution measurements of growth, stable isotopes and anatomical features allows exact dating of the formation of traits. This methodology offers a means to explore the asynchrony of growth in a rainforest and contribute to understanding this aspect of forest resilience.


Sign in / Sign up

Export Citation Format

Share Document