KR20090065721A - 인터페이스를 이용한 요구사항 추적/관리 방법 및 시스템 - Google Patents

인터페이스를 이용한 요구사항 추적/관리 방법 및 시스템 Download PDF

Info

Publication number
KR20090065721A
KR20090065721A KR1020070133179A KR20070133179A KR20090065721A KR 20090065721 A KR20090065721 A KR 20090065721A KR 1020070133179 A KR1020070133179 A KR 1020070133179A KR 20070133179 A KR20070133179 A KR 20070133179A KR 20090065721 A KR20090065721 A KR 20090065721A
Authority
KR
South Korea
Prior art keywords
interface
design model
requirements
requirement
source code
Prior art date
Application number
KR1020070133179A
Other languages
English (en)
Other versions
KR100976545B1 (ko
Inventor
박병훈
Original Assignee
티쓰리큐 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 티쓰리큐 주식회사 filed Critical 티쓰리큐 주식회사
Priority to KR1020070133179A priority Critical patent/KR100976545B1/ko
Publication of KR20090065721A publication Critical patent/KR20090065721A/ko
Application granted granted Critical
Publication of KR100976545B1 publication Critical patent/KR100976545B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3624Software debugging by performing operations on the source code, e.g. via a compiler
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명은 인터페이스를 이용한 요구사항 추적/관리 방법 및 시스템에 관한 것으로, 더욱 상세하게는 객체 지향 방법에 의한 소프트웨어 개발 시스템에서 설계 모델 단계의 요구사항에 대한 인터페이스를 정의하여 정의된 인터페이스를 이용하여 설계 모델 단계의 요구사항을 쉽게 추적 및 관리하는 방법에 관한 것이다.
본 발명의 바람직한 특징에 의한 인터페이스를 이용한 요구사항 추적/관리 방법 및 시스템은, 객체 지향 방법에 의한 소프트웨어 개발 시스템에서 설계 모델 단계의 요구사항을 추적 및 관리하는 방법에 있어서, (a) 설계모델 작성기로부터 요구사항을 작성하는 단계; (b) 객체 지향 언어의 소스코드 작성기로부터 상기 요구사항에 대한 상위 인터페이스를 정의하고, 상위 인터페이스에 대응되도록 구체적인 요구사항에 대한 하위 인터페이스를 정의하는 단계; (c) 상기 소스코드 작성기로부터 상기 요구사항에 대한 객체를 생성하여 소스 코딩하는 단계; (d) 상기 소스 코딩후, 생성된 소스코드로부터 상기 정의된 인터페이스에 따라 설계 모델 단계의 요구사항을 추적하는 단계; 를 포함하는 인터페이스를 이용한 요구사항 추적/관리 방법과, 인터페이스를 이용한 요구사항을 추적 및 관리 시스템에 있어서, 객체지향 방법에 의한 소프트웨어 개발 시스템의 설계 모델 단계의 요구사항을 작성하는 설계모델 작성기; 상기 설계모델 작성기로부터 작성된 요구사항에 대응하는 소스 코딩 단계에서 요구사항에 대한 인터페이스를 정의하고, 정의된 인터페이스에 따라 구체적 요구사항 정의 및 대응되는 객체 생성에 의한 소스코드를 코딩하는 소스코 드 작성기;상기 소스코드 작성기로부터 소스코드 코딩후, 인터페이스를 이용하여 설계 모델 단계의 구체적인 요구사항을 추적하거나 코딩된 소스코드를 문서화하고, 문서를 통하여 인터페이스를 이용한 설계 모델 단계의 구체적인 요구사항을 추적하며, 추적된 요구사항에 대한 확인 및 변경하는 소스코드 편집기를 포함하는 인터페이스를 이용한 요구사항 추적/관리 시스템을 제공한다.
객체지향, 소프트웨어 유지보수, 소프트웨어 재사용, 인터페이스, 요구사항

Description

인터페이스를 이용한 요구사항 추적/관리 방법 및 시스템{REQUIREMENT TRACKING AND MANAGING METHOD OF SOFTWARE DEVELOPMENT METHODOLOGY BY OBJECT-ORIENTED LANGUAGE USING INTERFACE AND SYSTEM THERE OF}
본 발명은 인터페이스를 이용한 요구사항 추적/관리 방법 및 시스템에 관한 것으로, 더욱 상세하게는 객체 지향 방법에 의한 소프트웨어 개발 시스템에서 설계 모델 단계의 요구사항에 대한 인터페이스를 정의하고 정의된 인터페이스를 이용하여 설계 모델 단계에서의 요구 사항 추적 뿐 아니라 소스 수준에서도 요구사항을 쉽게 추적 및 관리하는 방법에 관한 것이다.
일반적으로 소프트웨어 개발을 위한 소프트웨어 개발 방법론(SOFTWARE DEVELOPMENT METHODOLOGY )은 구조적 개발 방법론, 정보공학 개발 방법론, 객체 지향 방법론 등으로 분류되는데, 최근에는 객체 지향 방법론을 많이 이용함으로써 개발이 빠르게 진행되고, 추후 소프트웨어 재사용등에 활용할 수 있다. 이러한 객체 지향 방법론에는 다양한 설계 모델이 접목되는데, 특히 UML(Unified Modeling Language, 이하 'UML')을 이용한 설계모델이나 CBD(Components Based Development, 이하 'CBD') 개발 방법에 의한 컴포넌트 설계가 많이 활용되고 있다.
여기에서 UML은 요구사항 분석, 시스템 설계, 시스템 구현 등의 시스템 개발 과정에서 개발자간 의사소통을 원활히 하기 위한 통합 모델링 언어로, 유스케이스 다이어그램, 클래스 다이어그램 등의 13개(UML 2.0기준)의 다이어그램을 기반으로 객체지향 소프트웨어를 개발하기 위한 풍부한 분석 및 설계 장치를 제공한다.
또한, CBD는 소프트웨어 개발시에 컴포넌트 개념을 도입하여 컴포넌트를 정의 및 설계하고, 이 컴포넌트에 의해 구체적인 소스 코딩을 하는 소프트웨어 개발 방법론으로서, 개발 이후 이식성이 높아 소프트웨어를 컴포넌트 수준에서 재사용이 가능 하도록 하는 유용한 측면이 있다.
그러나, 상기와 같은 설계모델 및 개발 방법을 활용하여 객체 지향 소프트웨어를 개발하더라도 설계 모델과 소스코드간에 불일치할 가능성이 높으며, 실질적으로 불일치하는 경우가 발생되면 설계 모델과 소스코드를 유지 보수하는데 상당한 어려움이 있었다.
특히, 설계 모델 단계의 요구사항을 해당 소스코드로부터 추적하기가 어려워 소프트웨어 재사용에 활용하는데 어려운 경우가 많았으며, 재사용하더라도 시간과 노력이 많이 들어 비효율적인 측면이 있었다.
본 발명은 전술한 문제점을 해결하기 위해 안출된 것으로, 본 발명에 따르면 객체 지향 언어를 이용한 소프트웨어 개발 시스템에서 설계 모델 단계의 요구사항에 대한 정의를 인터페이스를 통하여 하고 이를 소스 수준에서도 변경이 쉽도록 소스 코딩 단계에서 인터페이스 구문을 요구사항에 대하여 정의하고, 정의된 인터페이스를 이용하여 쉽게 설계 모델 단계의 요구사항을 추적, 확인 및 변경이 가능한 인터페이스를 이용한 요구사항 추적/관리 방법 및 시스템을 제공하는 데 목적이 있다.
상기 목적을 달성하기 위한 본 발명에 의한 인터페이스를 이용한 요구사항 추적/관리 방법은, 객체 지향 방법에 의한 소프트웨어 개발 시스템에서 설계 모델 단계의 요구사항을 추적 및 관리하는 방법에 있어서, (a) 설계모델 작성기로부터 요구사항을 작성하는 단계; (b) 객체 지향 언어의 소스코드 작성기로부터 상기 요구사항에 대한 상위 인터페이스를 정의하고, 상위 인터페이스에 대응되도록 구체적인 요구사항에 대한 하위 인터페이스를 정의하는 단계; (c) 상기 소스코드 작성기로부터 상기 요구사항에 대한 객체를 생성하여 소스 코딩하는 단계; (d) 상기 소스 코딩후, 생성된 소스코드로부터 상기 정의된 인터페이스에 따라 설계 모델 단계의 요구사항을 추적하는 단계를 포함하는 인터페이스를 이용한 요구사항 추적/관리 방법을 제공한다.
본 발명의 바람직한 특징에 의하면, 상기 (b)단계 이후에, (b-1) 상기 요구사항에 대한 설계 모델로써, UML 설계 모델 사용 여부를 판단하는 단계; (b-2) UML 설계 모델 사용에 따라 UML 설계 모델을 작성하는 UML 설계모델 작성기로부터 상기 요구사항에 대응되는 유스케이스를 작성하는 단계; (b-3) 상기 소스코드 작성기로부터 상기 유스케이스에 대한 상위 인터페이스를 정의하는 단계; (b-4) 상기 상위 인터페이스에 대응되도록 구체적인 유스케이스에 대한 하위 인터페이스를 정의하는 단계를 더 포함한다.
본 발명의 더욱 바람직한 특징에 의하면, (b-5) 상기 요구사항에 대한 설계 모델로써, CBD 설계 모델 사용 여부를 판단하는 단계; (b-6) CBD 설계 모델 사용에 따라 CBD 설계모델 작성기로부터 상기 요구사항에 대응되는 컴포넌트의 상위 인터페이스를 정의하는 단계; (b-7) 상기 상위 인터페이스에 대한 구체적인 컴포넌트의 하위 인터페이스를 정의하는 단계를 더 포함한다.
본 발명의 더욱 더 바람직한 특징에 의하면, 상기 (c) 단계는 (c-1) 소스 코딩된 소스코드를 문서화하는 단계; (c-2) 상기 (c-1)단계에 의해 생성된 문서로부터 상기 정의된 인터페이스에 따라 설계 모델 단계에서 정의된 요구사항을 추적하는 단계를 더 포함한다.
본 발명의 더욱 더 바람직한 특징에 의하면, 상기 (d) 단계는 (d-1) 추적된 요구사항을 참조하여 소스코드 편집기로부터 요구사항의 확인 및 변경에 의한 소스코드를 갱신하는 단계를 더 포함한다.
상기 목적을 달성하기 위한 본 발명의 인터페이스를 이용한 요구사항 추적/ 관리 시스템은, 인터페이스를 이용한 요구사항을 추적 및 관리 시스템에 있어서, 객체지향 방법에 의한 소프트웨어 개발 시스템의 설계 모델 단계의 요구사항을 작성하는 설계모델 작성기; 상기 설계모델 작성기로부터 작성된 요구사항에 대응하는 소스 코딩 단계에서 요구사항에 대한 인터페이스를 정의하고, 정의된 인터페이스에 따라 구체적 요구사항 정의 및 대응되는 객체 생성에 의한 소스코드를 코딩하는 소스코드 작성기; 상기 소스코드 작성기로부터 소스코드 코딩후, 인터페이스를 이용하여 설계 모델 단계의 구체적인 요구사항을 추적하거나 코딩된 소스코드를 문서화하고, 문서를 통하여 인터페이스를 이용한 설계 모델 단계의 구체적인 요구사항을 추적하며, 추적된 요구사항에 대한 확인 및 변경하는 소스코드 편집기를 포함하는 인터페이스를 이용한 요구사항 추적/관리 시스템을 제공한다.
본 발명의 바람직한 특징에 의하면, 상기 설계모델 작성기는, UML 설계 모델을 이용하여 상기 요구사항에 대한 유스케이스를 작성하는 UML 설계모델 작성기; CBD 설계 모델을 이용하여 상기 요구사항에 대한 컴포넌트 정의 및 생성하는 CBD 설계모델 작성기를 더 포함하되, 상기 소스코드 작성기는, 상기 유스케이스에 대한 상위 인터페이스를 정의하고, 상위 인터페이스에 대응되도록 구체적인 유스케이스의 하위 인터페이스를 정의하며, 상기 컴포넌트에 대한 상위 인터페이스를 정의하고, 상위 인터페이스에 대응되도록 구체적인 컴포넌트의 하위 인터페이스를 정의한다.
이상에서와 같이, 본 발명인 인터페이스를 이용한 요구사항 추적/관리 방법 및 시스템은, 코딩시에 인터페이스 구문을 이용하여 구체적인 요구사항에 대한 인터페이스를 정의함으로써, 코딩 이후 소프트웨어 재사용 또는 소트프웨어 유지 보수 등을 목적으로 설계 모델 단계의 요구사항을 확인할 때 정의된 인터페이스를 이용함으로써, 비교적 쉽게 요구사항 추적, 확인 및 변경이 가능한 효과가 있다.
이하, 본 발명의 바람직한 일 실시예를 첨부 도면을 참조하여 상세하게 설명하면 다음과 같다.
본 발명에서 인터페이스라 함은 C++, Smalltalk(스몰코크), JAVA(자바) 등과 같은 객체 지향 언어(OBJECT-ORIENTED LANGUAGE)에서 사용되는 개념으로, 자바 언어를 예를 들어 설명하면 인터페이스는 클래스에 의해 구현될 수 있으며, 객체를 생성할 수 없기 때문에 클래스가 이 인터페이스를 상속하여 인터페이스에 정의된 모든 메소드를 구현해 준다. 특히, 인터페이스는 다른 인터페이스를 상속할 수 있는데, 이는 클래스가 하나의 클래스만 상속가능한 점에 비해 여러 개의 인터페이스를 다중 상속할 수 있도록 한다.
도 1은 본 발명의 바람직한 일 실시예에 따른 인터페이스를 이용한 요구사항 추적/관리 시스템의 구성도이다.
도 1을 참조하여 상세하게 설명하면,
본 발명에 따른 인터페이스를 이용한 요구사항 추적/관리 시스템은 설계모델 작성기(100), 소스코드 작성기(200), 소스코드 편집기(300)를 포함하여 구성된다.
상기 설계모델 작성기(100)는 객체 지향 방법에 의한 소프트웨어 개발시 설계 모델 단계에 해당하는 설계모델을 작성하기 위한 프로그램으로, 기본적으로 요구사항을 포함하게 되며, 설계 모델에 따라 달라질 수 있으나 바람직하게는 UML 설계모델 작성기(110), CBD 설계모델 작성기(120)를 더 포함하여 구성된다.
상기 UML 설계모델 작성기(110)는 UML을 이용한 설계모델을 작성하기 위한 프로그램으로, UML 설계모델에서는 특히, 요구사항에 대한 유스케이스 다이어그램을 모델링하게 된다.
상기 CBD 설계모델 작성기(120)는 CBD 개발 방법에 의한 컴포넌트를 설계 작성하기 위한 프로그램으로, 구체적인 요구사항에 대한 컴포넌트를 설계하게 된다.
상기 소스코드 작성기(200)는 상기 설계모델 작성기(100)에 의해 요구사항, 유스케이스, 컴포넌트가 작성되면 요구사항에 대한 구체적인 객체를 생성하여 객체 지향 언어로 프로그래밍하게 된다.
이때, 상기 소스코드 작성기(200)는 객체 지향 언어에 포함된 인터페이스 구문을 이용하여 상기 설계모델 작성기(100)로부터 작성된 요구사항에 대한 인터페이스를 정의한다.
상기 정의되는 인터페이스는 구체적인 요구사항에 상속되도록 상위 개념과 하위 개념의 인터페이스로 정의되는 것이 바람직하다.
마찬가지로, UML 설계모델에 따라 작성된 유스케이스에 대한 인터페이스와 CBD 방법에 의해 생성된 컴포넌트에 대한 인터페이스를 정의하며, 정의되는 인터페 이스는 구체적인 유스케이스와 컴포넌트에 따라 상속되도록 상위, 하위 인터페이스로 정의된다.
구체적인 상위, 하위 인터페이스가 정의되면, 인터페이스가 참조할 클래스에 상속되도록 소스코드를 코딩하고, 클래스는 인터페이스의 구체적인 메소드를 구현할 수 있도록 코딩된다.
상기 소스코드 편집기(300)는 상기 소스코드 작성기(200)로부터 작성된 소스코드를 확인 및 변경하기 위한 도구로, 특히 상기 소스코딩 과정에서 인터페이스가 정의됨에 따라 정의된 인터페이스를 이용하여 각각의 인터페이스로 정의된 요구사항, 유스케이스, 컴포넌트를 추적가능하도록 하며, 최상위 단계의 요구사항을 최종적으로 추적하여 구체적인 요구사항을 쉽게 찾아낼 수 있도록 한다.
또한, 이 구체적인 요구사항에 대해 확인한 소프트웨어 개발자는 요구사항 변경 등의 작업을 통해 소프트웨어 재사용 및 유지보수에 활용할 수 있다.
도 2a 및 도 2b는 본 발명의 바람직한 일 실시예에 따른 인터페이스를 이용한 요구사항 추적/관리 방법의 순서도이다.
도 2a 및 도 2b를 참조하여 상세하게 설명하면,
본 발명에 의한 인터페이스를 이용한 요구사항 추적/관리 방법은 객체 지향 언어 중 자바 언어를 이용하여 소스코드를 작성할 수 있으며, 다음과 같은 순서로 진행된다.
먼저, 상기 설계모델 작성기(100)에 의해 설계모델 단계에서 요구사항을 작 성하면, 이 요구사항에 대한 상위 인터페이스를 상기 소스코드 작성기(200)에 의해 정의하도록 코딩한다(S100).
다음, 상기 정의된 상위 인터페이스에 대응되도록 상기 작성된 구체적인 각각의 요구사항에 대한 하위 인터페이스를 정의한다(S102).
이때, UML 설계모델의 활용함에 따라 UML 설계 모델에서 사용되는 유스케이스 다이어 그램을 작성하면 이 구체적인 각각의 유스케이스에 대한 인터페이스도 정의한다(S104, S106).
또한, CBD 개발 방법에 의해 컴포넌트를 설계하게 되면, 이 구체적인 컴포넌트에 대한 각각의 인터페이스도 정의한다(S108, S110, S112).
이때, 상기 S106, S108단계에서 정의되는 인터페이스는 상기 S102 단계에서 정의된 요구사항 인터페이스에 상속되는 하위 인터페이스로 정의되는 것이 바람직하다.
다음으로, 구체적인 설계모델에 대응되는 소스코드를 코딩하도록 한다(S116).
소스코드가 모두 작성되면, 상기 요구사항, 유스케이스 및 컴포넌트에 대한 인터페이스가 정의됨에 따라 요구사항을 추적할 수 있다(S118).
최상위 인터페이스에 해당하는 요구사항에 대한 인터페이스를 참조하여 요구사항을 확인하게 되고, 확인된 요구사항은 소프트웨어 개발자에 의해 변경되어 갱신될 수 있다(S120, S122).
또한, 상기 요구사항 추적은 소스코드를 HTML 등의 문서로 문서화한 다음 요 구사항을 추적할 수도 있다(S124, S126).
문서화됨에 따라 해당 문서로부터 정의된 인터페이스의 하위 인터페이스에서 상위 인터페이스로 순차적으로 참조함에 따라 최상위 인터페이스의 요구사항을 확인하며, 확인된 요구사항의 변경에 의해 갱신할 수도 있다(S128,S130).
도 3은 본 발명의 바람직한 일 실시예에 따라 주문관리시스템에 대한 인터페이스를 이용한 요구사항 추적/관리 방법의 설계 모델 단계의 일 실시예이며, 도 4는 도 3의 주문관리시스템에 대한 인터페이스를 이용한 요구사항 추적/관리 방법의 인터페이스 상속 관계에 대한 개념도이다.
도 3 및 도 4를 참조하여 상세하게 설명하면,
도 3은 주문관리시스템에 대한 소프트웨어 개발시에 설계 모델을 나타낸 것으로, 기본적으로 요구사항이 작성된다(S300).
다음, UML을 이용한 설계 모델에서 사용되는 유스케이스 다이어그램이 상기 요구사항에 대응되도록 작성된다(S302).
도 4는 주문관리시스템의 상기 요구사항에 대응되는 구체적인 인터페이스를 정의하고, 각각의 인터페이스의 상속 관계를 나타내고 있다.
상기 도 3에서 작성된 설계모델을 참조하여 최상위 인터페이스부터 최하위 인터페이스 및 소스코드의 상속 관계를 설명하면 다음과 같다.
먼저 요구사항에 대한 인터페이스가 정의된다(S400).
다음에 주문관리시스템에 따라 주문관리_요구사항 인터페이스가 하위 인터페 이스로 정의된다(S402).
이때, 정의된 주문관리_요구사항 인터페이스의 자바에 의한 소스코드의 한예는 다음과 같다.
package com.requirement; import com.요구사항; /** * 주문관리 요구사항 */ public interface 주문관리_요구사항 extends 요구사항 { }
한편, UML을 이용한 설계 모델에서 유스케이스가 작성되면, 이 유스케이스에 대한 유스케이스 인터페이스를 정의한다(S404).
상기 유스케이스는 주문, 주문취소, 주문상세조회로 구체화됨에 따라 각각 주문_유스케이스, 주문취소_유스케이스, 주문상세조회_유스케이스의 하위 인터페이스를 정의한다(S406).
즉, 주문_유스케이스에 대한 자바 소스코드의 한 예는 다음과 같다.
package com.usecase; import com.유스케이스; import com.requirement.주문관리_요구사항; /** * 주문유스케이스 인터페이스 */ public interface 주문_유스케이스 extends 유스케이스, 주문관리_요구사항 { }
이때, 주문_유스케이스, 주문취소_유스케이스, 주문상세조회_유스케이스는 유스케이스 인터페이스에 상속되고, 또한 주문관리_요구사항을 참조하기 때문에 주문관리_요구사항 인터페이스에 상속되도록 하위 인터페이스로 정의된다.
한편, UML 설계 모델과 함께, CBD 방법에 의한 컴포넌트가 설계되면, 컴포넌트에 대한 인터페이스도 정의한다(S408).
다음, 주문 컴포넌트에 대한 주문 컴포넌트 인터페이스가 정의되며(S410), 이 주문 컴포넌트 인터페이스는 주문_유스케이스, 주문취소_유스케이스, 주문상세조회_유스케이스에 대한 인터페이스의 하위 인터페이스로 정의되는 것이 바람직하다.
상기 주문 컴포넌트 인터페이스에 대한 구체적인 자바 소스코드의 한 예는 다음과 같다.
package com.component; import com.usecase.주문상세조회_유스케이스; import com.Component; import com.usecase.주문_유스케이스; import com.usecase.주문취소_유스케이스; /** * 주문컴포넌트 플레그 인터페이스 */ public interface 주문컴포넌트 extends 주문상세조회_유스케이스, Component, 주문_유스케이스, 주문취소_유스케이스 { }
주문 컴포넌트의 구체적인 컴포넌트로 OrderUI, OrderSVC, OrderDao가 설계되고, 각각에 대한 인터페이스가 상기 주문 컴포넌트의 하위 인터페이스로 정의된다(S412).
상기 OrderSVC에 대한 구체적인 자바 소스코드의 한 예는 다음과 같다.
package com.component.svc; import com.component.주문컴포넌트; /** * 주문서비스 */ public interface OrderSvc extends 주문컴포넌트 { }
각각의 OrderUI, OrderSVC, OrderDao에 대한 인터페이스는 구체적인 변수 및 메소드가 포함된 클래스를 참조하도록 프로그래밍되며(S414), 주문서비스 구현 클래스인 OrderSVC에 대한 자바 소스코드의 한 예는 다음과 같다.
package com.component.svc; /** * 주문서비스 구현 클래스 */ public class OrderSvcImpl implements OrderSvc { public OrderSvcImpl(){ } public void finalize() throws Throwable { } }
도 4와 같은 인터페이스 상속 관계에 의해 하위 소스 코드에서 상위 단계의 인터페이스를 순차적으로 참조함으로써, 주문관리시스템에 대한 요구사항을 쉽게 추적할 수 있으며, 나아가 요구사항 변경 등의 소프트웨어 유지 보수에 활용할 수 있도록 한다.
도 1은 본 발명의 바람직한 일 실시예에 따른 인터페이스를 이용한 요구사항 추적/관리 시스템의 구성도.
도 2a 및 도 2b는 본 발명의 바람직한 일 실시예에 따른 인터페이스를 이용한 요구사항 추적/관리 방법의 순서도.
도 3은 본 발명의 바람직한 일 실시예에 따라 주문관리시스템에 대한 인터페이스를 이용한 요구사항 추적/관리 방법의 설계 모델 단계의 일 실시예.
도 4는 도 3의 주문관리시스템에 대한 인터페이스를 이용한 요구사항 추적/관리 방법의 인터페이스 상속 관계에 대한 개념도.
<도면의 주요부분에 대한 참조 부호의 설명>
100 : 설계모델 작성기 110 : UML 설계모델 작성기
120 : CBD 설계모델 작성기 200 : 소스코드 작성기
300 : 소스코드 편집기

Claims (7)

  1. 객체 지향 방법에 의한 소프트웨어 개발 시스템에서 설계 모델 단계의 요구사항을 추적 및 관리하는 방법에 있어서,
    (a) 설계모델 작성기로부터 요구사항을 작성하는 단계;
    (b) 객체 지향 언어의 소스코드 작성기로부터 상기 요구사항에 대한 상위 인터페이스를 정의하고, 상위 인터페이스에 대응되도록 구체적인 요구사항에 대한 하위 인터페이스를 정의하는 단계;
    (c) 상기 소스코드 작성기로부터 상기 요구사항에 대한 객체를 생성하여 소스 코딩하는 단계;
    (d) 상기 소스 코딩후, 생성된 소스코드로부터 상기 정의된 인터페이스에 따라 설계 모델 단계의 요구사항을 추적하는 단계;
    를 포함하는 인터페이스를 이용한 요구사항 추적/관리 방법.
  2. 제 1 항에 있어서, 상기 (b)단계 이후에,
    (b-1) 상기 요구사항에 대한 설계 모델로써, UML 설계 모델 사용 여부를 판단하는 단계;
    (b-2) UML 설계 모델 사용에 따라 UML 설계 모델을 작성하는 UML 설계모델 작성기로부터 상기 요구사항에 대응되는 유스케이스를 작성하는 단계;
    (b-3) 상기 소스코드 작성기로부터 상기 유스케이스에 대한 상위 인터페이스를 정의하는 단계;
    (b-4) 상기 상위 인터페이스에 대응되도록 구체적인 유스케이스에 대한 하위 인터페이스를 정의하는 단계;
    를 더 포함하는 것을 특징으로 하는 인터페이스를 이용한 요구사항 추적/관리 방법.
  3. 제 2 항에 있어서,
    (b-5) 상기 요구사항에 대한 설계 모델로써, CBD 설계 모델 사용 여부를 판단하는 단계;
    (b-6) CBD 설계 모델 사용에 따라 CBD 설계모델 작성기로부터 상기 요구사항에 대응되는 컴포넌트의 상위 인터페이스를 정의하는 단계;
    (b-7) 상기 상위 인터페이스에 대한 구체적인 컴포넌트의 하위 인터페이스를 정의하는 단계;
    를 더 포함하는 것을 특징으로 하는 인터페이스를 이용한 요구사항 추적/관리 방법.
  4. 제 1항에 있어서, 상기 (c) 단계는
    (c-1) 소스 코딩된 소스코드를 문서화하는 단계;
    (c-2) 상기 (c-1)단계에 의해 생성된 문서로부터 상기 정의된 인터페이스에 따라 설계 모델 단계에서 정의된 요구사항을 추적하는 단계;
    를 더 포함하는 것을 특징으로 하는 인터페이스를 이용한 요구사항 추적/관리 방법.
  5. 제 1항에 있어서, 상기 (d) 단계는
    (d-1) 추적된 요구사항을 참조하여 소스코드 편집기로부터 요구사항의 확인 및 변경에 의한 소스코드를 갱신하는 단계;
    를 더 포함하는 것을 특징으로 하는 인터페이스를 이용한 요구사항 추적/관리 방법.
  6. 인터페이스를 이용한 요구사항을 추적 및 관리 시스템에 있어서,
    객체지향 방법에 의한 소프트웨어 개발 시스템의 설계 모델 단계의 요구사항을 작성하는 설계모델 작성기;
    상기 설계모델 작성기로부터 작성된 요구사항에 대응하는 소스 코딩 단계에서 요구사항에 대한 인터페이스를 정의하고, 정의된 인터페이스에 따라 구체적 요구사항 정의 및 대응되는 객체 생성에 의한 소스코드를 코딩하는 소스코드 작성기; 및
    상기 소스코드 작성기로부터 소스코드 코딩후, 인터페이스를 이용하여 설계 모델 단계의 구체적인 요구사항을 추적하거나 코딩된 소스코드를 문서화하고, 문서를 통하여 인터페이스를 이용한 설계 모델 단계의 구체적인 요구사항을 추적하며, 추적된 요구사항에 대한 확인 및 변경하는 소스코드 편집기;
    를 포함하는 인터페이스를 이용한 요구사항 추적/관리 시스템.
  7. 제 6항에 있어서,
    상기 설계모델 작성기는, UML 설계 모델을 이용하여 상기 요구사항에 대한 유스케이스를 작성하는 UML 설계모델 작성기; 및
    CBD 설계 모델을 이용하여 상기 요구사항에 대한 컴포넌트 정의 및 생성하는 CBD 설계모델 작성기를 더 포함하되,
    상기 소스코드 작성기는, 상기 유스케이스에 대한 상위 인터페이스를 정의하고, 상위 인터페이스에 대응되도록 구체적인 유스케이스의 하위 인터페이스를 정의하며,
    상기 컴포넌트에 대한 상위 인터페이스를 정의하고, 상위 인터페이스에 대응되도록 구체적인 컴포넌트의 하위 인터페이스를 정의하는 것을 특징으로 하는 인터페이스를 이용한 요구사항 추적/관리 시스템.
KR1020070133179A 2007-12-18 2007-12-18 인터페이스를 이용한 요구사항 추적/관리 시스템 KR100976545B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070133179A KR100976545B1 (ko) 2007-12-18 2007-12-18 인터페이스를 이용한 요구사항 추적/관리 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070133179A KR100976545B1 (ko) 2007-12-18 2007-12-18 인터페이스를 이용한 요구사항 추적/관리 시스템

Publications (2)

Publication Number Publication Date
KR20090065721A true KR20090065721A (ko) 2009-06-23
KR100976545B1 KR100976545B1 (ko) 2010-08-17

Family

ID=40993942

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070133179A KR100976545B1 (ko) 2007-12-18 2007-12-18 인터페이스를 이용한 요구사항 추적/관리 시스템

Country Status (1)

Country Link
KR (1) KR100976545B1 (ko)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101513056B1 (ko) * 2013-11-06 2015-05-04 주식회사 엔에스이 요구사항 추적 관리 시스템 및 방법
KR20190129549A (ko) * 2018-05-11 2019-11-20 니덱모빌리티코리아 주식회사 비언어 요구사항 정보에 대한 소스코드 추적이 가능한 시스템 및 방법
CN110751361A (zh) * 2019-09-03 2020-02-04 福建省农村信用社联合社 一种银行需求条目级管理方法及系统
KR102588597B1 (ko) * 2023-08-24 2023-10-12 주식회사 리얼라이즈소프트 Uml 시퀀스 다이어그램의 대체 에디터로서 오퍼레이션 로직 디자이너를 이용하여 프로그램을 설계하는 방법 및 그를 이용한 장치
WO2024005318A1 (ko) * 2022-06-28 2024-01-04 황수진 프로그래밍 모델을 이용한 자동프로그래밍 시스템 및 방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040069530A (ko) * 2003-01-29 2004-08-06 주식회사 신지소프트 전자 제품의 원격 제어 방법 및 시스템

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101513056B1 (ko) * 2013-11-06 2015-05-04 주식회사 엔에스이 요구사항 추적 관리 시스템 및 방법
KR20190129549A (ko) * 2018-05-11 2019-11-20 니덱모빌리티코리아 주식회사 비언어 요구사항 정보에 대한 소스코드 추적이 가능한 시스템 및 방법
CN110751361A (zh) * 2019-09-03 2020-02-04 福建省农村信用社联合社 一种银行需求条目级管理方法及系统
CN110751361B (zh) * 2019-09-03 2024-02-20 福建省农村信用社联合社 一种银行需求条目级管理方法及系统
WO2024005318A1 (ko) * 2022-06-28 2024-01-04 황수진 프로그래밍 모델을 이용한 자동프로그래밍 시스템 및 방법
KR102588597B1 (ko) * 2023-08-24 2023-10-12 주식회사 리얼라이즈소프트 Uml 시퀀스 다이어그램의 대체 에디터로서 오퍼레이션 로직 디자이너를 이용하여 프로그램을 설계하는 방법 및 그를 이용한 장치

Also Published As

Publication number Publication date
KR100976545B1 (ko) 2010-08-17

Similar Documents

Publication Publication Date Title
Batory et al. Composition validation and subjectivity in GenVoca generators
US8010938B2 (en) Computer method and system for pattern specification using meta-model of a target domain
Whittle et al. Scenario modelling with aspects
Jifeng et al. rCOS: A refinement calculus of object systems
Grammel et al. A generic traceability framework for facet-based traceability data extraction in model-driven software development
Sánchez Cuadrado et al. Generic model transformations: write once, reuse everywhere
KR100976545B1 (ko) 인터페이스를 이용한 요구사항 추적/관리 시스템
CN109522007B (zh) 面向安全关键嵌入式系统的SysML模型向AADL模型自动转换方法
Moreno et al. An overview of model-driven web engineering and the MDA
Rose et al. Genericity for model management operations
Daun et al. Requirements viewpoint
Demuth et al. Supporting the co-evolution of metamodels and constraints through incremental constraint management
Amelunxen et al. Checking and enforcement of modeling guidelines with graph transformations
Grunske Formalizing architectural refactorings as graph transformation systems
Buchmann et al. Unifying modeling and programming with ALF
Cuadrado et al. Flexible Model-to-Model Transformation Templates: An Application to ATL.
Liu et al. Model-driven design of tools for multi-domain systems with loosely coupled metamodels
Mu et al. Specification of modelling languages in a flexible meta-model architecture
Pons et al. Traceability across refinement steps in UML modeling
Seidl et al. Generative software product line development using variability-aware design patterns
Harbo et al. Communication oriented modeling of evolving systems of systems
Fries A framework for transforming structured analysis and design artifacts to UML
Giachetti et al. Using UML profiles to interchange DSML and UML models
Rajabi et al. Coevolution patterns to detect and manage uml diagrams changes
Strittmatter et al. Supplementary material for the evaluation of the layered reference architecture for metamodels to tailor quality modeling and analysis

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130530

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140721

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160811

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180419

Year of fee payment: 8

R401 Registration of restoration
FPAY Annual fee payment

Payment date: 20180525

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20190809

Year of fee payment: 10