• Title/Summary/Keyword: Software Product-Line

Search Result 150, 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.

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.

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 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.

Product Line Development Process for Mobile Software based on Product Line (프로덕트 라인 기반의 모바일 소프트웨어 개발 프로세스)

  • Kim Haeng-Kon;Son Lee-Kyeong
    • The KIPS Transactions:PartD
    • /
    • v.12D no.3 s.99
    • /
    • pp.395-408
    • /
    • 2005
  • Ubiquitous computing spans a very broad range of technologies and needs very complicated user's requirements. There are many scenarios and technologies involved in ubiquitous computing. We need new software development tools and methodology to meet the requirements. A software product line is one of promising new technology for it. A software product line is a set of software intensive systems that share a common, managed set of features satisfying the specific needs of a particular market segment or mission and that are developed from a common set of core assets. Software architecture-based development is the exploration and maturation of the role of software architecture in the product line life cycle. In this thesis, we identify the foundational concepts underlying software product lines and the essential activities to develop the mobile application systems. So, we define, design, and implement the Mobile Application System Architecture(MASA) that includes the development process for applying into mobile business domain and encompass scoping and gathering requirements for the Product line based on Component Based Development(CBD).

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.

Code Coverage Measurement in Configurable Software Product Line Testing (구성가능한 소프트웨어 제품라인 시험에서 코드 커버리지 측정)

  • Han, Soobin;Lee, Jihyun;Go, Seoyeon
    • KIPS Transactions on Software and Data Engineering
    • /
    • v.11 no.7
    • /
    • pp.273-282
    • /
    • 2022
  • Testing approaches for configurable software product lines differs significantly from a single software testing, as it requires consideration of common parts used by all member products of a product line and variable parts shared by some or a single product. Test coverage is a measure of the adequacy of testing performed. Test coverage measurements are important to evaluate the adequacy of testing at the software product line level, as there can be hundreds of member products produced from configurable software product lines. This paper proposes a method for measuring code coverage at the product line level in configurable software product lines. The proposed method tests the member products of a product line after hierarchizing member products based on the inclusion relationship of the selected features, and quantifies SPL(Software Product Line) test coverage by synthesizing the test coverage of each product. As a result of applying the proposed method to 11 configurable software product line cases, we confirmed that the proposed method could quantitatively visualize how thoroughly the SPL testing was performed to help verify the adequacy of the SPL testing. In addition, we could check whether the newly performed testing for a member product covers the newly added code parts of a feature.

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