KR100935685B1 - 소프트웨어 개발 장치 및 그 방법 - Google Patents

소프트웨어 개발 장치 및 그 방법 Download PDF

Info

Publication number
KR100935685B1
KR100935685B1 KR1020070133213A KR20070133213A KR100935685B1 KR 100935685 B1 KR100935685 B1 KR 100935685B1 KR 1020070133213 A KR1020070133213 A KR 1020070133213A KR 20070133213 A KR20070133213 A KR 20070133213A KR 100935685 B1 KR100935685 B1 KR 100935685B1
Authority
KR
South Korea
Prior art keywords
requirements
requirement
design
module
minimum
Prior art date
Application number
KR1020070133213A
Other languages
English (en)
Other versions
KR20090065742A (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 KR1020070133213A priority Critical patent/KR100935685B1/ko
Publication of KR20090065742A publication Critical patent/KR20090065742A/ko
Application granted granted Critical
Publication of KR100935685B1 publication Critical patent/KR100935685B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/10Requirements analysis; Specification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design

Landscapes

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

Abstract

본 발명은 소프트웨어 개발 장치 및 그 방법에 관한 것으로, 적어도 하나의 세부 개발 프로세스를 이용하여 소프트웨어를 개발함에 있어, 각 세부 개발 프로세스에서의 최종 산출물 각각에 식별자를 부여하고, 부여된 식별자를 사용자의 요구사항 추적에 사용함으로써, 오류, 버그에 대한 원인 규명을 쉽게 하고, 유지보수 요청에 대해서도 요구사항 추적을 통해 수정된 부분과 연관된 부분만을 테스트하고 형상 관리함으로써 비용을 줄일 수 있다.

Description

소프트웨어 개발 장치 및 그 방법{Apparatus and Method for Developing Software}
본 발명은 소프트웨어 개발 장치 및 그 방법에 관한 것으로, 좀더 구체적으로는, 소프트웨어 개발시 사용자 요구사항의 추적성을 확보하여 구현 완료된 소프트웨어의 개발 완료 여부 판단과 개발 완료된 소프트웨어의 변경 요청 사항이 발생했을 때 효율적으로 유지보수 할 수 있는 소프트웨어개발 장치 및 그 방법에 관한 것이다.
본 발명은 정보통신부의 IT 성장동력기술개발사업의 일환으로 수행한 연구로부터 도출된 것이다(과제관리번호: 2006-S-038-02, 과제명: 모바일 컨버전스 컴퓨팅을 위한 단말적응형 임베디드 운영체제 기술개발).
요구사항 추적 관리 기술은 요구공학에서 주로 다루는 기술이다. 기존의 요구공학에서는 주로 사용자의 요청사항을 잘 정제하여 개발자들이 이해할 수 있는 수준으로 명세화하는 것이 주관심사였다. 하지만, 사용자가 만족하는 최종 소프트웨어를 개발하기 위해서는 단순히 사용자의 최초 요청사항을 어떻게 잘 정제하는가 보다는 개발의 마지막 단계인 테스트까지 사용자의 요구사항이 제대로 반영되도록 추적 관리해 주어야 한다.
소프트웨어의 규모가 대형화되고, 소프트웨어 개발자가 요구사항 전문가, 아키텍트, 설계자, 코더, 테스터 등과 같이 세분화되어 개발에 참여하게 됨으로써 요구사항 추적 관리의 필요성은 더욱 증대되고 있다. 최초 사용자의 요구사항이 왜곡되지 않고 다음 개발자에게 전달된다면 소프트웨어 오류 발생을 상당 부분 줄일 수 있다. 뿐만 아니라, 오류 발생 시 추적이 용이하고 오류 수정도 체계적으로 할 수 있다.
요구사항 추적 관리는 테스트 분야에서도 활용도가 높다. 일반적으로 테스트 프로세스에서는 테스트케이스 작성이 제일 힘들고 시간이 많이 걸린다. 단순히 요구사항을 갖고 테스트케이스를 만들거나 설계서를 보고 테스트케이스를 만들 경우에는 한계가 있다. 왜냐하면 사용자의 요구사항은 각 개발 단계에 따라 다른 형태로 진화하면서 개발됨으로써 그에 따라 테스트 추가 작업이 발생하기 때문이다. 즉, 사용자의 요구사항은 개발 완료 여부를 판단하는 테스트 작업에 사용될 수 있고 정제된 요구사항은 세부 테스트케이스가 될 수 있다. 정제된 요구사항은 설계 단계에서는 여러가지 설계 모델로 표현되어 코더에게 전달되며 코더는 설계 모델들을 개발 언어에 맞게 구현한다. 따라서 설계 모델들이 제대로 요구사항을 반영했는지, 구현 언어의 특성으로 인하여 추가되는 테스트 항목은 없는지를 고려해야 한다.
요구사항 추적 관리는 소프트웨어 유지보수 과정에서도 많은 도움을 준다. 유지보수 관련 요청 상황이 발생하면 해당 유지보수 요구사항에 해당하는 부분만을 추적해서 변경하면 시간과 비용을 절약할 수 있다. 이처럼 요구사항 추적 관리 기술은 테스트 단계와 유지보수 단계에서 많이 사용된다.
소프트웨어 품질 보증과 테스트의 중요성으로 인하여 테스트 기반 개발 방법론에서는 요구사항 추적과 더불어 각 개발 단계에서 수시로 테스트 활동을 수행함으로써 최종 테스트의 부담을 줄이고 다음 단계로 진행하기 전에 검증을 거친다.
관련하여 종래 소개된 선행 연구들에서는 제한된 환경 내에서 특정 부분에 대한 테스팅을 위한 코드 자동 생성을 하고자 하였다. 그러나 이렇게 자동 생성된 테스트 프로그램들은 소프트웨어 또는 소프트웨어 컴포넌트에 대한 기능/비기능적 테스트를 포함한 완벽한 품질 보증을 할 수 없다. 이러한 한계로 인하여 결국 사람의 노력이 추가로 들어가야 한다. 또한 정확한 테스트를 위해서 테스트 전 단계의 산출물인 코드에만 의존하면 테스트의 커버리지가 작아지는데, 이는 코드의 모듈에 입력값과 출력값을 정하는 것에 대한 기준이나 그 모듈이 궁극적으로 달성하고자 하는 목표는 코드에 정확히 기술되어 있지 않기 때문이다. 더불어, 테스트 결과 오류가 발생할 경우에도 적절한 조치를 취하기 힘든 문제점도 발생한다.
본 발명은 상술한 문제점을 해결하기 위한 것으로, 소프트웨어 개발 라이프사이클에 의해 구현 완료된 소프트웨어를 대상으로 개발 완료 여부를 결정하고, 개발 완료된 소프트웨어의 변경 사항 발생시 효율적으로 유지보수하는 소프트웨어 개발 장치 및 그 방법에 관한 것이다.
본 발명의 일 측면에 따른 소프트웨어 개발 방법은, 적어도 하나의 세부 개발 프로세스를 포함하며, 각 세부 개발 프로세스에서의 최종 산출물 각각에 식별자를 부여하고, 부여된 식별자를 사용자의 요구사항 추적에 사용하는 것을 특징으로 한다.
상기 최종 산출물에 부여된 식별자는 최소 요구사항 ID, 설계 모델 ID, 구현 코드 모듈 ID 중 적어도 하나를 포함한다.
상기 세부 개발 프로세스는, 요구사항 정의 및 명세 프로세스, 설계 프로세스, 구현 프로세스, 및 테스트 프로세스 중 적어도 하나를 포함한다.
상기 요구사항 정의 및 명세 프로세스는, 사용자에 의해 요청된 요구사항들을 다시 더 이상 나눠지지 않는 최소 요구사항 단위로 정제하는 단계; 상기 최소 요구사항들이 중복되지 않도록 독립성을 확보하는 단계; 독립성이 확보된 상기 최소 요구사항들의 연관성을 분석하는 단계; 및 실제 요구사항 추적 및 개발의 단위로 사용될 최소 요구사항에 ID를 부여하는 단계를 포함한다.
상기 설계 프로세스는, 상기 요구사항 정의 및 명세 프로세스에서 정의된 최소 요구사항별 설계 모델들을 개발하는 단계; 상기 개발된 설계 모델들 중 유사 설계 모델들 간 통합 및 그룹핑을 수행하는 단계; 및 상기 설계 모델을 검증하고, 검증 완료된 설계 모델에 ID를 부여하는 단계를 포함한다.
상기 구현 프로세스는, 상기 설계 프로세스에서 검증된 설계 모델에 대해 설계 모듈 그룹 단위로 모듈을 구현하는 단계와 상기 구현된 모듈에 대해 구현 코드 모듈 단위로 ID를 부여하는 단계를 포함한다.
상기 테스트 단계는, 상기 설계 모델과 상기 코드를 이용하여 테스트케이스를 작성하고 테스팅을 수행하는 단계와 상기 테스팅을 수행한 결과가 최초 요구사항 및 최소 요구사항을 어느 정도 만족하는지 분석하는 단계를 포함한다. 상기 소프트웨어 개발 방법은, 최종 산출물에 부여된 식별자 및 상기 테스트케이스를 요구사항 추적 정보로서 저장하는 단계를 포함한다.
본 발명의 다른 측면에 따른 소프트웨어 개발 장치는, 요구사항 정의 및 명세 모듈, 설계 모듈, 구현 모듈 및 테스트 모듈을 포함하며, 상기 각 모듈에서의 최종 산출물에 대해 식별자를 부여하고, 부여된 식별자를 사용자의 요구사항 추적에 사용하는 것을 특징으로 한다.
상기 소프트웨어 개발 장치는, 상기 최종 산출물에 부여된 식별자 및 상기 테스트 모듈에 의해 작성된 테스트케이스를 요구사항 추적 정보로서 저장하는 요구사항 추적 관리 모듈을 더 포함하며, 사용자로부터 소프트웨어 변경 요청이 입력되는 경우, 상기 변경 요청을 요구사항으로 간주하고 정제하여, 상기 요구사항 추적 정보를 이용해 변경된 사항을 추출하고, 변경된 사항에 따라 상기 설계 모듈 및 구현 모듈의 동작을 제어한다.
본원발명에 따르면, 사용자 요구사항 단위로 개발을 진행하고 관리함으로써 요구사항-설계 모델-구현 코드 모듈-테스트케이스를 패키지화할 수 있는데, 본 발명에 따른 방법은 아키텍처 기반 개발 방법이나 모델 기반 개발 방법에 비해 테스 트케이스 작성이 용이하며 테스트 활동시 발생되는 오류, 버그에 대해 그 원인을 규명하기 쉽고, 따라서 정확한 목적(요구사항 단위)에 의한 테스트 수행과 요구사항 추적에 의해 쉽게 테스트케이스 작성을 할 수 있다. 또한 유지보수 요청에 대해서도 요구사항 추적을 통해 어느 부분을 수정해야 할지 쉽게 알 수 있으며 수정된 부분과 연관된 부분만을 테스트하고 형상 관리함으로써 비용을 줄일 수 있다.
본 발명은 크게 일반적인 소프트웨어 개발 라이프사이클에 의해 구현 완료된 소프트웨어를 대상으로 개발 완료 여부를 결정할 수 있도록 도와주는 요구사항 추적성 확보 기술과 이러한 기술을 이용해 개발 완료된 소프트웨어의 변경 사항 발생으로 시 효율적으로 유지보수하는 방법으로 구성된다.
요구사항 추적성 확보 기술은 소프트웨어의 규모가 커짐에 따라 개발인력의 증가와 전문화로 각 개발 단계로 개발이 진행할 때 개발하고자 하는 고객의 요구사항이 제대로 개발되고 있는지를 확인할 수 있도록 해준다. 그리고 최종 구현이 완료된 후 고객에게 인도되기 위한 테스트로 사용될 수 있다. 요구사항 추적이 확보된 소프트웨어의 유지보수 방법은 소프트웨어의 변경 요청이 발생했을 때 재개발 범위 선정과 테스트, 산출물 형상관리를 효율적으로 할 수 있는 방법이다. 이러한 요구사항 추적성 확보 기술과 이를 이용한 유지보수 방법은 소프트웨어의 규모가 크고 각 개발 단계가 여러 개발 인력으로 구성된 경우엔 소프트웨어의 품질 보증을 위해서도 더욱 필요한 방법이다.
상기 목적을 달성하기 위하여, 본 발명은 사용자 요구사항을 추적이 용이하 도록 가공한 후 이를 기반으로 소프트웨어를 개발하며 각 개발 프로세스에서 파생되는 중간 산출물 및 최종 구현 코드, 테스트케이스들을 요구사항 추적 관리기에 의해 요구사항 추적 정보로 관리한다. 기존의 소프트웨어 개발 방법에서는 서로 특성이 다른 중간 산출물(요구사항 명세서, 설계서, 구현 코드, 테스트케이스) 단위로 연결되어 개발이 진행된 반면 본 발명에서는 최소 요구사항 단위로 각 개발 프로세스에 맞게 ID들을 부여하여 요구사항의 처음 명세부터 구현 완료 때까지의 흐름을 유지할 수 있도록 했다. 즉 요구사항 추적 정보를 활용하면 최소 요구사항 하나하나 단위로 어떻게 설계 모델로 설계되었고 구현 프로세스에서 어떤 모듈로 실제 구현되었으며 이를 테스트케이스에 어떻게 반영했는지를 한눈에 파악할 수 있다.
이하, 본 발명의 바람직한 실시예를 도면을 참조하면서 설명하기로 한다.
도 1은 본 발명이 적용되는 소프트웨어 개발 장치의 블록 구성을 나타낸다.
본 발명이 적용되는 소프트웨어 개발 장치(100)는 사용자의 요청사항을 바탕으로 한 요구사항 정의 및 명세 모듈(110), 설계 모듈(120), 구현 모듈(130), 테스트 모듈(140), 요구사항 추적 관리 모듈(150), 및 요구사항 추적 정보 저장부(160)를 포함하여 구성된다.
요구사항 정의 및 명세 모듈(110)은 정의된 요구사항들을 다시 더 이상 나눠지지 않는 최소 요구사항 단위로 정제하고, 최소 요구사항들이 중복되지 않도록 독립성을 확보한다. 또한, 독립성이 확보된 최소 요구사항들의 연관성을 분석하고, 실제 요구사항 추적 및 개발의 단위로 사용될 최소 요구사항에 ID를 부여하는 역할 을 담당한다.
설계 모듈(120)에서는 요구사항 정의 및 명세 모듈(110)에 의해 정의된 최소 요구사항별 설계 모델들을 개발하고, 유사 설계 모델들 간의 통합 및 그룹핑을 수행한다. 설계 모듈(120)은 또한, 이렇게 작성된 설계 모델을 검증하고, 검증 완료된 설계 모델에 ID를 부여하는 역할을 담당한다.
구현 모듈(130)에서는 설계 모듈 그룹 단위로 모듈을 구현하며, 구현 코드 모듈 단위로 ID를 부여한다.
테스트 모듈(140)은 요구사항 추적 정보를 기반으로 각 관련 개발 프로세스에서 파생된 결과들을 테스트할 수 있도록 테스트케이스를 작성하며, 또한, 테스트 결과와 최초 요구사항, 최소 요구사항의 만족도를 분석하는 역할을 수행한다.
상술한 요구사항 정의 및 명세 모듈(110), 설계 모듈(120), 구현 모듈(130), 테스트 모듈(140)에 의해 부여된 최소 요구사항 ID, 설계 모델 ID, 구현 코드 모듈 단위 ID 등과 테스트케이스들은 요구사항 추적 관리 모듈(150)에 의해 요구사항 추적 정보로 관리되고, 이러한 요구사항 추적 정보는 요구사항 추적 정보 저장부(160)에 저장되어 관리된다.
도 2는 본 발명에 따른 소프트웨어 개발 단계에서 요구사항 추적성을 확보하기 위한 세부 처리 흐름을 나타낸다.
사용자의 요구 사항이 입력되면, 정의된 요구사항들을 다시 더 이상 나눠지지 않는 최소 요구사항 단위로 정제하고(S201), 최소 요구사항들이 중복되지 않도 록 독립성을 확보하며(S202), 독립성이 확보된 최소 요구사항들의 연관성을 분석한다(S203). 최소 요구사항들 간의 연관성이 분석된 후에는, 실제 요구사항 추적 및 개발의 단위로 사용될 최소 요구사항에 ID를 부여한다(S204). 각 최소 요구사항에 ID가 부여되면, 상술한 S201 내지 S204 단계를 통해 정의된 최소 요구사항별로 설계 모델들을 개발한다(S205). 최소 요구사항별로 개발된 설계 모델들을 분석하여, 유사 설계 모델들 간에는 통합 및 그룹핑 작업을 수행한다(S206). 통합 및 그룹핑된 최소 요구사항 기반 설계 모델들은 검증 작업을 거치게 되고(S207), 검증이 완료된 설계 모델에 대해서는 ID가 부여된다(S208). 개발, 통합 및 그룹핑, 검증을 거친 설계 모델에 대해서는 설계 모듈 그룹 단위로 코드를 구현하게 된다(S209). 또한, 구현 코드 모듈 단위로 ID가 부여된다(S210).
상술한 설계 및 구현 단계가 완료되면, 테스트 과정을 거치게 되는데, 테스트 과정에는, 요구사항 추적 정보를 기반으로 각 관련 개발 프로세스에서 파생된 결과들을 테스트할 수 있도록 테스트케이스를 작성하는 단계(S211)와 테스트 결과와 최초 요구사항, 최소 요구사항의 만족도를 분석하는 단계(S212)가 포함된다. 단계 S204, S208, 및 S210 단계에서 부여된 ID들과 테스트케이스들은 본 발명에 따른 요구사항 추적 정보로 저장되고, 관리된다(S213).
도 3은 개발된 소프트웨어에 변경 요청이 발생했을 때, 본 발명에 따라서 효율적으로 유지보수하는 과정을 나타낸 순서를 보여준다.
본 발명에 따른 소프트웨어 개발 장치는, 개발 환경의 상황 변화에 따라 변 경 요청이 발생하는 경우(S301의 Yes), 변경 요청 사항을 만족시키기 위해 추가 개발이 필요한지를 판단한다(S302). 추가 개발이 필요한 경우(S302의 Yes)에는 본 발명에 따른 요구사항 추적 기반 소프트웨어 개발 방법에 따라 신규 소프트웨어 개발을 수행한다(S310).
추가 개발이 필요 없고 기존 요구사항의 변경인 경우(S302의 No)에는 변경 요청된 요구사항에 대한 영향을 분석하여(S303), 관련 요구사항들을 검색한 후, 도 1에 도시된 요구사항 추적 정보 저장부(160)에 저장된 요구사항 추적 정보를 이용해서 설계 모델을 수정한다(S304). 또한, 수정된 설계 모델과 관련된 코드 모듈을 추적하여 코드를 변경한다(S305).
이렇게 변경된 설계 모델 정보와 코드 정보를 이용하여 테스트케이스를 작성하고 테스트한다(S306). 테스팅을 마친 결과물이 사용자로부터 변경 요청된 요구사항을 만족하는지 확인하고(S307), 만족하지 못하는 경우(S307의 No)에는 영향 분석 단계(S303)로 돌아가 단계 S303 내지 S307 단계를 반복한다.
테스팅 결과물이 변경된 요구사항을 만족하는 경우(S307의 Yes)에는 변경된 설계 모델 정보와 코드 정보를 요구사항 추적 정보에 반영하여 형상 관리한다(S309).
도 1은 본 발명이 적용되는 소프트웨어 개발 장치의 블록 구성을 나타낸 도면.
도 2는 본 발명에 따른 소프트웨어 개발 단계에서 요구사항 추적성을 확보하기 위한 세부 처리 흐름을 나타낸 도면.
도 3은 개발된 소프트웨어에 변경 요청이 발생했을 때, 본 발명에 따라서 효율적으로 유지보수하는 과정을 나타낸 순서도.

Claims (13)

  1. 요구사항 정의 및 명세 프로세스, 설계 프로세스, 구현 프로세스, 및 테스트 프로세스를 포함하고,
    상기 각 프로세스에서의 최종 산출물 각각에 식별자를 부여하고, 부여된 식별자를 사용자의 요구사항 추적에 사용하며,
    상기 요구사항 정의 및 명세 프로세스는, 사용자에 의해 요청된 요구사항들을 더 이상 나눠지지 않는 최소 요구사항 단위로 정제하는 단계; 및 요구사항 추적 및 개발의 단위로 사용될 상기 최소 요구사항에 ID를 부여하는 단계를 포함하는 것을 특징으로 하는, 소프트웨어 개발 방법.
  2. 청구항 1에 있어서,
    상기 최종 산출물에 부여된 식별자는 최소 요구사항 ID, 설계 모델 ID, 구현 코드 모듈 ID 중 적어도 하나를 포함하는, 소프트웨어 개발 방법.
  3. 삭제
  4. 청구항 1에 있어서,
    상기 요구사항 정의 및 명세 프로세스는,
    상기 최소 요구사항들이 중복되지 않도록 독립성을 확보하는 단계; 및
    독립성이 확보된 상기 최소 요구사항들의 연관성을 분석하는 단계를 포함하는, 소프트웨어 개발 방법.
  5. 청구항 1에 있어서,
    상기 설계 프로세스는,
    상기 요구사항 정의 및 명세 프로세스에서 정의된 최소 요구사항별 설계 모델들을 개발하는 단계;
    상기 개발된 설계 모델들 중 유사 설계 모델들 간 통합 및 그룹핑을 수행하는 단계; 및
    상기 설계 모델을 검증하고, 검증 완료된 설계 모델에 ID를 부여하는 단계를 포함하는, 소프트웨어 개발 방법.
  6. 청구항 5에 있어서,
    상기 구현 프로세스는,
    상기 설계 프로세스에서 검증된 설계 모델에 대해 설계 모듈 그룹 단위로 모듈을 구현하는 단계; 와
    상기 구현된 모듈에 대해 구현 코드 모듈 단위로 ID를 부여하는 단계를 포함 하는, 소프트웨어 개발 방법.
  7. 청구항 6에 있어서,
    상기 테스트 프로세스는,
    상기 설계 모델과 상기 코드를 이용하여 테스트케이스를 작성하고 테스팅을 수행하는 단계; 와
    상기 테스팅을 수행한 결과가 최초 요구사항 및 최소 요구사항을 어느 정도 만족하는지 분석하는 단계를 포함하는, 소프트웨어 개발 방법.
  8. 청구항 7에 있어서,
    상기 최종 산출물에 부여된 식별자 및 상기 테스트케이스를 요구사항 추적 정보로서 저장하는 단계를 더 포함하는, 소프트웨어 개발 방법.
  9. 요구사항 정의 및 명세 모듈, 설계 모듈, 구현 모듈 및 테스트 모듈을 포함하고,
    상기 각 모듈에서의 최종 산출물에 대해 식별자를 부여하고, 부여된 식별자를 사용자의 요구사항 추적에 사용하며,
    상기 요구사항 정의 및 명세 모듈은, 사용자에 의해 요청된 요구사항들을 더 이상 나눠지지 않는 최소 요구사항 단위로 정제하고, 요구사항 추적 및 개발의 단위로 사용될 상기 최소 요구사항에 ID를 부여하는 것을 특징으로 하는, 소프트웨어 개발 장치.
  10. 청구항 9에 있어서,
    상기 최종 산출물에 부여된 식별자 및 상기 테스트 모듈에 의해 작성된 테스트케이스를 요구사항 추적 정보로서 저장하는 요구사항 추적 관리 모듈을 더 포함하는, 소프트웨어 개발 장치.
  11. 청구항 10에 있어서,
    상기 요구사항 추적 관리 모듈은,
    사용자로부터 소프트웨어 변경 요청이 입력되는 경우, 상기 변경 요청을 요구사항으로 간주하고 정제하여, 상기 요구사항 추적 정보를 이용해 변경된 사항을 추출하고, 변경된 사항에 따라 상기 설계 모듈 및 구현 모듈의 동작을 제어하는, 소프트웨어 개발 장치.
  12. 청구항 11에 있어서,
    상기 요구사항 추적 관리 모듈은,
    상기 테스트 모듈로 하여금 상기 변경된 사항에 대해서만 테스트를 더 수행하도록 지시하는 것을 특징으로 하는, 소프트웨어 개발 장치.
  13. 청구항 9에 있어서,
    상기 요구사항 정의 및 명세 모듈은,
    상기 최소 요구사항들이 중복되지 않도록 독립성을 확보하며, 독립성이 확보된 상기 최소 요구사항들의 연관성을 분석하는 것을 특징으로 하는, 소프트웨어 개발 장치.
KR1020070133213A 2007-12-18 2007-12-18 소프트웨어 개발 장치 및 그 방법 KR100935685B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070133213A KR100935685B1 (ko) 2007-12-18 2007-12-18 소프트웨어 개발 장치 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070133213A KR100935685B1 (ko) 2007-12-18 2007-12-18 소프트웨어 개발 장치 및 그 방법

Publications (2)

Publication Number Publication Date
KR20090065742A KR20090065742A (ko) 2009-06-23
KR100935685B1 true KR100935685B1 (ko) 2010-01-08

Family

ID=40993958

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070133213A KR100935685B1 (ko) 2007-12-18 2007-12-18 소프트웨어 개발 장치 및 그 방법

Country Status (1)

Country Link
KR (1) KR100935685B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11301244B1 (en) 2020-11-16 2022-04-12 International Business Machines Corporation Machine learning based tracking of derivaitive code

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101286713B1 (ko) * 2011-11-18 2013-07-16 서강대학교산학협력단 Sns문장분석을 통한 사용자 요구사항 수집방법
KR102018943B1 (ko) * 2016-12-20 2019-11-04 주식회사 에스원 소프트웨어 요구사항 통합 추적 관리 시스템 및 그의 관리 방법
KR102041422B1 (ko) * 2018-09-06 2019-11-27 조용행 응용 프로그램 설계 방법 및 장치
KR102354808B1 (ko) * 2019-03-26 2022-01-25 한국전자통신연구원 컴포넌트 개발 장치 및 방법
CN112148252B (zh) * 2020-09-03 2024-02-09 广东云徙智能科技有限公司 一种基于软件研发需求全生命周期的管理系统及跟踪方法
KR102696519B1 (ko) * 2022-06-28 2024-08-20 황수진 프로그래밍 모델을 이용한 자동프로그래밍 시스템 및 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060190922A1 (en) * 2005-02-24 2006-08-24 Franz Chen Method and system for managing and tracking software development lifecycles
JP2007122135A (ja) * 2005-10-25 2007-05-17 Hitachi Ltd 開発支援装置、開発支援方法、および、開発支援プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060190922A1 (en) * 2005-02-24 2006-08-24 Franz Chen Method and system for managing and tracking software development lifecycles
JP2007122135A (ja) * 2005-10-25 2007-05-17 Hitachi Ltd 開発支援装置、開発支援方法、および、開発支援プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11301244B1 (en) 2020-11-16 2022-04-12 International Business Machines Corporation Machine learning based tracking of derivaitive code

Also Published As

Publication number Publication date
KR20090065742A (ko) 2009-06-23

Similar Documents

Publication Publication Date Title
US11733975B1 (en) System and method for migrating legacy software to a system common architecture
KR100935685B1 (ko) 소프트웨어 개발 장치 및 그 방법
US10324830B2 (en) Conditional upgrade and installation of software based on risk-based validation
US7895575B2 (en) Apparatus and method for generating test driver
US11055208B1 (en) Systems and methods for automatically assessing and conforming software development modules to accessibility guidelines in real-time
JP2007012003A (ja) フィーチャ指向ソフトウェア製品ラインの開発環境を提供するシステム
US20080276221A1 (en) Method and apparatus for relations planning and validation
CN107562969A (zh) 航空发动机控制系统软件的集成方法和装置
CN106557878B (zh) 开发项目管理方法及装置
CN108563572A (zh) 一种回归测试方法、装置及服务器
JP5200675B2 (ja) シミュレーション装置,シミュレーション方法,シミュレーションプログラム及び同プログラムを記録したコンピュータ読取可能な記録媒体
Fourneret et al. Selective test generation method for evolving critical systems
US8515727B2 (en) Automatic logic model build process with autonomous quality checking
CN117744548A (zh) 一种芯片验证方法、装置和存储介质
CN112988578A (zh) 一种自动化测试方法和装置
Kouroshfar et al. Process patterns for component-based software development
CN110399156B (zh) 面向航天软件的在轨升级方法
CN107229568B (zh) 带过去时态的线性时态逻辑性质的有界运行时验证方法
Sporer et al. Incorporation of model-based system and software development environments
Stammel et al. Tool-supported estimation of software evolution effort in service-oriented systems
Durak et al. Quality assessment and quality improvement in model engineering
KR100501411B1 (ko) 비기능적 성능조건이 강제되는 소프트웨어 모형화시스템및 방법
CN111752823A (zh) 一种车载电源应用软件的测试方法、装置及设备
JP2021117666A (ja) コード検査ツール、コード検査方法
Deuter et al. Measuring the software size of sliced V-model projects

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee