• Title/Summary/Keyword: Software Product Line Engineering

Search Result 99, Processing Time 0.025 seconds

Design of Product-Line Architecture based-on Common Architecture (공통 아키텍처 기반 제품계열 아키텍처 설계)

  • Oh, Young-Bae;Shin, Sung-Oog;Kim, Young-Gab;Baik, Doo-Kwon
    • Journal of Information Technology Services
    • /
    • v.5 no.2
    • /
    • pp.155-168
    • /
    • 2006
  • Software product line is a software product or a set of software system, which has common functions. We can develop a specific software product, which satisfies requirements of a particular market segment and a mission in a specific domain by reusing the core asset such as the developed software architecture through the software product line. Software development methodology based on the software product line can develop a software more easily and fast by reusing the developed software core asset. Developed countries of software technology select software product line as a core field of software production technology, and support technology development. In case of USA, CMU/SEI(Carnegie Mellon University/Software Engineering Institute) developed product-line framework 4.0 together with the industry and the Department of Defense. Europe is supporting the development of product line technology through ITEA(IT for European Advancement) program. However, industries in our country understand the necessity of software production technology based on product line concept for the purpose of increasing productivity, it is not sufficient to invest for this technology development. In this paper, we aim to construct the common architecture of software product line for production of the software product line.

A Study of Software Product Line Engineering application for Data Link Software

  • Kim, Jin-Woo;Lee, Woo-Sin;Kim, Hack-Joon;Jin, So-Yeon;Jo, Se-Hyeon
    • Journal of the Korea Society of Computer and Information
    • /
    • v.23 no.12
    • /
    • pp.65-72
    • /
    • 2018
  • In this paper, we have studied how to reuse common data link software by applying software product line engineering. Existing common data link software performed different stages of design, implementation, and testing without sharing the accumulated knowledge of different developers. In this situation, developers agreed that sharing the assets of each project and reusing the previously developed software would save human and time costs. Even with the initial difficulties, the common Data Link is a continually proposed project in the defense industry, so we decided to build a product line. The common data link software can be divided into two domains. Among them, the initial feature model for the GUI software was constructed, and the following procedure was studied. Through this, we propose a plan to build a product line for core assets and reuse them in newly developed projects.

Application of Software Product Line Engineering for Developing Web Application Families (웹 시스템 군의 개발을 위한 소프트웨어 제품라인 공학의 적용)

  • Hwang, ByungHan;Jin, YoungTaek
    • The Journal of Society for e-Business Studies
    • /
    • v.22 no.2
    • /
    • pp.39-60
    • /
    • 2017
  • Software product line engineering is widely recognized as an effective way for systematic software reuse, and many studies have been conducted to convert existing software development practices and processes into software product line. In order to convert existing software development into product line, a lot of investments are required such as dedicated development units, appropriate process selection and adaptation, and tool support. In particular, small businesses need business cases and specific practices for applying software product line engineering before its full-scale adoption. In this paper, we present a practical case of applying software product line engineering to the development of web system families and a process of systematically building and reusing software assets. To do this, we analyzed a number of web development projects and presented the experiences and various considerations of small software companies adopting software product line.

Dynamic Software Component Composition Based On Aspect-Oriented Programming (관점지향 프로그램 기반의 동적 소프트웨어 컴포넌트 조합 패턴)

  • Bae, Sung-Moon;Park, Chul-Soon;Park, Chun-Ho
    • Journal of Korean Society of Industrial and Systems Engineering
    • /
    • v.31 no.4
    • /
    • pp.100-105
    • /
    • 2008
  • Cost reduction, time to market, and quality improvement of software product are critical issues to the software companies which try to survive in recent competitive market environments. Software Product Line Engineering (SPLE) is one of the approaches to address these issues. The goal of software product line is to maximize the software reuse and achieve the best productivity with the minimum cost. In software product line, software components are classified into the common and variable modules for composition work. In this paper, we proposed a dynamic composition process based on aspect-oriented programming methodology in which software requirements are classified into the core-concerns and cross-cutting concerns, and then assembled into the final software product. It enables developers to concentrate on the core logics of given problem, not the side-issues of software product such as transactions and logging. We also proposed useful composition patterns based on aspect oriented programming paradigm. Finally, we implemented a prototype of the proposed process using Java and Aspect to show the proposed approach's feasibility. The scenario of the prototype is based on the embedded analysis software of telecommunication devices.

Consistency Checking Rules of Variability between Feature Model and Elements in Software Product Lines (소프트웨어 제품라인의 휘처모델과 구성요소간 가변성에 대한 일관성 검증 규칙)

  • Kim, Se-Hoon;Kim, Jeong-Ah
    • KIPS Transactions on Software and Data Engineering
    • /
    • v.3 no.1
    • /
    • pp.1-6
    • /
    • 2014
  • Many companies have tried to adopt Software Product Line Engineering for improving the quality and productivity of information systems and software product. There are several models defined in software product line methodology and each model has different abstraction level. Therefor it is important to maintain the traceability and consistency between models. In this paper, consistency checking rules are suggested by traceability matrix of work products.

Efficient Code-based Software Product Line Regression Testing (효율적인 소프트웨어 제품라인 회귀시험을 위한 자동화된 코드 기반 시험 방법)

  • Jung, Pilsu;Kang, Sungwon
    • Journal of Software Engineering Society
    • /
    • v.29 no.2
    • /
    • pp.1-6
    • /
    • 2020
  • Software product line development is a development paradigm that efficiently develops a product family by avoiding redundant development based on separation of the common part and the variable part of the product family. In software product line development, the source code that is used to produce a product family is called a product line code base, and when the product line code base is changed and the products of the product family are affected by the change, the activity of testing the affected products is called a product line regression testing. For product line regression testing, instead of conducting regression testing individually on each product of the product family, a more efficient regression testing would be possible if unnecessary testing that are irrelevant to the change can be avoided. This paper introduces SRTS, which is an automated method to efficiently perform software product line regression testing. SRTS divides the product line code base and test cases based on commonality and variability. Then SRTS identifies and selects the test cases affected by the change. Finally, it reduces unnecessary testing by rerunning only the selected test cases.

Expressing Variability in Software Product Line Architecture Models: A Comparative Study (소프트웨어 제품라인 아키텍처 모델에서의 가변성 표현 방법 비교 연구)

  • Lee, Hyesun;Cho, Sungbae;Kang, Kyo Chul
    • Journal of Software Engineering Society
    • /
    • v.24 no.3
    • /
    • pp.77-89
    • /
    • 2011
  • Software product line engineering is a software reuse paradigm that helps organizations improve software productivity and quality by developing software products from reusable core assets. For the satisfaction of common and variable requirements among products in the product line, the core assets must be configurable according to the selection of variable features. Therefore, unlike software architecture model of a single product, product line architecture model must embed and express variabilities among the products. Many researches have proposed methods of embedding and expressing variabilities in the product line architecture models, but there are few comparative studies on the proposed methods. In this paper we discuss strong points and weak points of the proposed methods and compare expressiveness of the methods, which helps select a proper method.

  • PDF

A Study on Software Product-Line Architecture Design Process (소프트웨어 제품계열 아키텍처 설계 프로세스)

  • Oh, Young-Bae
    • Journal of Information Technology Services
    • /
    • v.4 no.2
    • /
    • pp.47-59
    • /
    • 2005
  • S/W product line is a S/W product or a set of S/W system, which has common functions. We can develop a specific S/W product, which satisfiesrequirements of a particular market segment and a mission in a specific domain by reusing the core asset such as the developed S/W architecture through the S/W product line. S/W development methodology based on the S/W product line can develop a S/W more easily and fast by reusing the developed S/W core asset. An advanced country of S/W technology selects S/W product line as a core field of S/W production technology, and support technology development. In case of USA, CMU/SEI (Carnegie Mellon University / Software Engineering Institute) developed product-line framework 4.0 together with the industry and the Ministry of National Defense. Europe is supporting the development of product line technology through ITEA(IT for European Advancement) program. In this paper, we aim to construct reference architecture of S/W product line for production of the S/W product line.

A Tool for Workflow-based Product Line Software Development (워크플로우 기반의 제품라인 소프트웨어 개발 지원 환경)

  • Yang, Jin-Seok;Kang, Kyo C.
    • KIPS Transactions on Software and Data Engineering
    • /
    • v.2 no.6
    • /
    • pp.377-382
    • /
    • 2013
  • A convergence software development methodology based on product line engineering provides an architecture model for application development and it also provides workflow as a behavior specification of control component development to develop transaction centric application. To effect a change on software development based on product line engineering it has to be supported by a tool. But almost workflow modeling tools dose not support product line engineering concept. So we need new workflow modeling tool to support the convergence software development methodology. In this paper, we introduce a toolset for workflow modeling that consists of eclipse plug-in applications and open source tool and describe the relationships of tools through example.

A Scoping Method to Implement Software Product Line for Inertial Navigation System (관성항법소프트웨어 SPL(Software Product Line) 구현을 위한 플랫폼 범위결정 기법)

  • Park, Samjoon;Noh, Sungkyu;Lee, Kwanwoo;Park, ByungSu;Nam, Seongho
    • KIPS Transactions on Software and Data Engineering
    • /
    • v.10 no.7
    • /
    • pp.251-256
    • /
    • 2021
  • Software Product Line Engineering (SPLE) has been known as an efficient and effective software reuse methodology. One of the key activities of SPLE is scoping analysis, which determines the range of the features to be developed as reusable assets. Although several scoping methods has been reported, they are not sufficient to apply them to the defense domain. In this paper, we present a scoping method applicable to the defense domain, and present a case study for applying SPLE to inertial navigation weapon system. At first, the proposed method determines the range of candidate features to be applied for the platform. The range is then adjusted from the perspective of product benefit. The final range of features is decided through considering the total cost of a product line. We will demonstrate and evaluate the applicability of the proposed method by showing how we can decide the scope of features to be engineered for the navigation software product line.