This research recognizes the limitation and challenges of adaptingand applying Process Mining as a powerful tool and technique in theHypothetical Software Architecture (SA) Evaluation Framework with thefeatures and fa...This research recognizes the limitation and challenges of adaptingand applying Process Mining as a powerful tool and technique in theHypothetical Software Architecture (SA) Evaluation Framework with thefeatures and factors of lightweightness. Process mining deals with the largescalecomplexity of security and performance analysis, which are the goalsof SA evaluation frameworks. As a result of these conjectures, all ProcessMining researches in the realm of SA are thoroughly reviewed, and ninechallenges for Process Mining Adaption are recognized. Process mining isembedded in the framework and to boost the quality of the SA model forfurther analysis, the framework nominates architectural discovery algorithmsFlower, Alpha, Integer Linear Programming (ILP), Heuristic, and Inductiveand compares them vs. twelve quality criteria. Finally, the framework’s testingon three case studies approves the feasibility of applying process mining toarchitectural evaluation. The extraction of the SA model is also done by thebest model discovery algorithm, which is selected by intensive benchmarkingin this research. This research presents case studies of SA in service-oriented,Pipe and Filter, and component-based styles, modeled and simulated byHierarchical Colored Petri Net techniques based on the cases’ documentation.Processminingwithin this framework dealswith the system’s log files obtainedfrom SA simulation. Applying process mining is challenging, especially for aSA evaluation framework, as it has not been done yet. The research recognizesthe problems of process mining adaption to a hypothetical lightweightSA evaluation framework and addresses these problems during the solutiondevelopment.展开更多
Computer software has been becoming more and more c om plex with the development of hardware. Thus, how to efficiently develop extensib le, maintainable and adaptable software occurs to be an urgent problem. The comp ...Computer software has been becoming more and more c om plex with the development of hardware. Thus, how to efficiently develop extensib le, maintainable and adaptable software occurs to be an urgent problem. The comp onent-based software development technique is a better method to solve the prob lem. In this paper, we first discuss the concept, description method and some fa miliar styles of software architecture, and then analyze the merits of using the software architecture to guide the software development. We also present a gene ral design method for component. Its applications are finally provided.展开更多
Software architectures shift the focus of developers from lines-of-code to coarser-grained architectural elements and their overall interconnection structure. There are, however, many features of the distributed softw...Software architectures shift the focus of developers from lines-of-code to coarser-grained architectural elements and their overall interconnection structure. There are, however, many features of the distributed software that make the developing methods of distributed software quite different from the traditional ways. Furthermore, the traditional centralized ways with fixed interfaces cannot adapt to the flexible requirements of distributed software. In this paper, the attributed grammar (AG) is extended to refine the characters of distributed software, and a distributed software architecture description language (DSADL) based on attributed grammar is introduced, and then a model of integrated environment for software architecture design is proposed. It can be demonstrated by the practice that DSADL can help the programmers to analyze and design distributed software effectively, so the efficiency of the development can be improved greatly.展开更多
Reflection mechanism for reuse software architecture (RMRSA) divides a software architecture into base-level architecture and meta-level architecture logically. Base-level architecture is the ordinary architecture; ...Reflection mechanism for reuse software architecture (RMRSA) divides a software architecture into base-level architecture and meta-level architecture logically. Base-level architecture is the ordinary architecture; meta-level represents and manipulates the reusable meta-information of base-level architecture explicitly. Through reflection, the modification of meta-level architecture will result in the modification of the architecture in base-level. Then we can gain a new base-level architecture design. In this paper, we use π-calculus to define the constituents and their interaction processes of RMRSA, by these definition, we specify the business function in base-level at runtime, and illustrate the reflection mechanism between the base-level architecture and meta-level architecture.展开更多
To better evaluate the quality of software architecture,a metrics suite is proposed to measure the coupling of software architecture models,in which CBC is used to measure the coupling between components,CBCC is used ...To better evaluate the quality of software architecture,a metrics suite is proposed to measure the coupling of software architecture models,in which CBC is used to measure the coupling between components,CBCC is used to measure the coupling of transferring message between components,CBCCT is used to measure the coupling of software architecture,WCBCC is used to measure the coupling of transferring message with weight between components,and WCBCCT is used to measure the coupling of message transmission with weight in the whole software architecture. The proposed algorithm for the coupling metrics is applied to the design of serve software architecture. Analysis of an example validates the feasibility of this metrics suite.展开更多
Software today often consists of a large number of components offering and requiring services. Such components should be deployed into embedded, pervasive environments, and several deployment architectures are typical...Software today often consists of a large number of components offering and requiring services. Such components should be deployed into embedded, pervasive environments, and several deployment architectures are typically possible. These deployment architectures can have significant impacts on system reliability. However, existing reliability estimation approaches are typically limited to certain classes or exclusively concentrate on software reliability, neglecting the influence of hardware resources, software deployment and architectural styles. The selection of an appropriate architectural style has a significant impact on system reliability of the target system. Therefore, we propose a novel software architecture (SA) based reliability estimation model incorporating software deployment and architectural style. On the basis of two architectural styles, we design influence factors and present a new approach to calculate system reliability. Experimental results show that influence factors provide an accurate and simple method of reflecting architectural styles and software deployment on system reliability. It is important for considering the influence of other architectural styles on system reliability in large scale deployment environment.展开更多
With the rapid development of network technology, it is increasingly important to dynamically upgrade router’s software. In this paper, the authors present new software architecture to be applied to extensible servic...With the rapid development of network technology, it is increasingly important to dynamically upgrade router’s software. In this paper, the authors present new software architecture to be applied to extensible services router. The novel feature of the architecture is the ability to dynamically load and configure extensible components at run time. Each component implements one function such as packets classification, packets scheduling and routing protocol. We design a simple configuration language (ESRCL) to configure and manage the router. The architecture can be configured according to the packet flows. At present, a prototype system based on highly efficient router operating system (HEROS) has been finished.展开更多
In this paper,a case study is carried out in comparison of pipes-and-filters architecture and batch sequential architecture.Concepts on a data flow system and the two mentioned architectures are presented.A Java templ...In this paper,a case study is carried out in comparison of pipes-and-filters architecture and batch sequential architecture.Concepts on a data flow system and the two mentioned architectures are presented.A Java template class design in implementing the "pipes" and "filters" in the pipes-and-filters architecture is given at the design level.Finally,this paper uses a concrete example to show how to use Java to implement the pipesand-filters architecture.Using varied amount of data from text files,performance and memory usage of the two architectures are illustrated.展开更多
As a new software paradigm evolved by the Internet, Internetware brings many challenges for the traditional software development methods and techniques. Though architecture-based component composition (ABC) approach...As a new software paradigm evolved by the Internet, Internetware brings many challenges for the traditional software development methods and techniques. Though architecture-based component composition (ABC) approach is originated in the traditional software paradigm, it supports the engineering of Internetware effectively due to its philosophy, rationales and mechanisms. ABC has three major contributions to the en- gineering of Internetware in detail. First, the feature oriented domain modeling method can structure the "disordered" "software entities" to "ordered Internetware" bottom-up in the problem space. Second, the architecture centric design and analysis method can support the development of self-adaptive Internetware. Third, the component operating platform is a reflective and self-adaptive middleware that not only provides Internetware with a powerful and flexible runtime infrastructure but also enables the self-adaptation of the structure and individual entities of Internetware.展开更多
Being one of the basic features of Internetware, self-adaptation means that the software system can monitor its runtime state and behavior and adjust them when necessary according to pre-defined policies. Focusing on ...Being one of the basic features of Internetware, self-adaptation means that the software system can monitor its runtime state and behavior and adjust them when necessary according to pre-defined policies. Focusing on the three fundamental issues of self-adaptation, including the scope, operability and trustworthiness, a software architecture (SA) centric approach for Internetware's self-adaptation is presented in this paper. All of the self-adaptive actions, i.e. monitoring, analyzing, planning and executing, are performed based on SA. In detail, runtime state and behavior of Internetware are represented and changed in the form of runtime soft- ware architecture. The knowledge for self-adaptation is captured, organized and reasoned in the form of SA so that automatic analysis and decision-making are achieved.展开更多
There exists a consensus that software architecture (SA) plays a central role in software development and also plays an important role in the lifecycle phases after software delivery. Particularly, SA can be used to r...There exists a consensus that software architecture (SA) plays a central role in software development and also plays an important role in the lifecycle phases after software delivery. Particularly, SA can be used to reduce the great difficulty and cost of software maintenance and evolution. In this paper, runtime software architecture (RSA) based on reflective middleware is proposed to support architecture-based software maintenance and evolution. In this approach, the actual states and behaviors of the runtime system can be observed and manipulated in a consistent and understandable way through its architectural view. Being an accurate, up-to-date, semantic and operable view of SA, RSA looks components and connectors as white-box entities to accurately and thoroughly describe the runtime system, extends traditional architecture description languages to formally describe itself and naturally inherit plentiful semantics in traditional views of SA, and utilizes reflective middleware to observe and manipulate the runtime system. In order to demonstrate the feasibility of this approach, a reflective J2EE application server, called PKUAS, is implemented to observe and manipulate the components, connectors and constraints in the runtime system. Finally, the performance evaluation proves that making RSA explicit and operable at runtime has little effect on the runtime system.展开更多
The three-dimensional discontinuous deformation analysis(3D-DDA) is a promising numerical method for both static and dynamic analyses of rock systems. Lacking mature software, its popularity is far behind its ability....The three-dimensional discontinuous deformation analysis(3D-DDA) is a promising numerical method for both static and dynamic analyses of rock systems. Lacking mature software, its popularity is far behind its ability. To address this problem, this paper presents a new software architecture from a software engineering viewpoint. Based on 3D-DDA characteristics, the implementation of the proposed architecture has the following merits. Firstly, the software architecture separates data, computing, visualization, and signal control into individual modules. Secondly, data storage and parallel access are fully considered for different conditions. Thirdly, an open computing framework is provided which supports most numerical computing methods; common tools for equation solving and parallel computing are provided for further development. Fourthly, efficient visualization functions are provided by integrating a variety of visualization algorithms. A user-friendly graphical user interface is designed to improve the user experience. Finally, through a set of examples, the software is verified against both analytical solutions and the original code by Dr. Shi Gen Hua.展开更多
Architecture description languages play an important role in modelling software architectures. However, many architecture description languages (ADLs) are either unable to deal with the verification and dynamic chan...Architecture description languages play an important role in modelling software architectures. However, many architecture description languages (ADLs) are either unable to deal with the verification and dynamic changes directly or too formal to be understood and manipulated. This paper presents xBreeze/ADL, a novel extensible markup language (XML)-based verification and evolution supported architecture description language, which is specifically designed for modelling the software architecture of large, complex systems. Five principle design goals are 1) to separate template from instance to define a loose coupling structure, 2) to present virtual and concrete link to identify service execution flow, 3) to clearly represent component behaviour to specify architecture semantics, 4) to introduce multi-dimension restrictions to define the architecture constraints, and 5) to use the graph transformation theory to implement the architecture configuration management (i.e., reconfiguration and verification). Various advanced features of xBreeze/ADL are illustrated by using an example on online movie ticket booking system.展开更多
The technologies of software architecture are introduced, and the software analysis-and-design process is divided into requirement analysis, software architecture design and system design. Using these technologies, a ...The technologies of software architecture are introduced, and the software analysis-and-design process is divided into requirement analysis, software architecture design and system design. Using these technologies, a model of architecture-centric software analysis and design process(ACSADP) is proposed. Meanwhile, with regard to the completeness, consistency and correctness between the software requirements and design results, the theories of function and process control are applied to ACSADP. Finally, a model of integrated development environnment (IDE) for ACSADP is propcsed. It can be demonstrated by the practice that the model of ACSADP can aid developer to manage software process effectively and improve the quality of software analysis and design.展开更多
In this paper, wc propose a new method to estimate the relationship between software reliability and software development cost taking into account the complexity for developing the software system and the size of soft...In this paper, wc propose a new method to estimate the relationship between software reliability and software development cost taking into account the complexity for developing the software system and the size of software intended to develop during the implementation phase of the software development lifc cycle. On the basis of estimated relationship, a set of empirical data has been used to validate the correctness of the proposed model by comparing the result with the other existing models. The outcome of this work shows that the method proposed here is a relatively straightforward one in formulating the relationship between reliability and cost during implementation phase.展开更多
Magnetic resonance-guided focused ultrasound surgery (MRgFUS) is an emerging, non-invasive hyperthermia technology which can be used for the treatment of benign and malignant tumours, in conjunction with intracranial ...Magnetic resonance-guided focused ultrasound surgery (MRgFUS) is an emerging, non-invasive hyperthermia technology which can be used for the treatment of benign and malignant tumours, in conjunction with intracranial neurological diseases. To treat different indications, it is often necessary to design special focused ultrasound devices and treatment plans, which poses great challenges and results in substantial costs during software development. This article introduces a general software architecture that can be applied to three different focused ultrasound devices for the treatment of uterine fibroids, breast fibroids, and pain palliation of bone metastases, respectively, and can be integrated with GE Discovery or Signa MRI scanners and Xingaoyi BroadScan MRI scanners. Finally, the proposed software architecture was shown to possess desirable universality and safety through various tests and animal experimental studies.展开更多
Breeze/architecture description language(ADL), is an eX tensible markup language(XML) based architecture description language which is used to model software systems at the architecture level. Though Breeze/ADL pr...Breeze/architecture description language(ADL), is an eX tensible markup language(XML) based architecture description language which is used to model software systems at the architecture level. Though Breeze/ADL provides an appropriate basis for architecture modelling, it can neither analyse nor evaluate the architecture reliability. In this paper, we propose a Breeze/ADL based strategy which, by combining generalized stochastic Petri net(GSPN) and tools for reliability analysis, supports architecture reliability modelling and evaluation. This work expands the idea in three directions: Firstly, we give a Breeze/ADL reliability model in which we add error attributes to Breeze/ADL error model for capturing architecture error information, and at the same time perform the system error state transition through the Breeze/ADL production. Secondly, we present how to map a Breeze/ADL reliability model to a GSPN model, which in turn can be used for reliability analysis. The other task is to develop a Breeze/ADL reliability analysis modelling tool–EXGSPN(Breeze/ADL reliability analysis modelling tool), and combine it with platform independent petri net editor 2(PIPE2) to carry out a reliability assessment.Abstract: Breeze/architecture description language (ADL), is an eXtensible markup language (XML) based architecture description language which is used to model software systems at the architecture level. Though Breeze/ADL provides an appropriate basis for architecture modelling, it can neither analyse nor evaluate the architecture reliability. In this paper, we propose a Breeze/ADL based strategy which, by combining generalized stochastic Petri net (GSPN) and tools for reliability analysis, supports architecture reliability modelling and evaluation. This work expands the idea in three directions: Firstly, we give a Breeze/ADL reliability model in which we add error attributes to Breeze/ADL error model for capturing architecture error information, and at the same time perform the system error state transition through the Breeze/ADL production. Secondly, we present how to map a Breeze/ADL reliability model to a GSPN model, which in turn can be used for reliability analysis. The other task is to develop a Breeze/ADL reliability analysis modelling tool-EXGSPN (Breeze/ADL reliability analysis modelling tool), and combine it with platform independent petri net editor 2 (PIPE2) to carry out a reliability assessment.展开更多
This paper presents a methodology driven by database constraints for designing and developing(database)software applications.Much needed and with excellent results,this paradigm guarantees the highest possible quality...This paper presents a methodology driven by database constraints for designing and developing(database)software applications.Much needed and with excellent results,this paradigm guarantees the highest possible quality of the managed data.The proposed methodology is illustrated with an easy to understand,yet complex medium-sized genealogy software application driven by more than 200 database constraints,which fully meets such expectations.展开更多
With the continuous development and evolvement of Internet of Things (IoT), monolithic application becomes much larger in scale and even more complex in structure. This leads to poor scalability, extensibility and m...With the continuous development and evolvement of Internet of Things (IoT), monolithic application becomes much larger in scale and even more complex in structure. This leads to poor scalability, extensibility and maintainability. In response to those challenges, microservice architecture has been introduced in the field of IoT application, due to its flexibility, lightweight and loose coupling. However, the existing loT framework of microservice mainly focus on a specific domain, therefore, this greatly limits its application. In this paper, we propose a general microservice system framework for the loT application, which is a better scalable, extendable and maintainable architecture. We introduce its system design and related microservices, and emphasize on core service and device communication from service layer to physical layer. It has better capacity to support interoperability and accommodate heterogeneous objects. In addition, this framework can easily achieve more application integration such as automation, intelligence, Geo service and Big Data.展开更多
In this paper,we consider a multi-UAV surveillance scenario where a team of unmanned aerial vehicles(UAVs)synchronously covers an area for monitoring the ground conditions.In this scenario,we adopt the leader-follower...In this paper,we consider a multi-UAV surveillance scenario where a team of unmanned aerial vehicles(UAVs)synchronously covers an area for monitoring the ground conditions.In this scenario,we adopt the leader-follower control mode and propose a modified Lyapunov guidance vector field(LGVF)approach for improving the precision of surveillance trajectory tracking.Then,in order to adopt to poor communication conditions,we propose a prediction-based synchronization method for keeping the formation consistently.Moreover,in order to adapt the multi-UAV system to dynamic and uncertain environment,this paper proposes a hierarchical dynamic task scheduling architecture.In this architecture,we firstly classify all the algorithms that perform tasks according to their functions,and then modularize the algorithms based on plugin technology.Afterwards,integrating the behavior model and plugin technique,this paper designs a three-layer control flow,which can efficiently achieve dynamic task scheduling.In order to verify the effectiveness of our architecture,we consider a multi-UAV traffic monitoring scenario and design several cases to demonstrate the online adjustment from three levels,respectively.展开更多
基金This paper is supported by Research Grant Number:PP-FTSM-2022.
文摘This research recognizes the limitation and challenges of adaptingand applying Process Mining as a powerful tool and technique in theHypothetical Software Architecture (SA) Evaluation Framework with thefeatures and factors of lightweightness. Process mining deals with the largescalecomplexity of security and performance analysis, which are the goalsof SA evaluation frameworks. As a result of these conjectures, all ProcessMining researches in the realm of SA are thoroughly reviewed, and ninechallenges for Process Mining Adaption are recognized. Process mining isembedded in the framework and to boost the quality of the SA model forfurther analysis, the framework nominates architectural discovery algorithmsFlower, Alpha, Integer Linear Programming (ILP), Heuristic, and Inductiveand compares them vs. twelve quality criteria. Finally, the framework’s testingon three case studies approves the feasibility of applying process mining toarchitectural evaluation. The extraction of the SA model is also done by thebest model discovery algorithm, which is selected by intensive benchmarkingin this research. This research presents case studies of SA in service-oriented,Pipe and Filter, and component-based styles, modeled and simulated byHierarchical Colored Petri Net techniques based on the cases’ documentation.Processminingwithin this framework dealswith the system’s log files obtainedfrom SA simulation. Applying process mining is challenging, especially for aSA evaluation framework, as it has not been done yet. The research recognizesthe problems of process mining adaption to a hypothetical lightweightSA evaluation framework and addresses these problems during the solutiondevelopment.
文摘Computer software has been becoming more and more c om plex with the development of hardware. Thus, how to efficiently develop extensib le, maintainable and adaptable software occurs to be an urgent problem. The comp onent-based software development technique is a better method to solve the prob lem. In this paper, we first discuss the concept, description method and some fa miliar styles of software architecture, and then analyze the merits of using the software architecture to guide the software development. We also present a gene ral design method for component. Its applications are finally provided.
基金Project (No. 2000K08-G12) supported by Shaanxi Provincial Science and Technology Development Plan, China
文摘Software architectures shift the focus of developers from lines-of-code to coarser-grained architectural elements and their overall interconnection structure. There are, however, many features of the distributed software that make the developing methods of distributed software quite different from the traditional ways. Furthermore, the traditional centralized ways with fixed interfaces cannot adapt to the flexible requirements of distributed software. In this paper, the attributed grammar (AG) is extended to refine the characters of distributed software, and a distributed software architecture description language (DSADL) based on attributed grammar is introduced, and then a model of integrated environment for software architecture design is proposed. It can be demonstrated by the practice that DSADL can help the programmers to analyze and design distributed software effectively, so the efficiency of the development can be improved greatly.
基金Supported by the National Natural Science Foundation of China (60473066)Young Outstanding Talent Foundation of Hubei Province,China(2003ABB004)
文摘Reflection mechanism for reuse software architecture (RMRSA) divides a software architecture into base-level architecture and meta-level architecture logically. Base-level architecture is the ordinary architecture; meta-level represents and manipulates the reusable meta-information of base-level architecture explicitly. Through reflection, the modification of meta-level architecture will result in the modification of the architecture in base-level. Then we can gain a new base-level architecture design. In this paper, we use π-calculus to define the constituents and their interaction processes of RMRSA, by these definition, we specify the business function in base-level at runtime, and illustrate the reflection mechanism between the base-level architecture and meta-level architecture.
基金Sponsored by the Science and Technology Department Term of Education of Heilongjiang Province(Grant No. 10541098)
文摘To better evaluate the quality of software architecture,a metrics suite is proposed to measure the coupling of software architecture models,in which CBC is used to measure the coupling between components,CBCC is used to measure the coupling of transferring message between components,CBCCT is used to measure the coupling of software architecture,WCBCC is used to measure the coupling of transferring message with weight between components,and WCBCCT is used to measure the coupling of message transmission with weight in the whole software architecture. The proposed algorithm for the coupling metrics is applied to the design of serve software architecture. Analysis of an example validates the feasibility of this metrics suite.
文摘Software today often consists of a large number of components offering and requiring services. Such components should be deployed into embedded, pervasive environments, and several deployment architectures are typically possible. These deployment architectures can have significant impacts on system reliability. However, existing reliability estimation approaches are typically limited to certain classes or exclusively concentrate on software reliability, neglecting the influence of hardware resources, software deployment and architectural styles. The selection of an appropriate architectural style has a significant impact on system reliability of the target system. Therefore, we propose a novel software architecture (SA) based reliability estimation model incorporating software deployment and architectural style. On the basis of two architectural styles, we design influence factors and present a new approach to calculate system reliability. Experimental results show that influence factors provide an accurate and simple method of reflecting architectural styles and software deployment on system reliability. It is important for considering the influence of other architectural styles on system reliability in large scale deployment environment.
文摘With the rapid development of network technology, it is increasingly important to dynamically upgrade router’s software. In this paper, the authors present new software architecture to be applied to extensible services router. The novel feature of the architecture is the ability to dynamically load and configure extensible components at run time. Each component implements one function such as packets classification, packets scheduling and routing protocol. We design a simple configuration language (ESRCL) to configure and manage the router. The architecture can be configured according to the packet flows. At present, a prototype system based on highly efficient router operating system (HEROS) has been finished.
文摘In this paper,a case study is carried out in comparison of pipes-and-filters architecture and batch sequential architecture.Concepts on a data flow system and the two mentioned architectures are presented.A Java template class design in implementing the "pipes" and "filters" in the pipes-and-filters architecture is given at the design level.Finally,this paper uses a concrete example to show how to use Java to implement the pipesand-filters architecture.Using varied amount of data from text files,performance and memory usage of the two architectures are illustrated.
基金This work was supported by the National Basic Research Program of China (973) (Grant No. 2002CB312003) the National Natural Science Foundation of China (Grant Nos. 60233010, 90612011, 90412011, 60403030, 60303004)the Natural Science Foundation of Beijing (Grant No. 4052018).
文摘As a new software paradigm evolved by the Internet, Internetware brings many challenges for the traditional software development methods and techniques. Though architecture-based component composition (ABC) approach is originated in the traditional software paradigm, it supports the engineering of Internetware effectively due to its philosophy, rationales and mechanisms. ABC has three major contributions to the en- gineering of Internetware in detail. First, the feature oriented domain modeling method can structure the "disordered" "software entities" to "ordered Internetware" bottom-up in the problem space. Second, the architecture centric design and analysis method can support the development of self-adaptive Internetware. Third, the component operating platform is a reflective and self-adaptive middleware that not only provides Internetware with a powerful and flexible runtime infrastructure but also enables the self-adaptation of the structure and individual entities of Internetware.
基金the National Key Basic Research and Development Program of China (973) (Grant No.2002CB312000)the National Natural Science Foundation of China (Grant No. 90612011)
文摘Being one of the basic features of Internetware, self-adaptation means that the software system can monitor its runtime state and behavior and adjust them when necessary according to pre-defined policies. Focusing on the three fundamental issues of self-adaptation, including the scope, operability and trustworthiness, a software architecture (SA) centric approach for Internetware's self-adaptation is presented in this paper. All of the self-adaptive actions, i.e. monitoring, analyzing, planning and executing, are performed based on SA. In detail, runtime state and behavior of Internetware are represented and changed in the form of runtime soft- ware architecture. The knowledge for self-adaptation is captured, organized and reasoned in the form of SA so that automatic analysis and decision-making are achieved.
文摘There exists a consensus that software architecture (SA) plays a central role in software development and also plays an important role in the lifecycle phases after software delivery. Particularly, SA can be used to reduce the great difficulty and cost of software maintenance and evolution. In this paper, runtime software architecture (RSA) based on reflective middleware is proposed to support architecture-based software maintenance and evolution. In this approach, the actual states and behaviors of the runtime system can be observed and manipulated in a consistent and understandable way through its architectural view. Being an accurate, up-to-date, semantic and operable view of SA, RSA looks components and connectors as white-box entities to accurately and thoroughly describe the runtime system, extends traditional architecture description languages to formally describe itself and naturally inherit plentiful semantics in traditional views of SA, and utilizes reflective middleware to observe and manipulate the runtime system. In order to demonstrate the feasibility of this approach, a reflective J2EE application server, called PKUAS, is implemented to observe and manipulate the components, connectors and constraints in the runtime system. Finally, the performance evaluation proves that making RSA explicit and operable at runtime has little effect on the runtime system.
基金supported by the National Natural Science Foundation of China(Grant No.61471338)the Knowledge Innovation Program of the Chinese Academy of Sciences,Youth Innovation Promotion Association CAS,President Fund of UCASCRSRI Open Research Program(Grant No.CKWV2015217/KY)
文摘The three-dimensional discontinuous deformation analysis(3D-DDA) is a promising numerical method for both static and dynamic analyses of rock systems. Lacking mature software, its popularity is far behind its ability. To address this problem, this paper presents a new software architecture from a software engineering viewpoint. Based on 3D-DDA characteristics, the implementation of the proposed architecture has the following merits. Firstly, the software architecture separates data, computing, visualization, and signal control into individual modules. Secondly, data storage and parallel access are fully considered for different conditions. Thirdly, an open computing framework is provided which supports most numerical computing methods; common tools for equation solving and parallel computing are provided for further development. Fourthly, efficient visualization functions are provided by integrating a variety of visualization algorithms. A user-friendly graphical user interface is designed to improve the user experience. Finally, through a set of examples, the software is verified against both analytical solutions and the original code by Dr. Shi Gen Hua.
基金supported by National Natural Science Foundation of China(No.71473018)
文摘Architecture description languages play an important role in modelling software architectures. However, many architecture description languages (ADLs) are either unable to deal with the verification and dynamic changes directly or too formal to be understood and manipulated. This paper presents xBreeze/ADL, a novel extensible markup language (XML)-based verification and evolution supported architecture description language, which is specifically designed for modelling the software architecture of large, complex systems. Five principle design goals are 1) to separate template from instance to define a loose coupling structure, 2) to present virtual and concrete link to identify service execution flow, 3) to clearly represent component behaviour to specify architecture semantics, 4) to introduce multi-dimension restrictions to define the architecture constraints, and 5) to use the graph transformation theory to implement the architecture configuration management (i.e., reconfiguration and verification). Various advanced features of xBreeze/ADL are illustrated by using an example on online movie ticket booking system.
文摘The technologies of software architecture are introduced, and the software analysis-and-design process is divided into requirement analysis, software architecture design and system design. Using these technologies, a model of architecture-centric software analysis and design process(ACSADP) is proposed. Meanwhile, with regard to the completeness, consistency and correctness between the software requirements and design results, the theories of function and process control are applied to ACSADP. Finally, a model of integrated development environnment (IDE) for ACSADP is propcsed. It can be demonstrated by the practice that the model of ACSADP can aid developer to manage software process effectively and improve the quality of software analysis and design.
文摘In this paper, wc propose a new method to estimate the relationship between software reliability and software development cost taking into account the complexity for developing the software system and the size of software intended to develop during the implementation phase of the software development lifc cycle. On the basis of estimated relationship, a set of empirical data has been used to validate the correctness of the proposed model by comparing the result with the other existing models. The outcome of this work shows that the method proposed here is a relatively straightforward one in formulating the relationship between reliability and cost during implementation phase.
基金the National Natural Science Foundation of China (Nos. 81727806 and 11774231)the National Key Research and Development Program of Ministry of Science and Technology (No. 2017YFC0108900)+1 种基金the Shanghai Municipal Education Commission—Gaofeng Clinical Medicine Grant Support—Gainers from Shanghai Jiao Tong University School of Medicine (No. 20152230)the Emerging Frontier Technology Joint Research Program of Shanghai Shen-Kang Hospital Development Center (No. SHDC2017127)。
文摘Magnetic resonance-guided focused ultrasound surgery (MRgFUS) is an emerging, non-invasive hyperthermia technology which can be used for the treatment of benign and malignant tumours, in conjunction with intracranial neurological diseases. To treat different indications, it is often necessary to design special focused ultrasound devices and treatment plans, which poses great challenges and results in substantial costs during software development. This article introduces a general software architecture that can be applied to three different focused ultrasound devices for the treatment of uterine fibroids, breast fibroids, and pain palliation of bone metastases, respectively, and can be integrated with GE Discovery or Signa MRI scanners and Xingaoyi BroadScan MRI scanners. Finally, the proposed software architecture was shown to possess desirable universality and safety through various tests and animal experimental studies.
基金supported by Jilin Province Science Foundation for Youths(No.20150520060JH)
文摘Breeze/architecture description language(ADL), is an eX tensible markup language(XML) based architecture description language which is used to model software systems at the architecture level. Though Breeze/ADL provides an appropriate basis for architecture modelling, it can neither analyse nor evaluate the architecture reliability. In this paper, we propose a Breeze/ADL based strategy which, by combining generalized stochastic Petri net(GSPN) and tools for reliability analysis, supports architecture reliability modelling and evaluation. This work expands the idea in three directions: Firstly, we give a Breeze/ADL reliability model in which we add error attributes to Breeze/ADL error model for capturing architecture error information, and at the same time perform the system error state transition through the Breeze/ADL production. Secondly, we present how to map a Breeze/ADL reliability model to a GSPN model, which in turn can be used for reliability analysis. The other task is to develop a Breeze/ADL reliability analysis modelling tool–EXGSPN(Breeze/ADL reliability analysis modelling tool), and combine it with platform independent petri net editor 2(PIPE2) to carry out a reliability assessment.Abstract: Breeze/architecture description language (ADL), is an eXtensible markup language (XML) based architecture description language which is used to model software systems at the architecture level. Though Breeze/ADL provides an appropriate basis for architecture modelling, it can neither analyse nor evaluate the architecture reliability. In this paper, we propose a Breeze/ADL based strategy which, by combining generalized stochastic Petri net (GSPN) and tools for reliability analysis, supports architecture reliability modelling and evaluation. This work expands the idea in three directions: Firstly, we give a Breeze/ADL reliability model in which we add error attributes to Breeze/ADL error model for capturing architecture error information, and at the same time perform the system error state transition through the Breeze/ADL production. Secondly, we present how to map a Breeze/ADL reliability model to a GSPN model, which in turn can be used for reliability analysis. The other task is to develop a Breeze/ADL reliability analysis modelling tool-EXGSPN (Breeze/ADL reliability analysis modelling tool), and combine it with platform independent petri net editor 2 (PIPE2) to carry out a reliability assessment.
文摘This paper presents a methodology driven by database constraints for designing and developing(database)software applications.Much needed and with excellent results,this paradigm guarantees the highest possible quality of the managed data.The proposed methodology is illustrated with an easy to understand,yet complex medium-sized genealogy software application driven by more than 200 database constraints,which fully meets such expectations.
文摘With the continuous development and evolvement of Internet of Things (IoT), monolithic application becomes much larger in scale and even more complex in structure. This leads to poor scalability, extensibility and maintainability. In response to those challenges, microservice architecture has been introduced in the field of IoT application, due to its flexibility, lightweight and loose coupling. However, the existing loT framework of microservice mainly focus on a specific domain, therefore, this greatly limits its application. In this paper, we propose a general microservice system framework for the loT application, which is a better scalable, extendable and maintainable architecture. We introduce its system design and related microservices, and emphasize on core service and device communication from service layer to physical layer. It has better capacity to support interoperability and accommodate heterogeneous objects. In addition, this framework can easily achieve more application integration such as automation, intelligence, Geo service and Big Data.
基金Project(2017YFB1301104)supported by the National Key Research and Development Program of ChinaProjects(61906212,61802426)supported by the National Natural Science Foundation of China。
文摘In this paper,we consider a multi-UAV surveillance scenario where a team of unmanned aerial vehicles(UAVs)synchronously covers an area for monitoring the ground conditions.In this scenario,we adopt the leader-follower control mode and propose a modified Lyapunov guidance vector field(LGVF)approach for improving the precision of surveillance trajectory tracking.Then,in order to adopt to poor communication conditions,we propose a prediction-based synchronization method for keeping the formation consistently.Moreover,in order to adapt the multi-UAV system to dynamic and uncertain environment,this paper proposes a hierarchical dynamic task scheduling architecture.In this architecture,we firstly classify all the algorithms that perform tasks according to their functions,and then modularize the algorithms based on plugin technology.Afterwards,integrating the behavior model and plugin technique,this paper designs a three-layer control flow,which can efficiently achieve dynamic task scheduling.In order to verify the effectiveness of our architecture,we consider a multi-UAV traffic monitoring scenario and design several cases to demonstrate the online adjustment from three levels,respectively.