• 제목/요약/키워드: Software Evolution

검색결과 191건 처리시간 0.036초

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

  • 박태현;안휘;강성원;박종빈;황상철
    • 소프트웨어공학소사이어티 논문지
    • /
    • 제26권1호
    • /
    • pp.17-29
    • /
    • 2013
  • 소프트웨어 시스템 진화는 소프트웨어 시스템의 유지보수의 일종으로 계획적이고 체계적인 유지보수 프로세스이다. 소프트웨어 진화 연구는 기존 시스템의 비용편익 분석을 통해 시스템의 유지가치에 대한 판단 근거를 제공하며, 아키텍처를 기반으로 하는 진화는 반복적인 진화 작업의 자동화를 가능케 하여 유지보수 비용 감소를 가능하게 해주는 연구이다. 본 논문에서는 아키텍처 변환패턴을 이용한 소프트웨어 시스템 진화 프레임워크를 제안한다.

  • PDF

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

  • 강성원
    • 정보처리학회논문지D
    • /
    • 제16D권5호
    • /
    • pp.755-766
    • /
    • 2009
  • 소프트웨어 아키텍처는 소프트웨어 시스템이 존재하기에 앞서 소프트웨어 시스템에 관한 많은 결정을 내릴 수 있게 하고 아키텍처 수준에서 시스템을 분석 가능하게 함으로써 체계적으로 계획 된 소프트웨어 개발이 가능하도록 한다. 이와 마찬가지로 아키텍처 기반의 소프트웨어 진화 계획은 소프트웨어 진화가 진행되기 이전에 아키텍처 수준에서 진화에 대한 많은 단계별 결정들을 내리고 분석하게 함으로써 체계적으로 계획된 진화가 가능하도록 한다. 본 논문은 아키텍처 기반의 결정적 진화계획에 대하여 소프트웨어 진화계획에 관련된 용어들과 개념들을 정의하고 또한 결정적 소프트웨어 진화계획들로부터 최적의 선택을 할 수 있도록 진화설계를 가치관점에서 평가하는 프레임워크를 제시함으로써 아키텍처 기반의 소프트웨어 진화 계획을 수립하는 방법론적 기반을 제공한다. 또한 본 연구의 프레임워크를 적용한 사례를 통하여 제안하는 프레임워크의 적용방법과 효용성을 보인다.

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)
    • /
    • 제13권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
    • 한국통신학회논문지
    • /
    • 제29권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)

  • 이재기;신상권;남상식;박권철
    • 전자통신동향분석
    • /
    • 제14권4호통권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)

  • 최일우;류성열
    • 정보처리학회논문지D
    • /
    • 제10D권5호
    • /
    • pp.845-858
    • /
    • 2003
  • 1980년대 이후, 소프트웨어 위기에 대응하기 위한 다양한 소프트웨어 공학적 기법들이 출현하기 시작 하였고, 현재 소프트웨어의 질적 항상 및 생산성 향상을 꾀하기 위한 개발 지침으로 소프트웨어 개발 프로세스를 적용하는데 관심이 집중되어지고 있다. 그러나 대부분의 방법론들이 앞으로 구축한 새로운 시스템의 재사용성 확보에 치중할 뿐, 기존의 레거시 시스템 자원을 재사용하여 새로운 시스템을 구축하는 재공학 방법은 지원하지 못하고 있는 실정이다. 본 논문에서는 레거시 시스템의 효율적 진화를 위한 재공학 프로세스(Reengineering Process)로 RUP를 확장, 커스터마이징하여 구성한 RUP+re을 제시한다. RUP+re는 Small-h 모델을 바탕으로 크게 역공학 워크플로우(Reverse Engineering Workflow), 변환 워크플로우(Transformation Workflow), 진화 워크플로우(Evolution Workflow)로 구성되어진다. RUP+re의 각 워크플로우와 세부스텝을 제공하고 재공학 사례 연구론 통하여 실질적으로 프로세스를 검증함으로서 레거시 시스템 자원의 진화론 위한 소프트웨어 재공학 프로세스 구축에 효율적인 지침을 제공한다.

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

  • Koh, Seokha;Han, Man Pil
    • Journal of Information Technology Applications and Management
    • /
    • 제22권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.

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

  • 이승창;박훈성;서응교
    • 유통과학연구
    • /
    • 제13권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
    • /
    • 제14권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.