Nothing Special   »   [go: up one dir, main page]

KR20110138885A - Integrated management system and method for software development - Google Patents

Integrated management system and method for software development Download PDF

Info

Publication number
KR20110138885A
KR20110138885A KR1020100059030A KR20100059030A KR20110138885A KR 20110138885 A KR20110138885 A KR 20110138885A KR 1020100059030 A KR1020100059030 A KR 1020100059030A KR 20100059030 A KR20100059030 A KR 20100059030A KR 20110138885 A KR20110138885 A KR 20110138885A
Authority
KR
South Korea
Prior art keywords
document
item
step type
user
document item
Prior art date
Application number
KR1020100059030A
Other languages
Korean (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 KR1020100059030A priority Critical patent/KR20110138885A/en
Publication of KR20110138885A publication Critical patent/KR20110138885A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/72Code refactoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/77Software metrics

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Document Processing Apparatus (AREA)

Abstract

PURPOSE: An integration management tool for developing software and method thereof are provided to enable developers to effectively manage development by providing information about the state and development progress to the developers. CONSTITUTION: A user interface unit(110) receives a management request from a user terminal. A control unit(120) manages the document categories by creating structure information which indicates a correlation between document categories and the content. A storage unit(130) stores the content and the structure information and software development stages.

Description

소프트웨어 개발을 위한 통합 관리 도구 및 방법{INTEGRATED MANAGEMENT SYSTEM AND METHOD FOR SOFTWARE DEVELOPMENT}Integrated management tools and methods for software development {INTEGRATED MANAGEMENT SYSTEM AND METHOD FOR SOFTWARE DEVELOPMENT}

소프트웨어 개발을 위한 개발 문서(document for development) 및 소스코드(source code)의 통합 관리를 지원하는 시스템 및 방법에 연관되며, 보다 특정하게는 소프트웨어의 개발 흐름에 따른 이력관리(형상관리: software configuration manager; SCM)를 제공하는 시스템 및 방법에 연관된다.It is related to systems and methods that support integrated management of document for development and source code for software development, and more specifically, history management according to the software development flow (configuration management: software configuration manager). A system and method for providing SCM).

소프트웨어 통합 개발 도구는, 관리자, 요구 제안자, 설계자 및 개발자 등 다수의 구성원이 참여하는 소프트웨어의 개발 과정에서 상기 개발과 관련된 코드(code)에 대한 진행 상황 및 이력 정보 등을 제공한다.The software integrated development tool provides progress and history information about the code related to the development during the development of the software in which a large number of members, such as a manager, a request proposer, a designer, and a developer, participate.

따라서, 웹기반 소프트웨어 통합 개발도구는 소프트웨어 개발에 있어서의 비용 및 시간의 절감을 도모한다.Therefore, the web-based integrated software development tool saves cost and time in software development.

소프트웨어 개발에 있어서, 소프트웨어 개발을 위한 문서들은 소스코드와 구분되어 독립적으로 관리될 수 없는 상호 유기적 연관관계를 갖는다. 따라서 이러한 유기적 관계를 설정 및 관리할 수 기능이 제공되어야 한다. 따라서, 종래의 개발에서의 이력관리의 대상이었던 소스 코드외에도, 상기 개발 또는 상기 소스 코드와 상관관계를 갖는 문서들 또한 통합적으로 이력관리가 될 필요가 있다. 예컨대, 제안요청서(request for proposal; RFP), 소프트웨어 요구 사양서(software requirement specification; SRS), 상세 소프트웨어 요구 사양서(detailed software requirement specification; DSRS), 소프트웨어 설계 사양서(software design specification; SDS), 인터페이스(interface) 등을 포함하는 소프트웨어 개발 단계 유형의 문서 정보가 제공될 수 있다.In software development, documents for software development have a mutually organic relationship that cannot be managed independently from the source code. Thus, the ability to establish and manage these organic relationships should be provided. Thus, in addition to the source code that has been the subject of history management in conventional development, documents that correlate with the development or the source code also need to be integrated history management. For example, a request for proposal (RFP), a software requirement specification (SRS), a detailed software requirement specification (DSRS), a software design specification (SDS), an interface Document information of the type of software development stage may be provided, including;

상기의 문서들은 나열순서에 따른 수평적 연관관계를 가지며, 각 단계 유형에 따른 각각 다른 구성요소를 갖는다.The above documents are horizontally related in the order of listing, and have different components for each type of step.

상기의 문서들은 세부적인 문서 항목들로 분리되며, 이러한 문서 항목은 각각 별개로 관리될 필요가 있다.The above documents are divided into detailed document items, and each of these document items needs to be managed separately.

또한, 서로 다른 소프트웨어 개발 단계 유형에 속하는 양 문서의 문서 항목 사이에 상호 연관 관계가 있을 경우, 소프트웨어 형상 관리 시스템은 이러한 연관 관계의 설정 및 상기 연관 관계에 따른 추적(trace) 기능을 제공할 필요가 있다.In addition, if there is a correlation between document items of both documents belonging to different types of software development stages, the software configuration management system needs to provide a setting of such an association and a trace function according to the association. have.

본 발명의 일측에 따르면, 사용자의 단말기로부터 관리 요청을 수신하는 사용자 인터페이스부, 상기 수신된 관리 요청에 따라서, 순차적인 관계를 구성하는 복수의 소프트웨어 개발 단계 유형, 상기 각각의 소프트웨어 개발 단계 유형에 포함되는 복수의 문서 항목, 상기 복수의 문서 항목의 콘텐츠, 및 상기 복수의 소프트웨어 개발 단계 유형 중에서 전 단계 유형의 문서 항목 및 후 단계 유형의 문서 항목 상호간의 연관 관계를 나타내는 구조 정보를 생성하여, 상기 문서 항목이 관리되도록 제어하는 제어부 및 상기 복수의 소프트웨어 개발 단계 유형, 상기 복수의 문서 항목, 상기 콘텐츠, 및 상기 구조 정보를 저장하는 저장부를 포함하는, 소프트웨어 형상 관리 시스템이 제공된다.According to one aspect of the present invention, a user interface for receiving a management request from a user's terminal, a plurality of types of software development steps to form a sequential relationship according to the received management request, each of the software development step types included in Generating structure information indicating a correlation between a plurality of document items, contents of the plurality of document items, and document items of a previous step type and document items of a next step type among the plurality of software development step types, A software configuration management system is provided that includes a control unit for controlling an item to be managed and a storage unit for storing the plurality of software development step types, the plurality of document items, the content, and the structure information.

상기 제어부는 하나의 개발 단계 유형에 포함되는 복수의 문서 항목 전체의 콘텐츠를 하나로 통합하는 단계 유형 문서를 생성하고, 상기 저장부는 상기 생성된 단계 유형 문서를 저장할 수 있다.The control unit may generate a step type document integrating contents of a plurality of document items included in one development step type into one, and the storage unit may store the generated step type document.

제2 사용자의 단말기로부터 상기 문서 항목에 대한 접근이 감지된 경우, 상기 제어부는 상기 접근된 문서 항목의 구조 정보에 따라 상기 접근된 항목과 연관된 문서 항목을 상기 저장부로부터 검색하고, 상기 연관된 문서 항목을 접근하는 제3 사용자의 단말기에게 상기 사용자 인터페이스부를 통하여 상기 제2 사용자의 단말기가 접근한 상기 문서 항목에 대한 추적 정보를 제공할 수 있다.When access to the document item is detected from the terminal of the second user, the controller searches for the document item associated with the accessed item from the storage unit according to the structure information of the accessed document item, and the associated document item. Tracking information on the document item accessed by the terminal of the second user may be provided to the terminal of the third user accessing the terminal.

상기 저장부는 상기 복수의 개발 단계 유형에서 사용되는 정형화된 구조를 갖는 템플릿을 더 저장하고, 상기 사용자 인터페이스부는 상기 템플릿의 양식에 따라서 상기 관리 요청을 수신할 수 있다.The storage unit may further store a template having a structured structure used in the plurality of development step types, and the user interface unit may receive the management request according to a form of the template.

본 발명의 다른 일측에 따르면, 사용자의 단말기로부터 관리 요청을 수신하는 단계, 상기 관리 요청에 따라서 순차적인 관계를 구성하는 복수의 소프트웨어 개발 단계 유형을 생성하는 단계, 상기 관리 요청에 따라서 상기 각각의 소프트웨어 개발 단계 유형에 포함되는 복수의 문서 항목을 생성하는 단계, 상기 관리 요청에 따라서 상기 복수의 문서 항목의 콘텐츠를 생성하는 단계 및 상기 관리 요청에 따라서 상기 복수의 소프트웨어 개발 단계 유형 중에서 전 단계 유형의 항목 및 후 단계 유형의 항목 간 연관 관계를 나타내는 구조 정보를 생성하는 단계를 포함하는, 소프트웨어 형상 관리 방법이 제공된다.According to another aspect of the invention, the step of receiving a management request from the user's terminal, generating a plurality of types of software development step to form a sequential relationship according to the management request, the respective software in accordance with the management request Generating a plurality of document items included in the type of development step, generating contents of the plurality of document items according to the management request, and items of the previous step type among the plurality of software development step types according to the management request And generating structure information indicative of associations between items of a later step type.

한편, 본 발명의 또 다른 일측에 따르면, 사용자로부터 관리 요청 데이터를 입력 받는 입력부, 상기 입력 받은 관리 요청 데이터를 순차적인 관계를 구성하는 복수의 소프트웨어 개발 단계 유형, 상기 각각의 소프트웨어 개발 단계 유형에 포함되는 복수의 문서 항목, 상기 복수의 문서 항목의 콘텐츠 및 상기 복수의 소프트웨어 개발 단계 유형 중에서 전 단계 유형의 문서 항목 또는 후 단계 유형의 문서 항목 간 연관 관계를 나타내는 구조 정보를 생성하기 위한 관리 요청으로 가공하는 제어부 및 상기 관리 요청을 통신망을 통하여 형상 관리 시스템으로 전송하는 통신부를 포함하는, 단말이 제공된다.Meanwhile, according to another aspect of the present invention, an input unit for receiving management request data from a user, a plurality of software development step types for forming a sequential relationship, and each of the software development step types Processing into a management request for generating structure information indicating an association between a plurality of document items, contents of the plurality of document items, and a plurality of document items of a previous step type or a document item of a next step type among the plurality of document development step types. A control unit and a communication unit for transmitting the management request to the configuration management system through a communication network is provided.

소프트웨어 개발에 사용되는 모든 개발 문서 및 소스 코드에 대한 형상 관리를 제공한다.Provides configuration management for all development documents and source code used for software development.

소프트웨어의 개발 단계에 따른 연관 관계를 통하여 모든 관계자에게 소프트웨어의 개발 진행 및 상태에 대한 정보를 제공하고, 상기 개발이 용이하게 관리되도록 한다.Through the relationship according to the development stage of the software to provide all the information on the progress and status of the development of the software, and to facilitate the development.

도 1은 본 발명의 일 실시예에 따른 소프트웨어 형상 관리 시스템 및 단말의 구성도이다.
도 2는 본 발명의 일 실시예에 따른 소프트웨어 형상 관리를 위한 데이터 객체(data object)의 구조도이다.
도 3은 본 발명의 일 실시예에 따른 단계 유형 문서가 구성하는 트리(tree)의 구조도이다.
도 4는 본 발명의 일 실시예에 따른 문서 항목을 나타내는 데이터 객체의 구조도이다.
도 5는 본 발명의 일 실시예에 따른 단계 유형 문서의 생성 절차를 도시한다.
도 6은 본 발명의 일 실시예에 따른 연관 관계의 구조 정보를 나타내는 데이터 객체의 구조도이다.
도 7은 본 발명의 일 실시예에 따른 소프트웨어 형상 관리 방법의 절차 흐름도이다.
도 8은 본 발명의 일 실시예에 따른 사용자 단말의 구성도이다.
1 is a configuration diagram of a software configuration management system and a terminal according to an embodiment of the present invention.
2 is a structural diagram of a data object for software configuration management according to an embodiment of the present invention.
3 is a structural diagram of a tree of a step type document according to an embodiment of the present invention.
4 is a structural diagram of a data object representing a document item according to an embodiment of the present invention.
5 shows a procedure of generating a step type document according to an embodiment of the present invention.
6 is a structural diagram of a data object representing structural information of an association according to an embodiment of the present invention.
7 is a flowchart illustrating a software configuration management method according to an embodiment of the present invention.
8 is a configuration diagram of a user terminal according to an embodiment of the present invention.

이하에서, 본 발명의 일부 실시예를, 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 본 발명이 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.Hereinafter, some embodiments of the present invention will be described in detail with reference to the accompanying drawings. However, the present invention is not limited or limited by the embodiments. Like reference numerals in the drawings denote like elements.

도 1은 본 발명의 일 실시예에 따른 소프트웨어 형상 관리 시스템 및 사용자 단말의 구성도이다.1 is a configuration diagram of a software configuration management system and a user terminal according to an embodiment of the present invention.

상기 소프트웨어 형상 관리 시스템(100)(이하, 시스템으로 약칭한다.)은 사용자 인터페이스부(이하, 인터페이스부로 약칭한다.), 제어부(120) 및 저장부(130)를 포함한다.The software shape management system 100 (hereinafter, abbreviated as system) includes a user interface unit (hereinafter, abbreviated as an interface unit), a controller 120 and a storage unit 130.

상기 사용자 단말(150)(이하, 단말로 약칭한다.)은 사용자가 상기 시스템(100)에 접근하기 위해 사용하는 장치이다.The user terminal 150 (hereinafter, abbreviated to terminal) is a device used by a user to access the system 100.

사용자는 상기 단말(150)을 통해 소프트웨어 형상 관리에 필요한 입력 작업을 수행 하며, 상기 단말(150)은 상기 입력에 기반하여 관리 요청을 생성하여 상기 시스템(100)에 전송한다.A user performs an input operation required for software configuration management through the terminal 150, and the terminal 150 generates a management request based on the input and transmits it to the system 100.

상기 관리 요청은 상기 시스템(100)에 의해 관리되는 문서 및 코드에 대한 통합 관리 요청으로, 형상 관리 요청을 포함한다.The management request is an integrated management request for documents and codes managed by the system 100 and includes a configuration management request.

상기 통합 관리는 문서 구조 및 연관 관계 등에 대한 관리이며, 형상 관리를 포함한다.The integrated management is management of document structure, association, and the like, and includes shape management.

상기 단말(150)은 도시된 것처럼 통신망을 통해 상기 시스템(100)과 연결된 것일 수 있고, 상기 시스템(100)과 로컬(local)하게 연결된 것일 수 있다.The terminal 150 may be connected to the system 100 through a communication network as shown, or may be locally connected to the system 100.

또는, 단말(150)은 상기 시스템(100)과 동일한 하드웨어일 수 있다. 이 경우 상기 단말(150)은 기능은 상기 하드웨어에서 동작하는 프로그램(process), 쓰레드(thread) 또는 모듈(module)을 의미할 수 있다.Alternatively, the terminal 150 may be the same hardware as the system 100. In this case, the terminal 150 may refer to a program, a thread, or a module operating in the hardware.

복수 개의 상기 단말(150)이 상기 시스템(100)에 연결될 수 있다.A plurality of terminals 150 may be connected to the system 100.

상기 단말(150)은 상기 시스템(100)과의 작업을 위한 전용의 장치일 수 있으며, 범용의 장치에 전용 프로그램(program)을 탑재한 것일 수 있으며, 또는 웹 브라우저(web browser)와 같은 범용 프로그램(program)을 사용하는 것일 수 있다. 상기 단말(150)이 범용 프로그램을 사용할 경우, 상기 단말(150)은 형상 관리 시스템의 단말으로서 동작하기 위해 필요한 데이터를 상기 시스템(100)으로부터 전송 받을 수 있다. The terminal 150 may be a dedicated device for working with the system 100, may include a dedicated program mounted on a general purpose device, or a general program such as a web browser. It could be using (program). When the terminal 150 uses a general-purpose program, the terminal 150 may receive data necessary for operating as a terminal of the configuration management system from the system 100.

상기 통신망은 유선 또는 무선 통신망을 포함한다. 상기 단말(150) 및 시스템(100)은 TCP/IP, HTTP 및 CDMA 등 다양한 층(layer)의 유무선 통신 프로토콜을 기반으로 상호간에 통신할 수 있다.The communication network includes a wired or wireless communication network. The terminal 150 and the system 100 may communicate with each other based on wired / wireless communication protocols of various layers such as TCP / IP, HTTP, and CDMA.

상기 인터페이스부(110)는 상기 시스템에 접근(access)하기 위한 인터페이스 데이터를 상기 단말(150)에게 제공하며, 상기 단말(150)로부터 소프트웨어 형상 관리에 필요한 요청을 수신한다. 또한, 상기 인터페이스부(110)는 상기 인터페이스 데이터를 상기 제어부(120)로부터 전송 받고, 상기 요청을 상기 제어부(120)로 전송한다.The interface unit 110 provides interface data for accessing the system to the terminal 150 and receives a request for software configuration management from the terminal 150. In addition, the interface unit 110 receives the interface data from the control unit 120 and transmits the request to the control unit 120.

상기 제어부(120)는 상기 인터페이스부(110)로부터 관리 요청을 전송 받아, 상기 요청에 처리하는데 필요한 작업을 수행한다. 또한, 상기 제어부(120)는 상기 인터페이스 데이터 및 기타 사용자와의 상호 작용을 위해 필요한 데이터를 상기 인터페이스부(110)로 전송하거나, 상기 인터페이스부(110)로부터 수신한다.The controller 120 receives a management request from the interface unit 110 and performs a task required to process the request. In addition, the controller 120 transmits the interface data and data necessary for interaction with other users to the interface unit 110 or receives from the interface unit 110.

상기 제어부(120)는 상기 처리를 위해 필요한 데이터를 상기 저장부(130)에 기록(write)하거나, 상기 저장부(130)로부터 읽어온다(read).The control unit 120 writes data necessary for the processing to the storage unit 130 or reads from the storage unit 130.

상기 저장부(130)는 상기 제어부(120)가 전송한 데이터를 저장하고, 상기 제어부(120)의 요청에 따라 상기 저장한 데이터를 상기 제어부(120)로 전송한다.The storage unit 130 stores the data transmitted by the control unit 120 and transmits the stored data to the control unit 120 at the request of the control unit 120.

상기 저장부(130)는 상기 시스템(100) 내에 물리적으로 데이터를 저장할 수 있다. 이러한 경우 상기 저장부(130)는 램(random access memory) 및 하드 디스크(hard disk) 등의 저장 매체를 구비한 파일 시스템(file system) 또는 데이터베이스(database) 등일 수 있다.The storage unit 130 may physically store data in the system 100. In this case, the storage unit 130 may be a file system or a database including a storage medium such as a random access memory and a hard disk.

또한, 상기 저장부(130)는 외부의 다른 저장 서버(storage server) 또는 데이터베이스(database)에 데이터를 저장하기 위한 입출력 인터페이스일 수도 있다. 이러한 경우, 상기 저장부와 상기 서버(또는 상기 데이터베이스)는 통신망을 통해 상호 간에 연결된다.In addition, the storage unit 130 may be an input / output interface for storing data in another external storage server or a database. In this case, the storage unit and the server (or the database) are connected to each other through a communication network.

도 2는 본 발명의 일 실시예에 따른 소프트웨어 형상 관리를 위한 데이터 객체의 구조도이다.2 is a structural diagram of a data object for software configuration management according to an embodiment of the present invention.

상기 시스템(100)은 복수 개의 소프트웨어 개발 단계 유형(이하 단계 유형으로 약칭한다.), 예컨대 제1 단계 유형(210), 제2 단계 유형(230), 제3 단계 유형(250) 및 제4 단계 유형(270)을 제공한다.The system 100 includes a plurality of software development step types (abbreviated as step types hereinafter), such as the first step type 210, the second step type 230, the third step type 250 and the fourth step. Provide type 270.

상기 시스템(100)의 단계 유형은 소프트웨어 개발 과정에 있어서 개발자 등의 관련자가 작업하여야 하는 일련의 개발 단계일 수 있다. 복수 개의 단계 유형은 서로 간에 시간적 또는 논리적인 전후 관계를 갖는다.The type of step of the system 100 may be a series of development steps that a relevant person, such as a developer, needs to work in during a software development process. The plurality of step types have a temporal or logical back and forth relationship with each other.

그러나, 상기 시간적 또는 논리적인 전후 관계가 반드시 전 단계 유형에 대한 작업 완료 후 후 단계 유형에 대한 작업이 수행되어야 함을 의미하는 것은 아니다.However, the temporal or logical back and forth relationship does not necessarily mean that work on the post step type should be performed after completion of the work on the previous step type.

예컨대, 제안 요청(request for proposal; RFP), 요구 규격(system requirement specification; SRS), 상세 요구 규격(detailed SRS), 소프트웨어 설계(software design specification; SDS), 인터페이스(interface) 및 코드(code)가 상기 복수 개의 단계 유형을 구성할 수 있다.For example, a request for proposal (RFP), a system requirement specification (SRS), a detailed SRS, a software design specification (SDS), an interface, and code The plurality of step types may be configured.

전술한 예시적인 단계 유형이 하기의 표 1에서 설명된다.Exemplary step types described above are described in Table 1 below.

단계 유형Step type 설명Explanation 제안 요청(RFP)Request for Proposal (RFP) 개발해야 할 소프트웨어의 요건을 제시한다.Provide the software requirements to be developed. 요구 규격(SRS)Requirements Specification (SRS) 개발되어야 할 소프트웨어의 행동(behavior)에 대한 완전한(complete) 설명(description)이다.
즉, 소프트웨어가 만족해야 하는 요구 사항을 정의한다.
A complete description of the behavior of the software to be developed.
That is, it defines the requirements that the software must meet.
상세 요구 규격
(detailed SRS)
Detailed Requirements
(detailed SRS)
상기 요구 규격을 더욱 세분화한 것이다.The requirements are further refined.
소프트웨어 설계
(SDS)
Software design
(SDS)
상기 요구 규격 및 상세 요구 규격이 소프트웨어로서 수행되기 위한 알고리즘(algorithm), 세부 논리, 데이터 운용 등을 정의한다.The requirements and detailed requirements define algorithms, detailed logic, data operations, etc., to be performed as software.
인터페이스(interface)Interface 코드를 접근하기 위한 인터페이스를 정의한다.Defines an interface for accessing code. 코드(code)Code 소프트웨어의 코드를 정의한다.Define the code of the software.

상기 시스템(100)은 복수 개의 단계 유형 집합(set)을 제공할 수 있다. 각각의 단계 유형 집합은 복수 개의 단계 유형을 포함하고, 각각의 단계 유형 집합은 서로 독립적으로 관리 또는 제어된다. 상기 시스템(100)에서 제공되는 하나의 단계 유형 집합 각각을 프로젝트(project)(200)라고 칭한다.The system 100 may provide a plurality of sets of step types. Each set of step types includes a plurality of step types, and each set of step types is managed or controlled independently of each other. Each set of step types provided by the system 100 is referred to as a project 200.

상기 프로젝트(200)는 프로젝트 명칭, 프로젝트 기간, 주석, 사용자 권한 정보 등의 프로젝트 자체에 대한 관련 정보를 포함할 수 있다.The project 200 may include related information about the project itself, such as a project name, a project period, an annotation, and user authority information.

상기 단계 유형(210, 230, 250 및 270)은 각각 단계 유형 문서(212, 232, 252 및 262)를 갖는다.The step types 210, 230, 250, and 270 have step type documents 212, 232, 252, and 262, respectively.

단계 유형 문서는 관련자가 각각의 단계 유형에서 사용하는 문서이다.A step type document is a document used by each person in each step type.

예컨대, 전술된 소프트웨어 개발에 있어서의 예시적인 단계 유형에 대한 단계 유형 문서가 하기의 표 2에서 기술된다.For example, step type documents for exemplary step types in the software development described above are described in Table 2 below.

단계 유형Step type 단계 유형 문서Step type document 제안 요청(RFP)Request for Proposal (RFP) 제안 요청서Proposal request 요구 규격(SRS)Requirements Specification (SRS) 요구 규격서Requirements Specification 상세 요구 규격(detailed SRS)Detailed SRS 상세 요구 규격서Detailed Requirements 소프트웨어 설계 (SDS)Software Design (SDS) 소프트웨어 설계서Software design 인터페이스(interface)Interface 소프트웨어의 인터페이스 명세서Interface specification of the software 코드(code)Code 소프트웨어의 전체 코드Full code of software

단계 유형 문서는 수문자(alpha-numeric character)로 구성된 텍스트(text)일 수 있다. 예컨대, 단계 유형이 코드일 경우, 상기 코드 단계 유형에 대한 코드 단계 유형 문서는 일반 텍스트 형식의 문서일 수 있다.The step type document may be text composed of alpha-numeric characters. For example, if the step type is a code, the code step type document for the code step type may be a document in plain text format.

또한, 단계 유형 문서는, 글자체 등 서식이 지원되는 서식 있는 텍스트(rich text format), HTML 문서 또는 XML 문서 등일 수 있다.In addition, the step type document may be a rich text format such as a font, a rich text format, an HTML document, an XML document, or the like.

또한, 단계 유형 문서는 이미지(image), 동영상(motion picture), 음성(voice), 음향(sound), 플래시(flash) 및 링크(link) 등의 멀티미디어 객체(multimedia object)를 구성 요소로 포함할 수 있으며, C, C++ 및 JAVA와 같은 사용자에게 제공될 프로그램 코드를 포함할 수 있다.In addition, the step type document may include multimedia objects such as images, motion pictures, voices, sounds, flashes, and links as components. And may include program code to be provided to users such as C, C ++, and JAVA.

단계 유형은 단계 유형 문서를 구성하기 위한 복수 개의 문서 항목을 포함한다.The step type includes a plurality of document items for constructing a step type document.

단계 유형 문서의 형식에 의해 같은 단계 유형에 포함되는 문서 항목의 형식이 결정될 수 있다.The format of the document item included in the same step type may be determined by the format of the step type document.

예컨대, 단계 유형 문서가 제안 요청서 등 일반 문서라면, 상기 제안 요청서의 문서 항목은 상기 제안 요청서의 특정 장(chapter) 또는 절(section)일 수 있다. 단계 유형 문서가 인터페이스 명세서라면, 상기 인터페이스 명세서의 문서 항목은 특정 단위의 인터페이스 정의 파일일 수 있다. 또한, 단계 유형 문서가 코드라면 상기 코드의 문서 항목은 특정 단위의 컴퓨터 프로그램 코드일 수 있다.For example, if the step type document is a general document such as a proposal request, the document item of the proposal request may be a specific chapter or section of the proposal request. If the step type document is an interface specification, the document item of the interface specification may be an interface definition file in a specific unit. In addition, if the step type document is a code, the document item of the code may be computer program code in a specific unit.

단계 유형 문서가 인터페이스 명세서라면, 상기 인터페이스 명세서의 문서 항목은 특정 변수(variable), 상수(constant), 함수(function), 구조체(structure) 또는 클래스(class) 등의 인터페이스 또는 선언(declaration)을 포함할 수 있고, 코드 파일(code file)을 단위로 한 인터페이스 또는 선언을 포함할 수 있다. 또한, 단계 유형 문서가 코드라면 상기 제안 요청서의 문서 항목은 특정 변수, 상수, 함수, 구조체 또는 클래스 등의 정의(definition)를 포함할 수 있고, 코드 파일(code file)을 포함할 수 있다.If the step type document is an interface specification, the document item of the interface specification includes an interface or declaration, such as a specific variable, constant, function, structure, or class. It can contain interfaces or declarations based on code files. In addition, if the step type document is a code, the document item of the proposal request may include a definition of a specific variable, constant, function, structure or class, etc., and may include a code file.

한 단계 유형 문서 내의 복수 개의 문서 항목은 트리와 같은 계층적(hierarchical)인 구조를 가질 수 있다.A plurality of document items in a step type document may have a hierarchical structure such as a tree.

도 3은 본 발명의 일 실시예에 따른 상기 제1 단계 유형 문서가 구성하는 트리의 구조도이다.3 is a structural diagram of a tree constituted by the first step type document according to an embodiment of the present invention.

예컨대, 상기 제1 단계 유형 문서(212)가 제안 요청서 등 일반 문서일 때, 제1 장을 나타내는 문서 항목 1(214)은 제1 장 제1 절을 나타내는 문서 항목 1-1(216) 및 제1 장 제2 절을 나타내는 문서항목 1-2(218)를 자식(child) 문서 항목으로 가질 수 있다.For example, when the first step type document 212 is a general document such as a request for proposal, the document item 1 214 representing the first chapter includes the document item 1-1 216 and the first document representing the first chapter. It can have document items 1-2 (218) representing Chapter 1, Section 2 as child document items.

또한, 제1 장을 나타내는 문서 항목 1(214)과 제2 장을 나타내는 문서 항목 2(220)는 서로 형제(sibling)가 된다.Further, document item 1 214 representing the first chapter and document item 2 220 representing the second chapter are siblings to each other.

이러한 경우, 상기 제1 단계 유형 문서(212)를 상기 제1 단계 유형 문서(212)를 구성할 문서 항목들(214, 216, 218 및 220)로 구성되는 트리(tree)의 루트(root)로 볼 수 있다. 또한, 상기 문서 항목들(214, 216, 218 및 220)은 상기 트리의 노드(node)를 구성한다.In this case, the first step type document 212 is the root of a tree consisting of the document items 214, 216, 218 and 220 that will make up the first step type document 212. can see. In addition, the document items 214, 216, 218 and 220 constitute a node of the tree.

문서 항목은 상기 문서 항목의 내용인 콘텐츠를 포함한다.The document item includes content that is the content of the document item.

예컨대, 상기 문서 항목이 제안 요청서 등 일반 문서의 문서 항목인 경우, 상기 문서 항목의 콘텐츠는 상기 제안 요청서의 특정 장 또는 절의 내용일 수 있다. 문서 항목이 인터페이스 명세서의 항목이라면, 상기 문서 항목의 콘텐츠는 특정 변수(variable), 상수(constant), 함수(function), 구조체(structure) 또는 클래스(class) 등의 인터페이스 또는 선언(declaration)일 수 있고, 코드 파일(code file)을 단위로 한 인터페이스 또는 선언일 수 있다.For example, when the document item is a document item of a general document such as a proposal request, the content of the document item may be content of a specific chapter or section of the proposal request. If a document item is an item in an interface specification, the content of the document item may be an interface or declaration, such as a specific variable, constant, function, structure, or class. It may be an interface or declaration based on a code file.

하나의 문서 항목이 상기 문서 항목의 제목, 상기 문서 항목의 본문 등으로 구별되는 복수 개의 콘텐츠를 포함할 수 있다.One document item may include a plurality of contents which are distinguished by a title of the document item, a body of the document item, and the like.

콘텐츠는 수문자(alpha-numeric character)로 구성된 텍스트(text)일 수 있다. 또한, 콘텐츠는 글자체 등 서식이 지원되는 서식 있는 텍스트(rich text format), HTML 문서, XML 문서 또는 PDF 형식의 문서 등이 될 수 있고, 이미지, 동영상, 음성, 음향 및 링크 등의 멀티미디어 객체를 포함할 수 있다.The content may be text composed of alpha-numeric characters. In addition, the content may be a rich text format (HTML), an XML document, or a PDF format document supported by formatting such as a font, and may include multimedia objects such as images, videos, voices, sounds, and links. can do.

하나의 단계 유형에 포함되는 복수 개의 문서 항목들의 콘텐츠가 결합하여 단계 유형 문서를 구성한다. 예컨대, 제1 단계 유형 문서(212)는 문서 항목 1(214), 문서 항목 1-1(216), 문서 항목 1-2(218) 및 문서 항목 2(220)의 콘텐츠들이 상기 문서 항목(212, 214, 216 및 218)들의 계층적 관계에 따라 결합하여 구성된 것이다.The contents of a plurality of document items included in one step type are combined to form a step type document. For example, a first step type document 212 may include document item 1 214, document item 1-1 216, document item 1-2 218, and document item 2 220, in which the content of document item 212 is determined. , 214, 216, and 218).

서로 다른 단계 유형에 속하는 문서 항목들은 상호 연관 관계를 가질 수 있다.Document items belonging to different step types may be correlated.

상기 연관 관계는 문서 항목들 간의 의존 관계일 수 있다.The association may be a dependency between document items.

예컨대, 요구 규격 단계 유형의 한 문서 항목이 변경되면, 그에 따라 상기 문서 항목에 대응하는 상세 요구 규격 단계 유형의 문서 항목도 변경될 필요가 있다. 또는, 코드 단계 유형의 한 문서 항목, 즉 코드가 변경되면, 그에 따라 상기 코드의 인터페이스, 즉 인터페이스 단계 유형의 대응하는 문서 항목도 변경될 필요가 있다.For example, if one document item of the requirement step type is changed, the document item of the detailed requirement step type corresponding to the document item needs to be changed accordingly. Or if one document item of the code step type, ie the code, is changed, the interface of the code, ie the corresponding document item of the interface step type, needs to be changed accordingly.

즉, 하나의 문서 항목에 대한 접근이 상기 문서 항목이 속하는 문서 유형의 전 또는 후 단계 유형의 다른 문서 항목에 어떠한 영향을 미칠 수 있는 경우, 양 단계 유형 간의 연관 관계가 설정될 수 있다.In other words, when access to one document item can have some effect on other document items of the type before or after the document type to which the document item belongs, an association relationship between both step types can be established.

이때, 전 단계 유형의 문서 항목을 소스(source) 항목으로 칭하고, 후 단계 유형의 문서 항목을 목적(target) 항목으로 칭한다.In this case, the document item of the previous step type is called a source item, and the document item of the next step type is called a target item.

도 2의 제1 링크(212)는 제1 단계 유형(210)의 문서 항목 1-1(216) 및 제2 단계 유형(230)의 문서 항목 1(234) 간의 연관 관계를 나타내는 구조 정보이다.The first link 212 of FIG. 2 is structure information indicating an association between document items 1-1 216 of the first step type 210 and document item 1 234 of the second step type 230.

연관 관계의 구조 정보는 연관 관계에 대한 정보, 예컨대 연관 관계를 이루는 문서 항목 양자의 식별 정보를 저장한다.The structural information of the association stores information about the association, for example, identification information of both document items forming the association.

제2 단계 유형에 속하는 문서 항목은 전 단계 유형인 제1 단계 유형의 문서 항목과 연관 관계를 가지면서, 후 단계 유형인 제3 단계 유형의 문서 항목과 연관 관계를 가질 수 있다. 이러한 경우, 상기 제1 단계 유형의 문서 항목 및 상기 제3 단계 유형의 문서 항목 간에도 간접적인 연관 관계가 성립한다.A document item belonging to the second step type may have an association relationship with a document item of a first step type that is a previous step type, and may be associated with a document item of a third step type that is a next step type. In this case, an indirect association is also established between the document item of the first step type and the document item of the third step type.

하나의 문서 항목은 복수 개의 전 단계 유형의 문서 항목과 연관 관계를 가질 수 있으며, 복수 개의 후 단계 유형의 문서 항목과 연관 관계를 가질 수 있다. 복수의 문서 항목 간의 n:m 연관 관계가 성립될 수 있다.One document item may be associated with a plurality of prestep type document items and may be associated with a plurality of post step type document items. An n: m association between a plurality of document items may be established.

예컨대, 제3 단계 유형(250)의 문서 항목 3-1(254)가 특정 함수의 인터페이스에 대한 문서 항목이고, 제4 단계 유형(270)의 문서 항목 3-1(274), 문서 항목 3-2(276) 및 문서 항목 3-3(278)이 각각 상기 함수의 코드 또는 상기 함수를 호출(call)하는 함수의 코드라면, 상기 인터페이스, 즉 상기 제3 단계 유형(250)의 문서 항목 3-1(254)가 변경되면, 상기 제4 단계 유형(270)의 문서 항목 3-1(274), 문서 항목 3-2(276) 및 문서 항목 3-3(278)이 영향을 받을 수 있다.For example, document item 3-1 254 of third step type 250 is a document item for an interface of a specific function, and document item 3-1 274 of fourth step type 270, document item 3- If two (276) and document items 3-3 (278) are the code of the function or the code of a function that calls the function, respectively, then the document item 3- of the interface, that is, the third step type 250, If 1 254 is changed, document item 3-1 274, document item 3-2 276, and document item 3-3 278 of the fourth step type 270 may be affected.

따라서, 상기 제3 단계 유형(250)의 문서 항목 3-1(254)는 상기 제4 단계 유형(270)의 문서 항목 3-1(274), 문서 항목 3-2(276) 및 문서 항목 3-3(278)과 각각 연관 관계를 갖는다.Thus, document item 3-1 254 of the third step type 250 is document item 3-1 274, document item 3-2 276, and document item 3 of the fourth step type 270. Each has an association with -3 (278).

또한, 제3 단계 유형(250)의 문서 항목 3-1(254) 및 문서 항목 3-2(256)가 각각 특정 함수의 인터페이스에 대한 문서 항목이고, 제4 단계 유형의 문서 항목 3-1(274)가 상기 함수들을 호출하는 함수의 코드라면, 상기 인터페이스, 즉 상기 제3 단계 유형(250)의 문서 항목 3-1(254) 또는 문서 항목 3-2(256)가 변경되면, 상기 제4 단계 유형(270)의 문서 항목 3-1(274)이 영향을 받을 수 있다.In addition, document items 3-1 254 and document items 3-2 256 of the third step type 250 are document items for the interface of a specific function, respectively, and document items 3-1 of the fourth step type 250 274 is the code of a function that calls the functions, if the interface, i.e., document item 3-1 254 or document item 3-2 (256) of the third step type 250 is changed, the fourth Document item 3-1 274 of step type 270 may be affected.

단계 유형 간의 연관 관계가 설정되면, 상기 시스템(100)은 제1 사용자에 의해 제1 문서 항목이 접근된 경우, 상기 제1 문서 항목과 연관된 제2 문서 항목을 접근하는 제2 사용자에게 상기 제1 문서 항목의 접근에 대한 추적(trace)을 제공할 수 있다.If an association between the step types is established, the system 100 provides the first user with a second user accessing a second document item associated with the first document item when the first document item is accessed by a first user. It can provide a trace of the access of a document item.

상기 추적은 문서 항목 및 문서 항목의 콘텐츠에 대한 변경 전 후의 내용, 변경 사유, 변경 수행자, 추적 확인 여부 및 변경 일시 등의 정보를 포함할 수 있다.The tracking may include information such as the content before and after the change of the document item and the contents of the document item, the reason for the change, the person who performed the change, whether or not the tracking is confirmed, and the date and time of the change.

상기 추적은 복수 개의 단계로서 구성될 수 있다. 예컨대, 상기 시스템(100)은 상기 제1 단계 유형(210)의 문서 항목 2(220)가 접근된 경우, 상기 문서 항목 2(220)와 연관된 상기 제2 단계 유형(230)의 문서 항목 3(236)에 접근하는 사용자에게 추적을 제공할 수 있으며, 상기 문서 항목 3(236)과 연관된 상기 제3 단계 유형(250)의 문서 항목 3-1(256) 또는 문서 항목 3-2(256)에 접근하는 사용자에게도 추적을 제공할 수 있다.The tracking can be configured as a plurality of steps. For example, the system 100 may determine that document item 2 220 of the first step type 210 has been accessed when document item 2 220 of the second step type 230 is associated with document item 2 220. 236 may be provided to the user accessing the document item 3-1 (256) or document item 3-2 (256) of the third step type 250 associated with the document item 3 (236). You can also provide tracking to accessing users.

상기 추적은 전 단계 유형으로부터 후 단계 유형으로의 순방향 추적과, 후 단계 유형으로부터 전 단계 유형으로의 역방향 추적이 가능하다.The tracking enables forward tracking from the previous step type to the next step type and backward tracking from the post step type to the previous step type.

상기 시스템(100)은 예컨대 요구 사항으로부터 소스 코드까지의 연관 관계를 통해 모든 단계 유형 문서에 대한 추적을 제공한다.The system 100 provides tracking for all step type documents, for example via an association from requirements to source code.

따라서, 상기 시스템(100)은 개발 관련자에게 소프트웨어의 개발 진행 및 상태에 대한 정보를 제공함으로써 소프트웨어의 검증 등 관리를 용이하게 하며, 여러 사람이 협업하는 개발에 있어서 소프트웨어 관련 문서 및 코드의 동기화를 지원한다.Therefore, the system 100 facilitates management such as verification of the software by providing information on the development progress and status of the software to development personnel, and supports the synchronization of software-related documents and codes in the development of cooperation among several people. do.

또한 상기 시스템(100)은 사용자에게 상기 연관 관계를 시각적으로(visual) 제공할 수 있고, 사용자가 상기 연관 관계를 따라 작업을 수행할 수 있도록 링크(link)를 제공할 수 있다.In addition, the system 100 may provide the user with the association visually, and may provide a link for the user to perform a task according to the association.

이미 생성된 프로젝트에서 문서 유형이 추가될 경우 연관 관계의 처리가 문제시 된다.If document types are added in a project that has already been created, the handling of associations becomes an issue.

추가되는 문서 유형이 맨 처음의 것이거나 맨 끝의 것인 경우, 상기 문서 유형은 단지 프로젝트 내에 생성됨으로써 상기 프로젝트에 단순하게 추가될 수 있다.If the document type to be added is the first one or the last one, the document type can be simply added to the project just by creating it in the project.

반면, 추가되는 문서 유형이 기존의 두 문서 유형의 사이의 것이고, 상기 두 기존의 문서 유형 사이에 연관 관계가 있는 경우, 상기 연관 관계의 처리가 문제시 된다.On the other hand, if the added document type is between two existing document types, and there is an association relationship between the two existing document types, processing of the association relationship is problematic.

처리 방법으로서, 상기 연관 관계가 우선 삭제되고, 이후 사용자가 새로운 문서 유형의 추가를 반영하는 새로운 연관 관계를 다시 설정하는 방법이 가능하다. 또한 삽입되는 문서 유형에 그 전 또는 그 후의 문서 유형의 문서 항목들을 복사하고, 상기 복사된 문서 항목과 상기 전 문서 유형 및 상기 후 문서 유형 간에 기존의 연관 관계에 상응하는 새로운 연관 관계를 자동으로 생성하는 방법이 가능하다.As a processing method, it is possible to delete the association first, and then reestablish a new association that reflects the addition of a new document type by the user. It also copies document items of the previous or subsequent document type to the inserted document type, and automatically creates a new association corresponding to the existing association between the copied document item and the previous document type and the subsequent document type. How is it possible?

문서 항목의 콘텐츠와 상기 문서 항목이 연관되는 연관 관계의 구조 정보는 상호 독립적으로 분리되어 제어 및 저장될 수 있다.The content of the document item and the structure information of the association relationship in which the document item is associated may be separated and controlled independently and stored.

즉, 상기 시스템(100)은 문서 항목과 관련된 구조 정보에 영향을 주지 않은 채 상기 문서 항목의 콘텐츠를 접근 및 제어할 수 있으며, 문서 항목의 콘텐츠에 영향을 주지 않은 채 상기 문서 항목과 관련된 구조 정보를 접근 및 제어할 수 있다.That is, the system 100 can access and control the content of the document item without affecting the structural information associated with the document item, and the structure information related to the document item without affecting the content of the document item. Can be accessed and controlled.

단계 유형 문서는 단계 유형에 따라 일정한 규격을 가질 수 있으며, 정형화된 구조를 가질 수 있다. 상기와 같은 정형화된 구조에서 상기 단계 유형 문서의 구성은 템플릿을 통해 구분되고 관리될 수 있다. 상기 단계 유형 문서의 본문은 상기 템플릿의 적용 대상이 아닐 수 있다.The step type document may have a certain specification according to the step type and may have a formal structure. In the standardized structure, the configuration of the step type document may be divided and managed through a template. The body of the step type document may not be subject to the template.

단계 유형은 하나 이상의 템플릿을 가질 수 있고, 단계 유형 문서는 본문 외에도 상기 하나 이상의 템플릿을 포함할 수 있다.The step type may have one or more templates, and the step type document may include the one or more templates in addition to the text.

상기 템플릿은 IEEE 등의 기관에서 정의한 기본적인 문서 규칙을 갖도록 구성된 것일 수 있다. 예컨대 IEEE 표준 830-1998은 요구 규격서 문서의 형태를 정의한다.The template may be configured to have basic document rules defined by an institution such as IEEE. For example, IEEE Standard 830-1998 defines the format of the requirements document.

상기 시스템(100)의 사용자는, 단계 유형의 템플릿을 생성, 수정 및 삭제 작업을 수행할 수 있다.A user of the system 100 may create, modify, and delete a template of a step type.

단말(150)을 통해 문서 항목의 내용을 입력 받을 경우, 상기 문서 항목 또는 단계 유형 문서의 내용을 단말(150)의 디스플레이(display)를 통해 제공할 경우 및 상기 문서 항목 또는 단계 유형 문서의 내용을 출판(publication)하는 경우에 상기 템플릿이 사용될 수 있다.When the content of the document item is input through the terminal 150, the content of the document item or the step type document is provided through the display of the terminal 150 and the content of the document item or the step type document. The template may be used in the case of publication.

전술된 사용자는 각자의 역할에 따라 프로젝트 관리자, 시스템 관리자, 승인 관리자, 일반 사용자 등의 직급을 갖는다. 상기 시스템(100)은 각각의 사용자 별로, 또는 사용자의 직급 별로 상기 시스템(100)의 프로젝트, 단계 유형, 단계 유형 문서, 문서 항목 및 연관 관계에 대한 관리 권한을 설정할 수 있다.The above-described users have positions such as project manager, system administrator, approval manager, general user, etc. according to their respective roles. The system 100 may set management authority for a project, a step type, a step type document, a document item, and an association relationship of the system 100 for each user or each user's position.

상기 관리는 대상에 대한 생성(create) 작업, 삭제(delete) 작업, 변경(modify) 작업, 복사(copy) 작업, 잘라내기(cut) 작업, 붙여 넣기(paste) 작업, 권한 변경(access control) 작업, 인쇄(print) 작업, 저장(save) 작업 및 불러오기(load) 작업 등을 포함한다.The management includes create, delete, modify, copy, cut, paste, and access control of the object. Jobs, print jobs, save jobs, and load jobs.

또한, 상기 권한은 각각의 프로젝트, 단계 유형, 단계 유형 문서, 문서 항목 또는 연관 관계마다 별개로 설정될 수 있다.In addition, the authority may be set separately for each project, step type, step type document, document item or association relationship.

상기 사용자 인터페이스부(110)는 단말(150)로부터 관리 요청을 수신한다. 상기 관리 요청은 사용자 계정, 사용자 권한, 프로젝트, 단계 유형, 단계 유형 문서, 문서 항목 및 연관 관계에 대한 관리 요청을 포함한다.The user interface 110 receives a management request from the terminal 150. The management request includes management requests for user accounts, user rights, projects, step types, step type documents, document items, and associations.

상기 제어부(120)는 상기 관리 요청에 따라 전술한 프로젝트, 단계 유형, 단계 유형 문서, 문서 항목 및 연관 관계에 대한 관리 및 제어를 수행한다.The control unit 120 manages and controls the above-described project, step type, step type document, document item, and related relationship according to the management request.

상기 제어부(120)는 사용자에게 부여된 권한에 따라 상기 관리 요청의 승인 여부를 결정할 수 있다. 상기 권한에 대한 정보가 상기 사용자의 단말(150)로 전송된 경우, 상기 권한 승인은 사용자의 단말(150)에서도 이루어질 수 있다.The controller 120 may determine whether to approve the management request according to the authority granted to the user. When the information on the authority is transmitted to the terminal 150 of the user, the authority approval may also be made in the terminal 150 of the user.

상기 제어부(120)는 상기 관리를 위해 필요한 데이터를 상기 저장부(130)에 저장하며, 상기 저장부(130)에 대하여 상기 데이터의 입출력 작업을 수행한다.The control unit 120 stores the data necessary for the management in the storage unit 130 and performs input / output operations of the data to the storage unit 130.

또한, 상기 제어부(120)는 상기 관리에 대한 결과를 상기 사용자 인터페이스부(110)로 제공하고, 상기 사용자 인터페이스부(110)는 상기 결과를 사용자 단말(150)로 전송한다.In addition, the control unit 120 provides the management result to the user interface unit 110, and the user interface unit 110 transmits the result to the user terminal 150.

상기 저장부(130)는 전술한 프로젝트, 단계 유형, 단계 유형 문서, 문서 항목, 연관 관계, 사용자 정보, 사용자 권한 정보 등에 대한 데이터를 저장한다.The storage unit 130 stores data on the above-described project, step type, step type document, document item, association relationship, user information, user authority information, and the like.

도 4는 본 발명의 일 실시예에 따른 문서 항목을 나타내는 데이터 객체의 구조도이다.4 is a structural diagram of a data object representing a document item according to an embodiment of the present invention.

상기 문서 항목(400)은 문서 항목의 식별자(identifier; ID)(410), 부모 ID(420), 형제 ID(430), 자식 ID(440), 콘텐츠(470), 권한 정보(470), 접근 정보(480) 및 기타 정보(490)를 포함한다.The document item 400 includes an identifier (ID) 410, a parent ID 420, a sibling ID 430, a child ID 440, a content 470, authority information 470, and access to a document item. Information 480 and other information 490.

상기 콘텐츠(470)는 제목(452) 및 본문(454)를 포함한다. 상기 콘텐트는 멀티미디어 객체 등을 더 포함할 수 있다.The content 470 includes a title 452 and a body 454. The content may further include a multimedia object.

상기 식별자는 상기 시스템(100), 상기 프로젝트(200) 또는 상기 개발 단계 유형 내에서 상기 문서 항목을 고유하게(unique) 식별한다.The identifier uniquely identifies the document item within the system 100, the project 200, or the development stage type.

상기 부모 ID(420)는 전술한 단계 유형 내의 문서 항목들로 구성되는 트리에서의 상기 문서 항목(400)의 부모 노드, 즉 상위 문서 항목을 가리킨다. 즉, 상기 부모 ID(420)의 값은 상기 상위 문서 항목의 ID이다.The parent ID 420 points to the parent node of the document item 400, i.e., the parent document item, in a tree composed of document items in the aforementioned step types. That is, the value of the parent ID 420 is the ID of the parent document item.

최상위 단계의 문서 항목의 경우 상기 부모 ID(420) 값으로 널(null) 값을 갖거나 또는 상기 단계 유형의 ID 값을 가질 수 있다.In the case of the highest level document item, the parent ID 420 may have a null value or an ID value of the step type.

상기 형제 ID(430)는 상기 트리에서의 상기 문서 항목(400)의 우측 형제를 가리킨다. 상기 문서 항목(400)의 형제가 없거나 상기 문서(400) 항목이 최우측 형제인 경우 상기 형제 ID(430)의 값은 널 값이 될 수 있다.The sibling ID 430 points to the right sibling of the document item 400 in the tree. If there is no sibling of the document item 400 or if the document 400 item is the rightmost sibling, the value of the sibling ID 430 may be a null value.

상기 자식 ID(440)는 상기 트리에서의 상기 문서 항목(400)의 최좌측 자식을 가리킨다. 상기 문서 항목(400)이 자식이 없는 경우 상기 자식 ID(440)의 값은 널 값이 될 수 있다.The child ID 440 indicates the leftmost child of the document item 400 in the tree. If the document item 400 has no children, the value of the child ID 440 may be a null value.

상기 콘텐츠(450)는 상기 콘텐츠(450)를 구성하는 데이터 또는 멀티미디어 객체를 포함한다.The content 450 includes data or multimedia objects that make up the content 450.

상기 제목(452)은 상기 콘텐츠(450)의 제목으로, 문서 내의 각 장의 제목, 각 절의 제목, 인터페이스 명 또는 코드 명 등이 될 수 있다.The title 452 is a title of the content 450 and may be a title of each chapter, a title of each section, an interface name or a code name in the document.

상기 본문(454)은 상기 콘텐츠(450)의 본문으로, 문서 내의 각 장의 본문, 각 절의 본문, 인터페이스 본문 또는 코드 본문 등이 될 수 있다.The body 454 is a body of the content 450 and may be a body of each chapter, a body of each section, an interface body or a code body of the document.

상기 멀티미디어 객체(도시되지 않음)는 상기 콘텐츠에 포함되는 이미지, 동영상, 음성, 음향, 플래시 및 링크 등의 객체이다.The multimedia object (not shown) is an object such as an image, a video, a voice, a sound, a flash, and a link included in the content.

상기 권한 정보(470)는 상기 문서 항목에 대한 접근 권한을 판별할 수 있는 데이터를 저장한다. 예컨대, 상기 데이터는 접근 가능한 사용자의 목록(list), 접근 허용 결정 방법, 사용자 별 접근 제어 필드(field) 등의 형식으로 구성될 수 있다.The authority information 470 stores data for determining an access authority for the document item. For example, the data may be configured in the form of a list of accessible users, a method for determining access permission, an access control field for each user, and the like.

상기 접근 정보(480)는 상기 문서 항목에 대한 접근 이력을 저장한다. 예컨대, 접근한 사용자, 접근의 유형, 접근의 사유, 접근 전후의 변경 사항, 접근 시각, 접근의 횟수 등이 상기 이력의 내용이 될 수 있다.The access information 480 stores an access history for the document item. For example, the access user, the type of access, the reason for the access, the change before and after the access, the access time, the number of accesses, and the like may be contents of the history.

상기 권한 정보(470) 및 상기 접근 정보(480)는 상기 문서 항목(400) 별로 저장되지 않을 수 있다. 예컨대, 상기 시스템(100) 상 또는 상기 프로젝트(200) 상의 모든 권한 정보 또는 접근 정보가 하나의 테이블 또는 데이터베이스로 저장될 수 있다. 이러한 경우, 상기 테이블 또는 데이터베이스의 각각의 엔트리(entry)는 상기 프로젝트, 상기 단계 유형 항목 및 상기 문서 항목을 식별하기 위한 식별자를 포함할 수 있다.The authority information 470 and the access information 480 may not be stored for each document item 400. For example, all authority information or access information on the system 100 or the project 200 may be stored in one table or database. In this case, each entry in the table or database may include an identifier for identifying the project, the step type item and the document item.

도 5는 본 발명의 일 실시예에 따른 단계 유형 문서 생성 절차를 도시한다.5 illustrates a step type document generation procedure according to an embodiment of the present invention.

상기 단계 유형 문서 생성을 위해 도 4와 같은 구조를 가진 문서 항목들이 사용된다. 전술한 것처럼 상기 문서 항목들은 트리 구조를 이룬다.Document items having the structure as shown in FIG. 4 are used to generate the step type document. As mentioned above, the document items form a tree structure.

상기 절차에서 현재 처리의 대상이 되는 노드, 즉 문서 항목을 현재 노드라고 칭한다.In the above procedure, the node that is the target of the current processing, that is, the document item, is called the current node.

우선, 트리의 루트가 현재 노드로 설정된다(S510). 여기서 루트는 상기 문서 항목 중 최상위 최좌측 문서 항목을 자식으로 갖는 노드이다. 상기 루트 노드는 상기 단계 유형일 수도 있고, 상기 단계 유형 내에서 루트로서 하기 위해 설정된 부가적인 문서 항목 데이터 구조일 수도 있다.First, the root of the tree is set to the current node (S510). Here, the root is a node having the highest leftmost document item among the document items as a child. The root node may be the step type or may be an additional document item data structure set up to be a root within the step type.

다음, 현재 노드의 자식 노드가 있는지 검사된다(S520). 만약 자식 노드가 있는 경우 상기 자식 노드가 우선적으로 처리된다.Next, it is checked whether there is a child node of the current node (S520). If there is a child node, the child node is processed first.

현재 노드에게 자식 노드가 있는 경우, 현재 노드의 형제 노드가 있는지 검사된다(S530).If the current node has a child node, it is checked whether there is a sibling node of the current node (S530).

만약, 형제 노드가 있다면, 상기 형재 노드들은 상기 자식 노드의 처리 후에 처리되기 위해 스택(stack)에 저장(push)되고(S532), 다음 단계(534)가 진행된다. 만약, 형제 노드가 없는 경우 바로 상기 다음 단계(534)가 진행된다.If there is a sibling node, the shape nodes are pushed to the stack (S532) to be processed after processing of the child node (S532) and the next step 534 proceeds. If there is no sibling node, the next step 534 proceeds immediately.

다음, 상기 자식 노드가 작성 중인 상기 단계 유형 문서에 추가(append)된다(S534).Next, the child node is appended to the step type document being created (S534).

즉, 생성되고 있는 단계 유형 문서의 내용의 말단에 상기 자식 노드, 즉, 문서 항목의 콘텐츠가 추가된다.That is, the child node, that is, the content of the document item is added to the end of the content of the step type document being generated.

다음, 상기 자식 노드가 상기 현재 노드로 설정되고(S536), 상기 새로운 현재 노드의 처리 단계(S520)가 진행된다.Next, the child node is set as the current node (S536), and processing of the new current node (S520) is performed.

현재 노드가 자식 노드가 없는 경우, 현재 노드의 형제 노드가 있는지 검사된다(S540).If the current node has no child node, it is checked whether there is a sibling node of the current node (S540).

상기 형제 노드가 있는 경우, 상기 형제 노드가 작성 중인 상기 단계 유형 문서에 추가된다(S542).If there is the sibling node, the sibling node is added to the step type document being created (S542).

다음, 상기 형제 노드가 상기 현재 노드로 설정되고(S536), 상기 새로운 현재 노드의 처리 단계(S520)가 진행된다.Next, the sibling node is set as the current node (S536), and processing of the new current node (S520) is performed.

현재 노드가 형제 노드가 없는 경우, 상기 스택에 저장된 노드가 있는지 검사된다(S550).If the current node does not have a sibling node, it is checked whether there is a node stored in the stack (S550).

상기 스택에 저장된 노드가 있는 경우, 상기 스택에서 꺼내진(pop) 노드가 현재 노드로 설정되고(S552), 상기 새로운 현재 노드의 처리 단계(S520)가 진행된다.If there is a node stored in the stack, the node popped out of the stack is set as the current node (S552), and the processing step (S520) of the new current node proceeds.

상기 스택에 저장된 노드가 없는 경우, 모든 노드가 처리된 것이므로 절차가 종료된다.If no node is stored in the stack, the procedure ends because all nodes have been processed.

상기와 같은 절차를 통해 단계 유형 내의 모든 문서 항목의 콘텐츠는 깊이 우선(depth-first)의 방식으로 순회(traversal)되며, 상기 순회의 순서에 따라 상기 단계 유형 문서에 추가된다.Through the above procedure, the contents of all the document items in the step type are traversal in a depth-first manner and added to the step type document in the order of the traversal.

도 6은 본 발명의 일 실시예에 따른 연관 관계의 구조 정보를 나타내는 데이터 객체의 구조도이다.6 is a structural diagram of a data object representing structural information of an association according to an embodiment of the present invention.

상기 구조 정보(600)는 연관 관계를 이루는 양 문서 항목에 대한 정보를 포함한다. 상기 정보는 전 문서 항목이 속하는 단계 유형의 ID(610), 상기 전 문서 항목의 ID(612), 후 문서 항목이 속하는 단계 유형의 ID(620) 및 상기 후 단계 유형의 ID(622)를 포함한다.The structure information 600 includes information on both document items that are associated with each other. The information includes an ID 610 of the step type to which the previous document item belongs, an ID 612 of the previous document item, an ID 620 of the step type to which the next document item belongs, and an ID 622 of the post step type. do.

또한, 상기 구조 정보(600)는 도 5를 참조하여 설명된 것과 같은 상기 구조 정보(600)에 대한 권한 정보(630) 및 접근 정보(640)를 포함한다.In addition, the structure information 600 includes authority information 630 and access information 640 for the structure information 600 as described with reference to FIG. 5.

상기 구조 정보(600)는 추적 기능을 제공하기 위한 추적 정보(650)를 포함한다.The structure information 600 includes tracking information 650 for providing a tracking function.

상기 추적 정보(650)는 전 문서 항목이 접근된 경우 후 문서 항목을 접근하는 사용자에게 통지가 되었는지 여부에 관한 정보, 또는 그 반대의 정보, 추적이 통지될 사용자의 리스트, 상기 사용자의 추적 확인 여부, 추적 정보 제공 기간 등을 포함할 수 있다.The tracking information 650 may include information on whether a user accessing a document item after the previous document item has been notified, or vice versa, a list of users to be tracked, and whether the user confirms tracking. , Tracking information provision period, and the like.

상기 권한 정보(630), 상기 접근 정보(640) 및 상기 추적 정보(650)는 상기 구조 정보(600) 별로 저장되지 않을 수 있다. 예컨대, 상기 시스템(100) 상 또는 상기 프로젝트(200) 상의 모든 권한 정보, 접근 정보 또는 추적 정보가 하나의 테이블 또는 데이터베이스로 저장될 수 있다. 이러한 경우, 상기 테이블 또는 데이터베이스의 각각의 엔트리(entry)는 상기 프로젝트 및 상기 구조 정보를 식별하기 위한 식별자를 포함할 수 있다.The authority information 630, the access information 640, and the tracking information 650 may not be stored for each of the structure information 600. For example, all authority information, access information, or tracking information on the system 100 or on the project 200 may be stored in one table or database. In this case, each entry of the table or database may include an identifier for identifying the project and the structure information.

도 4 및 도 5에서 도시된 것처럼, 특정 문서 항목(400)과 상기 문서 항목과 연관된 연관 관계의 구조 정보(600)는 별개의 데이터 객체로서 상호 독립적으로 관리 및 저장될 수 있다. 따라서, 상기 문서 항목(400)의 콘텐츠(450) 및 상기 연관 관계 양자가 각각 다른 사용자로부터 독립적으로 관리 및 제어되는 것이 가능하다.As shown in FIGS. 4 and 5, the specific document item 400 and the structural information 600 of the association associated with the document item may be managed and stored independently of each other as separate data objects. Thus, it is possible for both the content 450 and the association of the document item 400 to be managed and controlled independently from each other.

도 7은 본 발명의 일 실시예에 따른 소프트웨어 형상 관리 방법의 절차 흐름도이다.7 is a flowchart illustrating a software configuration management method according to an embodiment of the present invention.

우선, 상기 프로젝트(200)가 생성된다(S710)First, the project 200 is generated (S710).

상기 프로젝트(200)가 생성되면서, 기본적인 단계 유형 및 상기 단계 유형의 템플릿이 생성될 수 있다.As the project 200 is generated, a basic step type and a template of the step type may be generated.

또한, 전술된 본 발명의 실시예에 따른 상기 프로젝트(200)에 대한 다른 작업이 상기 단계(S710)에서 수행될 수 있다.In addition, other operations on the project 200 according to the above-described embodiment of the present invention may be performed in the step S710.

다음, 상기 단계 유형이 생성된다(S720).Next, the step type is generated (S720).

또한, 전술된 본 발명의 실시예에 따른 상기 단계 유형에 대한 다른 작업이 상기 단계(S720)에서 수행될 수 있다.In addition, other operations for the step type according to the embodiment of the present invention described above may be performed in the step (S720).

상기 단계 유형이 생성되면, 상기 단계 유형에 속하는 상기 문서 항목, 상기 문서 항목의 상기 연관 관계, 상기 단계 유형의 상기 템플릿이 생성될 수 있다(S730, S740 및 S750)When the step type is generated, the document item belonging to the step type, the association relation of the document item, and the template of the step type may be generated (S730, S740, and S750).

또한, 전술된 본 발명의 실시예에 따른 상기 문서 항목, 상기 문서 항목의 상기 연관 관계, 상기 단계 유형의 상기 템플릿에 대한 다른 작업이 상기 단계(S730, S740 및 S750)에서 수행될 수 있다.In addition, other operations on the document item, the association relationship of the document item, and the template of the step type according to the above-described embodiment of the present invention may be performed in the steps S730, S740, and S750.

상기 문서 항목 및 상기 연관 관계의 작성이 완료되면, 상기 단계 유형의 상기 단계 유형 문서가 생성된다(S760).When the creation of the document item and the association is completed, the step type document of the step type is generated (S760).

또한, 전술된 본 발명의 실시예에 따른 상기 단계 유형 문서에 대한 다른 작업이 상기 단계(S760)에서 수행될 수 있다.In addition, other operations on the step type document according to the above-described embodiment of the present invention may be performed in the step S760.

다음, 상기 단계 유형 문서가 생성되고, 상기 템플릿이 생성되면, 상기 단계 유형 문서는 출판된다(S770).Next, the step type document is generated, and when the template is generated, the step type document is published (S770).

상기의 절차(S710 내지 S770)은 상기 사용자 단말(S150)을 통한 관리 요청에 따라 단계 별로 수행될 수 있다.The above procedures S710 to S770 may be performed step by step according to a management request through the user terminal S150.

도 8은 본 발명의 일 실시예에 따른 단말의 구성도이다.8 is a configuration diagram of a terminal according to an embodiment of the present invention.

상기 단말(150)은 입력부(810), 제어부(820) 및 통신부(830)를 포함한다.The terminal 150 includes an input unit 810, a control unit 820, and a communication unit 830.

상기 입력부(150)는 사용자로부터 관리 요청 데이터를 입력 받는다.The input unit 150 receives management request data from a user.

상기 제어부(820)는 상기 입력 받은 관리 요청 데이터를 관리 요청으로 가공한다The controller 820 processes the received management request data into a management request.

상기 관리 요청은 상기 단계 유형, 상기 문서 항목, 상기 문서 항목의 콘텐츠 및 상기 연관 관계를 나타내는 구조 정보를 관리 및 제어하기 위한 요청이다.The management request is a request for managing and controlling structure information indicating the step type, the document item, the content of the document item, and the association.

상기 통신부(830)는 상기 관리 요청을 상기 통신망을 통하여 상기 시스템(100)으로 전송한다.The communication unit 830 transmits the management request to the system 100 through the communication network.

상기 시스템(100) 및 소프트웨어 테스트(test) 간의 연동이 가능하다.Interworking between the system 100 and a software test is possible.

사용자가 각각의 문서 항목에 필요한 테스트(테스트 케이스, 테스트 프로시저 및 테스트 코드 등)을 생성하면, 상기 문서 항목과 연계된 테스트 작성 모듈이 동작할 수 있다.When the user generates a test (test case, test procedure, test code, etc.) necessary for each document item, the test writing module associated with the document item may operate.

상기 시스템(100)은 테스트와의 연계성을 확인하고, 테스트 결과를 수신하여, 상기 결과를 확인하는 기능을 포함할 수 있다.The system 100 may include a function of checking connectivity with a test, receiving a test result, and checking the result.

예컨대, 특정 문서 항목에 대한 테스트가 성공한 경우 상기 항목은 녹색으로 시각화될 수 있고, 특정 문서 항목에 대한 테스트가 실패한 경우 상기 항목은 적색으로 시각화될 수 있다.For example, the item may be visualized in green when the test on a specific document item is successful, and the item may be visualized in red when the test on a specific document item fails.

또한, 특정 문서 항목 간에 연관 관계가 성립된 경우, 테스트에 있어서도 이러한 연관 관계가 적용될 수 있다. 즉, 테스트는 인수 테스트(acceptance test), 시스템 테스트(system test), 통합 테스트(integration test), 컴포넌트 테스트(component test) 및 단위 테스트(unit test) 등이 있고, 상기 테스트들 간의 관계는 전술한 상기 단계 유형의 문서 항목 간의 연관 관계와 유사한 관계가 있다.In addition, when an association is established between specific document items, such an association may also be applied to a test. That is, the test includes an acceptance test, a system test, an integration test, a component test, and a unit test, and the relationship between the tests is described above. There is a similar relationship to the association between the document items of the step type.

또한, 특정 문서 항목에 대한 테스트 결과가 전술한 추적 기능의 일부로서 상기 특정 문서 항목과 연관된 문서 항목에 접근하는 사용자에게 제공될 수 있다.In addition, a test result for a specific document item may be provided to a user accessing a document item associated with the specific document item as part of the above-described tracking function.

이러한 시각화에 따라 사용자는 테스트 수행의 결과를 즉각 인지하고, 상기 결과에 따른 작업을 상기 문서 항목에 수행할 수 있다.According to this visualization, the user can immediately recognize the result of the test execution and can perform an operation on the document item according to the result.

본 발명의 일 실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Method according to an embodiment of the present invention is implemented in the form of program instructions that can be executed by various computer means may be recorded on a computer readable medium. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination. Program instructions recorded on the media may be those specially designed and constructed for the purposes of the present invention, or they may be of the kind well-known and available to those having skill in the computer software arts. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks, such as floppy disks. Magneto-optical media, and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, the present invention has been described by way of limited embodiments and drawings, but the present invention is not limited to the above embodiments, and those skilled in the art to which the present invention pertains various modifications and variations from such descriptions. This is possible.

그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined not only by the claims below but also by the equivalents of the claims.

100: 소프트웨어 형상 관리 시스템
110: 사용자 인터페이스 부
120: 제어부
130: 저장부
150: 사용자 단말
100: software configuration management system
110: user interface part
120: control unit
130: storage unit
150: user terminal

Claims (13)

사용자의 단말기로부터 관리 요청을 수신하는 사용자 인터페이스부;
상기 수신된 관리 요청에 따라서, 순차적인 관계를 구성하는 복수의 소프트웨어 개발 단계 유형, 상기 각각의 소프트웨어 개발 단계 유형에 포함되는 복수의 문서 항목, 상기 복수의 문서 항목의 콘텐츠 및 상기 복수의 소프트웨어 개발 단계 유형 중에서 전 단계 유형의 문서 항목 및 후 단계 유형의 문서 항목 상호간의 연관 관계를 나타내는 구조 정보를 생성하여, 상기 문서 항목이 관리되도록 제어하는 제어부; 및
상기 복수의 소프트웨어 개발 단계 유형, 상기 복수의 문서 항목, 상기 콘텐츠, 및 상기 구조 정보를 저장하는 저장부
를 포함하는, 소프트웨어 형상 관리 시스템.
A user interface unit for receiving a management request from a user terminal;
According to the received management request, a plurality of software development step types constituting a sequential relationship, a plurality of document items included in each of the software development step types, the contents of the plurality of document items and the plurality of software development steps A control unit for generating structure information indicating an association between a document item of a previous step type and a document item of a next step type among types, and controlling the document item to be managed; And
A storage unit for storing the plurality of software development step types, the plurality of document items, the contents, and the structure information
Including, the software configuration management system.
제1항에 있어서,
상기 제어부는 하나의 개발 단계 유형에 포함되는 복수의 문서 항목 전체의 콘텐츠를 하나로 통합하는 단계 유형 문서를 생성하고,
상기 저장부는 상기 생성된 단계 유형 문서를 저장하는, 소프트웨어 형상 관리 시스템.
The method of claim 1,
The control unit generates a step type document integrating contents of a plurality of document items included in one development step type into one;
And the storage unit stores the generated step type document.
제1항에 있어서,
제2 사용자의 단말기로부터 상기 문서 항목에 대한 접근이 감지된 경우, 상기 제어부는 상기 접근된 문서 항목의 구조 정보에 따라 상기 접근된 항목과 연관된 문서 항목을 상기 저장부로부터 검색하고, 상기 연관된 문서 항목을 접근하는 제3 사용자의 단말기에게 상기 사용자 인터페이스부를 통하여 상기 제2 사용자의 단말기가 접근한 상기 문서 항목에 대한 추적 정보를 제공하는, 소프트웨어 형상 관리 시스템.
The method of claim 1,
When access to the document item is detected from the terminal of the second user, the controller searches for the document item associated with the accessed item from the storage unit according to the structure information of the accessed document item, and the associated document item. And providing tracking information on the document item accessed by the terminal of the second user to the terminal of the third user who accesses the terminal through the user interface unit.
제1항에 있어서,
상기 저장부는 상기 복수의 개발 단계 유형에서 사용되는 정형화된 구조를 갖는 템플릿을 더 저장하고,
상기 사용자 인터페이스부는 상기 템플릿의 양식에 따라서 상기 관리 요청을 수신하는, 소프트웨어 형상 관리 시스템.
The method of claim 1,
The storage unit further stores a template having a structured structure used in the plurality of development stage types,
And the user interface unit receives the management request in accordance with the form of the template.
제1항에 있어서,
상기 제어부는 상기 콘텐츠 및 상기 구조 정보가 상호 독립적으로 분리된 채 상기 문서 항목이 관리되도록 제어하는, 소프트웨어 형상 관리 시스템.
The method of claim 1,
And the control unit controls the document item to be managed while the content and the structure information are separated from each other independently.
제1항에 있어서,
상기 전 단계 유형의 문서 항목은 복수의 상기 후 단계 유형의 문서 항목과 연관 관계를 갖고, 상기 후 단계 유형의 문서 항목은 복수의 상기 전 단계 유형의 문서 항목과 연관 관계를 갖는, 소프트웨어 형상 관리 시스템.
The method of claim 1,
The pre-step type document item is associated with a plurality of post step type document items, and the post step type document item is associated with a plurality of pre step type document items. .
제1항에 있어서,
상기 소프트웨어 개발 단계 유형은 제안 요청, 요구 규격, 상세 요구 규격, 소프트웨어 설계, 인터페이스 및 코드 중 적어도 하나
를 포함하는, 소프트웨어 형상 관리 시스템.
The method of claim 1,
The software development step type may include at least one of a request for proposal, a requirement specification, a detailed requirement specification, a software design, an interface, and code.
Including, the software configuration management system.
사용자의 단말기로부터 관리 요청을 수신하는 단계;
상기 관리 요청에 따라서 순차적인 관계를 구성하는 복수의 소프트웨어 개발 단계 유형을 생성하는 단계;
상기 관리 요청에 따라서 상기 각각의 소프트웨어 개발 단계 유형에 포함되는 복수의 문서 항목을 생성하는 단계;
상기 관리 요청에 따라서 상기 복수의 문서 항목의 콘텐츠를 생성하는 단계; 및
상기 관리 요청에 따라서 상기 복수의 소프트웨어 개발 단계 유형 중에서 전 단계 유형의 항목 및 후 단계 유형의 항목 간 연관 관계를 나타내는 구조 정보를 생성하는 단계
를 포함하는, 소프트웨어 형상 관리 방법.
Receiving a management request from a user's terminal;
Generating a plurality of software development step types forming a sequential relationship according to the management request;
Generating a plurality of document items included in each type of software development step according to the management request;
Generating contents of the plurality of document items according to the management request; And
Generating structure information indicating an association relationship between an item of a previous step type and an item of a next step type among the plurality of software development step types according to the management request;
Comprising a software configuration management method.
제8항에 있어서,
하나의 상기 개발 단계 유형에 포함되는 복수의 문서 항목 전체의 콘텐츠를 하나로 통합하는 단계 유형 문서를 생성하는 단계
를 더 포함하는, 소프트웨어 형상 관리 방법.
The method of claim 8,
A step of integrating the contents of a plurality of document items included in one of the development step types into one; generating a type document
The software configuration management method further comprising.
제8항에 있어서,
제2 사용자의 단말기로부터 상기 문서 항목에 대한 접근이 감지된 경우, 상기 접근된 문서 항목의 구조 정보에 따라 상기 접근된 항목과 연관된 문서 항목을 검색하는 단계; 및
상기 연관된 문서 항목을 접근하는 제3 사용자의 단말기에게 상기 제2 사용자의 단말기가 접근한 상기 문서 항목에 대한 추적 정보를 제공하는 단계
를 더 포함하는, 소프트웨어 형상 관리 방법.
The method of claim 8,
If access to the document item is detected from a terminal of a second user, retrieving a document item associated with the accessed item according to structure information of the accessed document item; And
Providing tracking information for the document item accessed by the terminal of the second user to the terminal of the third user accessing the associated document item;
The software configuration management method further comprising.
제8항에 있어서,
복수의 개발 단계 유형에서 사용되는 정형화된 구조를 갖는 템플릿을 상기 사용자의 단말기로 제공하는 단계
를 더 포함하고,
상기 관리 요청은 상기 템플릿의 양식에 따른 것인, 소프트웨어 형상 관리 방법.
The method of claim 8,
Providing a template having a structured structure used in a plurality of types of development steps to the user's terminal
Further comprising:
And wherein said management request is in the form of said template.
제8항 내지 제11항 중 어느 한 항의 소프트웨어 형상 관리 방법을 수행하는 프로그램을 수록한, 컴퓨터 판독 가능 기록 매체.A computer-readable recording medium containing a program for performing the software shape management method according to any one of claims 8 to 11. 사용자로부터 관리 요청 데이터를 입력 받는 입력부;
상기 입력 받은 관리 요청 데이터를 순차적인 관계를 구성하는 복수의 소프트웨어 개발 단계 유형, 상기 각각의 소프트웨어 개발 단계 유형에 포함되는 복수의 문서 항목, 상기 복수의 문서 항목의 콘텐츠 및 상기 복수의 소프트웨어 개발 단계 유형 중에서 전 단계 유형의 문서 항목 또는 후 단계 유형의 문서 항목 간 연관 관계를 나타내는 구조 정보를 생성하기 위한 관리 요청으로 가공하는 제어부; 및
상기 관리 요청을 통신망을 통하여 형상 관리 시스템으로 전송하는 통신부
를 포함하는, 단말.
An input unit to receive management request data from a user;
A plurality of software development step types for sequential relationship of the received management request data, a plurality of document items included in each of the software development step types, contents of the plurality of document items, and the plurality of software development step types A control unit for processing into a management request for generating structure information indicating an association relationship between a document item of a previous step type or a document item of a next step type among the following; And
Communication unit for transmitting the management request to the configuration management system through a communication network
Including, the terminal.
KR1020100059030A 2010-06-22 2010-06-22 Integrated management system and method for software development KR20110138885A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100059030A KR20110138885A (en) 2010-06-22 2010-06-22 Integrated management system and method for software development

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100059030A KR20110138885A (en) 2010-06-22 2010-06-22 Integrated management system and method for software development

Publications (1)

Publication Number Publication Date
KR20110138885A true KR20110138885A (en) 2011-12-28

Family

ID=45504624

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100059030A KR20110138885A (en) 2010-06-22 2010-06-22 Integrated management system and method for software development

Country Status (1)

Country Link
KR (1) KR20110138885A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114065203A (en) * 2021-11-29 2022-02-18 绿盟科技集团股份有限公司 Risk detection method and device for rich text document and readable storage medium

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114065203A (en) * 2021-11-29 2022-02-18 绿盟科技集团股份有限公司 Risk detection method and device for rich text document and readable storage medium

Similar Documents

Publication Publication Date Title
US9336137B2 (en) System and method for performing data management in a collaborative development environment
RU2398274C2 (en) Data bank for program application documents
US7185317B2 (en) Logical data modeling and integrated application framework
US7559052B2 (en) Meta-model for associating multiple physical representations of logically equivalent entities in messaging and other applications
CN112287007B (en) Industrial production data real-time processing method and system based on Flink SQL engine
US7720885B2 (en) Generating a word-processing document from database content
US20120266131A1 (en) Automatic program generation device, method, and computer program
US20140040791A1 (en) Development platform for software as a service (saas) in a multi-tenant environment
US20150195311A1 (en) Systems and Methods for Providing Access to a Document Associated with a Third Party Software Application Via Interframe Communication
US9229920B1 (en) Compound undo/redo manager for mixed model edits
US20070061758A1 (en) Method and apparatus for constructing project hierarchies, process models and managing their synchronized representations
US20080209572A1 (en) Data Processing System, Data Processing Method, and Management Server
US20230086854A1 (en) Dynamically controlling case model structure using case fragments
JP2013518321A (en) Pattern-based user interface
US11625228B2 (en) System and method for facilitating efficient round-trip engineering using intermediate representations
US20130124969A1 (en) Xml editor within a wysiwyg application
US20150199222A1 (en) System and Method for Managing Remote Procedure Calls Relating to a Third Party Software Application
CN113407284A (en) Navigation interface generation method and device, storage medium and electronic equipment
Zhao et al. A Graph‐Based Method for IFC Data Merging
KR20230117765A (en) Process mining for multi-instance processes
JP2008225898A (en) Conversion device, conversion program, and conversion method
Schauerhuber et al. Bridging WebML to model-driven engineering: from document type definitions to meta object facility
US11861329B2 (en) Method and apparatus for codifying user experience designs and managing the codified user experience designs
US11740878B1 (en) Creating CLI packages and API playbooks from codified graphical user experience designs
CN107533559A (en) Data structure, the model for filling data structure and the method being programmed using data structure to processing unit

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