Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Kyo Chul Kang is active.

Publication


Featured researches published by Kyo Chul Kang.


Annals of Software Engineering | 1998

FORM: A feature-oriented reuse method with domain-specific reference architectures

Kyo Chul Kang; Sajoong Kim; Jaejoon Lee; Ki-Joo Kim; Euiseob Shin; Moonhang Huh

Systematic discovery and exploitation of commonality across related software systems is a fundamental technical requirement for achieving successful software reuse. By examining a class/family of related systems and the commonality underlying those systems, it is possible to obtain a set of reference models, i.e., software architectures and components needed for implementing applications in the class. FORM (Feature-;Oriented Reuse Method) supports development of such reusable architectures and components (through a process called the “domain engineering”) and development of applications using the domain artifacts produced from the domain engineering. FORM starts with an analysis of commonality among applications in a particular domain in terms of services, operating environments, domain technologies, and implementation techniques. The model constructed during the analysis is called a “feature” model, and it captures commonality as an AND/OR graph, where AND nodes indicate mandatory features and OR nodes indicate alternative features selectable for different applications. Then, this model is used to define parameterized reference architectures and appropriate reusable components instantiatable during application development. Architectures are defined from three different viewpoints (subsystem, process, and module) and have intimate association with the features. The subsystem architecture is used to package service features and allocate them to different computers in a distributed environment. Each subsystem is further decomposed into processes considering the operating environment features. Modules are defined based on the features on domain technology and implementation techniques. These architecture models that represent an architecture at different levels of abstraction are derived from the feature hierarchy captured in the feature model. Modules serve as basis for creating reusable components, and their specification defines how they are integrated into the application (e.g., as-;is integration of pre-;coded component, instantiation of parameterized templates, and filling-;in skeletal codes). Our experiences have shown that for the electronic bulletin board and the private branch exchange (PBX) domains, “features” make up for a common domain language and the main communication medium among application users and developers. Thus, the feature model well represents a “decision space” of software development, and is a good starting point for identifying candidate reusable components.


IEEE Software | 2002

Feature-oriented product line engineering

Kyo Chul Kang; Jaejoon Lee; Patrick Donohoe

The feature-oriented reuse method analyzes and models a product lines commonalities and differences in terms of product features and uses the analysis results to develop architectures and components. The article illustrates, with a home integration system example, how FORM brings efficiency into product line development.


international conference on software reuse | 2002

Concepts and Guidelines of Feature Modeling for Product Line Software Engineering

Kwanwoo Lee; Kyo Chul Kang; Jaejoon Lee

Product line software engineering (PLSE) is an emerging software engineering paradigm, which guides organizations toward the development of products from core assets rather than the development of products one by one from scratch. In order to develop highly reusable core assets, PLSE must have the ability to exploit commonality and manage variability among products from a domain perspective. Feature modeling is one of the most popular domain analysis techniques, which analyzes commonality and variability in a domain to develop highly reusable core assets for a product line. Various attempts have been made to extend and apply it to the development of software product lines. However, feature modeling can be difficult and time-consuming without a precise understanding of the goals of feature modeling and the aid of practical guidelines. In this paper, we clarify the concept of features and the goals of feature modeling, and provide practical guidelines for successful product line software engineering. The authors have extensively used feature modeling in several industrial product line projects and the guidelines described in this paper are based on these experiences.


software product lines | 2006

A feature-oriented approach to developing dynamically reconfigurable products in product line engineering

Jaejoon Lee; Kyo Chul Kang

Dynamic product reconfiguration refers to making changes to a deployed product configuration while a system is running. Recently, there have been increasing demands for dynamic product reconfiguration in various application areas (e.g., ubiquitous computing, self-healing systems, etc.); however, most product line engineering methods in the literature have focused on the development of reusable core assets for statically configured products. In this paper, we propose a feature-oriented approach to develop dynamically reconfigurable core assets. This approach takes feature binding analysis results as a key design driver for identifying and managing variation points of dynamically reconfigurable products. We also provide a conceptual model for a reconfigurator, which monitors and manages product reconfiguration at run time. The method is illustrated with a home service robot product line example.


international conference on software reuse | 2004

Feature Dependency Analysis for Product Line Component Design

Kwanwoo Lee; Kyo Chul Kang

Analyzing commonalities and variabilities among products of a product line is an essential activity for product line asset development. A feature-oriented approach to commonality and variability analysis (called feature modeling) has been used extensively for product line engineering. Feature modeling mainly focuses on identifying commonalities and variabilities among products of a product line and organizing them in terms of structural relationships (e.g., aggregation and generalization) and configuration dependencies (e.g., required and excluded). Although the structural relationships and configuration dependencies are essential inputs to product line asset development, they are not sufficient to develop reusable and adaptable product line assets. Other types of dependencies among features also have significant influences on the design of product line assets. In this paper, we extend the feature modeling to analyze feature dependencies that are useful in the design of reusable and adaptable product line components, and present design guidelines based on the extended model. An elevator control software example is used to illustrate the concept of the proposed method.


Software - Practice and Experience | 2000

Featured-based approach to object-oriented engineering of applications for reuse

Kwanwoo Lee; Kyo Chul Kang; Wonsuk Chae; Byoung Wook Choi

Object-oriented technology is gaining popularity among software engineers with the goal of building reusable and adaptable software. Unfortunately, however, most methods introduced so far are not domain-oriented and do not address the issue of reuse directly. For these methods, software reuse is not the primary goal; it is only a by-product. The feature-oriented reuse method, FORM, is extended in this paper for improving the object-oriented engineering of applications for reuse. FORM concentrates on analyzing and modeling commonalities and differences in the applications of a given domain in terms of capability, operating environment, domain technology, and implementation technique features. These features are used to systematically derive objects that are tied to the features, and to develop reusable and adaptable domain architectures. We found that FORM facilitates analysis of variability (and commonality) of software before engineering and implementation start, and with this understanding, adaptability and reusability can be built into software. Feature modeling has been found to be an effective method for identifying and modeling reusable objects. Copyright


software product lines | 2006

Combining feature-oriented analysis and aspect-oriented programming for product line asset development

Kwanwoo Lee; Kyo Chul Kang; Minseong Kim; Sooyong Park

Feature-oriented analysis (FOA) provides key information for developing reusable and adaptable product line assets. The information includes commonalities and variabilities, various dependencies between features, and their binding time information. On the other hand, aspect-oriented programming (AOP) provides effective mechanisms for encapsulating crosscutting concerns into separate entities, called aspects. By tightly coupling FOA with AOP, we can enhance reusability, adaptability, and configurability of product line assets. In this paper, we present detailed guidelines on how FOA and AOP can be combined. To validate our approach, we applied it to the engineering of an intelligent service robot product line.


software product lines | 2005

Feature-oriented re-engineering of legacy systems into product line assets: a case study

Kyo Chul Kang; Moonzoo Kim; Jaejoon Lee; Byungkil Kim

Home service robots have a wide range of potential applications, such as home security, patient caring, cleaning, etc. The services provided by the robots in each application area are being defined as markets are formed and, therefore, they change constantly. Thus, robot applications need to evolve both quickly and flexibly adopting frequently changing requirements. This makes software product line framework ideal for the domain of home service robots. Unfortunately, however, robot manufacturers often focus on developing technical components (e.g., vision recognizer and speech processor) and then attempt to develop robots by integrating these components in an ad-hoc way. This practice produces robot applications that are hard to re-use and evolve when requirements change. We believe that re-engineering legacy robot applications into product line assets can significantly enhance reusability and evolvability. In this paper, we present our experience of re-engineering legacy home service robot applications into product line assets through feature modeling and analysis. First, through reverse engineering, we recovered architectures and components of the legacy applications. Second, based on the recovered information and domain knowledge, we reconstructed a feature model for the legacy applications. Anticipating changes in business opportunities or technologies, we restructured and refined the feature model to produce a feature model for the product line. Finally, based on the refined feature model and engineering principles we adopted for asset development, we designed a new architecture and components for robot applications.


Software - Practice and Experience | 1999

Feature-oriented engineering of PBX software for adaptability and reusability

Kyo Chul Kang; Sajoong Kim; Jaejoon Lee; Kwanwoo Lee

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


software product lines | 2010

Usage context as key driver for feature selection

Kwanwoo Lee; Kyo Chul Kang

Product derivation in software product line engineering starts with selection of variable features manifested in a feature model. Selection of variable features for a particular product, however, is not made arbitrarily. There are various factors affecting feature selection. We experienced that the usage context of a product is often the primary driver for feature selection. In this paper, we propose a model showing how product usage contexts are related to product features, and present a method for developing such a model during the domain engineering process and utilizing it to derive an optimal product configuration during the application engineering process. An elevator control software example is used to illustrate and validate the concept and the method.

Collaboration


Dive into the Kyo Chul Kang's collaboration.

Top Co-Authors

Avatar

Jaejoon Lee

Pohang University of Science and Technology

View shared research outputs
Top Co-Authors

Avatar

Kwanwoo Lee

Pohang University of Science and Technology

View shared research outputs
Top Co-Authors

Avatar

Hyesun Lee

Pohang University of Science and Technology

View shared research outputs
Top Co-Authors

Avatar

Ji Y. Lee

Pohang University of Science and Technology

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Gerard Jounghyun Kim

Pohang University of Science and Technology

View shared research outputs
Top Co-Authors

Avatar

Hye J. Kim

Pohang University of Science and Technology

View shared research outputs
Top Co-Authors

Avatar

Sajoong Kim

Pohang University of Science and Technology

View shared research outputs
Top Co-Authors

Avatar

Sholom Cohen

Carnegie Mellon University

View shared research outputs
Researchain Logo
Decentralizing Knowledge