首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 31 毫秒
1.
ContextA software product line is a family of software systems that share some common features but also have significant variabilities. A feature model is a variability modeling artifact, which represents differences among software products with respect to the variability relationships among their features. Having a feature model along with a reference model developed in the domain engineering lifecycle, a concrete product of the family is derived by binding the variation points in the feature model (called configuration process) and by instantiating the reference model.ObjectiveIn this work we address the feature model configuration problem and propose a framework to automatically select suitable features that satisfy both the functional and non-functional preferences and constraints of stakeholders. Additionally, interdependencies between various non-functional properties are taken into account in the framework.MethodThe proposed framework combines Analytical Hierarchy Process (AHP) and Fuzzy Cognitive Maps (FCM) to compute the non-functional properties weights based on stakeholders’ preferences and interdependencies between non-functional properties. Afterwards, Hierarchical Task Network (HTN) planning is applied to find the optimal feature model configuration.ResultOur approach improves state-of-art of feature model configuration by considering positive or negative impacts of the features on non-functional properties, the stakeholders’ preferences, and non-functional interdependencies. The approach presented in this paper extends earlier work presented in [1] from several distinct perspectives including mechanisms handling interdependencies between non-functional properties, proposing a novel tooling architecture, and offering visualization and interaction techniques for representing functional and non-functional aspects of feature models.Conclusionour experiments show the scalability of our configuration approach when considering both functional and non-functional requirements of stakeholders.  相似文献   

2.
Software product line engineering practices offer desirable characteristics such as rapid product development, reduced time-to-market, and more affordable development costs as a result of systematic representation of the variabilities of a domain of discourse that leads to methodical reuse of software assets. The development lifecycle of a product line consists of two main phases: domain engineering, which deals with the understanding and formally modeling of the target domain, and application engineering that is concerned with the configuration of a product line into one concrete product based on the preferences and requirements of the stakeholders. The work presented in this paper focuses on the application engineering phase and builds both the theoretical and technological tools to assist the stakeholders in (a) understanding the complex interactions of the features of a product line; (b) eliciting the utility of each feature for the stakeholders and hence exposing the stakeholders’ otherwise implicit preferences in a way that they can more easily make decisions; and (c) dynamically building a decision model through interaction with the stakeholders and by considering the structural characteristics of software product line feature models, which will guide the stakeholders through the product configuration process. Initial exploratory empirical experiments that we have performed show that our proposed approach for helping stakeholders understand their feature preferences and its associated staged feature model configuration process is able to positively impact the quality of the end results of the application engineering process within the context of the limited number of participants. In addition, it has been observed that the offered tooling support is able to ease the staged feature model configuration process.  相似文献   

3.
一种面向特征的领域模型及其建模过程   总被引:65,自引:4,他引:65       下载免费PDF全文
张伟  梅宏 《软件学报》2003,14(8):1345-1356
特征模型作为捕获领域需求的重要模型已被现阶段的主流领域工程方法所接受,但这些方法缺乏对特征模型组织框架的细致研究和说明,在一定程度上导致了特征模型在表现形式上的冗余性和混乱性,也使得领域分析人员在实践中很难有效地进行领域建模活动.从特征模型的基本组织结构、变化性的表现方式和限制机制、变化性的绑定时间等方面对特征模型的组织框架及剪裁机制进行了统一、抽象的描述.在考察服务、用例(use case)、功能、行为特点等不同类型的特征及其相互关系的基础上,给出了一种特征模型的具体形式,并结合具体的领域,对其建模过程进行了详细论述.此项研究对于领域建模活动的成功实施具有一定的指导作用.  相似文献   

4.
When designing, constructing, and maintaining diverse and variable software systems, a key challenge is the complexity of systems. A potential approach to tackle this challenge are techniques from variability management and product line engineering to handle the diversity and variability. A key asset in variability management is a variability model, which explicitly specifies the commonalities and variability of a system and the constraints between variants. However, handling variability and configurations remains a challenge due to the complexity on a cognitive level as human engineers reach their limits in identifying, understanding, and using all relevant details. In this paper we address this issue by providing concepts for interactive visual tool support for the configuration of systems with the help of feature models. We discuss relevant principles from the area of information visualization and their application to the domain of feature model configuration. We discuss techniques for interactive configuration support based on a reasoning engine, which, e.g., ensures the validity of configurations. We illustrate our findings by a concrete tool solution called S2T2 Configurator.  相似文献   

5.
We present an approach to model-driven software product line engineering which is based on feature models and domain models. A feature model describes both common and varying properties of the instances of a software product line. The domain model is composed of a structural model (package and class diagrams) and a behavioral model (story diagrams). Features are mapped onto the domain model by annotating elements of the domain model with features. An element of a domain model is specific to the features included in its feature annotation. An instance of the product line is defined by a set of selected features (a feature configuration). A configuration of the domain model is built by excluding all elements whose feature set is not included in the feature configuration. To ensure consistency of the configured domain model, we define constraints on the annotations of inter-dependent domain model elements. These constraints guarantee that a model element may be selected only when the model elements are also included on which it depends. Violations of dependency constraints may be removed automatically with the help of an error repair tool which propagates features to dependent model elements.  相似文献   

6.
7.
Due to the independency, variability, and tailorability of software service in the open environment, the research of middleware which supports software services multi-mode interaction is thus of great importance. In this paper, an agent-based multi-mode interaction middleware model and its supporting system for software services were proposed. This model includes an interaction feature decomposition and configuration model to enable interaction programming, an agent-based middleware model, and a programmable coordination media based on reflection technology. The decomposition and configuration model for interaction features can assist programmers in interaction programming by analyzing and synthesizing interaction features. The agent-based middleware model provides a runtime framework for service multi-mode interaction. The programmable coordination media is able to effectively support software service coordination based on multimode interaction. To verify feasibility and efficiency of the above method, the design, implementation and performance analysis of Artemis-M3C, a multi-mode interaction middleware for software services, were introduced. The result shows that the above method is feasible and that the Artemis-M3C system is practical and effective in multi-mode interaction.  相似文献   

8.
ContextAmbient Intelligence systems domain is an outstanding example of modern systems that are in permanent evolution, as new devices, technologies or facilities are continuously appearing. This means it would be desirable to have a mechanism that helps with the propagation of evolution changes in deployed systems.ObjectiveWe present a software product line engineering process to manage the evolution of FamiWare, a family of middleware for ambient intelligence environments. This process drives the evolution of FamiWare middleware configurations using cardinality-based feature models, which are especially well suited to express the structural variability of ambient intelligence systems.MethodFamiWare uses cardinality-based feature models and clonable features to model the structural variability present in ambient intelligence systems, composed of a large variety of heterogeneous devices. Since the management evolution of configurations with clonable features is manually untreatable due to the high number of features, our process automates it and propagates changes made at feature level to the architectural components of the FamiWare middleware. This is a model driven development process as the evolution management, the propagation of evolution changes and the code generation are performed using some kind of model mappings and transformations. Concretely we present a variability modelling language to map the selection of features to the corresponding FamiWare middleware architectural components.ResultsOur process is able to manage the evolution of cardinality-based feature models with thousands of features, something which is not possible to tackle manually. Thanks to the use of the variability language and the automatic code generation it is possible to propagate and maintain a correspondence between the FamiWare architectural model and the code. The process is then able to calculate the architectural differences between the evolved configuration and the previous one. Checking these differences, our process helps to calculate the effort needed to perform the evolution changes in the customized products. To perform those tasks we have defined two operators, one to calculate the differences between two feature model configurations and another to create a new configuration from a previous one.ConclusionOur process automatically propagates the evolution changes of the middleware family into the existing configurations where the middleware is already deployed and also helps us to calculate the effort in performing the changes in every configuration. Finally, we validated our approach, demonstrating the functioning of the defined operators and showing that by using our tool we can generate evolved configurations for FamiWare with thousands of cloned features, for several case studies.  相似文献   

9.
Requirements engineering (RE) offers the means to discover, model, and manage the requirements of the products that comprise a product line, while software product line engineering (SPLE) offers the means of realizing the products’ requirements from a common base of software assets. In practice, however, RE and SPLE have proven to be less complementary than they should. While some RE techniques, particularly goal modeling, support the exploration of alternative solutions, the appropriate solution is typically conditional on context and a large product line may have many product-defining contexts. Thus, scalability and traceability through into product line features are key challenges for RE. Feature modeling, by contrast, has been widely accepted as a way of modeling commonality and variability of products of a product line that may be very complex. In this paper, we propose a goal-driven feature modeling approach that separates a feature space in terms of problem space and solution space features, and establish explicit mappings between them. This approach contributes to reducing the inherent complexity of a mixed-view feature model, deriving key engineering drivers for developing core assets of a product line, and facilitating the quality-based product configuration.  相似文献   

10.
Feature diagrams have become commonplace in software product line engineering as a means to document variability early in the life cycle. Over the years, their application has also been extended to assist stakeholders in the configuration of software products. However, existing feature-based configuration techniques offer little support for tailoring configuration views to the profiles of the various stakeholders. In this paper, we propose a lightweight, yet formal and flexible, mechanism to leverage multidimensional separation of concerns in feature-based configuration. We propose a technique to specify concerns in feature diagrams and to generate automatically concern-specific configuration views. Three alternative visualisations are proposed. Our contributions are motivated and illustrated through excerpts from a real web-based meeting management application which was also used for a preliminary evaluation. We also report on the progress made in the development of a tool supporting multi-view feature-based configuration.  相似文献   

11.
Incorporating a high level of adaptability and reusability into software is one challenge that all software engineers face. PBX (Private Branch Exchange) is one such system that requires a high level of adaptability and reusability because of rapidly expanding service features, ever changing communication technology, continuously evolving standards and diverse communication laws and standards in different countries. The software engineering community has made various efforts to address the problem of enhancing software adaptability and reusability. As a result, many programming concepts, such as information hiding, encapsulation, object orientation, abstract data type and modularization, have been developed. Although adequate application of these principles requires the domain or program family perspective, most methods, so far, have been oriented toward developing a single application. FORM (Feature‐Oriented Reuse Method), the domain‐based software reuse method applied in this paper, concentrates on analyzing and modeling commonalities and differences in applications of a given domain and using the analysis results to develop domain‐oriented architectures and software components. The model that captures commonalities and differences is called the ‘feature model’ and it is used for both the engineering of reusable domain artifacts and the development of actual application software with reusable artifacts. We found that FORM facilitates analysis of variability, as well as commonality, of software before the start of engineering and implementation. With this understanding, adaptability and reusability can be built into software. Also, feature modeling has been found to be an effective method for identifying objects. Copyright © 1999 John Wiley & Sons, Ltd.  相似文献   

12.
The analysis of unsteady phenomena is an important topic for scientific visualization. Several time-dependent visualization techniques exist, as well as solutions for dealing with the enormous size of time-varying data in interactive visualization. Many current visualization toolkits support displaying time-varying data sets. However, for the interactive exploration of time-varying data in scientific visualization, no common time model that describes the temporal properties which occur in the visualization process has been established. In this work, we propose a general time model which classifies the time frames of simulation phenomena and the connections between different time scales in the analysis process. This model is designed for intuitive interaction with time in visualization applications for the domain expert as well as for the developer of visualization tools. We demonstrate the benefits of our model by applying it to two use cases with different temporal properties.  相似文献   

13.
基于特征的领域分析与建模技术是软件产品线开发中较为主流的需求建模方法,为描述产品线共性和可变性及其之间的关系提供了良好的支持。然而在现有特征模型基础上,如何指导系统开发人员进行软件系统的详细设计是亟待解决的问题。该问题主要体现在特征之间的结构与语义关系,以及特征的可变性如何映射为合理的系统设计模型这两个方面。针对上述问题,提出一种基于特征分解模式的软件产品线参考设计方法。该方法为特征模型中具有不同结构、不同语义的特征分解模式提供参考的详细设计方案,并提出相关聚类准则以支持对应全局特征模型的设计模型优化。最后,通过成绩录入软件产品线对该方法的有效性进行验证。  相似文献   

14.
15.
基于特征组合的软件需求建模   总被引:1,自引:1,他引:0  
需求建模在需求工程中起着重要的作用。为了提高软件需求建模的效率和质量,提出一种基于特征组合的软件需求建模方法。首先,将特征分为功能性特征和非功能性特征;其次,形式化定义功能性特征的各个部件,包括原子功能性特征和复合功能性特征;第三,把功能性特征之间的特征组合抽象为特征运算,并提出了23条特征运算的公理;第四,形式化定义非功能性特征并通过其作用域把功能性特征和非功能性特征统一为软件需求模型;最后,给出了基于特征组合的软件需求建模过程。  相似文献   

16.
在领域工程中,特征模型描述了领域需求之间的关系,在共性和特性之间进行区别,在复杂软件系统设计和实现中扮演了重要的角色.介绍了特征建模方法的起源和发展,分析和比较了两种典型的特征定义,从特征模型体系结构,特征模型的表现、特征变化性和组合规则、特征建模工具和特征模型的应用等方面阐述了特征建模领域的若干研究活动,介绍了特征建模方法的主要研究现状以及研究方向.  相似文献   

17.
18.
基于构件和面向服务体系结构(SOA)的软件工程被认为是提高大规模的分布式软件开发效率和质量的有效途径.但是,SOA目前还停留在抽象的高层概念模型层面上,还没有一个实用、具体的应用参考模型.介绍了一种基于Web服务软件体系结构的领域系统构造过程.在此基础上,提出了一种面向Web服务的领域软件体系结构参考模型(WS-DSARD),对其主要元元素角色、操作、服务构件和服务构件类等进行了较为详细的描述,并从服务构件交互与集成的角度分析了服务构件的组合语义.该研究对于面向服务领域软件开发活动的成功实施具有一定的指导作用.  相似文献   

19.
Software product line engineering is a paradigm that advocates the reusability of software engineering assets and the rapid development of new applications for a target domain. These objectives are achieved by capturing the commonalities and variabilities between the applications of the target domain and through the development of comprehensive and variability-covering feature models. The feature models developed within the software product line development process need to cover the relevant features and aspects of the target domain. In other words, the feature models should be elaborate representations of the feature space of that domain. Given that feature models, i.e., software product line feature models, are developed mostly by domain analysts by sifting through domain documentation, corporate records and transcribed interviews, the process is a cumbersome and error-prone one. In this paper, we propose a decision support platform that assists domain analysts throughout the domain engineering lifecycle by: (1) automatically performing natural language processing tasks over domain documents and identifying important information for the domain analysts such as the features and integrity constraints that exist in the domain documents; (2) providing a collaboration platform around the domain documents such that multiple domain analysts can collaborate with each other during the process using a Wiki; (3) formulating semantic links between domain terminology with external widely used ontologies such as WordNet in order to disambiguate the terms used in domain documents; and (4) developing traceability links between the unstructured information available in the domain documents and their formal counterparts within the formal feature model representations. Results obtained from our controlled experimentations show that the decision support platform is effective in increasing the performance of the domain analysts during the domain engineering lifecycle in terms of both the coverage and accuracy measures.  相似文献   

20.
针对军用电子装备仿真训练软件目前开发中存在的复用率不高、开发效率低等问题,采用领域特征分析的方法,对该类软件的开发领域进行了服务、功能、行为三个层次的活动分析,并建立了该领域仿真对象管理、仿真模型驱动、运行支撑管理等服务的特征模型。实践证明,以此特征模型作为输入建立的集成开发环境,能够较好地解决该领域内软件开发过程中存在的构件重用问题,同时能使软件系统的开发效率得到显著提高。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号