• Title/Summary/Keyword: Commonality And Variability

Search Result 32, Processing Time 0.028 seconds

Commonality and Variability Analysis Method for UML CASE Tool Frameworks (UML CASE 도구 프레임워크를 위한 공통성 및 가변성)

  • Choi, Hwan-Bok;Lee, Eun-Ser;Kim, Yun-Ho
    • The KIPS Transactions:PartD
    • /
    • v.16D no.6
    • /
    • pp.927-934
    • /
    • 2009
  • This paper presents a commonality and variability analysis method for UML CASE tool frameworks. Commonality and Variability analysis increase extension and reusability by separating common area and variable area. We suggest class category based on property and the notation to represent commonality and variability. It is also implements frameworks based on analysis method and verify method using defect removal efficiency.

A Study of Development Method for Component Reuse & Extension (컴포넌트의 재사용과 확장성을 위한 개발 방법)

  • Lee, Eun-Seo;Lee, Kyung-Whan
    • The KIPS Transactions:PartD
    • /
    • v.9D no.5
    • /
    • pp.837-846
    • /
    • 2002
  • When you develop component, you can offer reusability and extension by analyzing commonality and variability about attribute and behavior. Therefore Component that analyzing commonality and variability are use for the purpose of reducing discord of function and adaptedness. I wish to research reusability and extension of component by analysis commonality and variability of component that exist by domain in this paper, extractfunctionofcomponentbybehavioranalysis.

A 2-Dimensional Approach for Analyzing Variability of Domain Core Assets (도메인 핵심자산의 가변성 분석을 위한 2차원적 접근방법)

  • Moon Mi-Kyeong;Chae Heung-Seok;Yeom Keun-Hyuk
    • Journal of KIISE:Software and Applications
    • /
    • v.33 no.6
    • /
    • pp.550-563
    • /
    • 2006
  • Software product line engineering is a method that prepares for the future reuse and supports to seamless reuse in application development process. Commonality and variability play central roles in all product line development processes. Reusable assets will become core assets by explicitly representing C&V. Indeed, the variabilities that art identified at each phase of core assets development have different levels of abstraction. In the past, these variabilities have been handled in an implicit manner and without distinguishing the characteristics of each core assets. In addition, previous approaches have depended on the experience and intuition of a domain expert to recognize commonality and variability. In this paper, we suggest a 2-dimensional analyzing method that analyzes the variabilities of core assets in software product line. In horizontal analysis process, the variation types are analyzed in requirements, architecture, and component that are produced at each phase of development process. In vertical analysis process, variations are analyzed in different abstract levels, in which the region of commonality is identified and the variation points are refined. By this method, the traceability of variations between core assets will be possible and core assets can be reused seamlessly.

Framework for Developing RFID Applications Based on Product Line Architecture (프로덕트라인 아키텍처 기반 RFID 애플리케이션 개발을 위한 프레임워크)

  • Moon, Mi-Kyeong;Kim, Han-Jun;Yeom, Keun-Hyuk
    • The KIPS Transactions:PartD
    • /
    • v.14D no.7
    • /
    • pp.773-782
    • /
    • 2007
  • Software produce line engineering is a method that prepares for future reuse and supports seamless reuse in the application development process. Analyzing the commonality and variability between products in a product line is one of the essential concerns that must be considered when building a product line. In this paper, we suggest to combine a product line engineering approach with RFID applications technology. More concretely, common activities are identified among the RFID-enable applications and the variability in the common activities is analyzed in detail. Then, we suggest reusable product line architecture as a product line asset. In addition, as a tool for supporting this research, a framework which provides both reusable product line architecture for REID applications and the components that implement concrete realization of the architecture is developed. Sharing a common architecture and reusing assets to deploy recurrent services may be considered an advantage in terms of economic significance and overall quality.

An Approach to Developing Domain Architecture Based on Variability Analysis in Software Product Line (소프트웨어 프로덕트 라인에서 가변성 분석을 통한 도메인 아키텍처 개발 방법)

  • Moon, Mi-Kyeong;Yeom, Keun-Hyuk
    • Journal of KIISE:Software and Applications
    • /
    • v.34 no.4
    • /
    • pp.328-341
    • /
    • 2007
  • When the decision to initiate a software product line has been taken, the first step is the domain analysis describing the variability in the requirements, the second important step is the definition of a domain architecture that captures the overall structure of a series of closely related products. A domain architecture can be a core asset in product line by describing the commonalities and variabilities of the products contained in the software product line. The variabilities, which are identified at each phase of the core assets development, are diverse in the level of abstraction. Therefore, it is important to clearly define, systematically identify, and explicitly represent variability at the architectural level. However, it is difficult to identify and represent the variability which should be considered at the architecture level, because these may be appeared in architecture elements and in architecture configuration. In this paper, we suggest a method of developing domain architecture as a core asset in product line where commonality and variability are explicitly considered. First of all, we will describe a domain architecture metamodel that can explicitly define commonality and variability concepts by extending the Object Management Group's ($OMG^{TM}$ Reusable Asset Specification eRAS) model. Using the domain architecture metamodel, architecture elements are defined and the variations that can be identified at the architecture level are classified into two types in according th abstract level. Additionally, we describe a domain architecture where commonality and variability are explicitly considered on basis of this metamodel.

Formal Definition and Consistency Analysis of Feature-Oriented Product Line Analysis Model (특성 지향의 제품계열분석 모델의 정형적 정의와 일관성 분석)

  • Lee Kwanwoo
    • Journal of KIISE:Software and Applications
    • /
    • v.32 no.2
    • /
    • pp.119-127
    • /
    • 2005
  • Product line analysis is an activity for analyzing requirements, their relationships, and constraints in a product line before engineering product line assets (e.g., architectures and components). A feature-oriented commonality and variability analysis (called feature modeling) has been considered an essential part of product line analysis. Commonality and variability analysis, although critical, is not sufficient to develop reusable and adaptable product line assets. Dependencies among features and feature binding time also have significant influences on the design of product line assets. In this paper. we propose a feature-oriented product line analysis model that extends the existing feature model in terms of three aspects (i.e., feature commonality and variability, feature dependency, and feature binding time). To validate the consistency among the three aspects we formally define the feature-oriented product line analysis model and provide rules for checking consistency.

A Method to Design Components using Commonality and Variability Analysis (공통성 및 가변성 분석을 활용한 컴포넌트 설계 기법)

  • 장수호;김수동
    • Journal of KIISE:Software and Applications
    • /
    • v.31 no.6
    • /
    • pp.716-727
    • /
    • 2004
  • Component-based software development (CBD) technology has been widely accepted as a new effective paradigm for building software systems with reusable components, consequently reducing efforts and shortening time-to-market. Hence, components should provide standard or common functionalities in a domain, yielding a higher level of reusability. Especially, micro-level variability within the commonality should also be modeled so that a product member-specific business logic or requirement can be supported through component tailoring or customization The importance of commonality and variability (C&V) analysis has been emphasized in several CBD methods, but they lack of well-defined systematic process, detailed instructions, and standard artifact templates. As the result, the development of components has been carried out in ad-hoc fashion, depending on developer's experience. In this paper, we propose a systematic process and work instructions to design components. The process consists of phases and their activities and each activity is specified with detailed instructions and artifact templates in order to facilitate effective development of components. To verify a feasibility of the propose method, a case study in a banking domain and comparison and assessment between the proposed method and other methods are additionally provided. With proposed processes and instructions, reusability and efficiency of developing components can be better supported.

A Method to Manage Requirements Analyzing the Commonality and Variability in Product Line (프로덕트 라인에서 공통성과 가변성 분석을 통한 요구사항 관리방법)

  • Park, Dong-Su;Kim, Dong-Kyu;Chong, Ki-Won
    • The KIPS Transactions:PartD
    • /
    • v.13D no.7 s.110
    • /
    • pp.909-922
    • /
    • 2006
  • The core assets include all properties which consist of an application in Product Line Engineering. The requirement, one of the core assets, is a basis of other core assets and commonality and variability of other core assets are classified by the requirement. accordingly, commonality and variability of the domain requirement should be managed objectively and it is necessary to make a process to reuse the domain requirements. However the requirement is analyzed by domain experts or developers without proper process. In this paper, we proposed the 4 activities: (1)the domain scoping, (2)the extraction and generalization of the domain requirement, (3)the domain requirement analyzing and modeling, (4)the change management, and sub activities. For all reasons given previously, it is possible to reduce the development time and cost by reusing the architectures and components related to the domain requirement. In addition, it is possible to increase the quality of the artifacts produced based on the requirements by managing them systematically.

Ontology-based Approach to Analyzing Commonality and Variability of Features in the Software Product Line Engineering (소프트웨어 제품 계열 공학의 온톨로지 기반 휘처 공동성 및 가변성 분석 기법)

  • Lee, Soon-Bok;Kim, Jin-Woo;Song, Chee-Yang;Kim, Young-Gab;Kwon, Ju-Hum;Lee, Tae-Woong;Kim, Hyun-Seok;Baik, Doo-Kwon
    • Journal of KIISE:Software and Applications
    • /
    • v.34 no.3
    • /
    • pp.196-211
    • /
    • 2007
  • In the Product Line Engineering (PLE), current studies about an analysis of the feature have uncertain and ad-hoc criteria of analysis based on developer’s intuition or domain expert’s heuristic approach and difficulty to extract explicit features from a product in a product line because the stakeholders lack comprehensive understanding of the features in feature modeling. Therefore, this paper proposes a model of the analyzing commonality and variability of the feature based on the Ontology. The proposed model in this paper suggests two approaches in order to solve the problems mentioned above: First, the model explicitly expresses the feature by making an individual feature attribute list based on the meta feature modeling to understand common feature. Second, the model projects an analysis model of commonality and variability using the semantic similarity between features based on the Ontology to the stakeholders. The main contribution of this paper is to improve the reusability of distinguished features on developing products of same line henceforth.

Extracting of Features in Code Changes of Existing System for Reengineering to Product Line

  • Yoon, Seonghye;Park, Sooyong;Hwang, Mansoo
    • Journal of the Korea Society of Computer and Information
    • /
    • v.21 no.5
    • /
    • pp.119-126
    • /
    • 2016
  • Software maintenance becomes extremely difficult, especially caused by multiple versions in project-based or customer-oriented software development methodology. For reducing the maintenance cost, reengineering to software product line can be a solution to the software which either is a family of products nevertheless little different functionalities or are customized for each different customer's requirement. At an initial stage of the reengineering, the most important activity in software product line is feature extraction with respect to commonality and variability from the existing system due to verifying functional coverage. Several researchers have studied to extract features. They considered only a single version in a single product. However, this is an obstacle to classify the commonality and variability of features. Therefore, we propose a method for systematically extracting features from source code and its change history considering several versions of the existing system. It enables us to represent functionalities reflecting developer's intention, and to clarify the rationale of variation.