LIU Chun , ZHANG Wei , ZHAO Hai-Yan , JIN Zhi
2015, 26(4):713-729. DOI: 10.13328/j.cnki.jos.004755 CSTR:
Abstract:The development of adaptive software systems is based on the adaptation requirements identification and analysis. It clarifies what changes the software will face during operation and how it needs to deal with them. However, the existing approaches pay little attention on the context analysis and lack of systematic process to identify the potential context changes. Moreover, they also lack of a framework to consider the adaptation requirements for both the known context changes and the unknown context changes. To address these issues, this paper provides an approach based on feedback control. Its basic idea is to model the adaptive software and its context as an adaptive control system, and to identify and analyze the adaptation requirements through identifying the feedback loops of such adaptive control system. By treating the context as the object to be controlled by software, it not only makes the context explicit, but also manages to define the context-aware feedback loops and the requirements-aware feedback loops to deal with the known context changes and the unknown context changes respectively. An example is used to illustrate the feasibility of the proposed approach.
HAN De-Shuai , YANG Qi-Liang , XING Jian-Chun
2015, 26(4):730-746. DOI: 10.13328/j.cnki.jos.004758 CSTR:
Abstract:Modeling and formal verification for software self-adaptation are the basis to improve development efficiency and to ensure reliability of self-adaptive software. However, there is a gap between visual modeling and formal modeling of software self-adaptation in existing work, which to some degree hampers the development of self-adaptive software. In order to systematically support modeling and formal verification for self-adaptive software, an approach called MV4SAS is proposed in this paper by incorporating the visual UML and the strictly defined timed automata. Firstly, the modeling facilities are defined by introducing new stereotypes, tagged values and constraints with UML extending mechanism, and the structural and behavioral models are created on the ground of the newly created facilities. Secondly, the behavioral model of self-adaptive software is mapped to timed automata network according to the predefined transformation algorithm, and the formal model of self-adaptive software is then created. Finally, using the model-checking tool UPPAAL, the reliability of software self-adaptation is verified with a set of predefined properties. Case study shows that the proposed approach can effectively reduce the modeling and verification complexity and improve development efficiency and reliability of self-adaptive software.
ZHOU Yu , HUANG Yan-Kai , HUANG Zhi-Qiu , WU Wei-Gang
2015, 26(4):747-759. DOI: 10.13328/j.cnki.jos.004751 CSTR:
Abstract:Consistency assurance mechanism is of particular importance for online software evolution. Different from traditional approaches based on attributed graph grammar or architectural description languages, the paper investigates the problem from the behavioral perspective and proposes a novel verification technique based on hierarchical timed automata. The approach can directly support the modeling of temporal aspects as well as the hierarchical organization of composed systems in open environments. To make it feasible for consistency verification, this paper also proposes a flattening algorithm, translating the model into a set of synchronized serial timed automata so as to be fed into third-party tool-set. An example is presented throughout the paper to illustrate the new method. Experiments are carried out to complement the discussion and demonstrate the feasibility of the proposed approach.
LI Qing-Shan , WANG Lu , CHU Hua , ZHANG Man
2015, 26(4):760-777. DOI: 10.13328/j.cnki.jos.004757 CSTR:
Abstract:To tackle problems in the dynamic evolution of distributed software systems such as the difficulty in reusing the original software units and the neglect of evolution demand caused by internal running state, this paper proposes an agent-based software adaptive dynamic evolution mechanism, by means of the environmental adaptability, the sensitivity of changes, and other characteristics of agents. By packaging software units as agents and defining evolution rules among units, original units can be reused in such a framework. Using the dynamic environment awareness method based on data push, the collaborative relationships between agents can be adjusted, and thus the evolution requirements from both the external environment and the internal state are met. With the introduction of information intermediary services, the collaboration strategy of agents based on a modified contract net is implemented such that the agents can be changed adaptively and the evolution requirement from the users demand is satisfied. The operation performance of evolution mechanism in the environment and the analysis of the related capacity indexes demonsrate the proposed evolution mechanism is applicable to the dynamic and complex distributed software systems and is an effective software adaptive dynamic evolution mechanism.
2015, 26(4):778-789. DOI: 10.13328/j.cnki.jos.004759 CSTR:
Abstract:Recent research on the self-adaptive software is one of the new focuses in the field of software engineering. The researchers pay more attention on how to improve the adaptation of software from different angles. While some focus on the architecture information, others pay more attention to the requirement. However as of now, there is little work about the process fragments reuse in self-adaptive software. This paper employs the idea of software cybernetics to study the process fragments reuse, and searches the optimal query method based on the model of controlled Markov chain. Firstly, a CMC model in the context of process fragments query is proposed, followed by subsequent optimizations. Then, a self-adaptive query strategy is addressed based on the iterative least square method. With the on-line parameter adjustment, this strategy utilizes the history of process fragment query to help people adjust strategies. The experiments in the context of Matlab and real process dataset validate the efficiency and feasibility of the model and algorithm presented in this paper.
WANG Rui-Zhi , SHI Ting-Xun , JIAO Wen-Pin
2015, 26(4):790-801. DOI: 10.13328/j.cnki.jos.004753 CSTR:
Abstract:With the emergence of intelligent sensors (referred to as motes in this paper) which have certain kinds of computing and wireless communication ability, more and more IoT (Internet of Things) applications can be implemented to sense, judge and react locally according to the environment and its changes. Because of the limitation of motes' awareness and perception scope, they need collaborative sensing to be fully aware of environment states and to better adapt to the changing environment. Traditional mote collaborative sensing mechanisms require developers to focus too much on interaction logics and can hardly adapt to the changing environment. To avoid over spending effort on interaction logics while ensuring that the projects can adapt to the unstable environment, this paper proposes a tuple space based collaborative sensing mechanism for intelligent sensors. It makes communication process completely transparent to developers. This paper also implements a simple demonstration to show how to use this mechanism to build system and how this system adapts to the environment.
WANG Ming-Liang , CHEN Bi-Huan , PENG Xin , HUANG Gang , ZHAO Wen-Yun
2015, 26(4):802-818. DOI: 10.13328/j.cnki.jos.004754 CSTR:
Abstract:With the rapid development of mobile computing techniques, mobile users can share the computing capability and resource of their mobile devices and other surrounding devices as services. However, privately-owned, resource-constrained and portable mobile devices pose challenge to the publishing and composition processes of such personal services. Specifically, such personal services may intrude the privacy of the providers, consume the constrained computing resource, and suffer failures caused by the changing network environment. To address these problems, this paper proposes a new approach for personal service publishing and mixed service composition in mobile computing environment. This approach introduces the concept of service willingness during personal service publishing, and takes into account both service willingness and service utility during service selection. Further, it presents a resource-aware heartbeat mechanism to periodically update the status of devices and services for service selection, which can also help settling service failures caused by the changing network environment. Based on JADE and OSGi, it offers an implementation framework for the proposed approach. Finally, a case study is provided to show the effectiveness of the proposed implementation framework and the rationales for considering service willingness in mobile computing environment.
GE Yong-Qi , DONG Yun-Wei , ZHANG Jian , GU Bin
2015, 26(4):819-834. DOI: 10.13328/j.cnki.jos.004752 CSTR:
Abstract:The task scheduling of energy harvesting embedded systems (EHES) should take into account the energy supply of energy harvesting unit, the energy level of energy storage unit and the energy consumption of energy dissipation unit. A real-time task can meet time constraint only if its energy constraint is satisfied. Against this background, conventional fixed-priority tasks scheduling algorithms are not suitable for EHES. A group-based adaptive task scheduling algorithm is proposed in this paper. It can select suitable task scheduling algorithm adaptively according to the non-energy constraint condition and the energy constraint condition caused by the uncertain energy supply of energy harvesting unit. In the case of non-energy constraints, the algorithm can reduce the tasks preemptions and enhance the tasks schedulability. In the case of energy constraints, the algorithm can reduce the battery-mode switches and increase the average energy level of energy storage unit, thus decrease the system energy constraint. The proposed algorithm is validated with large scale simulations comparing with other two existing classical algorithms.
HOU Fu , MAO Xin-Jun , WU Wei
2015, 26(4):835-848. DOI: 10.13328/j.cnki.jos.004760 CSTR:
Abstract:Cloud services in dynamic and open Internet environment are typically decentralized, evolving, and heterogeneous. To satisfy the dynamic application demands and to respond to the continuous changes of the cloud environment, cloud services need to be provided and managed in a flexible and adaptive way. Aiming to address the challenge, this paper proposes an approach for cloud services self-organizing management. It achieves the autonomous and flexible management of could services based on MAS that are context-aware and autonomous in behaviors. The agents governing the services interact with each other to implement self-organization in order to response to the continuous changes of cloud environment and application requirements. The paper presents the mechanisms and implementation techniques for the approach, including cloud service self-organization management mechanisms and implementation framework, cloud services aggregation and provision mechanisms and relevant core algorithms. Experiments based on public test data are performed, and the results show that the proposed approach can effectively provide and manage services under the evolving environments for various requirements of applications.
ZHANG Ming-Wei , ZHU Zhi-Liang , ZHANG Bin , ZHANG Yue-Song
2015, 26(4):849-866. DOI: 10.13328/j.cnki.jos.004750 CSTR:
Abstract:Composite services usually run on the open, ever changing and uncertain Internet. Dynamic and complex execution environments make the composite service execution uncertain and unreliable, undermining the practical usability of service composition techniques. To solve this problem, an EQ rule based composite service runtime adaptation approach is proposed from the perspective of environment analysis and modeling. In this approach, the composite service execution log data and the candidate service execution environment data are first collected. Then, the EQ rules which express the knowledge (e.g. “how the performance of one candidate service will be in specific execution environment state”) are mined. At last, the discovered EQ rules are applied to response all kinds of real time generated environment change events and to drive composite service runtime adaptation, and as such to ensure reliable execution for composite services. Experimental results show that the proposed approach can improve the quality of composite services and increase their execution stability effectively in dynamic environments.
ZHAO Xiu-Tao , ZHANG Bin , ZHANG Chang-Sheng
2015, 26(4):867-885. DOI: 10.13328/j.cnki.jos.004756 CSTR:
Abstract:Runtime adaptation of service-based software systems (SBS) in cloud environments is a key to acquire resource allocation strategy that meets global optimization goals. However, because of the complex business logic in SBS as well as cloud resource constraints, the optimal resource allocation cannot be obtained using existing methods. This paper offers an approach to meet SLA and minimize resource costs by exploiting the fact that different resource states result in different performance of component services. With the new method, the potential resource allocation for component services, together with responding performance and resource costs, are first transformed into candidate logical service sets. Then a service selection based resource allocation model for SBS in the cloud is constructed. A hybrid genetic algorithm is also designed for solving the model. Integer encoding is applied in the algorithm to improve the efficiency and an elitism maintenance strategy is introduced into selection operator to ensure its convergence to the global optimal solution. In order to improve the local search ability of genetic algorithm and speed up the convergence speed, the standard mutation operator is replaced by local search. Experiments validate the effectiveness of the proposed resource allocation model and its algorithm, and show that the presented algorithm can obtain the resource allocation strategy quickly with lower cost on large-scale problems than the branch and bound method and elitism genetic algorithm.
YANG Xiao-Yan , ZHOU Yuan , DING Zuo-Hua
2015, 26(4):886-903. DOI: 10.13328/j.cnki.jos.004761 CSTR:
Abstract:Reliability is an important index to measure the quality of software. Online predicting and improving software reliability are an important research topic. Most existing methods have the following weakness: They can neither predict software reliability on different time intervals nor locate the faulty components that cause the declining of the reliability. This paper proposes a new method to online improve reliability for service composition. The method uses the monitored failure data at ports to predict the reliabilities of service composition on different time intervals. If the predicted reliability is lower than the expected value, it then locates the faulty component that causes the declining of the reliability by using an improved spectrum-fault-localization method. The system is automatically reconfigured by adding a new component or replacing the faulty component to improve the system reliability. An online shop example is used to demonstrate the effectiveness of the proposed method.
2015, 26(4):904-926. DOI: 10.13328/j.cnki.jos.004740 CSTR:
Abstract:Spanners play important role in topology control of wireless (ad hoc, sensor) networks since they not only decrease the number of links and preserve connectivity of the final topology graph but also ensure that the cost between any pair of communication nodes is within some constant factor from the shortest possible cost. For topology control of wireless networks, a large number of spanner construction algorithms have been presented to efficiently satisfy various kinds of topological characteristics for the network design requests, such as locality, sparseness, lightness, small maximum degree, and fault-tolerance. In this comprehensive survey, the taxonomy for spanners is given according to the definition and different types of classification methods. For spanner construction, the typical centralized and localized algorithms and algorithms possessing one or more topological characteristics are analyzed, and some open problems worth of future research are proposed. The further work is to find simpler algorithms with better performance combining with novel and more practical models in wireless networks.
SUN Wen-Qi , WU Jian-Ping , LI He-Wu
2015, 26(4):927-944. DOI: 10.13328/j.cnki.jos.004812 CSTR:
Abstract:Radio spectrum is the basic and essential resource in broadband wireless networks, however it is quite scarce. With the growing scale of wireless network, the limited spectrum resource cannot meet the demand of exploding mobile traffic. To alleviate burden of networks and improve resource utilization, much efforts have been devoted to efficient mechanisms of spectrum management. This paper first summarizes the fundamental knowledge of spectrum in wireless communications and the challenges faced by spectrum utilization. It then categorizes and evaluates the existing spectrum resource management methods in broadband wireless networks from the aspects of traditional static management and prevalent dynamic management. Finally, it offers a prospect of future research development concerning frameworks and key issues towards dynamic spectrum management.
HUANG Liu-Sheng , TIAN Miao-Miao , HUANG He
2015, 26(4):945-959. DOI: 10.13328/j.cnki.jos.004794 CSTR:
Abstract:Big data is a type of data set with rich information and significant value. To avoid leakage of user privacy during big data mining, some necessary measures on big data need to be placed. Since big data has huger volume, more complex structure and less tolerance of delays, traditional privacy preserving technologies are mostly unsuitable for preserving privacy of big data. From a cryptographic perspective, this paper surveys the recent progress on privacy preserving technologies for big data. Three basic problems in big data, namely storage, search and computation, are investigated, and their research background and main research directions are elaborated. The latest research progress of privacy preserving technologies for these problems is also presented. Finally, some important directions of privacy preserving technologies for big data are suggested.
ZHOU Shi-Jie , ZHANG Wen-Qing , LUO Jia-Qing
2015, 26(4):960-976. DOI: 10.13328/j.cnki.jos.004804 CSTR:
Abstract:This survey investigates different approaches proposed in the literature for addressing the privacy issues derived from the radio-frequency identification (RFID) and RFID based applications. The concep of RFID privacy and the vulnerability of privacy in RFID are both discussed. A detail discussion about the classification of RFID privacy is provided. Typical RFID privacy attacks, tracking attack and inventorying attack are also addressed. Finally, concentrating on the existing solutions for RFID privacy, and elaborates how the privacy in RFID and RFID based applications can be assured. The main goal of this survey is to give a concise classification of the most relevant privacy protection solutions applied to RFID privacy. For purpose of brevity and clarity, only the most relevant approaches are selected and addressed.