• Title/Summary/Keyword: Software Product

Search Result 1,077, Processing Time 0.027 seconds

A Dissimilarity with Dice-Jaro-Winkler Test Case Prioritization Approach for Model-Based Testing in Software Product Line

  • Sulaiman, R. Aduni;Jawawi, Dayang N.A.;Halim, Shahliza Abdul
    • KSII Transactions on Internet and Information Systems (TIIS)
    • /
    • v.15 no.3
    • /
    • pp.932-951
    • /
    • 2021
  • The effectiveness of testing in Model-based Testing (MBT) for Software Product Line (SPL) can be achieved by considering fault detection in test case. The lack of fault consideration caused test case in test suite to be listed randomly. Test Case Prioritization (TCP) is one of regression techniques that is adaptively capable to detect faults as early as possible by reordering test cases based on fault detection rate. However, there is a lack of studies that measured faults in MBT for SPL. This paper proposes a Test Case Prioritization (TCP) approach based on dissimilarity and string based distance called Last Minimal for Local Maximal Distance (LM-LMD) with Dice-Jaro-Winkler Dissimilarity. LM-LMD with Dice-Jaro-Winkler Dissimilarity adopts Local Maximum Distance as the prioritization algorithm and Dice-Jaro-Winkler similarity measure to evaluate distance among test cases. This work is based on the test case generated from statechart in Software Product Line (SPL) domain context. Our results are promising as LM-LMD with Dice-Jaro-Winkler Dissimilarity outperformed the original Local Maximum Distance, Global Maximum Distance and Enhanced All-yes Configuration algorithm in terms of Average Fault Detection Rate (APFD) and average prioritization time.

An Approach to Managing Requirements Change Systematically in Software Product Lines (소프트웨어 프로덕트 라인에서 체계적인 요구사항 변경 관리 방법)

  • Park, Ji-Hyeon;Moon, Mi-Kyeong;Yeom, Keun-Hyuk
    • Journal of KIISE:Software and Applications
    • /
    • v.32 no.12
    • /
    • pp.1164-1177
    • /
    • 2005
  • As the software development process becomes complicated, software requirements become complicated, too. Many efforts are needed in requirements management. It is impossible to define all requirements of software at first, and the development environment changes as project is gone. As the cost of requirements change management is much more than development cost, the changes should be controled immediately through systematic change management. In this paper, I suggest a method to manage requirements change systematically based on the change management process in software product lines. The requirements change at the application engineering process is analyzed and managed using the domain engineering process because the application requirements are customized from the domain requirements in software product lines. Such the consistent change management helps to make decisions about changes by change impact analysis and alternative solution design. Through this method, the potential change costs can be saved because same change requests are not repeated by controlling the change requests completely.

An Approach to Managing Requirements as a Core Asset in Software Product-Line (소프트웨어 프로덕트 라인에서 핵심 자산으로서 요구사항을 관리하는 방법)

  • 문미경;염근혁
    • Journal of KIISE:Software and Applications
    • /
    • v.31 no.8
    • /
    • pp.1010-1026
    • /
    • 2004
  • The goal of product line engineering is to support the systematic development of a set of similar software systems by understanding and controlling their common and distinguishing characteristics. The product line engineering is a process that develops reusable core assets and develops a set of software-intensive systems from a common set of core assets in a prescribed way. Currently, many software development technologies are accomplished in context of product line. However, much of the product line engineering research have focused on the reuse of work products relating to the software's architecture, detail design, and code. The product lines fulfill the promise of tailor-made systems built specifically for the needs of particular customers or customer groups. In particular, commonality and variability play central roles in the all product line development processes. These must be treated already during the requirement analysis phase. Requirements in product line engineering are basis of software development just like as traditional system development engineering, and basis of deciding other core assets' property - commonalities and variabilities. However, it is difficult to elicit, analyze and manage correct requirements. Therefore, it is necessary to develop systematic methods which can develop and manage requirement as core asset, which can be stable in anticipative change and can be well adapted to unpredictable change. In this paper, we suggest a method of managing requirements as core asset in product line. Through this method, the reuse of domain requirements can be enhanced. As a result, the cost and time of software development can be reduced and the productivity can be increased.

Variability Support in Component-based Product Lines using Component Code Generation (컴포넌트 코드 생성을 통한 컴포넌트 기반 제품 라인에서의 가변성 지원)

  • Choi, Seung-Hoon
    • Journal of Internet Computing and Services
    • /
    • v.6 no.4
    • /
    • pp.21-35
    • /
    • 2005
  • Software product-lines is the software development paradigm to attain the rapid development of quality applications by customizing the reconfigurable components and composing them based on predefined software architectures. Recently various methodologies for the component-based product lines are proposed, but these don't provide the specific implementation techniques of the components in terms of variability resolution mechanism. In other hand, the several approaches to implement the component supporting the variabilities resolution are developed, but these don't define the systematic analysis and design method considering the variabilities from the initial phase. This paper proposes the integration of PLUS, the one of product line methodologies extending UML modeling, and component code generation technique in order to increase the efficiency of producing the specific product in the software product lines. In this paper, the component has the hierarchical architecture consisting of the implementation elements, and each implementation elements are implemented as XSLT scripts. The codes of the components are generated from the feature selection. Using the microwave oven product lines as case study, the development process for the reconfigurable components supporting the automatic variability resolution is described.

  • PDF

Modeling Traceability Between Software Product Line Requirements and Architecture (소프트웨어 제품 라인의 요구사항과 아키텍처 간 추적성 모델링)

  • Eom, Seokhwan;Kang, Sungwon;Kim, Jingyu;Lee, Seonah
    • KIPS Transactions on Software and Data Engineering
    • /
    • v.4 no.11
    • /
    • pp.487-498
    • /
    • 2015
  • Traceability enables software developers to trace up the changes occurring in software artifacts. In software product line, traceability is more complex than traceability in a single product as commonality and variability should be considered. Modeling traceability between features and requirements has been proposed in the past. However, traceability between requirements and architecture has more factors to consider, including many-to-many mappings and hierarchical structure of architectures. This paper proposes a method of systematically constructing platform traceability between platform requirements and platform architecture. This paper also shows the efficacy of the proposed mechanism through case studies.

Using an Evaluative Criteria Software of Optimal Solutions for Enterprise Products' Sale

  • Liao, Shih Chung;Lin, Bing Yi
    • Journal of Distribution Science
    • /
    • v.13 no.4
    • /
    • pp.9-19
    • /
    • 2015
  • Purpose - This study focuses on the use of evaluative criteria software for imprecise market information, and product mapping relationships between design parameters and customer requirements. Research design, data, and methodology - This study involved using the product predicted value method, synthesizing design alternatives through a morphological analysis and plan, realizing the synthesis in multi-criteria decision-making (MCDM), and using its searching software capacity to obtain optimal solutions. Results - The establishment of product designs conforms to the customer demand, and promotes the optimization of several designs. In this study, the construction level analytic method and the simple multi attribute comment, or the quantity analytic method are used. Conclusions - This study provides a solution for enterprise products' multi-goals decision-making, because the product design lacks determinism, complexity, risk, conflict, and so on. In addition, the changeable factor renders the entire decision-making process more difficult. It uses Fuzzy deduction and the correlation technology for appraising the feasible method and multi-goals decision-making, to solve situations of the products' multi-goals and limited resources, and assigns resources for the best product design.

Methods of managing UI Assets in Product-Line Engineering (Product-Line 에서의 UI 자산화 기법)

  • Hwang Kil-Seung;Yoon Seok-Jin;Song Moon-Sub;Yang Young-Jong
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2004.11a
    • /
    • pp.421-424
    • /
    • 2004
  • Product-Line 기반의 소프트웨어 개발은 특정 도메인의 소프트웨어 제품군 내의 공통성과 가변성 분석을 통한 공통 아키텍처의 추출과 재사용으로 개발의 생산성과 효율성을 향상시킨다. 일반적인 Product-Line 기반 방법론에 따르면, 재사용되는 핵심자산은 아키텍처, 컴포넌트, 등의 소프트웨어 내부 비즈니스 로직에 한정되어 있으며, 실제로 소프트웨어 개발에 있어 많은 비용이 지출되는 UI(User Interface), 데이터베이스 등의 설계 및 개발에 대한 내용은 언급되어 있지 않은 실정이다. 본 논문에서는 소프트웨어 개발에 필요한 UI 모듈을 핵심자산의 형태로 Product-Line 에서 사용할 수 있도록 하는 방법을 제안한다. UI 모듈을 설계하여 명세하는 방법과 설계된 UI를 디자인 템플릿과 연결하여 내부 로직과 연계하는 방법에 대해 설명한다. 이 방법을 이용하면 Product-Line을 위한 핵심자산 구성시 UI 모듈을 포함할 수 있어 생산성과 효율성을 향상시킬 수 있을 것으로 생각된다.

  • PDF

An Investigation into Improving the Quality of Modern Weapon System Software Products: a Case Study (현대 무기체계 소프트웨어 개발 사례 분석을 통한 품질개선 방안에 대한 연구)

  • Choi, Taeyun Paul;Lee, Hyo-Jin
    • Journal of the Korean Society of Systems Engineering
    • /
    • v.8 no.2
    • /
    • pp.19-25
    • /
    • 2012
  • As modern weapon systems have evolved into embedded software systems, the capability to develop, install, and maintain high-quality software products is becoming increasingly valuable in today's competitive aerospace and defense industry. It is desirable, especially for government-contracted projects whose end-users are military personnel, that specific types of software quality elements are assured early during product development; namely, functionality and usability. Motivated by this need to approach improving software quality from a user's perspective, this paper presents a case study that analyzes system-level software integration testing results for a weapon system indigenously developed in the Republic of Korea. Quantitative data, such as software defect ratios and configuration change rates, are computed to observe meaningful trends with respect to functionality - represented by tests designed to verify the system's electrical signal interfaces - and usability, which is evaluated in terms of how often the initial human-computer interface had to be re-designed. Insights gained from these exercises are subsequently presented as a set of "lessons learned" to take into account when developing new software items for complex weapon systems.

TToSA: An Architecture Model Translator toward Embedded Software Product Line Engineering (TToSA : 제품계열공학으로의 전이를 위한 임베디드 소프트웨어의 모델 기반 아키텍처 변환기)

  • Hong, Jang-Eui;Oh, Gi-Young;Kim, Jong-Phil
    • The KIPS Transactions:PartD
    • /
    • v.13D no.6 s.109
    • /
    • pp.807-814
    • /
    • 2006
  • Along with the enlargement of application scope, the growth of requirements complexity, and the fast development of product for embedded system, lots of industries developing embedded software try to evolve their traditional development environment into the new paradigm such as product line engineering approach. In order to sufficiently support the evolution, software architecture is essentially required to develop the embedded software. In this paper, we propose a tool, named TToSA which translates the conventional software models to software architecture models. Our TToSA is developed with the critical implication about that an industry can approach toward the new development paradigm without the big change of the existing software development method.