• 제목/요약/키워드: 객체지향 소프트웨어 메트릭

검색결과 24건 처리시간 0.024초

객체지향 메트릭을 이용한 변경 발생에 대한 예측 모형 (A Prediction Model for Software Change using Object-oriented Metrics)

  • 이미정;채흥석;김태연
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제34권7호
    • /
    • pp.603-615
    • /
    • 2007
  • 다양한 이유로 소프트웨어는 변경이 될 수 있으며 이는 유지보수 비용의 상승을 초래한다. 소프트웨어 메트릭은 클래스의 특성에 대한 정량적인 값으로서 유지보수 비용, 결함의 가능성 여부 등을 예측하는데 사용되고 있다. 본 논문에서는 대표적인 객체지향 메트릭과 산업체의 실제 소프트웨어 개발 과정에서 발생하는 변경 발생 횟수와의 관계를 제시한다. 규모, 복잡도, 결합도, 상속과 다형성 측면에서 7개의 메트릭이 사용되었으며, .NET 플랫폼 기반의 정보 시스템의 개발 과정에서 변경 발생 횟수에 대한 자료를 수집하였다. 본 논문에서는 다중회귀분석 기법을 이용하여 사용된 객체지향 메트릭으로부터 변경 발생횟수를 예측하는 모형을 제시한다.

객체지향 설계 행위를 보존하는 메트릭 기반 재구조화 기법 (A Metric based Restructuring Technique Preserving the Behavior of Object-Oriented Designs)

  • 이병정
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제30권10호
    • /
    • pp.912-924
    • /
    • 2003
  • 설계 재구조화는 설계 구성 요소들을 재조직함으로써 품질을 향상시켜 소프트웨어 유지보수 비용을 줄인다. 객체지향 메트릭은 설계 결함을 발견하고 설계 구성 요소들을 재조직하기 위한 변형을 찾는데 도움을 제공한다. 기본적으로 이러한 설계 변형은 초기 시스템의 행위를 보존해야 한다. 본 논문에서는 객체지향 설계 행위를 보존하는 메트릭 기반 재구조화 기법을 집합론에 기반하여 기술하고, 자바로 작성된 응용 프로그램에 적용하여 유효성을 확인한다. 그리고 재구조화의 효과성을 확인하기 위하여 시뮬레이티드 어닐링(simulated annealing) 알고리즘을 사용한 방법과 비교한다.

메트릭을 이용한 객체 지향 설계 재구조화 (Restructuring of Object-Oriented Designs using Metrics)

  • 이병정;우치수
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제28권6호
    • /
    • pp.414-428
    • /
    • 2001
  • 객체 지향 설계를 재구조화하기 위해서는 메소드와 속성들 사이의 관계를 파악해야 한다. 메소드와 속성들이 동일한 클래스에 속하는지를 추론하는 과정은 클래스 자료 참조 분석과 메소드 호출 분석에 의존한다. 최근의 많은 소프트웨어들은 규모가 방대하고 복잡하여 개발자가 도구를 사용하지 않고 수작업으로 설계를 재구조화기 어려우며 또한 너무 많은 시간과 노력이 요구된다. 본 논문에서는 메트릭을 이용하여 객체 지향 설계를 자동적으로 재구조화하는 방법을 기술한다. 먼저 메소드, 속성, 클래스, 그리고 그들의 관계츨 추상화된 모델로 표시한다. 이 모델을 기반으로 객체 지향 설계를 정량적으로 측정할 응집도와 결합도 메트릭을 정의한다. 본 논문의 메크릭은 재고조화 과정 동안에 여러 다른 설계들을 효율적으로 비교하기 위한 유용한 기준을 제공한다. 기본 재구조화 행위들과 그 의미(semantics)를 정의하고 메트릭과 행위들을 사용하여 설계를 자동적으로 재구조화한다.

  • PDF

객체지향 메트릭과 유지보수성과의 관계에 대한 실험적 연구 (An Empirical Study of Relationship between Object-oriented Metrics and Maintainability)

  • 정우성;채흥석
    • 정보처리학회논문지D
    • /
    • 제13D권2호
    • /
    • pp.241-250
    • /
    • 2006
  • 유지보수는 소프트웨어 생명 주기에서 대부분의 비용이 소요되는 중요한 활동이다. 기존에 소프트웨어 유지보수 활동에 소요되는 비용의 예측을 위하여 다양한 소프트웨어 메트릭이 제안되었다. 본 논문에서는 객체지향 소프트웨어의 유지보수성과 기존에 제안된 메트릭과의 관계를 파악하기 위해서 수행된 실험의 결과를 소개한다. 실험에서는 메트릭으로서 LCOM, RFC, DAC, LOC를 사용하였으며 클라이언트/서버 및 웹 기반 시스템을 대상으로 유지보수 활동 시 실제로 소요되는 시간을 측정하였다. 본 실험을 통해서 메트릭과 유지보수 비용과의 관계에 대한 기존의 일반적인 주장을 실제 시스템의 유지보수 활동을 통해서 확인한 결과 기존의 주장과 달리 일부 시스템의 경우에는 기존의 주장을 뒷받침하지 못할 수 있음을 확인하였다. 구체적으로 말하면 소프트웨어 아키텍처, 설계 패턴 등이 적용되는 개발된 최근의 소프트웨어에서는 메트릭과 유지보수 활동과의 관계에 대한 추가적인 많은 연구가 필요함을 확인하였다.

Java 프로그램의 품질평가를 지원하는 메트릭 측정 시스템 (Metrics Measurement System Supporting Quality Evaluation of Java Program)

  • 박옥자;유철중;장옥배
    • 한국정보과학회논문지:컴퓨팅의 실제 및 레터
    • /
    • 제7권2호
    • /
    • pp.151-164
    • /
    • 2001
  • 최근 가장 대표적인 객체지향 언어로 사용되는 Java는 일반적인 애플리케이션뿐만 아니라 인터넷/인트라넷 기반 프로그램 개발, 나아가 컴포넌트 기반 개발에 이르기까지 다양한 분야에서 개발 언어로 사용되고 있다. 따라서 개발된 프로그램의 재사용 및 유지보수 관점에서 프로그램 품잘평가는 보다 중요한 쟁점이 되고 있으므로 기존의 Java 애플리케이션을 포함하여 현재 개발된 프로그램의 품질평가에 필요한 메트릭 측정이 필요하다. 하지만, 이미 제안된 객체지향 소프트에어 메트릭이 현재의 Java 프로그램의 특성에 적합한지에 대한 타당성 검증이 필요하므로 본 논문에서는 기존의 객체지향 메트릭이 Java 프로그램에 적합한지 여부를 결정하기 위해 필요한 메트릭 측정 시스템을 구축하여 Java 프로그램에 적합한 메트릭 제안을 지원하고자 한다. 본 시스템은 Briand가 기존의 객체지향 소프트웨어 메트릭을 수학적으로 정형화시켜 분류한 메트릭을 Java 프로그램에 적용시켜 제안된 메트릭이 프로그램에 타당성 있는지 검증함으써 명확한 품질평가도구 개발을 지원하고자 한다. 본 시스템을 통해 Java 소스 프로그램으로부터 정량적 정보를 보다 빠르고 정확하게 산출함으로써 기존의 객체지향 메트릭에 대한 검증을 비교 및 분석 수행할 수 있으며, 타당성 문제가 있다면 새로운 메트릭의 제안 및 보완을 고려함으로써 Java 프로그램에 적합한 메트릭 확립을 가능하게 할 것이다.

  • PDF

객체지향 설계의 특성을 고려한 품질 평가 메트릭스 (Metrics Measuring a Quality based on Object-Oriented Design Characteristics)

  • 김유경;박재년
    • 한국정보처리학회논문지
    • /
    • 제7권2호
    • /
    • pp.373-384
    • /
    • 2000
  • 지금까지의 객체지향 메트릭스에 대한 연구는 단순히 품질의 일부 요소만을 다루고 있으며, 대부분의 메트릭스는 클래스 사이의 관계 정보만을 기반으로 제안되어 왔다. 이로써 객체지향 설계의 특성을 충분히 반영하지 못하고 있다. 또한 기존의 객체지향 메트릭스는 각 메트릭의 계산 결과를 평가하기 위하여 제한값(threshold)을 제공하고 있으며, 형식적으로 정의되지 않은 것이 대부분이다. 이들의 문제점은 계산 과정이 복잡하여 쉽게 적용할 수 없고 프로젝트의 성격이나 소프트웨어의 특성에 따라 제한 값이 달라질 수 있다는 것이다. 이에 본 논문에서는 객체지향 설계의 특성인 크기, 복잡도, 결합도 및 응집도를 고려하여 설계의 품질을 평가하기 위한 메트릭 집합을 제시한다. 제시된 메트릭 집합은 평균값에 대한 비율(proportion)을 사용하여 평균값을 상회하는 클래스 및 설계 요소들을 쉽게 파악할 수 있도록 하였다. 이것은 설계 품질을 저하시키고 있는 클래스를 찾아내어 평균값에 근접한 수준을 h다시 설계할 수 있도록 함으로써, 구현하는 동안 직면하는 설계 결점을 개발 초기에 발견할 수 있도록 하였다. 본 논문에서 정의한 메트릭 집합은 측정원칙에 의하여 분석적으로 평가된다. 그 결과로서 메트릭에 대하여 요구되는 성질의 대부분을 만족하고 있음을 알 수 있다. 도한 플랫폼과 무관하게 사용할 수 있도록 웹 브라우저 및 자바 애플릿으로 개발되어 분산 인트라넷 환경을 지원하는 평가 도구 ASSOD(ASsessment System of Object oriented Design)를 설계한다.

  • PDF

객체지향 기반 소프트웨어 컴포넌트의 내부 품질 메트릭을 이용한 외부 품질 추정 기법 (Techniques to Predict External Quality from Internal Quality Metrics for Object Oriented Software Components)

  • 박지환;신석규;김수동
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제30권7_8호
    • /
    • pp.618-641
    • /
    • 2003
  • 소프트웨어 제품의 품질을 평가하기 위한 방법으로써 품질 요소, 품질 항목 및 여러 가지 메트릭을 이용한 품질 모델들이 제시되어 왔다. 하지만, 소프트웨어의 품질을 보다 정확하게 평가하기 위해서는 각각의 특징에 맞는 특화된 모델이 필요하다. 본 논문에서는 소프트웨어 컴포넌트 개발에 있어서 개발이 진행중인 상태의 소프트웨어 내부 속성에 적절한 메트릭을 적용시킨 결과를 이용하여 개발 완료 후의 소프트웨어가 가지게 되는 외부 품질을 어떻게 추정하는지에 대한 외부 품질 추정 모델을 제시한다. 소프트웨어 품질을 측정하기 위한 메트릭을 적용한 결과로써 품질 자체를 측정하는데 한정하지 않고, ISO 9126에서 제시하는 소프트웨어의 내부 속성을 이용하여 소프트웨어 컴포넌트 개발의 각 산출물에 어떻게 적용시키는지에 대한 모델을 예제를 통하여 제시한다.

디자인 패턴 기반 소프트웨어의 테스트 가능성 분석 (Analysis for Testability of Software based on Design Pattern)

  • 강영남;최은만
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2004년도 봄 학술발표논문집 Vol.31 No.1 (B)
    • /
    • pp.427-429
    • /
    • 2004
  • 잘 설계된 모든 객체지향 구조들은 패턴들로 가득 차 있다는 점에서 볼 때, 디자인 패턴은 상당히 유용하다. 특히 정확성. 강건성, 유연성, 재사용성, 효율성 측면에서 볼 때, 디자인 패턴은 충분히 가치가 있다. 이 논문에서는 디자인 패턴을 사용한 소프트웨어에서 테스트 가능성은 어떻게 달라지는지를 분석하고자 한다. 테스트 가능성을 측정하는 메트릭을 이용하여, 패턴이 적용된 소프트웨어와 적용되지 않은 소프트웨어에서의 메트릭을 분석한다. 측정된 값은 디자인 패턴을 사용하지 않은 소프트웨어에 비해, 사용한 소프트웨어에서 몇몇 메트릭이 낮은 값을 보였다 이것은 디자인 패턴을 적용하는 것이 오류의 가능성이나 테스트 케이스의 수를 줄여 준다는 것을 의미한다. 또한 어떤 디자인 패턴이 적용되었는지를 알고 있을 때 그 디자인 패턴에 맞는 테스트 케이스가 무엇인지 분석하였다.

  • PDF

패키지 중심의 객체지향 코드의 컴포넌트 추출을 위한 메트릭 (A Metric of Component Extraction for Package based Object Oriented Codes)

  • 이종호;류성열
    • 한국전자거래학회지
    • /
    • 제8권2호
    • /
    • pp.113-129
    • /
    • 2003
  • 컴포넌트 기반 소프트웨어 개발(CBSD: Component Based Software Development)이 재사용을 통한 소프트웨어 개발의 효율적인 방법으로 인식되고 있다. CBSD의 목적은 새로운 시스템을 개발하고자 할 때 검증된 컴포넌트, 검증된 업무 로직을 재사용 함으로써 개발 기간을 단축하고 품질을 향상하고자 하는 것에 있다. 본 논문에서는 기 존재하는 객체지향 어플리케이션을 폐기하지 않고, 이를 기반으로 재사용 성이 높은 컴포넌트로 추출하기 위하여, 컴포넌트 추출을 위한 메트릭과 인터페이스 추출 방안을 제시하였다. 클래스간의 관계 정보를 이용하여 복잡도, 응집도와 결합도를 측정하고, 이의 결과를 이용하여 후보 컴포넌트를 추출한다.

  • PDF

객체지향 모델로부터 정적 메트릭을 이용하여 컴포넌트 기반 시스템으로 변환하는 기법 (A Transforming Technique toward Component-based System from Object-oriented Model Using Static Metrics)

  • 이은주;신우창;이병정;우치수
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제31권6호
    • /
    • pp.728-740
    • /
    • 2004
  • 점차적으로 소프트웨어의 복잡도는 높아지고 그 생명주기는 짧아지므로, 기존의 검증된 소프트웨어 요소를 재사용 하는 것이 필요하다. 그러나 기존의 객체 지향 기술은 광범위한 재사용을 유도하지 못 하였다. 컴포넌트는 객체보다 규모가 크고 특정 도메인에 적합한 특성을 가지므로, 시스템 구조화, 설명 및 개발에 있어 더 나은 수단을 제공해 준다. 또한 그 규모나 재사용성에 있어 새로운 개발환경인 분산 시스템에 더 적합하다. 본 논문에서는 객체지향 시스템을 컴포넌트 기반 시스템으로 변환하는 프로세스를 제안하였다. 해당 프로세스는 두 단계로 나뉜다. 우선, 클래스들 간의 합성 및 상속 관계를 이용하여 기본 컴포넌트를 생성한다. 그 후 기본 컴포넌트와 컴포넌트화 되지 않은 클래스들에 대해 본 논문에서 제안된 정적 메트릭과 가이드라인을 이용하여 정제하여 컴포넌트 기란 시스템으로 변환한다.