Software architecture is the highest-level abstraction of a system. It provides a model of the large-scale structural properties of systems. Recently, software architecture has been an important research sub-field of ...Software architecture is the highest-level abstraction of a system. It provides a model of the large-scale structural properties of systems. Recently, software architecture has been an important research sub-field of software engineering. In this paper,our research work focus on refinement methods of software architecture. By studying the several refinement methods for software architectural design,we present a component-based refinement method that refines an architectural design by replacing a component's static semanucs to its dynamic semantics.展开更多
How to compose prefabricated components is a key issue in component-based reuse. Research on Software Architecture (SA) and Component-based Software Development (CBSD) provides two hopeful solutions from different per...How to compose prefabricated components is a key issue in component-based reuse. Research on Software Architecture (SA) and Component-based Software Development (CBSD) provides two hopeful solutions from different perspectives. SA provides a top-down approach to realizing component-based reuse. However, it pays insufficient attention to the refinement and implementation of the architectural descriptions, and does not provide the necessary capability to automate the transformation or composition to form a final executable application. CBSD provides a bottom-up way by using existing middleware infrastructures. However, these technologies do not take into account the systematic methodology that can guide the CBSD process, especially the component composition at higher abstract levels. We argue that it is a natural solution to combine these two approaches.In this paper, an architecture-based component composition approach is presented. In this way, SA description, using mapping rules and mini-tools to narrow the gap between design and implementation , is used as the blueprint and middleware technology as the runtime scaffold for component composition. Our approach presents an ADL, which supports user-defined connectors and has an extensible framework, to specify software architectures. To map a SA description into implementation, it is necessary to map it first to an OO design model described in UML, then to the final implementation. The architectural description can be mapped into source code or executable code by using some ORB conforming to CORBA standard. Also a toolkit is provided to support this approach efficiently.展开更多
Reuse is viewed as a realistically effective approach to solving software crisis. For an organization that wants to build a reuse program, technical and non-technical issues must be considered in parallel. In this pap...Reuse is viewed as a realistically effective approach to solving software crisis. For an organization that wants to build a reuse program, technical and non-technical issues must be considered in parallel. In this paper, a model-based approach to building systematic reuse program is presented. Component-based reuse is currently a dominant approach to software reuse. In this approach, building the right reusable component model is the first important step. In order to achieve systematic reuse, a set of component models should be built from different perspectives. Each of these models will give a specific view of the components so as to satisfy different needs of different persons involved in the enterprise reuse program. There already exist some component models for reuse from technical perspectives. But less attention is paid to the reusable components from a non-technical view, especially fromthe view of process and management. In our approach, a reusable component model--FLP modelfor reusable component--is introduced. This model describes components from three dimensions(Form, Level, and Presentation) and views components and their relationships from the perspective of process and management. It determines the sphere of reusable components, the time points of reusing components in the development process, and the needed means to present components in terms of the abstraction level, logic granularity and presentation media. Being the basis on which the management and technical decisions are made, our model will be used as the kernel model to initialize and normalize a systematic enterprise reuse program.展开更多
Model-driven architecture (MDA) has become a main stream technology for software-intensive system design. The main engineering principle behind it is that the inherent complexity of software development can only be ...Model-driven architecture (MDA) has become a main stream technology for software-intensive system design. The main engineering principle behind it is that the inherent complexity of software development can only be mastered by building, analyzing and manipulating system models. MDA also deals with system complexity by provid- ing component-based design techniques, allowing indepen- dent component design, implementation and deployment, and then system integration and reconfiguration based on com- ponent interfaces. The model of a system in any stage is an integration of models of different viewpoints. Therefore, for a model-driven method to be applied effectively, it must pro- vide a body of techniques and an integrated suite of tools for model construction, validation, and transformation. This requires a number of modeling notations for the specifica- tion of different concerns and viewpoints of the system. These notations should have formally defined syntaxes and a unified theory of semantics. The underlying theory of the method is needed to underpin the development of tools and correct use of tools in software development, as well as to formally ver- ify and reason about properties of systems in mission-critical applications. The modeling notations, techniques, and tools must be designed so that they can be used seamlessly in sup- porting development activities and documentation of artifactsin software design processes. This article presents such a method, called the rCOS, focusing on the models of a system at different stages in a software development process, their se- mantic integration, and how they are constructed, analyzed, transformed, validated, and verified.展开更多
As organizations increasingly embrace digital transformation, the integration of modern web technologies like React.js with Business Process Management (BPM) applications has become essential. React components offer f...As organizations increasingly embrace digital transformation, the integration of modern web technologies like React.js with Business Process Management (BPM) applications has become essential. React components offer flexibility, reusability, and scalability, making them ideal for enhancing user interfaces and driving user engagement within BPM environments. This article explores the benefits, challenges, and best practices of leveraging React components in BPM applications, along with real-world examples of successful implementations.展开更多
Changes and reconfiguration of information systems(ISs)are two kernel concepts of rapidil reconfigurable in-formation system(RRIS).It is the abilitise to evolve with changes that make RRIS superior to the traditional ...Changes and reconfiguration of information systems(ISs)are two kernel concepts of rapidil reconfigurable in-formation system(RRIS).It is the abilitise to evolve with changes that make RRIS superior to the traditional ISs.Hierarchical architecture of RRIS is put forward.And then a component-based framework of RRIS is discussed including its building and designing in detail.展开更多
文摘Software architecture is the highest-level abstraction of a system. It provides a model of the large-scale structural properties of systems. Recently, software architecture has been an important research sub-field of software engineering. In this paper,our research work focus on refinement methods of software architecture. By studying the several refinement methods for software architectural design,we present a component-based refinement method that refines an architectural design by replacing a component's static semanucs to its dynamic semantics.
基金This work was supported by the 9th State Five-Year Plan, State 863 High-Tech Program, and the National Natural Science Foundation of China It also got support from Bell-Labs China and Software Production Research of Bell-Labs.
文摘How to compose prefabricated components is a key issue in component-based reuse. Research on Software Architecture (SA) and Component-based Software Development (CBSD) provides two hopeful solutions from different perspectives. SA provides a top-down approach to realizing component-based reuse. However, it pays insufficient attention to the refinement and implementation of the architectural descriptions, and does not provide the necessary capability to automate the transformation or composition to form a final executable application. CBSD provides a bottom-up way by using existing middleware infrastructures. However, these technologies do not take into account the systematic methodology that can guide the CBSD process, especially the component composition at higher abstract levels. We argue that it is a natural solution to combine these two approaches.In this paper, an architecture-based component composition approach is presented. In this way, SA description, using mapping rules and mini-tools to narrow the gap between design and implementation , is used as the blueprint and middleware technology as the runtime scaffold for component composition. Our approach presents an ADL, which supports user-defined connectors and has an extensible framework, to specify software architectures. To map a SA description into implementation, it is necessary to map it first to an OO design model described in UML, then to the final implementation. The architectural description can be mapped into source code or executable code by using some ORB conforming to CORBA standard. Also a toolkit is provided to support this approach efficiently.
基金This work was supported by State 9th Five-Year Plan, State 863 High-Tech Program, and the National Natural Science Foundation of China.
文摘Reuse is viewed as a realistically effective approach to solving software crisis. For an organization that wants to build a reuse program, technical and non-technical issues must be considered in parallel. In this paper, a model-based approach to building systematic reuse program is presented. Component-based reuse is currently a dominant approach to software reuse. In this approach, building the right reusable component model is the first important step. In order to achieve systematic reuse, a set of component models should be built from different perspectives. Each of these models will give a specific view of the components so as to satisfy different needs of different persons involved in the enterprise reuse program. There already exist some component models for reuse from technical perspectives. But less attention is paid to the reusable components from a non-technical view, especially fromthe view of process and management. In our approach, a reusable component model--FLP modelfor reusable component--is introduced. This model describes components from three dimensions(Form, Level, and Presentation) and views components and their relationships from the perspective of process and management. It determines the sphere of reusable components, the time points of reusing components in the development process, and the needed means to present components in terms of the abstraction level, logic granularity and presentation media. Being the basis on which the management and technical decisions are made, our model will be used as the kernel model to initialize and normalize a systematic enterprise reuse program.
文摘Model-driven architecture (MDA) has become a main stream technology for software-intensive system design. The main engineering principle behind it is that the inherent complexity of software development can only be mastered by building, analyzing and manipulating system models. MDA also deals with system complexity by provid- ing component-based design techniques, allowing indepen- dent component design, implementation and deployment, and then system integration and reconfiguration based on com- ponent interfaces. The model of a system in any stage is an integration of models of different viewpoints. Therefore, for a model-driven method to be applied effectively, it must pro- vide a body of techniques and an integrated suite of tools for model construction, validation, and transformation. This requires a number of modeling notations for the specifica- tion of different concerns and viewpoints of the system. These notations should have formally defined syntaxes and a unified theory of semantics. The underlying theory of the method is needed to underpin the development of tools and correct use of tools in software development, as well as to formally ver- ify and reason about properties of systems in mission-critical applications. The modeling notations, techniques, and tools must be designed so that they can be used seamlessly in sup- porting development activities and documentation of artifactsin software design processes. This article presents such a method, called the rCOS, focusing on the models of a system at different stages in a software development process, their se- mantic integration, and how they are constructed, analyzed, transformed, validated, and verified.
文摘As organizations increasingly embrace digital transformation, the integration of modern web technologies like React.js with Business Process Management (BPM) applications has become essential. React components offer flexibility, reusability, and scalability, making them ideal for enhancing user interfaces and driving user engagement within BPM environments. This article explores the benefits, challenges, and best practices of leveraging React components in BPM applications, along with real-world examples of successful implementations.
文摘Changes and reconfiguration of information systems(ISs)are two kernel concepts of rapidil reconfigurable in-formation system(RRIS).It is the abilitise to evolve with changes that make RRIS superior to the traditional ISs.Hierarchical architecture of RRIS is put forward.And then a component-based framework of RRIS is discussed including its building and designing in detail.