KR20010048894A - 소프트웨어 개발 통합 지원 장치 및 그 방법 - Google Patents

소프트웨어 개발 통합 지원 장치 및 그 방법 Download PDF

Info

Publication number
KR20010048894A
KR20010048894A KR1019990053771A KR19990053771A KR20010048894A KR 20010048894 A KR20010048894 A KR 20010048894A KR 1019990053771 A KR1019990053771 A KR 1019990053771A KR 19990053771 A KR19990053771 A KR 19990053771A KR 20010048894 A KR20010048894 A KR 20010048894A
Authority
KR
South Korea
Prior art keywords
project
model
information
software development
work
Prior art date
Application number
KR1019990053771A
Other languages
English (en)
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 KR1019990053771A priority Critical patent/KR20010048894A/ko
Publication of KR20010048894A publication Critical patent/KR20010048894A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/35Creation or generation of source code model driven
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 발명은 소프트웨어 시스템 개발을 지원하는 컴퓨터이용 소프트웨어 공학 도구의 개발에 관한 것으로, 개발할 시스템의 모형화 작업 및 프로젝트 관리 작업을 통합 연계함으로써 프로젝트 참여자들이 쉽고 빠르게 의사결정을 할 수 있으며, 일관된 작업환경을 제공하기 위한, 소프트웨어 개발 통합 지원 장치 및 그 방법을 제공하는데 그 목적이 있다. 이를 위해 본 발명은 소프트웨어 개발 통합 지원 장치에 있어서, 프로젝트 수행 계획 정보를 입력하고 완료된 작업의 산출 문서를 검토하여 작업의 승인 여부를 결정하기 위한 프로젝트 관리 수단; 프로젝트에 관련된 정보를 저장하기 위한 프로젝트 저장 수단; 프로젝트 진행 중에 프로젝트 저장 수단으로부터 정보를 읽어 개발자가 해야할 작업을 알려주고 완료된 작업의 산출 문서를 프로젝트 저장 수단에 저장하기 위한 프로젝트 처리 수단; 및 프로젝트 처리 수단의 제어에 따라 프로젝트에서 개발할 시스템을 모형화하기 위한 프로젝트 모형화 지원 수단을 포함하며, 본 발명은 소프트웨어 개발 시스템 등에 이용됨.

Description

소프트웨어 개발 통합 지원 장치 및 그 방법{Apparatus And Method For Integrated Support Of A Software Development}
본 발명은 소프트웨어 시스템 개발을 지원하는 컴퓨터이용 소프트웨어 공학(CASE) 도구의 개발에 관한 것으로, 특히 소프트웨어 중심의 시스템을 개발할 때, 개발할 시스템의 모형화 작업 및 프로젝트 관리 작업을 연계하여 통합 지원하는, 소프트웨어 개발 통합 지원 장치 및 그 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체에 관한 것이다.
소프트웨어 개발을 지원하는 컴퓨터이용 소프트웨어 공학(CASE:Computer Aided Software Engineering)(이하, 간단히 "CASE"라함) 도구는 지금까지 여러 종류가 개발되어 사용되고 있다. 즉, 시스템 모형화를 지원하는 모형편집도구, 오류를 검증하기 위한 테스트 도구, 개발 문서를 일괄적으로 관리해주는 형상관리 도구 등이 현재 많이 쓰이고 있으며, 프로젝트 진행을 관리할 수 있도록 해주는 도구는 현재 연구 수준에서 개발되고 있는 실정이다.
그러나, 이러한 개발 도구들은 대부분 프로젝트 참여자들의 역할에 따라 개별적으로 사용되는 도구이며, 각 프로젝트 참여자들의 역할에 따른 별도의 작업환경을 제공하고 있기 때문에 대규모 프로젝트에 따르는 작업 진척사항의 측정이나 신속한 의사결정을 요구하는 등의 관리상의 어려움은 경감시키지 못하고 있다는 문제점이 있다.
또한, 종래의 기술에 있어서는 정보공학과 객체지향 등에서 사용되는 여러 모형간 관계성을 분석하여 모형간 오류를 검증하는 도구는 없다는 문제점이 있다.
즉, 개발 시스템을 모형화하여 구현한 후 테스팅을 할 경우 디버깅이나 변경 관리 등에 많은 노력이 필요하므로 개발 초기의 분석, 설계 과정에서 정확한 모형을 만드는 것이 중요한 것은 소프트웨어 개발자라면 누구나 아는 일이지만 실현하기 어려운 일이다.
근래에 소프트웨어 시스템은 점점 대형화, 복잡화되고 있고, 지역적으로 분산된 여러 개발팀이 함께 프로젝트를 수행하는 큰 프로젝트가 많이 있어서, 프로젝트 관리는 더욱 어렵게 되고 프로젝트의 지연, 예산의 증가 등의 많은 문제가 발생하고 있으므로, 프로젝트 관리와 모형간 검증이 지원되는 모형화 작업 등을 통합 연계하는 것은 반드시 이루어져야 할 필연적인 기술이다.
본 발명은 상기 문제점을 해결하기 위하여 안출된 것으로, 개발할 시스템의 모형화 작업 및 프로젝트 관리 작업을 통합 연계함으로써 프로젝트 참여자들이 쉽고 빠르게 의사결정을 할 수 있고, 각 개발자는 언제든지 자신이 해야 할 작업을 바로 알고 수행할 수 있으며, 개발 시스템에 대한 모형을 작성할 때 여러 모형간의 일관성을 검증함으로써 보다 정확한 모형을 작성할 수 있는 일관된 작업환경을 제공하기 위한, 소프트웨어 개발 통합 지원 장치 및 그 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공하는데 그 목적이 있다.
도 1 은 본 발명에 따른 소프트웨어 개발 통합 지원 시스템의 일실시예 구성도.
도 2 는 본 발명에 따른 프로젝트 관리 서버 처리 장치 내에서의 작업 계획 처리 방법의 일실시예 흐름도.
도 3 은 본 발명에 따른 프로젝트 관리 서버 처리장치 내에서의 작업 감독 처리 방법의 일실시예 흐름도.
도 4 는 본 발명에 따른 프로젝트 관리 클라이언트 처리장치의 일실시예 상세 구성도.
도 5 는 본 발명에 따른 프로젝트 관리 클라이언트 처리장치 내에서의 작업 수행 처리 방법의 일실시예 흐름도.
도 6 은 본 발명에 따른 모형화 지원 편집도구의 일실시예 상세 구성도.
도 7 은 본 발명에 따른 모형화 지원 편집도구 내에서의 모형 작성 처리 방법의 일실시예 상세 흐름도.
도 8 은 본 발명에 따른 모형 일관성 검증 처리장치의 일실시예 상세 구성도.
도 9 는 본 발명에 따른 모형 일관성 검증 처리 방법의 일실시예 흐름도.
도 10 은 본 발명에 따른 모형 일관성 검증 처리장치 내에서의 모형 요소 정보 검출 방법의 일실시예 상세 흐름도.
도 11 은 본 발명에 따른 모형 일관성 검증 처리장치 내에서의 검증 결과 처리 방법의 일실시예 상세 흐름도.
* 도면의 주요 부분에 대한 부호의 설명 *
101 : 서버 102 : 클라이언트
103 : 네트워크 104 : 프로젝트 관리 서버 처리장치
105 : 데이터베이스 관리 장치 106 : 저장 장치
107 : 프로젝트 관리 클라이언트 처리장치
108 : 모형화 지원 편집 도구
상기 목적을 달성하기 위한 본 발명은, 소프트웨어 개발 시스템에 적용되는 소프트웨어 개발 통합 지원 장치에 있어서, 프로젝트 수행 계획 정보를 입력하고 완료된 작업의 산출 문서를 검토하여 상기 작업의 승인 여부를 결정하기 위한 프로젝트 관리 수단; 상기 프로젝트에 관련된 정보를 저장하기 위한 프로젝트 저장 수단; 상기 프로젝트 진행 중에 상기 프로젝트 저장 수단으로부터 상기 정보를 읽어 개발자가 해야할 작업을 알려주고 완료된 작업의 산출 문서를 상기 프로젝트 저장 수단에 저장하기 위한 프로젝트 처리 수단; 및 상기 프로젝트 처리 수단의 제어에 따라 상기 프로젝트에서 개발할 시스템을 모형화하기 위한 프로젝트 모형화 지원 수단을 포함한다.
또한, 본 발명은 소프트웨어 개발 시스템에 적용되는 소프트웨어 개발 통합 지원 방법에 있어서, 프로젝트 수행 계획 정보를 생성하고 상기 프로젝트에 관련된 정보를 저장하는 제 1 단계; 상기 프로젝트 진행 중에 상기 정보를 읽어 개발자가 해야할 작업을 지시하고, 완료된 작업의 산출 문서를 생성하는 제 2 단계; 및 상기 프로젝트의 진행 중에 상기 산출 문서를 검토하여 상기 작업의 승인 여부를 결정하는 제 3 단계를 포함한다.
또한, 본 발명은 소프트웨어 개발 통합 지원을 위하여, 대용량 프로세서를 구비한 소프트웨어 개발 시스템에, 프로젝트 수행 계획 정보를 생성하고 상기 프로젝트에 관련된 정보를 저장하는 제 1 기능; 상기 프로젝트 진행 중에 상기 정보를 읽어 개발자가 해야할 작업을 지시하고, 완료된 작업의 산출 문서를 생성하는 제 2 기능; 및 상기 프로젝트의 진행 중에 상기 산출 문서를 검토하여 상기 작업의 승인 여부를 결정하는 제 3 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공한다.
본 발명은 프로젝트 수행에 필요한 작업, 일정, 담당자, 검토자/승인자, 사용 도구명 등에 대한 정보를 정보저장소에 저장하고, 저장된 작업 수행 정보에 따라 각 개발자들이 등록된 모형화 지원도구 등을 이용하여 작업을 수행한 후 산출물을 정보 저장소에 등록하고, 프로젝트 관리자는 이를 검색하여 검토하고 작업 결과를 승인하는 등의 기능을 제공한다.
또한, 프로젝트 수행의 특정 시점에서 프로젝트 수행에 소요된 일정, 비용 등에 대한 평가를 위한 통계 정보를 제공하는 등의 소프트웨어 개발 통합 지원 시스템 및 연관성 있는 모형들 사이에 구체적으로 어떤 연관성이 있는지 그 관계를 정의한 검증 규칙을 바탕으로 각 모형간의 일관성을 검증하기 위한 방법을 제공한다.
즉, 본 발명을 통해 각 프로젝트 참여자(관리자, 분석가, 설계자, 프로그래머, 기타)들은 일관된 작업 환경을 공유하여 의사결정이나 각자의 작업의 효율을 극대화할 수 있다. 프로젝트 관리자는 프로젝트 관리 모듈을 통해서 프로젝트 수행을 위해 어떤 작업을 언제, 누가 수행해야 하고, 어떤 산출물을 만들어야 하는지에 대한 계획을 작성하고, 각 작업의 감독, 작업 결과의 승인 등을 수행할 수 있으며, 개발자들은 각자가 맡은 일이 무엇인지, 해당 작업을 위해서는 어떤 도구를 이용하여 어떤 산출물을 생성할 것인지, 그 산출 문서를 누구로부터 승인을 받을 것인지 등을 본 발명을 통하여 일목요연하게 알 수 있고 각자 일정에 따라 수행할 수 있다.
또한, 개발자가 시스템을 모형화하는 것을 지원하는 모형화 지원 모듈을 통해 시스템의 데이터 측면, 프로세스 측면, 분산 측면 등등의 다양한 관점에 대해 모형화 할 때 여러 모형간의 관련 모형요소 정보를 분석하여 논리적으로 일관성이 있는지 확인하여 그 결과를 모형 작성자에게 알려줌으로써, 시스템의 모형화를 올바로 할 수 있도록 지원한다.
이하, 도 1 내지 도 11 을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다.
도 1 은 본 발명에 따른 소프트웨어 개발 통합 지원 시스템의 일실시예 구성도도로서, 프로젝트 수행 계획 정보를 입력하고 완료된 작업의 산출 문서를 검토하여 승인할 수 있는 프로젝트 관리 서버 처리장치(104), 프로젝트 정보를 저장장치(106)에 저장하는 데이터베이스 관리 장치(DBMS:Database Management System)로 구성되는 서버(101)와 프로젝트 진행 중에 개발자가 해야할 작업을 알려주고 필요한 외부 지원도구를 실행시켜주는 프로젝트 관리 클라이언트 처리 장치(107), 개발할 시스템을 모형화하는데 필요한 모형화 지원 편집도구(108)로 구성되는 클라이언트(102)로 구성된다.
도 2 는 본 발명에 따른 프로젝트 관리 서버 처리장치 내에서의 작업 계획 처리 방법의 일실시예 흐름도이다.
프로젝트 관리자는 먼저 시스템에 로그인 한 후, 새로운 프로젝트를 위한 계획을 세우기 위해 프로젝트를 생성한다. 그리고 나서 그 프로젝트에서 수행할 모든 작업을 정하고 그들간의 관계를 그래픽하게 설정하여 전체 수행할 작업의 절차를 정의한다(202). 각 작업은 아래의 [표 1]과 같은 정보들이 있을 수 있다.
작업명: 수행할 작업의 명칭작업 : 개략적인 작업의 내용을 기술함.일정 : 작업의 수행 기간을 시작일, 종료일로 기술함.담당자 : 그 작업을 수행할 개발자의 역할 및 실명의 담당자 기술함.사용도구 : 그 작업을 수행할 때 필요한 외부 지원 도구명을 기술함.사용도구위치 : 외부 지원 도구가 실제 존재하는 Path(경로)명을 기술함.산출문서명 : 그 작업을 담당자가 수행하여 완료될 때 만들어지는 산출문서를 기술함승인자 : 산출물을 검토하여 승인, 거부 등의 결정을 할 책임자를 기술함.
사용도구를 정의할 때는 본 발명에 포함된 모형화 지원 편집도구(108) 뿐만 아니라 일반 문서편집기 등 모든 외부 도구를 등록할 수 있다.
모든 수행할 작업의 정의가 완료되면(203), 상기 작업 계획 정보를 정보저장장치(106)에 저장하고(204), 프로젝트 관리 서버 처리장치는 종료하게 된다(205).
도 3 은 본 발명에 따른 프로젝트 관리 서버 처리장치 내에서의 작업 감독 처리 방법의 일실시예 흐름도로서, 이것은 도 2 에서의 프로젝트 작업계획 정보를 이용하여 프로젝트의 진행을 관리할 수 있는 기능이다.
프로젝트 관리자가 개발자의 작업을 관리하기 위하여 먼저 시스템에 로그인 한 후, 관리하고자 하는 프로젝트를 선택하여 프로젝트의 현황을 파악한다(301,302). 이때 각 작업의 상태(완료, 검토 중, 준비)와 작업의 일정, 산출물, 담당자 등등 상기 프로젝트 작업계획정보를 모두 확인할 수 있다.
프로젝트 현황파악을 통해(302) 개발자가 어떤 작업을 수행한 후 산출문서를 등록하여 "검토 중" 상태인 작업이 있는지 확인하고(303), 만약 있다면 등록된 산출문서의 내용을 확인한다(305).
산출문서의 내용에 하자가 없다면 승인을 하게 될 것이고, 만약 보완할 사항이 있다면 거부한다(307).
승인을 하게 되면 해당 작업은 완료 상태로 바뀌고(308) 다른 작업이 준비 상태로 변경되어 그 작업(준비 상태의 작업)의 담장자가 수행할 수 있게 된다. 만약 거부를 하게 되면 그 작업의 상태는 다시 준비상태로 변경되어(306) 담당자는 그 작업을 다시 수행해야 한다. 이러한 방법으로 프로젝트 관리자는 각 작업의 수해를 감독하게 된다.
도 4 는 본 발명에 따른 프로젝트 관리 클라이언트 처리장치의 일실시예 상세 구성도이다.
도면에 도시된 바와 같이, 프로젝트 관리 클라이언트 처리장치(107)는 사용자와 정보를 주고 받는 그래픽 사용자 인터페이스(401), 상기 서버(101)의 저장장치(106)로부터 프로젝트 작업 계획 정보를 읽어오기 위해 메시지를 처리하는 통신메시지관리기(402), 실제 정보를 네트워크를 통해 읽어오는 네트워크 통신장치(404), 읽어온 프로젝트 작업 계획 정보를 처리하여 현재 클라이언트(102)에 로그인한 개발자가 수행할 작업을 수행할 수 있도록 처리하는 프로젝트정보 처리기(403), 상기 프로젝트 정보처리기(403)로부터 실행할 외부 지원도구에 관한 정보를 받아 실제로 개발자가 작업을 할 수 있도록 실행시키는 외부 지원도구 관리기(405)로 구성된다.
상기 외부 지원도구 관리기(405)는 상기 도구 정보가 모형화 지원편집 도구(108)이면 이것을 실행시키며, 만약 다른 도구가 등록되어 있으면, 해당되는 다른 도구를 실행시킨다.
도 5 는 본 발명에 따른 프로젝트 관리 클라이언트 처리장치 내에서의 작업 수행 처리 방법의 일실시예 흐름도이다.
개발자가 개인 아이디(ID)로 그로인을 하여, 참가하고 있는 프로젝트를 선택하고 나서 프로젝트의 현황을 파악한다(501, 502).
만약 준비 상태인 작업이 있으면(503) 그 작업을 수행하여(505), 작업이 완료되면(506) 산출문서를 작성한다. 산출문서가 모두 작성되면, 그 산출문서를 등록하게 되고, 그러면 해당 작업은 검토 중 상태로 변경된다(507). 만약 검토 중인 작업이나 완료된 작업만 있으면, 당장은 해야할 작업이 없는 것이다(504).
도 6 은 본 발명에 따른 모형화 지원 편집도구의 일실시예 상세 구성도이다.
도면에 도시된 바와 같이, 모형화 지원 편집도구(108)는, 시스템의 모형을 작성하기 위해 사용자와 정보를 교환하는 사용자 인터페이스(601), 그래픽한 모형 요소를 통하여 논리 모형을 작성할 수 있게 하는 모형 편집기(602), 각 모형 요소에 대한 명세를 작성할 수 있도록 하는 명세편집기(606), 이들 그래픽 모형 정보 및 논리 모형정보와 명세정보를 통합관리하는 통합모형정보 관리기(604), 상기 정보들을 저장하는 모형정보 저장장치(605), 저장된 모형정보를 바탕으로 오류를 분석하는 모형 일관성 검증 처리장치(603) 및 완료된 모형정보를 적절한 형태의 보고서로 만들어 주는 보고서 생성 처리장치(607)로 구성된다.
도 7 은 본 발명에 따른 모형화 지원 편집도구 내에서의 모형 작성 처리 방법의 일실시예 상세 흐름도이다.
사용자로부터 개발 시스템에 대한 모형 작성 요청(701)이 있으면, 다이어그램을 선택하고 각 다이어그램별 모형요소를 이용하여 모형을 작성하며 각 모형요소에 대해 상세한 명세를 추가한다(701,702,703).
그리고 나서 모형정보를 저장하며(704), 각 모형을 검증하여(705) 오류를 찾아내어 모형을 수정한다(706,703). 오류가 없다면 작업에 대한 보고서를 작성하고(707) 만약 더 작성할 다이어그램이 있다면 상기 과정을 반복한다(708). 모든 필요한 다이어그램 작성을 마치고 오류도 없다면 작업을 종료한다.
도 8 은 본 발명에 따른 모형 일관성 검증 처리장치의 일실시예 상세 구성도이다.
도면에 도시된 바와 같이, 모형 일관성 검증 처리장치(603)는 모형편집기의 모형정보 저장 장치(605)로부터 모형요소 정보를 추출하는 모형요소 정보 검출기(801), 모형간 일관성 검증에 관한 규칙을 저장하는 모형간 일관성 검증 규칙 저장 장치(803), 일관성 검증 규칙 정보에 따라 모형요소의 정보를 처리하여 일관성을 검증 처리하는 일관성 검증 처리기(802), 일관성 검증의 결과를 처리하여 다이어그램 편집기(804)에 전달하는 검증 결과 처리기(805)로 구성된다.
도 9 는 본 발명에 따른 모형 일관성 검증 처리 방법의 일실시예 흐름도로서, 상기 모형 일관성 검증 처리 장치(603) 내에서의 처리과정이다.
개발자가 모형화 지원 편집도구(108)로써 모형을 작성한 후 각 모형에 대한 일관성을 검증하기 위해 일관성 검증을 시작하면(901), 모형 일관성 검증 처리장치(603)는 그 모형 일관성 검증 요청을 받아 모형요소 정보를
검출한다(902). 모형요소 정보 검출에 대한 자세한 내용은 도 10 을 참조한다.
여기에서 작성된 모형요소 목록에 모형요소가 있으면(903) 모형의 타입을 확인하여 어떤 일관성 검증 규칙을 적용할지 판단하여(905) 그 모형의 일관성을 검증한다(906).
만약 오류가 있으면(907) 관련된 오류 정보를 오류 목록에 추가한다(908). 그리고, 모형목록에서 현재 검증한 모형타입을 제거하고(909) 만약 모형 목록에 다른 모형타입이 남아 있으면 위의 작업을 반복한다(903).
모든 모형 목록에 대해 검증을 마쳐 목록이 비어 있게 되면 검증 결과를 처리하고(904) 작업은 종료하게 된다.
모형간 관계 정의를 바탕으로 본 발명에서는 각 모형 내부 및 다른 모형과의 일관성 검증 규칙을 아래의 [표 2] 내지 [표 9]와 같이 제시한다.
(1) 개체 관계도
- 동일명의 개체 이름의 개체가 있는가?- 싸이클 공유(Cycle identify) 관계가 있는가?- 속성(Attribute)이 정의되지 않은 개체가 있는가?- 키(Key)가 정의 되지 않은 개체가 있는가?
(2) 프로세스 계층도와 개체관계도
- 같은 이름의 중복된 프로세스가 모두 식별되었는가?- 프로세스별 관련 개체가 식별되었는가?
(3) 자료 흐름도에서 개체와 프로세스 연관 검증 규칙
- 자료흐름도(DFD)에 있으면서 개체관계도에는 없는 개체가 있는가?- 자료흐름도(DFD)에 있으면서 프로세스 계층도에는 없는 프로세스가 있는가?
(4) 클래스 모형 내부의 검증 규칙
- 템플릿 클래스(Template Class)는 존재하는데 바운드 클래스(Bound Class)가 누락되어 있지 않은가?- 바운드 클래스(Bound Class)의 실인자 목록과 템플릿 클래스(Template Class)의 인자 개수 및 타입이 일치하는가?- 패키지(Package)와 패키지(Package) 간에는 의존성(dependency)이 있을 경우 그 의존성(dependency)을 만족시켜주는 각 패키지 내부의 클래스들 간에는 연관관계가 존재하는가?- 상태도에 존재하는 메시지 명에 따라 메시지를 받는 객체(혹은 클래스)에 그 연산이 존재하는가?- 한 클래스의 상태도에 메시지를 보내는 다른 클래스 객체가 존재할 경우 그 클래스(혹은 객체)와 연관관계가 존재하는가?
사용사례도와 순서도는 개발대상 시스템이 사용자에게 제공하는 서비스의 관점에서 작업한 모형이다. 사용사례와 사용사례 간에는 사용(〈〈uses〉〉)과 확장(〈〈extends〉〉) 관계가 있고, 이 관계는 사용사례를 구체화하는 순서도를 통해서 밝혀질 수 있다. 일관성 검증을 위한 분석 항목은 아래의 [표 6]과 같다.
(5) 사용사례 모형에서의 검증 규칙
- 순서도 상에 존재하는 액터가 사용사례도에 존재하는가?- 사용사례별 시나리오 및 순서도가 존재하는가?
UML에서는 시스템간의 상호작용 모형화를 지원하는 다이어그램으로 순서도와 협력도를 제공한다. 순서도와 협력도는 시스템을 인스턴스 수준에서 다른 관점으로 표현한 것이므로 두 다이어그램은 아래의 [표 7]과 같은 정보를 가지고 있어야 한다.
(6) 순서도와 협력도간 검증 규칙
- 순서도에 나타나는 메시지의 시간 순서와 협력도의 메시지 흐름은 같은 시간 순서로 나열하였는가?- 순서도에 동적으로 생성되는 객체가 협력도에 〈〈new〉〉메시지를 받는 객체로 표기되는가?- 협력도에서 〈〈new〉〉 메시지를 받은 객체의 명세는 〈〈transient〉〉 객체로 명기되어 있는가?- 클래스가 할당되지 않은 객체가 존재하는가.
클래스도에서 모형화한 클래스와 관계 중에서 연관관계(association relationship)를 협력도에서는 인스턴스 수준에서의 객체와 객체간의 링크로써 모형화하고 있다. 그러므로, 협력도에서 객체와 객체간의 링크와 클래스도에서의 연관관계에 관한 일관성 여부를 아래의 [표 8]과 같이 점검한다.
(7) 클래스도와 순서도 검증 규칙
- 상호작용 모형에 표기한 메시지를 클래스 모형에 연산으로 반영하였는가?- 순서도에 메시지 교환이 일어나는 객체들의 클래스들은 클래스도에서 연관관계를 가지고 있는가?- 협력도에 나타나는 객체 간 링크들이 클래스 모형에 클래스 간 연산으로 모형화 하였는가?
(9) 구현모형과 클래스도간 분석
- 모든 클래스들이 컴포넌트에 할당되어 있는가 ?- 구성요소도에 존재하는 인터페이스 클래스(interface class)가 클래스 모형에도 존재하는가 ?- 인터페이스 클래스와 〈〈calling dependency〉〉 관계(relationship)에 있는 컴포넌트는 해당 인터페이스와 〈〈uses dependency〉〉 관계에 있는 클래스를 가지고 있는가?- 전개도의 노드에 할당되지 않은 구성요소가 존재하는가?
클래스 모형에서 모형화 작업을 마친 클래스들은 모두 구현 모형에서 컴포넌트에 할당되어 있어야 한다. 이 컴포넌트는 구현 시 클래스들이 위치하게 되는 물리적 단위가 된다.
도 10 은 본 발명에 따른 모형 일관성 검증 처리장치 내에서의 모형 요소 정보 검출 방법의 일실시예 상세 흐름도로서, 도 9 에서의 모형 요소 정보 검출 과정(902)의 상세 흐름도이다.
도면에 도시된 바와 같이, 모형 일관성 검증 처리장치(603)의 처리절차는 모형요소 정보 검출 요청(1001)이 오면, 모형화 지원 편집도구(108)의 모형 정보 저장 장치(605)로부터 모형정보를 읽어 들인다(1002).
만약, 모형정보가 존재하면(1003) 각 모형에 대한 타입을 목록으로 만든다(1004). 그리고, 만약 모형 타입이 2개 이상이면(1006) 모형간 검증을 위해 관련있는 모형의 쌍을 만들어 역시 모형 목록에 추가한다(1006).
만약, 모형이 하나의 종류뿐이라면 해당 모형에 대한 검증만 수행하면 된다. 모든 관련 있는 모형의 쌍을 작성해서 모형 목록을 작성했다면(1007,1008) 모형요소 정보 검출기의 처리는 종료된다.
도 11 은 본 발명에 따른 모형 일관성 검증 처리장치 내에서의 검증 결과 처리 방법의 일실시예 상세 흐름도로서, 도 9 에서의 검증 결과 처리 과정(904)의 상세 흐름도이다.
도면에 도시된 바와 같이 모형 일관성 검증 처리장치(603)의 처리절차는 오류처리 요청이 오면(1101) 오류 목록이 비어있는지 또는 오류 내용이 있는지 확인한다(1102).
만약 오류목록이 있으면 오류 관련 모형요소 정보와 오류 내용을 정리하여 개발자가 해당 오류를 쉽게 알 수 있도록 출력 양식을 파일로 만든다(1104). 그리고, 방금 처리한 오류항목을 오류 목록에서 제거하고(1106), 아직 오류목록이 비어 있지 않으면(1102) 더 처리할 오류 항목이 있으므로 위의 처리절차를 계속한다.
만약, 오류 목록이 비어 있어서 오류 파일을 만드는 작업이 끝나면 오류 파일의 작성 끝을 표시하고(1103) 오류파일을 다이어그램편집기(804)에게 전달한다(1105).
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 있어 본 발명의 기술적 사상을 벗어나지 않는 범위내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 한정되는 것이 아니다.
상기와 같은 본 발명은 소프트웨어 시스템을 개발할 때 프로젝트 관리 측면과 시스템 모형화 측면을 통합 연계하므로써 관리자는 프로젝트 관리에 쉽고 빠른 의사결정을 할 수 있고, 개발자는 언제든지 자신이 해야 할 작업을 작업 일정에 따라 미리 정의된 도구를 통하여 작업을 수행하고 그 결과인 산출문서를 등록하여 온라인으로 승인을 받음으로써 프로젝트 수행에 있어 효율성 및 생산성을 높일 수 있는 우수한 효과가 있다.
또한, 모형화 지원 편집도구에서 모형간 일관성을 검증해주는 기능을 통하여 도구 사용자에게 자신이 작업하고 있는 다이어그램과 구성요소 간의 일관성을 즉시 확인 시켜 주므로써 모형화 작업 시의 논리적 오류를 줄일 수 있으며, 일관성의 자동 검증을 통해 시스템의 모형화 작업을 효율적으로 수행할 수 있는 우수한 효과가 있다.

Claims (10)

  1. 소프트웨어 개발 시스템에 적용되는 소프트웨어 개발 통합 지원 장치에 있어서,
    프로젝트 수행 계획 정보를 입력하고 완료된 작업의 산출 문서를 검토하여 상기 작업의 승인 여부를 결정하기 위한 프로젝트 관리 수단;
    상기 프로젝트에 관련된 정보를 저장하기 위한 프로젝트 저장 수단;
    상기 프로젝트 진행 중에 상기 프로젝트 저장 수단으로부터 상기 정보를 읽어 개발자가 해야할 작업을 알려주고 완료된 작업의 산출 문서를 상기 프로젝트 저장 수단에 저장하기 위한 프로젝트 처리 수단; 및
    상기 프로젝트 처리 수단의 제어에 따라 상기 프로젝트에서 개발할 시스템을 모형화하기 위한 프로젝트 모형화 지원 수단
    을 포함하는 소프트웨어 개발 통합 지원 장치.
  2. 제 1 항에 있어서,
    상기 프로젝트 처리 수단은,
    상기 프로젝트의 개발자와 정보를 주고 받기 위한 인터페이싱 수단;
    상기 프로젝트 저장 수단으로부터 상기 프로젝트 작업 계획 정보를 읽어오기 위한 네트워크 통신 수단;
    읽어온 상기 프로젝트 작업 계획 정보에 따라 상기 개발자가 작업을 수행할 수 있도록 하기 위한 프로젝트 정보 처리 수단; 및
    상기 프로젝트 정보 처리 수단으로부터 외부 지원도구에 관한 정보를 받아 실제로 상기 개발자가 작업을 수행할 수 있도록 하기 위한 외부 지원도구 관리 수단
    을 포함하는 소프트웨어 개발 통합 지원 장치.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 프로젝트 모형화 지원 수단은,
    상기 프로젝트의 처리에 있어서 개발할 시스템의 모형을 작성하기 위해 상기 개발자와 정보교환을 하기 위한 개발자 인터페이싱 수단;
    그래픽한 모형 요소를 통하여 논리 모형을 작성할 수 있게 하며, 상기 모형에 대한 명세를 작성하기 위한 모형 편집 수단;
    상기 모형 편집 수단의 정보를 관리하기 위한 모형 정보 관리 수단;
    상기 모형 정보 관리 수단의 모형 정보를 바탕으로 상기 모형에 대한 오류를 수정하기 모형 일관성 검증 처리 수단; 및
    완료된 상기 모형의 정보를 적절한 형태의 보고서로 만들어 주기 위한 보고서 생성 처리 수단
    을 포함하는 소프트웨어 개발 통합 지원 장치.
  4. 제 3 항에 있어서,
    상기 모형 일관성 검증 처리 수단은,
    상기 모형 정보 관리 수단으로부터 상기 모형과 관련된 모형 요소 정보를 추출하기 위한 모형 요소 정보 검출 수단;
    일관성 검증 규칙 정보에 따라 상기 모형 요소 정보를 처리하여 상기 모형에 오류가 있는 경우 오류 정보 목록을 생성하기 위한 일관성 검증 처리 수단; 및
    상기 오류 정보 목록에 따라 상기 모형에 대한 오류를 수정하기 위한 검증 결과 처리 수단
    을 포함하는 소프트웨어 개발 통합 지원 장치.
  5. 소프트웨어 개발 시스템에 적용되는 소프트웨어 개발 통합 지원 방법에 있어서,
    프로젝트 수행 계획 정보를 생성하고 상기 프로젝트에 관련된 정보를 저장하는 제 1 단계;
    상기 프로젝트 진행 중에 상기 정보를 읽어 개발자가 해야할 작업을 지시하고, 완료된 작업의 산출 문서를 생성하는 제 2 단계; 및
    상기 프로젝트의 진행 중에 상기 산출 문서를 검토하여 상기 작업의 승인 여부를 결정하는 제 3 단계
    를 포함하는 소프트웨어 개발 통합 지원 방법.
  6. 제 5 항에 있어서,
    상기 제 2 단계는,
    개발자의 요청에 따라 상기 개발자가 참가하고 있는 프로젝트에 관련된 정보를 읽어 상기 프로젝트에 대한 현황을 파악하는 제 4 단계;
    상기 프로젝트에 대한 현황 파악 결과에 따라 준비 상태에 있는 작업을 수행하는 제 5 단계; 및
    상기 작업이 완료되면 산출 문서를 작성하여 저장하며, 상기 작업을 검토중 상태로 변경하는 제 6 단계
    를 포함하는 소프트웨어 개발 통합 지원 방법.
  7. 제 6 항에 있어서,
    상기 제 5 단계는,
    상기 프로젝트에 관련된 작업 중 준비 상태에 있는 개발 시스템에 대한 모형 작성 요청에 따라 상기 모형을 작성하고 상기 모형에 대한 정보를 저장하는 제 7 단계; 및
    상기 모형에 대한 검증을 수행하여 오류를 수정하는 제 8 단계
    를 포함하는 소프트웨어 개발 통합 지원 방법.
  8. 제 7 항에 있어서,
    상기 제 8 단계는,
    상기 모형에 대한 검증 요청에 따라 상기 모형과 관련된 정보를 검출하여 목록을 작성하는 제 9 단계;
    상기 목록과 상기 모형을 비교하여 오류 정보 목록을 생성하는 제 10 단계; 및
    상기 오류 정보 목록에 따라 상기 모형을 수정하는 제 11 단계
    를 포함하는 소프트웨어 개발 통합 지원 방법.
  9. 제 5 항 내지 제 8 항 중 어느 한 항에 있어서,
    상기 제 3 단계는,
    관리하고자 하는 프로젝트를 선택하여 상기 프로젝트에 대한 현황을 파악하는 제 12 단계;
    상기 프로젝트에 대한 현황 파악 결과에 따라 검토 중 상태에 있는 작업에 대한 산출 문서를 검토하는 제 13 단계;
    상기 검토 결과 상기 산출 문서의 내용에 하자가 없으면 상기 작업을 완료 상태로 변경하고, 하자가 있으면 상기 작업의 상태를 준비 상태로 변경하는 제 14 단계
    를 포함하는 소프트웨어 개발 통합 지원 방법.
  10. 소프트웨어 개발 통합 지원을 위하여, 대용량 프로세서를 구비한 소프트웨어 개발 시스템에,
    프로젝트 수행 계획 정보를 생성하고 상기 프로젝트에 관련된 정보를 저장하는 제 1 기능;
    상기 프로젝트 진행 중에 상기 정보를 읽어 개발자가 해야할 작업을 지시하고, 완료된 작업의 산출 문서를 생성하는 제 2 기능; 및
    상기 프로젝트의 진행 중에 상기 산출 문서를 검토하여 상기 작업의 승인 여부를 결정하는 제 3 기능
    을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
KR1019990053771A 1999-11-30 1999-11-30 소프트웨어 개발 통합 지원 장치 및 그 방법 KR20010048894A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990053771A KR20010048894A (ko) 1999-11-30 1999-11-30 소프트웨어 개발 통합 지원 장치 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990053771A KR20010048894A (ko) 1999-11-30 1999-11-30 소프트웨어 개발 통합 지원 장치 및 그 방법

Publications (1)

Publication Number Publication Date
KR20010048894A true KR20010048894A (ko) 2001-06-15

Family

ID=19622633

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990053771A KR20010048894A (ko) 1999-11-30 1999-11-30 소프트웨어 개발 통합 지원 장치 및 그 방법

Country Status (1)

Country Link
KR (1) KR20010048894A (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100501411B1 (ko) * 2002-11-27 2005-07-18 한국전자통신연구원 비기능적 성능조건이 강제되는 소프트웨어 모형화시스템및 방법
KR100508425B1 (ko) * 2002-03-20 2005-08-17 삼성에스디에스 주식회사 소프트웨어 개발 통합 지원 시스템 및 방법
KR100759816B1 (ko) * 2005-12-08 2007-09-20 한국전자통신연구원 임베디드 리눅스 커널 및 응용 프로그램의 통합 설정을위한 웹 기반의 개발환경 제공 시스템 및 방법
KR101235330B1 (ko) * 2009-12-21 2013-02-19 한국전자통신연구원 임베디드 소프트웨어 개발 도구 통합 관리 장치 및 방법

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100508425B1 (ko) * 2002-03-20 2005-08-17 삼성에스디에스 주식회사 소프트웨어 개발 통합 지원 시스템 및 방법
KR100501411B1 (ko) * 2002-11-27 2005-07-18 한국전자통신연구원 비기능적 성능조건이 강제되는 소프트웨어 모형화시스템및 방법
KR100759816B1 (ko) * 2005-12-08 2007-09-20 한국전자통신연구원 임베디드 리눅스 커널 및 응용 프로그램의 통합 설정을위한 웹 기반의 개발환경 제공 시스템 및 방법
KR101235330B1 (ko) * 2009-12-21 2013-02-19 한국전자통신연구원 임베디드 소프트웨어 개발 도구 통합 관리 장치 및 방법

Similar Documents

Publication Publication Date Title
Cugola et al. Software Processes: a Retrospective and a Path to the Future
Insfrán et al. Requirements engineering-based conceptual modelling
US5799193A (en) Scenario based iterative method for development of an object oriented system model
Munoz-Gama Conformance checking and diagnosis in process mining
Balci Requirements for model development environments
US8521570B2 (en) Integration of distributed business process models
Decker et al. Local enforceability in interaction petri nets
Bass et al. Architecture-based development
US8539441B2 (en) Method and system for specifying and developing application systems with dynamic behavior
Laitenberger et al. Generalizing perspective-based inspection to handle object-oriented development artifacts
Garg et al. On designing intelligent software hypertext systems
US7848942B2 (en) Distribution of integrated business process models
Kösters et al. Coupling use cases and class models as a means for validation and verification of requirements specifications
Bokhari et al. Metrics for requirements engineering and automated requirements tools
JPH11296544A (ja) 構造化データ管理システム及び構造化データ管理プログラムを記録したコンピュータ読み取り可能な記録媒体
Garcia Molina et al. Towards use case and conceptual models through business modeling
Davies The power of stories
Wieczorek et al. Test data provision for ERP systems
KR20010048894A (ko) 소프트웨어 개발 통합 지원 장치 및 그 방법
Satyarthi et al. Framework for Requirement Management using Requirement Traceability.
Nakatani et al. A requirements description metamodel for use cases
KR100341393B1 (ko) 객체 지향 전사적 자원 관리 프로젝트 개발 시스템 및 방법
Ashraf et al. ATAM-based architecture evaluation using LOTOS formal method
Goulão et al. Streamlining scenario modeling with model-driven development: A case study
Kemper et al. Visualizing the Dynamic Behavior of ProC/B Models.

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination