• Title/Summary/Keyword: Software Evolution

Search Result 191, Processing Time 0.031 seconds

A Framework for Software System Evolution using Architectural Transformation Pattern (아키텍처 변환 패턴을 이용한 소프트웨어 시스템 진화 프레임워크)

  • Park, Taehyun;Ahn, Hwi;Kang, Sungwon;Park, Jongbin;Hwang, Sangcheol
    • Journal of Software Engineering Society
    • /
    • v.26 no.1
    • /
    • pp.17-29
    • /
    • 2013
  • Software System Evolution is more planned and systematic maintenance process as well as a type of maintenance. The research of software evolution provides basis of decisions for maintenance value through cost-benefit analysis of legacy system and architecture-based software evolution enables engineers to reduce maintenance cost by automation of repetitive evolution tasks. This paper proposes a framework for software system evolution using architectural transformation pattern.

  • PDF

Valuation of Architecture-based Deterministic Plan for Software Evolution (아키텍처 기반의 결정적 소프트웨어 진화계획의 가치 평가)

  • Kang, Sung-Won;Garlan, David
    • The KIPS Transactions:PartD
    • /
    • v.16D no.5
    • /
    • pp.755-766
    • /
    • 2009
  • Software architecture allows us to make many decisions about a software system and analyze it even before it exists in order to make systematic and planned development possible. Similarly, architecture-based software evolution planningmakes planned evolution possible by allowing us to make many decisions about evolution of a software system and analyze its evolution at the level of architecture design before software evolution is realized. In this paper, we develop a framework for architecture-based software evolution planning for the class of deterministic evolution plans by defining and relating various essential concepts and developing its valuationmechanism so that a plan with the greatest value among candidate plans can be selected as an optimal plan. A case study is conducted for explicating the framework and exemplifying its usage.

Your Opinions Let us Know: Mining Social Network Sites to Evolve Software Product Lines

  • Ali, Nazakat;Hwang, Sangwon;Hong, Jang-Eui
    • KSII Transactions on Internet and Information Systems (TIIS)
    • /
    • v.13 no.8
    • /
    • pp.4191-4211
    • /
    • 2019
  • Software product lines (SPLs) are complex software systems by nature due to their common reference architecture and interdependencies. Therefore, any form of evolution can lead to a more complex situation than a single system. On the other hand, software product lines are developed keeping long-term perspectives in mind, which are expected to have a considerable lifespan and a long-term investment. SPL development organizations need to consider software evolution in a systematic way due to their complexity and size. Addressing new user requirements over time is one of the most crucial factors in the successful implementation SPL. Thus, the addition of new requirements or the rapid context change is common in SPL products. To cope with rapid change several researchers have discussed the evolution of software product lines. However, for the evolution of an SPL, the literature did not present a systematic process that would define activities in such a way that would lead to the rapid evolution of software. Our study aims to provide a requirements-driven process that speeds up the requirements engineering process using social network sites in order to achieve rapid software evolution. We used classification, topic modeling, and sentiment extraction to elicit user requirements. Lastly, we conducted a case study on the smartwatch domain to validate our proposed approach. Our results show that users' opinions can contain useful information which can be used by software SPL organizations to evolve their products. Furthermore, our investigation results demonstrate that machine learning algorithms have the capacity to identify relevant information automatically.

An Evolution of Software Reliability in a Large Scale Switching System: using the software

  • Lee, Jae-Ki;Nam, Sang-Sik;Kim, Chang-Bong
    • The Journal of Korean Institute of Communications and Information Sciences
    • /
    • v.29 no.4A
    • /
    • pp.399-414
    • /
    • 2004
  • In this paper, an evolution of software reliability engineering in a large-scale software project is summarized. The considered software consists of many components, called functional blocks in software of switching system. These functional blocks are served as the unit of coding and test, and the software is continuously updated by adding new functional blocks. We are mainly concerned with the analysis of the effects of these software components in software reliability and reliability evolution. We analyze the static characteristics of the software related to software reliability using collected failure data during system test. We also discussed a pattern which represents a local and global growth of the software reliability as version evolves. To find the pattern of system software, we apply the S-shaped model to a collection of failure data sets of each evolutionary version and the Goel-Okumoto(G-O) model to a grouped overall failure data set. We expect this pattern analysis will be helpful to plan and manage necessary human/resources fur a new similar software project which is developed under the same developing circumstances by estimating the total software failures with respect to its size and time.

An Evolution of Reliability of large Scale Software of a Switching System (대형 교환 시스템의 소프트웨어 신뢰도 성장)

  • Lee, J.K.;Shin, S.K.;Nam, S.S.;Park, K.C.
    • Electronics and Telecommunications Trends
    • /
    • v.14 no.4 s.58
    • /
    • pp.1-9
    • /
    • 1999
  • In this paper, we summarize the lessons learned from the applications of the software reliability engineering to a large-scale software project. The considered software is the software system of the TDX-10 ISDN switching system. The considered software consists of many components, called functional blocks. These functional blocks serve as the unit of coding and test. The software is continuing to be developed by adding new functional blocks. We are mainly concerned with the analysis of the effects of these software components to software reliability and with the analysis of the reliability evolution. We analyze the static characteristics of the software related to software reliability using failure data collected during system test. We also discussed a pattern which represents a local and global growth of the software reliability as version evolves. To find the pattern of software of the TDX-10 ISDN system, we apply the S-shaped model to a collection of failure data sets of each evolutionary version and the Goel-Okumoto (G-O) model to a grouped overall failure data set. We expect this pattern analysis will be helpful to plan and manage necessary human/resources for a new similar software project which is developed under the same developing circumstances by estimating the total software failures with respect to its size and time.

An Efficient Reengineering Process for Legacy System Evolution (레거시 시스템 진화를 위한 효율적 재공학 프로세스)

  • Choi, Il-Woo;Rhew, Sung-Yul
    • The KIPS Transactions:PartD
    • /
    • v.10D no.5
    • /
    • pp.845-858
    • /
    • 2003
  • The various software engineering techniques have been come out in order to cope with the software crisis since 1980's. These days the software Engineering has focused on the process of software development which is the guide for a qualify and productive improvement of software. But, most of the methodologies assume that a new system will be constructed and reused in the future. these do not support how we reuse legacy system's resources and construct a new system efficiently. In this paper, we present an efficient Reengineering Process for legacy system evolutions, RUP+re, which extends and customizes RUP. RUP+re consists of Reverse Engineering Workflow, Transformation Workflow and Evolution Workflow based on Small-h model. We describe RUP+re's workflows with their own detail steps and verify the process through the case study practivally. So, we provide efficient guidelines to the software Reengineering process construction which evolutes the resources of a legacy system.

Purposes, Results, and Types of Software Post Life Cycle Changes

  • Koh, Seokha;Han, Man Pil
    • Journal of Information Technology Applications and Management
    • /
    • v.22 no.3
    • /
    • pp.143-167
    • /
    • 2015
  • This paper addresses the issue how the total life cycle cost may be minimized and how the cost should be allocated to the acquirer and developer. This paper differentiates post life cycle change (PLCC) endeavors from PLCC activities, rigorously classifies PLCC endeavors according to the result of PLCC endeavors, and rigorously defines the life cycle cost of a software product. This paper reviews classical definitions of software 'maintenance' types and proposes a new typology of PLCC activities too. The proposed classification schemes are exhaustive and mutually exclusive, and provide a new paradigm to review existing literatures regarding software cost estimation, software 'maintenance,' software evolution, and software architecture from a new perspective. This paper argues that the long-term interest of the acquirer is not protected properly because warranty period is typically too short and because the main concern of warranty service is given to removing the defects detected easily. Based on the observation that defects are caused solely by errors the developer has committed for software while defects are often induced by using for hardware (so, this paper cautiously proposes not to use the term 'maintenance' at all for software), this paper argues that the cost to remove defects should not be borne by the acquirer for software.

Behavior-Structure-Evolution Evaluation Model(BSEM) for Open Source Software Service (공개소프트웨어 서비스 평가모델(BSEM)에 관한 개념적 연구)

  • Lee, Seung-Chang;Park, Hoon-Sung;Suh, Eung-Kyo
    • Journal of Distribution Science
    • /
    • v.13 no.1
    • /
    • pp.57-70
    • /
    • 2015
  • Purpose - Open source software has high utilization in most of the server market. The utilization of open source software is a global trend. Particularly, Internet infrastructure and platform software open source software development has increased rapidly. Since 2003, the Korean government has published open source software promotion policies and a supply promotion policy. The dynamism of the open source software market, the lack of relevant expertise, and the market transformation due to reasons such as changes in the relevant technology occur slowly in relation to adoption. Therefore, this study proposes an assessment model of services provided in an open source software service company. In this study, the service level of open source software companies is classified into an enterprise-level assessment area, the service level assessment area, and service area. The assessment model is developed from an on-site driven evaluation index and proposed evaluation framework; the evaluation procedures and evaluation methods are used to achieve the research objective, involving an impartial evaluation model implemented after pilot testing and validation. Research Design, data, and methodology - This study adopted an iteration development model to accommodate various requirements, and presented and validated the assessment model to address the situation of the open source software service company. Phase 1 - Theoretical background and literature review Phase 2 - Research on an evaluation index based on the open source software service company Phase 3 - Index improvement through expert validation Phase 4 - Finalizing an evaluation model reflecting additional requirements Based on the open source software adoption case study and latest technology trends, we developed an open source software service concept definition and classification of public service activities for open source software service companies. We also presented open source software service company service level measures by developing a service level factor analysis assessment. The Behavior-Structure-Evolution Evaluation Model (BSEM) proposed in this study consisted of a rating methodology for calculating the level that can be granted through the assessment and evaluation of an enterprise-level data model. An open source software service company's service comprises the service area and service domain, while the technology acceptance model comprises the service area, technical domain, technical sub-domain, and open source software name. Finally, the evaluation index comprises the evaluation group, category, and items. Results - Utilization of an open source software service level evaluation model For the development of an open source software service level evaluation model, common service providers need to standardize the quality of the service, so that surveys and expert workshops performed in open source software service companies can establish the evaluation criteria according to their qualitative differences. Conclusion - Based on this evaluation model's systematic evaluation process and monitoring, an open source software service adoption company can acquire reliable information for open source software adoption. Inducing the growth of open source software service companies will facilitate the development of the open source software industry.

Differential Evolution Algorithms Solving a Multi-Objective, Source and Stage Location-Allocation Problem

  • Thongdee, Thongpoon;Pitakaso, Rapeepan
    • Industrial Engineering and Management Systems
    • /
    • v.14 no.1
    • /
    • pp.11-21
    • /
    • 2015
  • The purpose of this research is to develop algorithms using the Differential Evolution Algorithm (DE) to solve a multi-objective, sources and stages location-allocation problem. The development process starts from the design of a standard DE, then modifies the recombination process of the DE in order improve the efficiency of the standard DE. The modified algorithm is called modified DE. The proposed algorithms have been tested with one real case study (large size problem) and 2 randomly selected data sets (small and medium size problems). The computational results show that the modified DE gives better solutions and uses less computational time than the standard DE. The proposed heuristics can find solutions 0 to 3.56% different from the optimal solution in small test instances, while differences are 1.4-3.5% higher than that of the lower bound generated by optimization software in medium and large test instances, while using more than 99% less computational time than the optimization software.