• Title/Summary/Keyword: 소프트웨어 재구성

Search Result 304, Processing Time 0.021 seconds

Architecture-based Software Diagnosis Method for Self-Managed Software (자가 적응형 소프트웨어를 위한 아키텍처 기반 소프트웨어 진단 기법)

  • Kim, Kyu-Rai;Kim, Dong-Sun;Park, Soo-Young
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2007.06b
    • /
    • pp.148-151
    • /
    • 2007
  • 소프트웨어가 해결해야 할 문제가 점점 복잡해지고 있음과 동시에 소프트웨어의 자체의 복잡도 또한 증가하고 있다. 또한 소프트웨어 개발 시간에 예상하지 못했던 실행 환경에 노출되는 경우가 빈번해 졌다. 이러한 요구상항과 함께 소프트웨어의 유지보수와 개발을 쉽게 하기 위해 자가 적응형 소프트웨어에 대한 필요가 늘어나고 있다. 자가 적응형 소프트웨어란 실행 환경과 내부 상황을 판단하여 적절한 기능을 수행할 수 있도록 스스로 재구성 할 수 있는 소프트웨어이다. 소프트웨어가 향상된 기능으로 재구성을 하려면 자신의 내부 상황과 자원 소모량 등 소프트웨어 실행 환경에 대한 계속 적인 관찰이 필요하다. 그러나 기존의 자원 소모량 관찰에 대한 연구는 개발 시간에 프로그램 자체 효율을 위해 프로그램 개발 언어 단위에서 이루어져왔다. 예를 들면 관찰 단위가 실행시 호출되는 함수나 데이터 중심으로 진행 되어 재구성 단위인 컴포넌트 별로 이해하기가 쉽지 않았다. 따라서 본 논문은 재구성 단위를 컴포넌트로 정의 하고 메소드 단위의 호출이 생길 때마다 발생하는 데이터를 컴포넌트 단위로 추상화 시키는 기법을 제안한다.

  • PDF

A Study on Object-Oriented Software Reorganization by Design Pattern Transformations (설계패턴변환에 의한 객체지향 소프트웨어의 재구성에 관한 연구)

  • Hwang, Suk-Hyung;Yang, Hae-Sool
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2000.04a
    • /
    • pp.735-740
    • /
    • 2000
  • 일반적으로, 기존의 소프트웨어에 대한 확장 또는 재구성 등의 요구변화에 의해 소프트웨어는 진화한다. 설계패턴은 객체지향 소프트웨어를 확장하기 위한 적합한 방법들을 표현한 것으로서, 소프트웨어 설계에 있어서 목표치에 가장 이상적인 상태를 제공하고 있다. 본 논문에서는 주어진 소프트웨어에 대하여 일련의 기본적인 프로그램 변환조작들을 적용하여 목표상태로 재구성하여 진화시키기위한 몇가지 설계패턴 변환기법들을 제안한다. 기존의 객체지향 어플리케이션의 재구성 및 진화를 위하여, 설계자가 클래스 다이어그램에 적용할 수 있는 자동화도구의 개발에 본 논문의 연구결과를 이용할 수 있다.

  • PDF

Flattening Class Hierarchy for Reorganization of Object-Oriented Software (객체지향 소프트웨어의 재구성을 위한 클래스계층 구조의 평탄화)

  • Hwang, Seok-Hyeong;Yang, Hae-Sul;Park, Jeong-Ho
    • The KIPS Transactions:PartD
    • /
    • v.8D no.6
    • /
    • pp.853-860
    • /
    • 2001
  • In the object-oriented software development, redesigning of classes and reorganizing of class hierarchy structures should be necessary to reduce many of the headaches of object-oriented software design and maintenance. To support this task, in this paper, we propose a theoretical foundation for class hierarchy reorganizations that is relatively complete, correct, formal and easy to understand and use. We introduce the flattened class hierarchy that characterizes the class hierarchy structures in object-oriented software evolution. And we also present an algorithm which transforms a given class hierarchy into the normalized form. The flattened class hierarchy helps us map the inheritance and aggregation paths in a class hierarchy to paths in an object hierarchy that is an instance of the class hierarchy. By applying the algorithm into a given class hierarchy, we can make a new, object-preserved, and flattened class hierarchy that is the cornerstone for reorganization of class hierarchy structure and plays an important role as a bridge on the incremental evolutionary changes and reuse of object-oriented software to reorganize class hierarchies.

  • PDF

SDR Software Download and Reconfiguration Technique (SDR 소프트웨어 다운로드와 재구성 기법)

  • Seo, Young-Jin;Jeong, Sang-Kook;Kim, Han-Kyoung
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2003.11b
    • /
    • pp.891-894
    • /
    • 2003
  • 본 논문에서는 다양한 이동 통신 서비스에 대한 호환성을 지원하는 기술인 소프트웨어에 의한 단말기 형상의 재구성을 가능하게 하는 Software Defined Radio(SDR)에 대한 내용을 기술한다. SDR의 핵심기술 중 하나인 소프트웨어 다운로드에 대해 소개하고 이와 관련된 재구성에 대해 서술해 보기로 한다.

  • PDF

Software Architecture Restructuring using Agent on Multi-user Environment (다중 사용자 환경에서의 에이전트를 이용한 소프트웨어 아키텍쳐 재구성)

  • 김상길;안치돈;왕창종
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2000.10a
    • /
    • pp.370-372
    • /
    • 2000
  • 다중 사용자 환경에서 새로운 소프트웨어 개발하기 위해서는 특정 사용자 관점이 아닌 다양한 관점에서의 의견이 최대로 반영된 소프트웨어 아키텍쳐를 설계할 필요가 있다. 그리고 설계 과정에서의 이러한 다양한 관점에서의 의견들을 조정하기 위한 협동 작업을 자동화해 줄 수 있는 메커니즘 또한 필요하다. 이 연구에서는 소프트웨어 아키텍쳐 설계 과정에서 사용자들의 의견을 최대한 반영한 아키텍쳐 설계를 위해 기존의 다중 계층 소프트웨어 아키텍쳐 관리 방법을 사용하고, 이러한 다중 계층 소프트웨어 아키텍쳐의 효율적인 재구성을 위한 자동화 방안으로 에이전트 기법을 도입한다.

  • PDF

Retrieval of Software Component based on XML Specification (XML 명세에 기반한 소프트웨어 컴포넌트 검색)

  • 권태삼;이윤수;윤경섭;왕창중
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 1999.10a
    • /
    • pp.501-503
    • /
    • 1999
  • 소프트웨어 컴포넌트의 재사용은 새로운 소프트웨어를 개발하기 위해 이미 개발되어진 컴포넌트나 적절하게 수정된 컴포넌트를 사용하는 것이다. 따라서 컴포넌트 저장소에 저장되어 있는 컴포넌트를 효율적으로 검색할 수 있어야 하며, 검색된 컴포넌트를 적용하여 새로운 소프트웨어를 개발할 수 있어야 한다. 이 논문에서는 컴포넌트 저장소에 XML 기반으로 명세된 컴포넌트들의 검색 방법과 소프트웨어 아키텍쳐 재구성을 위한 구조 검색 방법을 제안한다. 제안한 검색 방법에서 시그니쳐 일치 방법은 컴포넌트 검색의 재현율을 향상시키며, 행위 일치 검색은 컴포넌트 검색의 정확성을 향상시킬 수 있다. 또한, 구조 검색 방법은 소프트웨어 아키택쳐의 재구성을 위해 컴포넌트의 구조적인 관점에서 컴포넌트를 검색할 수 있다.

  • PDF

Fault-­tolerant module reconfiguration for SDR system (결함허용 모듈재구성 방식을 이용한 SDR 시스템)

  • 정용창;윤성재;이병호
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2003.10c
    • /
    • pp.391-393
    • /
    • 2003
  • 본 논문은 다양한 환경변화에 적응하는 무선 통신 기술인 SDR시스템에서 소프트웨어 다운로드 과정을 마친 후 소프트웨어 모듈들을 사용자의 요구 또는 환경에 맞게 유연한 재구성을 할 수 있도록 설계하고 재구성 과정에서 발생할 수 있는 다양한 고장이나 결함을 탐지하여 그에 대한 안전한 복구 과정을 통해 전체 시스템의 신뢰성과 가용성을 향상시키는 결함허용 방식의 모듈재구성 메커니즘을 제안한다.

  • PDF

A Framework for Self-managed Software Service Robot Software (서비스 로봇을 위한 Self-Managed 소프트웨어 프레임워크 개발)

  • Park, Soo-Yong;Chang, Hyeong-Soo;Kim, Dong-Sun;Ko, In-Young;Park, Yeon-Chool;Lee, Kwan-Woo
    • Communications of the Korean Institute of Information Scientists and Engineers
    • /
    • v.24 no.3 s.202
    • /
    • pp.35-42
    • /
    • 2006
  • 본 논문에서는 내장형 소프트웨어 시스템, 특히 로봇 소프트웨어를 위한 self-managed 소프트웨어 개발 프레임워크로서 SHAGE 프레임워크를 제안하였다. SHAGE 프레임워크는 소프트웨어를 실행시간에 동적으로 변경시킬 수 있도록 지원하는 여러 모듈로 구성되어 있다. Observer가 외부 상황을 관찰하고 관찰된 상황이 Architecture Broker로 전달되면 후보 아키텍처 재구성 전략을 검색하고 Component Broker가 구체화 컴포넌트들을 검색한 후 상황에 적절한 아키텍처 재구성 전략과 컴포넌트 구성을 Decision Maker가 선택한다. Reconfigurator가 선택된 전략과 컴포넌트 구성을 기초로 로봇의 아키텍처를 재구성한다. 적응행위를 Evaluator가 평가하고 그 결과를 Learner가 축적하여 나중에 Decision Maker가 사용할 수 있게 한다. 프레임워크의 효용성을 확인하기 위해서 실제 로봇을 이용한 사례연구를 수행하였고, 이 실험을 통해 적응 과정을 확인하였다. 로봇은 상황과 사용자의 피드백에 적응하였다.

Software Architecture Specification and Restructuring Method for Reuse (재사용을 위한 소프트웨어 아키텍쳐 명세와 재구성 방법)

  • 이윤수
    • Journal of the Korea Computer Industry Society
    • /
    • v.3 no.3
    • /
    • pp.341-350
    • /
    • 2002
  • Software architectures can be restructured by modification and update during design processes, and appropriate software architectures for developments can be designed more than one. Therefore, it is required to specify efficiently the modification elements of architectures and restructuring method of designed architecture through various aspects. In this paper, we proposed software architecture restructuring mechanism that can restructure legacy architecture and a new software architecture designed with reuse of it in integrated form. And, we define specification elements and structure of the proposed restructured architecture specification. It provides the method that can reference and reuse architectures designed with various aspects of developers in architecture design processes. In addition, it supports flexible specification method for specification of modification elements such as revision, substitution, update of legacy software architecture.

  • PDF

A Restructuring Technique of Legacy Software Systems for Unit Testing (단위테스트를 위한 레거시소프트웨어시스템의 재구성 기법)

  • Moon, Joong-Hee;Lee, Nam-Yong
    • The KIPS Transactions:PartD
    • /
    • v.15D no.1
    • /
    • pp.107-112
    • /
    • 2008
  • The maintenance of legacy software systems is very important in the field of a software engineering. In the maintenance, a regression test confirms the behavior preserving of the software which has been changed but most of regression tests are done in a system level and rarely done in a unit test level because there is no test case. This paper proposes how to modify legacy software systems and make unit test cases as an asset. It uses a technique with a specific module of a real software development project and analyzes test coverage results. After this, if a study about automatic restructuring techniques and a test case generation proceeds continuously, we can expect the big advance of legacy software systems maintenance.