KR101508496B1 - Asset based requirements simulator and requirements management method thereof - Google Patents

Asset based requirements simulator and requirements management method thereof Download PDF

Info

Publication number
KR101508496B1
KR101508496B1 KR20110124307A KR20110124307A KR101508496B1 KR 101508496 B1 KR101508496 B1 KR 101508496B1 KR 20110124307 A KR20110124307 A KR 20110124307A KR 20110124307 A KR20110124307 A KR 20110124307A KR 101508496 B1 KR101508496 B1 KR 101508496B1
Authority
KR
Grant status
Grant
Patent type
Prior art keywords
requirements
activity
user
input
flow
Prior art date
Application number
KR20110124307A
Other languages
Korean (ko)
Other versions
KR20130058348A (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
Grant date

Links

Images

Abstract

본 발명은 자산 기반의 요구사항 시뮬레이터 및 요구사항 관리 방법에 관한 것으로, 본 발명의 일 실시예에 따른 시뮬레이터가 요구사항을 관리하는 방법은, 도메인(domain)별로 요구사항에 따라 검증된 일련의 자산(asset)을 저장하고, 새로운 소프트웨어 개발에 따른 요구사항을 고려하여 자산 중에서 사용자에 의해 선택된 요구사항 및 관련 자산을 독출하여 시각적인 작업 플로우(flow)로 표시하고 사용자의 선택에 의해 작업 플로우 내의 작업 요소인 액티비티(activity)에 대해 추가, 삭제, 변경 중 어느 하나를 수행하여 새로운 소프트웨어 개발에 대한 요구사항을 생성하고, 생성된 요구사항별로 입력, 연산 및 출력에 따른 속성 데이터를 입력받아 작업 플로우의 비용을 산출하고, 산출된 비용을 고려하여 작업 플로우의 개별 액티비티에 대한 선택을 사용 The present invention relates to a method locations locations simulator and requirements for asset-based demand control, how to manage the simulation is required in accordance with one embodiment of the present invention, a set of assets verified according to each domain (domain) required (asset) for storage and action in the display as a visual task flow (flow) to read out the selected requirements, and its assets by a user among the assets in consideration of the requirements of the new software development flow operation by a user selection elements of activity (activity) by performing any one of add, delete, change, for receiving generate a requirement for a new software development, type the attribute data corresponding to each information generated request is input, computation and output of the operation flow and calculating the costs, taking into account the cost calculated using the selection of the individual activities of the operation flow 자로부터 입력받고 입력에 따라 조정된 작업 플로우를 생성하며, 조정된 작업 플로우를 새로운 자산으로서 저장한다. Receiving input from a person to generate a flow adjustment operation according to the input, and stores the adjustment operation flow a new asset.

Description

자산 기반의 요구사항 시뮬레이터 및 요구사항 관리 방법{Asset based requirements simulator and requirements management method thereof} Asset-based simulator requirements and requirements management method {Asset based requirements simulator and requirements management method thereof}

본 발명은 요구사항을 관리하는 시뮬레이터 및 그 관리 방법에 관한 것으로, 특히 새로운 소프트웨어 개발을 위해 최종 사용자(end user)로부터 요구사항을 수집하고 수집된 요구사항을 이미 구축된 자산을 재사용하여 새로운 자산을 생성하는 자산 기반의 요구사항 시뮬레이터 및 요구사항 관리 방법, 그리고 그 방법을 기록한 기록매체에 관한 것이다. New assets present invention is to reuse the for new software development, and more particularly relates to a simulator and its management methods to manage the requirements gathering requirements from end users (end user) already building requirements gathering required asset generating assets based on the needs of your simulator and requirements management method, and a recording medium storing the method.

전통적으로 소프트웨어의 개발 환경은 개발의 주체가 전문적인 교육을 받은 개발자들의 영역이었다. Traditionally, software development environment has been the subject area of ​​the developer receiving professional development training. 전문 개발자들에게 의해 소프트웨어 개발을 위한 요구사항(requirement)이 수집되고, 이러한 요구사항들은 개발 환경과 개발 수단의 제약들을 고려하여 적절히 가감되거나 조정된다. And the requirement (requirement) for the collection of software developed by a professional developer, these requirements are appropriately adjusted in consideration of acceleration or the development environment and the development of means of constraint. 이러한 과정을 통해 개발 환경과 시스템의 다양한 제약에 최적화되어 제작된 소프트웨어는 개발자 친화적일 수밖에 없다. Is optimized for a variety of development environments and system constraints through this process produced the software it can only be developer-friendly.

최근 이러한 소프트웨어 개발 환경은 종래와는 달리 소프트웨어 및 시스템과는 무관한 최종 사용자에 의해 이루어지거나 주도되는 환경으로 옮겨지고 있다. These recent software development environment has been taken to be made or led by an independent end-user experience and unlike conventional software and systems. 일반적으로 최종 사용자란 컴퓨터 시스템과 관련된 직업 활동을 하지 않아, 컴퓨터 기술이 아닌 다른 분야(예를 들어, 해당 컴퓨터 기술을 이용하여 다른 생산/경제 활동을 하는 분야가 될 수 있다.)에 관한 전문적인 지식을 가진 사람들을 말한다. Typically, the end user is not a professional activity relating to computer systems, and other fields other than computer technology (for example, the use of that computer technology can be a field of other productive / economic activity) expert on He said people with knowledge. 이들은 비록 컴퓨터 기술에 관한 전문성을 갖추고 있지는 않지만, 실제 소프트웨어 개발 현장에서 소프트웨어 산출물(artifact)을 만들고 변경하게끔 하는 주체이며, 중요한 재무 결정이나 업무 처리 플로우 등을 결정하는 역할을 담당한다. Although not even though they have the expertise in computer technology, plays a role in determining the actual software development site is subject to change hagekkeum create software artifacts (artifact), an important financial decision and business process flow, etc. 이러한 개발 환경의 변화는 소프트웨어 개발을 위한 요구 수렴이 최종 사용자에게 의해 수행됨으로써 일반 사용자의 요구(needs)가 왜곡없이 소프트웨어 및 시스템에 반영될 수 있다는 장점을 갖는다. This change in the development environment is becoming a requirement for software development convergence performed by the end user has the advantage that the requirements (needs) a regular user can be reflected in the software and system without distortion. 이하에서 소개되는 비특허문헌은 이러한 최종 사용자에 의한 소프트웨어 개발 방법에 대해 기술하고 있다. Non-Patent Document introduced below are described with respect to software developing method according to this end user.

그러나, 이러한 최종 사용자 친화적인 소프트웨어 개발 방법론은 소프트웨어 비전문가에 의해 제안되었다는 특성으로 인해 또 다른 문제점들이 등장하게 되었다. However, the end-user-friendly software development methodology was another problem that emerged due to the characteristics that suggested by the software unprofessional. 따라서, 소프트웨어 공학 내지 요구 공학의 관점에서 최종 사용자들에 의한 요구사항이 충실히 반영되면서도 이로 인한 부작용이 나타나지 않는 개발 방법론과 이를 관리하기 위한 개발 도구가 요구되고 있다. Therefore, the development of tools for managing development methodology, software engineering does to your needs while being reflected from the standpoint of engineering required by the end-user is obliged the resulting side effects and it does not appear that there is a need.

본 발명이 해결하고자 하는 기술적 과제는 최종 사용자로부터 수집된 요구사항에 기초하여 개발된 소프트웨어에 있어서 최종적인 개발 산출물의 품질이 보장되기 어렵다는 문제점을 해결하고, 이로 인해 해당 개발 산출물에서 잠재적인 소프트웨어의 결함이 지속적으로 나타날 수 있다는 한계를 극복하며, 궁극적으로는 소프트웨어 개발 과정에서 소모되는 요구사항 수렴 및 분석에 필요한 시간이 지연되는 것을 방지하고자 한다. Technical problem to be solved by the present invention, defects in the final address the difficult to guarantee the quality of the development artifacts, resulting in a potential software at the development artifacts in the development of software based on the requirements that are collected from the end user and the limitations that may appear in this constantly ultimately seeks to prevent the delay time required for the convergence requirements and analysis being consumed in the software development process.

상기 기술적 과제를 해결하기 위하여, 본 발명의 일 실시예에 따른 요구사항 시뮬레이터(simulator)가 소프트웨어 개발을 위한 요구사항(requirement)을 관리하는 방법은, 상기 시뮬레이터가 도메인(domain)별로 요구사항에 따라 검증된 일련의 자산(asset)을 저장하는 단계; In order to solve the above technical problem, how to manage the requirements (requirement) for the software development requirement simulator (simulator) in accordance with one embodiment of the present invention, according to the simulator is required for each domain (domain) storing the verified set of assets (asset); 상기 시뮬레이터가 새로운 소프트웨어 개발에 따른 요구사항을 고려하여 상기 저장된 자산 중에서 사용자에 의해 선택된 요구사항 및 관련 자산을 독출하여 시각적인 작업 플로우(flow)로 표시하고, 상기 사용자의 선택에 의해 상기 시뮬레이터가 상기 표시된 작업 플로우 내의 작업 요소인 액티비티(activity)에 대해 추가, 삭제, 변경 중 어느 하나를 수행하여 상기 새로운 소프트웨어 개발에 대한 요구사항을 생성하는 단계; By selection of the user and the simulator wherein the simulator is displayed in the visual task flow (flow) to read out the selected requirements, and its assets by a user from the property of the stored, taking into account the requirements of the new software development, and generating the requirements for the new software developed to perform any one of add, delete, change for the operation elements in activity (activity) shown in the operation flow; 상기 시뮬레이터가 상기 생성된 요구사항별로 입력, 연산 및 출력에 따른 속성 데이터를 입력받아 상기 작업 플로우의 비용을 산출하는 단계; The step of receiving the said simulator input data according to the attribute information input by the generated request, the operation and output the calculated cost of the operation flow; 상기 시뮬레이터가 상기 산출된 비용을 고려하여 상기 작업 플로우의 개별 액티비티에 대한 선택을 상기 사용자로부터 입력받고, 상기 입력에 따라 조정된 작업 플로우를 생성하는 단계; The step of receiving the said simulator input in consideration of the calculated cost of the selection for the individual activities of the operation flow from the user, generates a job flow adjustment according to the input; 및 상기 시뮬레이터가 상기 조정된 작업 플로우를 새로운 자산으로서 저장하는 단계;를 포함한다. And a; and the operation flow of the simulator, said adjustment method comprising: storing a new asset.

상기된 요구사항을 관리하는 방법에서, 상기 액티비티는 하나 이상의 입력과 연산에 따른 출력을 가지며, 상기 사용자는 상기 시각적인 작업 플로우 상에서 GUI(graphical user interface)를 이용하여 상기 액티비티에 대한 입력과 출력을 통합적으로 설정한다. How to manage the said desired, the activity has an output corresponding to one or more input and operation, the user inputs and outputs for the activity using a GUI (graphical user interface) on the visual workflow The integrated setting. 또한, 상기 액티비티는, 상기 액티비티의 수행에 관한 GUI 폼(form) 디자인 및 상기 액티비티에 대한 입력과 출력이 연계되고, 상기 액티비티의 기능이 의미론적으로 유사한 그룹별로 저장된다. Further, the activity is, the input and output of the GUI forms (form) the design and performance of activities related to said activity being linked, the activity of the function is stored by a similar group to the semantic.

나아가, 상기된 요구사항을 관리하는 방법에서, 상기 작업 플로우의 비용을 산출하는 단계는, 상기 생성된 요구사항별로 상기 액티비티의 데이터에 관한 속성 데이터 및 트랜잭션(transaction)에 관한 속성 데이터를 입력받아 상기 작업 플로우의 비용을 산출한다. Further, in the method for managing the locations wherein the request, the step of calculating the cost of the operation flow, received by the information, the generated request is input to the attribute data on the attribute data and transaction (transaction) on the activity data, the and it calculates the cost of the operation flow.

또한, 상기된 요구사항을 관리하는 방법에서, 상기 조정된 작업 플로우를 생성하는 단계는, 사용자 관점의 기능 단위에 대응하는 개별 액티비티를 미리 설정된 기준에 따라 정렬하는 단계; Further, in the method for managing the information requested, generating the adjusted operation flow, aligning along a separate activity, corresponding to the functional unit of the user's point of view, the pre-set criteria; 및 상기 정렬된 순서에 따라 상기 산출된 비용을 누적하여 예산을 충족시킬 수 있도록 상기 개별 액티비티의 속성을 조정하는 단계;를 포함한다. And a; and the step of adjusting the properties of the individual activities to meet the budget by accumulating the calculated cost in accordance with the ordered sequence.

상기된 요구사항을 관리하는 방법은, 상기 저장된 새로운 자산에 따라 구현된 소프트웨어를 소정 테스트를 통해 검증하는 단계; To manage the said request is a step of verifying through a predetermined testing a software implementation in accordance with the new asset is stored; 및 상기 검증 결과 오류가 발견되지 않은 경우, 상기 저장된 작업 플로우를 상기 도메인의 한 유형으로 등록하여 재사용 가능한 자산으로 변경하는 단계;를 더 포함한다. Further includes; and if the verification result is not an error is found, the step of changing the properties of the stored operation flow a type of the domain as a reusable assets.

한편, 이하에서는 상기 기재된 요구사항을 관리하는 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다. On the other hand, the following description provides a computer readable recording medium recording a program for executing a method for managing information required by the above-described computer.

상기 기술적 과제를 해결하기 위하여, 본 발명의 일 실시예에 따른 소프트웨어 개발을 위한 요구사항을 관리하는 장치는, 도메인별로 요구사항에 따라 검증된 일련의 자산을 저장하는 저장부; In order to solve the above technical problems, an apparatus for managing the requirement for software development in accordance with one embodiment of the present invention is a storage unit for storing the set of assets in accordance with the verification, required by each domain; 사용자의 입력 및 선택을 수신하고, 상기 요구사항 및 상기 자산에 기초하여 생성된 영상을 영상 표시 수단에 전달하는 입출력부; Input-output unit for receiving a user input and selecting and delivering a video image generated based on the property information and the request to the video display means; 및 새로운 소프트웨어 개발에 따른 요구사항을 고려하여 상기 저장부에 저장된 자산 중에서 사용자에 의해 선택된 요구사항 및 관련 자산을 독출하여 시각적인 작업 플로우로 표시하고, 상기 사용자의 선택에 의해 상기 표시된 작업 플로우 내의 작업 요소인 액티비티에 대해 추가, 삭제, 변경 중 어느 하나를 수행하여 상기 새로운 소프트웨어 개발에 대한 요구사항을 생성하는 처리부;를 포함하고, 상기 처리부는, 상기 생성된 요구사항별로 입력, 연산 및 출력에 따른 속성 데이터를 입력받아 상기 작업 플로우의 비용을 산출하고, 상기 산출된 비용을 고려하여 상기 작업 플로우의 개별 액티비티에 대한 선택을 상기 사용자로부터 입력받고, 상기 입력에 따라 조정된 작업 플로우를 생성하며, 상기 조정된 작업 플로우를 새로운 자산으로서 상기 저장부 And work in consideration of the requirement of the new software development to see all of the assets stored in the storage unit to the visual operation flow reads out the selected requirements, and its assets by a user, the operation flow from the displayed by the selection of the user, by performing any one of add, delete, change for the element, the activity processor for generating the requirements for the new software development; includes said treatment is, according to the input by the information, the generated request, the operation and output receives the attribute data, receiving the selection of the individual activities of the task flow by calculating the cost of the operation flow, and considering the calculated cost input by the user, generates the adjusted operation flow according to the input, wherein the the adjustment operation flow a new asset the storage unit 에 저장한다. And it stores the.

상기된 요구사항을 관리하는 장치에서, 상기 액티비티는 하나 이상의 입력과 연산에 따른 출력을 가지며, 상기 사용자는 상기 시각적인 작업 플로우 상에서 GUI를 이용하여 상기 액티비티에 대한 입력과 출력을 통합적으로 설정한다. In the apparatus for managing the information the requested, the activity has an output corresponding to one or more input and operation, the user sets the inputs and outputs for the activity in an integrated manner by using a GUI on the visual task flow. 또한, 상기된 요구사항을 관리하는 장치에서, 상기 액티비티는, 상기 액티비티의 수행에 관한 GUI 폼 디자인 및 상기 액티비티에 대한 입력과 출력이 연계되고, 상기 액티비티의 기능이 의미론적으로 유사한 그룹별로 상기 저장부에 저장된다. Further, in the device that manages the information the requested, the activity is, the input and output of the GUI form design, and the activity on the performance of the activity is associated, of the activity, function the storage for each similar group of semantically It is stored in the unit.

나아가, 상기된 요구사항을 관리하는 장치에서, 상기 처리부는, 상기 생성된 요구사항별로 상기 액티비티의 데이터에 관한 속성 데이터 및 트랜잭션에 관한 속성 데이터를 입력받아 상기 작업 플로우의 비용을 산출하고, 상기 데이터에 관한 속성 데이터는, 내부 논리 파일 및 외부 연계 인터페이스 파일이며, 상기 트랜잭션에 관한 속성 데이터는, 외부 입력, 외부 출력 및 외부 질의의 횟수이다. Further, in the device that manages the information the requested, the processing unit is accepted by the information, the generated request is input to the attribute data on the attribute data and the transaction related to the activity data and calculates the cost of the operation flow, the data attribute data relating to the, the internal logic and external file associated interface file, the attribute data related to the transactions, the number of times of the external input, external output, and an outer query.

또한, 상기된 요구사항을 관리하는 장치에서, 상기 처리부는, 사용자 관점의 기능 단위에 대응하는 개별 액티비티를 미리 설정된 기준에 따라 정렬하고, 상기 정렬된 순서에 따라 상기 산출된 비용을 누적하여 예산을 충족시킬 수 있도록 상기 개별 액티비티의 속성을 조정함으로써 상기 조정된 작업 플로우를 생성한다. Further, in the device that manages the information the requested, the processing unit is arranged, depending on the individual activities corresponding to the functional unit of the user's point of view, the preset criteria, the budget by accumulating the calculated cost in accordance with the sort order, to meet and create a work flow the adjustment by adjusting the properties of the individual activities.

상기된 요구사항을 관리하는 장치에서, 상기 저장된 새로운 자산에 따라 구현된 소프트웨어를 소정 테스트를 통해 검증한 후, 상기 검증 결과 오류가 발견되지 않은 경우, 상기 처리부는 상기 저장된 작업 플로우를 상기 도메인의 한 유형으로 등록하여 재사용 가능한 자산으로 변경하여 상기 저장부에 저장한다. If the device that manages the locations the required, that is after the software implemented in accordance with the new asset of the stored verification through a predetermined test, and the verification result errors are detected, the processing unit is one of the domain to the stored operation flow registered by type and stores it in the storage unit by changing a re-usable property.

본 발명의 실시예들은 검증된 자산으로부터 독출된 요구사항 및 관련 자산을 조정하여 새로운 요구사항이 반영된 작업 플로우를 생성함으로써 최종 사용자에 의해 유도된 개발 산출물의 품질을 보장하고, 해당 개발 산출물에서 나타날 수 있는 소프트웨어적인 결함을 차단할 수 있으며, 새롭게 생성된 작업 플로우가 검증된 경우에 한해 도메인(domain)의 새로운 유형으로 자산을 등록함으로써 요구사항 수렴 및 분석에 필요한 시간을 감소시켜 전체 소프트웨어 개발 과정의 생산성을 향상시킬 수 있다. Embodiments of the present invention by adjusting the requirements and associated assets read from the verified asset by generating a task flow reflect the new requirements ensure the quality of the development artifacts induced by the end user, and may receive in the development artifacts which can block software defects by newly registered assets into a new type of domain (domain) only if the workflow is validated created to reduce the time required for the convergence and analysis requirements, the productivity of the entire software development process It can be improved.

도 1은 본 발명의 일 실시예에 따른 요구사항 시뮬레이터(simulator)를 이용하여 소프트웨어를 개발하는 전 과정(lifecycle)을 설명하기 위한 도면이다. 1 is a view for explaining the whole process (lifecycle) to develop software using a simulator requirements (simulator) in accordance with one embodiment of the present invention.
도 2는 본 발명의 일 실시예에 따른 요구사항 시뮬레이터에서 채택하고 있는 요구사항 자산의 구조를 도시한 도면이다. 2 is a view showing the structure of an asset requirements that are adopted by the requirements simulator according to an embodiment of the present invention.
도 3은 본 발명의 일 실시예에 따른 요구사항 시뮬레이터가 소프트웨어 개발을 위한 요구사항을 관리하는 방법을 도시한 흐름도이다. Figure 3 is a flow diagram illustrating the requirements simulator according to one embodiment of the invention illustrating a method for managing the requirements for the software development.
도 4a 내지 도 4d는 본 발명의 일 실시예에 따른 요구사항 관리 방법에서, 기 저장된 자산으로부터 독출된 요구사항 및 관련 자산을 이용하여 새로운 소프트웨어 개발에 대한 요구사항을 생성하는 과정 및 그에 따른 UI를 예시한 도면이다. In Figure 4a to Figure 4d are requirements management method according to an embodiment of the present invention, the process of using the requirements and associated assets read out from the pre-stored assets generate a requirement for a new development of software and the UI accordingly It illustrates.
도 5는 본 발명의 일 실시예에 따른 요구사항 관리 방법에서, 요구사항별로 속성 데이터를 입력받아 작업 플로우의 비용을 산출하는 과정 및 그에 따른 UI를 예시한 도면이다. Figure 5 is a view showing the UI process and hence to calculate the cost of receiving the requirements management method according to an embodiment of the present invention, the type attribute data for each operation flow requirements.
도 6a 및 도 6b는 본 발명의 일 실시예에 따른 요구사항 관리 방법에서, 개별 액티비티를 수정하여 새로운 요구사항에 따라 조정된 작업 플로우를 생성하는 과정 및 그에 따른 UI를 예시한 도면이다. Figure 6a and Figure 6b is a diagram in Requirements Management method according to one embodiment of the present invention, illustrating the process and the UI accordingly to generate the job flow adjusted to the new requirements by modifying the individual activities.
도 7은 본 발명의 일 실시예에 따른 요구사항 관리 방법에서, 새로운 작업 플로우에 대한 검증 결과 오류가 발견되지 않은 경우, 해당 작업 플로우를 도메인(domain)의 유형으로 등록하는 과정 및 그에 따른 UI를 예시한 도면이다. 7 is a process and the UI hence to register when in the requirements management method according to an embodiment of the present invention, the verification result error on a new job flow is not found, the operation flow to the type of the domain (domain) It illustrates.
도 8은 본 발명의 일 실시예에 따라 소프트웨어 개발을 위한 요구사항을 관리하는 장치를 도시한 블록도이다. Figure 8 is a block diagram illustrating an apparatus for managing the requirement for software development in accordance with one embodiment of the present invention.

본 발명의 실시예들을 설명하기에 앞서 본 발명의 실시예들이 구현되는 환경에 대해 간략히 소개하고, 실시예들이 구현되는 환경에서 발생하고 있는 구현상의 문제점을 제시하고자 한다. And to present a problem in the implementation taking place in that a brief description for which embodiments of the invention have been implemented previously environment, embodiments are implemented in the environment to illustrate the embodiments of the invention.

앞서 소개한 바와 같이 최종 사용자들은 전문적으로 훈련된 프로그래머가 아니기 때문에, 이들의 결정 또는 직접적인 작업 결과에 따라 개발된 소프트웨어 개발 산출물은 그 품질을 신뢰하기 어렵다는 문제점이 발견되었다. End users because they are not professionally trained programmer, software development artifacts developed in accordance with their decision or the direct result of the operation, as shown earlier was found difficult to trust its quality. 이를 해결하기 위해 최근 전체적인 소프트웨어 개발 주기/과정(lifecycle)에 걸쳐 최종 사용자들의 활동을 지원하고 훈련을 돕는 방법이 연구되고 있으나, 이들은 대부분 최종 사용자가 작성한 소프트웨어의 품질을 검증하기 위한 검사 기술에 집중되어 있다는 점에서 사후적인 조치에 불과하다는 지적이 존재한다. To solve this problem, supporting the activities of the end user over recent years the overall software development lifecycle / process (lifecycle) and although being studied is how to help the training, it is mostly concentrated in the inspection techniques to verify the quality of the software end-user created the point is just to post measures exist at that.

구축된 소프트웨어 시스템의 품질을 보장하기 위해서는 시스템적으로 보장될 수 있는 검증 기술이 활용되어야 하나, 이와 더불어 소프트웨어 시스템에 대한 양질의 신뢰도를 보장하기 위해서는 정확하고 효율적인 요구사항 분석이 요구된다. In order to ensure the quality of the built software systems in order to ensure the reliability of quality for one should take advantage of this proven technology that can be guaranteed by systematic, In addition, the software system is accurate and effective requirements analysis is required. 이와 관련하여, 최종 사용자가 주도하는 프로그램 개발 작업에서 요구사항의 출처(source) 역시 프로그래머 자신이라는 점에서 명시적으로 요구사항을 추출하거나 명세하는 단계를 생략한 채 소프트웨어의 개발이 진행되는 현상이 발견되었다. In this regard, the source of the requirements in the program development process to the end-user driven (source) also found a phenomenon that explicitly extraction or development of one software omission of steps that specify requirements in terms of programmer own progress It was. 그러나, 개발하고자 하는 소프트웨어의 품질에 대한 허용되는 범위에 대한 정의조차 내려지지 않은 상태 하에서 소프트웨어를 개발하고, 이러한 소프트웨어를 다시 검사한다는 것은 목적없이 진행되는 작업이라고 볼 수 있다. However, that is not under naeryeojiji even the definition of the range allowed for the quality of the software to develop state development, software re-examine these software can be considered to be work in progress without purpose. 따라서, 이하에서 제안되는 본 발명의 실시예들은 소프트웨어 개발 주기의 첫 번째 단계인 요구사항 분석 단계에서 소프트웨어 엔지니어링에 대한 별도의 훈련을 받지 않는 최종 사용자들에게 친화적인 형태의 요구사항 수집 도구 및 그에 대한 UI(user interface)를 제공하고자 한다. Accordingly, embodiments of the present invention are offered below are in the form of requirements-friendly to end users in the first phase, requirements analysis phase of the software development cycle, which is not a separate discipline for software engineering, requirements gathering tools, and for him and to provide a UI (user interface). 이와 더불어 동일한 도메인(domain)에 대해 이미 분석되고 검증된 요구사항들을 최종 사용자가 향후 재사용할 수 있도록 하는 자산 관리 시스템을 제안하고자 한다. In addition, we propose a property management system that allows the end user locations that have already been analyzed and verification requirements for future reuse for the same domain (domain).

이하에서 제안하는 요구사항 추출 및 관리 기술의 설명하기에 앞서, 본 기술의 바람직한 적용 대상을 소개하면 다음과 같다. Proposed by the following requirements Before a description of the extraction and management technology, when introducing a preferred application of the present technology as follows. 첫째, 본 기술을 실제 소프트웨어 개발에 실현하는 주체는 도메인 전문가(domain expert)들이다. First, subject to the realization of this technology in actual software development are the domain experts (domain expert). 이러한 전문가 그룹은 소프트웨어 시스템의 도메인 지식을 보유하고 있는 직업 종사자를 의미하며, 특정 요구사항에 따른 시스템 반영 여부를 결정하는 능동적인 역할자들이다. This expert group will mean the professional practitioners who have the domain knowledge of system software, and are proactive role party to determine whether the system reflects according to your specific requirements. 둘째, 도메인 전문가들이 직접 요구사항을 추출하고 관리해 나가는 기법의 효율성을 얻고자, 본 발명의 실시예들이 적용될 소프트웨어 시스템은 사용자와의 상호작용(interaction)이 직관적인 GUI(graphic user interface)를 기반으로 이루어지며, 비지니스 플로우(business flow)가 시스템 구현의 중요한 요소로 작용하는 성격을 갖는다. Second, the character extracting the information domain experts directly request and obtain the efficiency of the outgoing managing techniques, embodiments applied to the software system of the present invention is based on the interaction (interaction) is intuitive GUI (graphic user interface) for the user is done, the business flow (business flow) has the characteristics that an important factor of the system implementation.

특히, 본 발명의 실시예들은 이상과 같은 환경 하에서 도메인 전문가의 역할을 크게 자산 공급자(asset provider)와 자산 소비자(asset consumer)로 구분하고 있다. In particular, embodiments of the present invention is classified as a domain expert under the circumstances as described above as an asset provider (asset provider) and consumer assets (asset consumer). 자산 공급자는 이미 소프트웨어 시스템으로 구현되어 검증 결과 그 품질에 결함이 없는 요구사항 자산들을 구조화하여 공통된 자산 저장소(storage)에 저장하는 역할을 담당한다. Asset providers and locations do not already have a defect that needs to be implemented as a software quality system verification results by structuring the assets responsible for saving the common asset repository (storage). 자산 소비자는 시스템 개발 초기에 동일한 소프트웨어 도메인의 범주에 속하는 요구사항 자산을 공통된 자산 저장소로부터 검색하여, 본인이 구축하고자 하는 소프트웨어의 요구사항으로 수정, 변경하는 역할을 담당한다. Asset consumers to search for assets belonging to the requirements of the same software system developed early in the domain category from common asset repository, serves to modify, change to the software requirements that you want to build. 즉, 본 발명의 실시예들은 공통된 요구사항 자산 저장소에 관련 자산을 저장하고, 다시 이로부터 필요로 하는 자산을 검색하여 시스템 개발 초기의 요구사항 집합으로 재사용할 수 있는 메카니즘을 구현함으로써 품질이 검증된 자산을 재사용하여 최종 사용자 주도의 소프트웨어 개발의 문제점 중 하나로 지적되었던 품질 저하 문제를 해결함과 동시에 요구사항 수집 단계에서 소모되는 시간과 비용을 최소화하고자 한다. That is, embodiments of the invention the storage of its assets in the common requirements asset store, and retrieve the asset that requires again therefrom by the quality verification by implementing a mechanism to re-use the set of system initial development of the required and at the same time by reusing assets resolve the degradation problem has been pointed out as one of the problems of software development that led to the end user, to minimize the time and cost consumed in the requirements gathering phase.

이하에서 기술될 본 발명의 실시예들은 이상에서 기술한 소프트웨어 개발 환경과 그에 따른 구현상의 문제점에 대한 인식으로부터 안출된 것으로서, GUI에 기반하여 요구사항을 통제, 운영, 공유하는 요구사항 시뮬레이터(simulator) 내지 관리 도구에 해당한다. Embodiments of the present invention will be described in the following Examples are as been made from the software development environment and the awareness of the problems in implementing hence described in the above, based on the GUI control requirements, requirements simulator (simulator) to operate, sharing It corresponds to a management tool. 이를 위해 요구사항 시뮬레이터는 그 관리를 위해 작업 플로우를 시각적으로 표시하고, 조정된 작업 플로우와 요구사항 분석 결과를 애니메이션을 통해 사용자에게 제공하고, 관련 도메인별로 그룹화하여 자산을 관리하는 기능을 포함한다. Requirements To do this, your simulator is a visual representation of the workflow for the management, and provide information coordinated workflows and requirements analysis to users through animated, and include the ability to manage the assets grouped by the relevant domain.

이하에서는 첨부된 도면을 참조하여 본 발명의 실시예들을 보다 구체적으로 설명한다. Hereinafter, more specifically described embodiments of the invention with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 요구사항 시뮬레이터(simulator)(100)를 이용하여 소프트웨어를 개발하는 전 과정(lifecycle)을 설명하기 위한 도면이다. 1 is a view for explaining the whole process (lifecycle) to develop software using a simulator requirements (simulator) (100) according to one embodiment of the present invention. 요구사항 시뮬레이터(100)는 최종 사용자의 관점을 가지고 있는 도메인 전문가들이 최대한 자유롭게 소프트웨어 개발을 위한 초기 요구사항을 식별해 가면서도, 동시에 그들이 작성하는 요구사항 수집 결과의 품질뿐만 아니라, 최종 개발 산출물의 품질을 제어할 수 있는 관리 시스템을 의미한다. Requirements simulator 100 is going to identify the initial requirements for their software development best free domain experts with the end-user perspective also, at the same time, as well as the quality of the results collected information they need to create, the quality of the final development outcomes the means for management systems that can be controlled. 또한, 이러한 요구사항 시뮬레이터는 최종 사용자가 직관적으로 사용할 수 있도록 시각화 도구를 제공함으로써 최종 사용자(도메인 전문가)로 하여금 부지불식간에 요구사항 수집 단계에서 필요로 하는 기술을 학습할 수 있어야 한다. In addition, these requirements simulators must end user can by providing a visualization tool that allows intuitive use allows the end users (domain experts) to learn the skills needed in the information gathering stage needs to unwittingly.

이러한 조건을 만족시키기 위하여, 도 1은 요구사항 재사용(reuse)를 기반으로 하는 소프트웨어 개발 주기(lifecycle)을 제안하고 있다. In order to satisfy these conditions, 1 proposes a software development cycle (lifecycle) that is based on the requirements reuse (reuse). 도 1에서 요구사항 시뮬레이터(100)는 2 가지 서로 다른 역할(role)을 정의하고 있다. Simulator 100 is also information required by the first defines two different roles (role).

첫 번째는 요구사항 시뮬레이터(100)에 이미 저장되어 있는 도메인별 요구사항 관련 자산을 활용하여 새롭게 개발하고자 하는 소프트웨어에 적정하게 커스터마이즈(customize)함으로써 새로운 버전의 요구사항 자산을 생성해내는 '요구사항 자산 소비자'로서의 역할이다. The first asset information 'demands that generates asset requirements of the new version needs by customization (customize) appropriately in the software to develop new leverage requirements related assets, domain-specific requirements that are already stored on your requirements simulator (100) the role of the consumer. ' 요구사항 자산 소비자는 동일한 조직 내에서 이미 선행 개발을 통해 검증되었거나, 또는 타조직에서 개발하여 검증 과정을 거친 소프트웨어의 요구사항 자산들이 탑재되어 있는 도메인별 저장소를 검색한다. Requirements Asset consumers within the same organizations or locations already validated by the preceding development, or requiring a tough verification process developed by other organizations to search for domain-specific software asset repository is mounted. 110 단계를 통해 사용자는 현재 개발하고자 하는 소프트웨어 동일한 도메인에 속하는 식별하여 요구사항 시뮬레이터(100) 상에서 표시하면서 기존의 요구사항 자산의 내용을 숙지한다. While steps 110 through a user display, the software identifies the requirements simulator 100 belonging to the same domain to be currently developed to existing requirements, read the contents of the asset. 120 단계에서 관련된 도메인 전문가는 요구사항 시뮬레이터(100)가 제공하는 GUI 기반의 요구사항 애니메이션 기능을 활용하여, 서로간의 충분한 의사소통 과정을 거친 후, 소프트웨어 품질을 극대화할 수 있는 요구사항 집합을 선택하기 위해 요구사항 협상을 수행한다. Domain experts involved in step 120 is to select a set of requirements that can maximize the after sufficient communication process between leverage your animation features GUI-based requirements provided by the requirements simulator (100) to each other, Software Quality to perform the requirements negotiable. 이 때, 요구사항 협상의 단위응 기능적인 요구사항의 경우에는 시나리오들의 저장소 역할을 하는 유스 케이스(use case)로 설정되는 것이 바람직하며, 본 발명의 실시예들에서는 비지니스 어플리케이션을 대상으로 하는 유스 케이스별 기능 포인트(function point)를 산정하는 방식을 활용할 수 있다. For details at this time, of response units of the requirement negotiation requirements, and preferably set to a use case (use case) to a repository of scenarios, the use case that targets the business application in embodiments of the present invention It can utilize the method for calculating the per function point (function point). 130 단계에서는 협상 과정을 통해 필터링된 요구사항에 대해서는 각 요구사항과 관련된 GUI 폼(form)과 해당 요구사항 구현을 위해 필요로 하는 데이터 정보 등을 면밀히 검토하여 필요한 부분은 포함시키고, 불필요한 부분은 제외시키며, 필요에 따라 새로운 요구사항을 추가적으로 식별하는 등의 조정 작업이 이루어진다. Except at step 130 include the portions necessary to scrutinize the data information and the like needed for the implementation GUI forms (form) with the requirements associated with each requirement for details filtered request through negotiation process and unnecessary portions are sikimyeo, it made adjustments, such as to identify an additional new requirements, as needed. 이를 통해 개발하고자 하는 소프트웨어를 위한 조정된 요구사항 자산을 정의하여, 프로젝트(project) 수준의 저장소에 저장하게 된다. By defining it adjusted assets requirements for the software to be developed, it is stored in the project (project) levels of storage.

두 번째는 요구사항 시뮬레이터(100)에 새롭게 추가된 요구사항 자산 내지 작업 플로우를 검증하여 재사용 가능한 자산으로서 도메인 수준의 저장소에 등록하는 '요구사항 자산 공급자'로서의 역할이다. The second is the role of 'Requirements asset suppliers' requirements to validate the assets to the newly added workflow requirements simulator (100) to register the domain level, as a repository of reusable assets. 앞서 130 단계를 통해 정의된 새로운 요구사항 자산은 140 단계를 통해 구현 과정을 거쳐 소프트웨어 제품에 반영된다. New requirements defined by the above step 130 property information is reflected through the implementation of the software product via the step 140. 그 후, 150 단계를 통해 검증을 거치게 되면, 구현된 소프트웨어 내에 오류가 존재하는지 여부가 판별된다. If then subjected to verification via step 150, a determination is determined that the error is present in the implemented software. 이러한 검증 과정을 통해 오류가 더 이상 발견되지 않으면 향후 재사용 가능한 요구사항 자산으로써 분류되고, 160 단계에서 공용 저장소의 도메인 수준에 등록되게 된다. If through this verification process, the error is no longer detected and classified by requirements for future reusable assets, it is to be registered in step 160, the domain-level public store.

도 1을 통해 각각 역할의 관점에서 2 개의 주체를 '요구사항 자산 소비자'와 '요구사항 자산 공급자'로 구분하여 설명하였으나, 양자는 실질적으로 동일한 주체에 의해 수행될 수 있으며, 기술된 일련의 순서에 따라 소프트웨어 개발 주기를 반복적으로 순환할 수 있다. Two subjects in terms of the respective roles via 1 'requirements asset consumer, and has been described, separated by "Requirements asset provider", and both can be carried out by substantially the same subject, the described sequence of steps depending on the software development cycle can be repeatedly cycled.

도 2는 본 발명의 일 실시예에 따른 요구사항 시뮬레이터에서 채택하고 있는 요구사항 자산의 구조를 도시한 도면이다. 2 is a view showing the structure of an asset requirements that are adopted by the requirements simulator according to an embodiment of the present invention. 도 1을 통해 간략하게 소개한 바와 같이 요구사항 시뮬레이터(100)는 선행 개발되거나 혹은 자산 공급자가 제공하는 요구사항 관련 자산들을 도메인 수준 저장소를 통해 관리한다. Also it needs simulator (100) As mentioned briefly introduced through one or precedes the development or management matters related to the assets required to provide the asset provider with domain-level store. 이 때, 저장소에 탑재되어 관리되는 요구사항 자산은 도 2와 같은 구조를 가질 수 있다. At this time, the storage management needs to be mounted on your property can have the same structure as in Fig.

요구사항 자산의 구성 요소를 살펴보면, 최상위 레벨의 요구사항으로 비지니스 목표(210)이 있다. Looking at the components of asset requirements, the requirements of a top-level business requirement goals (210). 시스템 개발 목적에 해당되는 요구사항으로서 비지니스 목표(210)가 설정되면, 개발을 통해 달성하고자 하는 품질 속성별로 시스템의 허용 가능한 범위를 규정하는 비기능적 목표(non-functional goal)(220)가 설정된다. When It should be available for the system development purposes required business objective 210 is set, non-functional target (non-functional goal), defining the allowable range of the system by quality properties to be achieved through the development unit 220 is set . 다음 단계로, 시스템이 사용자에게 제공하는 서비스에 해당하는 기능적 목표(230)를 정의한다. In the next step, to define the functional target 230 corresponding to the service provided by the system to the user. 정의되는 모든 기능적 목표(230)는 생성 근거에 해당하는 비지니스 목표(210)를 명시해야 한다. All functional target 230, which is defined shall specify the business objective (210) for the generation basis. 또한, 앞서 기술된 비기능적 목표(220)의 달성과 관련이 있는 기능적 목표(230)일 경우에는 양자간의 연관관계에 대해서도 명시하도록 한다. Further, if the functional objective 230 with respect to the attainment of a non-functional target 220 prior techniques are to be stated about the relationship between the two. 하나의 기능적 목표(230)는 다수 개의 상호작용 시나리오(240)로 객체화될 수 있다. One functional target 230 may be instantiated as a plurality of interactive scenario 240.

이제, 각각의 상호작용 시나리오는 하나 이상의 액티비티(activity)(250)로 구현된다. Now, each interactive scenario is implemented with one or more activities (activity) (250). 액티비티(250)는 시스템의 행동을 나타내는 최소 단위이자, 시스템을 사용하여 사용자가 수행하는 작업의 최소 단위에 해당하는 요구사항이다. Activities (250) and the smallest unit representing the behavior of the system is a requirement for using the system corresponds to the smallest unit of work that you perform. 각 액티비티(250)의 수행과 관련된 GUI 폼(280)의 이미지, 그리고 액티비티(250) 수행을 위해 필요로 하는 입력/출력 아이템(260)과의 관계를 함께 연계하여 관리함으로써 본 발명의 실시예들에 따른 요구사항 시뮬레이터(200) 내에서 제공하는 GUI 기반의 요구사항 애니메이션 기능을 지원할 수 있다. By administration in association relationships with each activity 250, the input / output items (260) needed for the image, and activity 250 to perform the GUI form 280 related to the performance of with the embodiments of the present invention in accordance with it can support the animation capabilities of the GUI-based requirements provided in the simulator requirements 200. 각 액티비티(250)와 관련된 데이터 아이템(260)들은 각각이 낱개로 관리되는 것이 아니라, 의미론적으로 유사한 그룹 단위로 관리되는데 이를 데이터 그룹(270) 내지 데이터 집합이라고 명명하였다. Each data item 260 is associated with the activity 250, were named, respectively, rather than individually managed by the semantic units in the similar groups to manage them there is set data group 270 to the data. 데이터 그룹(270)과 데이터 아이템(260)은 개발이 진행되면서 데이터베이스 디자인을 수행할 경우 테이블(table)과 필드(field)의 설계를 위한 기초 자료로서 활용될 수 있다. Data Group (270) and data items (260) can be used as a basis for the design of the table (table) and field (field) if you want to perform database design, as development proceeds.

도 3은 본 발명의 일 실시예에 따른 요구사항 시뮬레이터가 소프트웨어 개발을 위한 요구사항을 관리하는 방법을 도시한 흐름도로서, 다음과 같은 단계들을 포함한다. 3 is a flow diagram illustrating the requirements simulator according to one embodiment of the invention illustrating a method for managing the requirements for the software development, and comprises the following steps:

310 단계에서, 요구사항 시뮬레이터는 도메인(domain)별로 요구사항에 따라 검증된 일련의 자산(asset)을 저장한다. In step 310, the requirements simulator stores a set of assets (asset) verified in accordance with the requirements for each domain (domain). 이러한 과정은 새로운 소프트웨어 개발을 위한 요구사항 수렴 단계 이전에 미리 수행되어 있으며, 검증된 자산은 요구사항 시뮬레이터의 데이터베이스에 점진적으로 누적, 적재되어 간다. This process has been carried out prior to the convergence requirements for the new phase of software development previously, proven assets goes gradually accumulated, loaded with a database of requirements simulator.

320 단계에서, 요구사항 시뮬레이터는 새로운 소프트웨어 개발에 따른 요구사항을 고려하여 310 단계를 통해 저장된 자산 중에서 사용자에 의해 선택된 요구사항 및 관련 자산을 독출하여 시각적인 작업 플로우(flow)로 표시하고, 상기 사용자의 선택에 의해 상기 시뮬레이터가 상기 표시된 작업 플로우 내의 작업 요소인 액티비티(activity)에 대해 추가, 삭제, 변경 중 어느 하나를 수행하여 상기 새로운 소프트웨어 개발에 대한 요구사항을 생성한다. In step 320, the requirements simulator represented by the visual task flow (flow) to read out the selected requirements, and its assets by a user among the assets stored via step 310 by considering the requirement of the new software development, and the user carried by selection of any one of add, delete, change for the operation elements in activity (activity) in which the simulator the displayed job flow to produce the requirements for the new software development.

여기서, 액티비티는 하나 이상의 입력과 연산에 따른 출력을 가지며, 상기 사용자는 상기 시각적인 작업 플로우 상에서 GUI(graphical user interface)를 이용하여 상기 액티비티에 대한 입력과 출력을 통합적으로 설정하는 것이 바람직하다. Here, the activity has an output corresponding to one or more input and operation, the user is preferable to set the input and output for the activity using a GUI (graphical user interface) on the visual workflow in an integrated manner. 보다 구체적으로, 액티비티는, 상기 액티비티의 수행에 관한 GUI 폼(form) 디자인 및 상기 액티비티에 대한 입력과 출력이 연계되고, 상기 액티비티의 기능이 의미론적으로 유사한 그룹별로 저장되는 것이 바람직하다. More specifically, the activity is, the input and output of the GUI forms (form) the design and performance of activities related to said activity being linked, it is preferred that the activity of the function to be stored by a similar group to the semantic. 즉, 도 2를 통해 소개한 바와 같이 본 발명의 실시예들이 채택하고 있는 요구사항 시뮬레이터는 액티비티, 데이터 아이템(데이터 그룹 내에 포함된다.) 및 GUI 폼을 통합하여 관리하며, 사용자와의 상호작용을 통해 이들을 유기적으로 조율할 수 있다. In other words, the requirements simulator activity, the data item (which is included in the data group.), And integrates to manage the GUI form, interaction with the user who employs the embodiments of the invention as introduced by the 2 through them we can organically tuned. 따라서, 최종 사용자는 비록 소프트웨어 개발에 대한 전문적이 지식이 없더라도, 하나의 관리 도구 및 화면을 통해 시각적으로 인지한 일련의 요구사항 자산의 구조를 인지할 수 있고, 이러한 사용자의 인지에 기반하여 화면 상에 표시된 작업 플로우 상에서 필요한 조정과 요구사항 수렴을 수행할 수 있다. Thus, end users, though even this expertise in software development knowledge, through one of the management tools and screens can recognize the structure of the information visually recognize a series of required assets, based on whether these users, the screen You may need to perform convergence adjustment requirements and demands on the workflow shown here.

또한, 새로운 소프트웨어 개발에 대한 요구사항을 생성하는 단계는, 사용자 관점의 기능 단위인 유스 케이스(use case)별로 입력, 수행 동작 및 출력을 고려하여 상기 액티비티를 처리할 수 있다. Further, the step of generating the requirements for the new software development, it is possible to consider the functional unit of the user's point of view, the use case (use case) input by performing the operation and output to process the activity. 앞서 간략하게 소개한 바와 같이 기능적 요구사항의 경우, 이러한 유스 케이스는 시나리오들의 수용체(container) 역할을 함으로써 유스 케이스별로 기능 포인트를 산정하여 요구사항 협상을 진행할 수 있다. For the functional requirements, as described briefly introduced above, this use case may proceed requirements negotiated by calculating the feature point by the use case by a receptor (container) The role of scenarios.

330 단계에서, 요구사항 시뮬레이터는 320 단계를 통해 생성된 요구사항별로 입력, 연산 및 출력에 따른 속성 데이터를 입력받아 상기 작업 플로우의 비용을 산출한다. In step 330, the requirements by each simulator receives the requirements generated by the input step 320, the attribute data corresponding to the input, and the output operation and calculates the costs of the operation flow. 이 과정에서 요구사항 시뮬레이터는 생성된 요구사항별로 액티비티의 데이터 및 트랜잭션(transaction)에 관한 속성 데이터에 기초하여 작업 플로우 내의 개별 액티비티의 비용 및 전체 비용을 산출할 수 있다. Required in the process details simulator can on the basis of the attribute data on the data and transaction (transaction) of the activity generated by the information required to calculate the cost, and overall cost of the operation flow in the individual activities. 이러한 데이터 및 트랜잭션에 관한 속성은 소프트웨어 개발에 소모되는 비용을 산출할 수 있는 객관적이고 정량적인 지표 중에서 선택되는 것이 바람직하다. Properties related to this transaction data and is preferably selected from the group consisting of an objective and quantitative indicators which can be used to calculate the cost spent on software development.

340 단계에서, 요구사항 시뮬레이터는 330 단계를 통해 산출된 비용을 고려하여 상기 작업 플로우의 개별 액티비티에 대한 선택을 상기 사용자로부터 입력받고, 상기 입력에 따라 조정된 작업 플로우를 생성한다. In step 340, the requirements simulator receives in view of the cost calculated through step 330 the selection of the individual activities of the operation flow from the user, generates a flow adjustment operation according to the input. 이제, 요구사항 시뮬레이터는 요구사항 협상 결과에 기초하여 새롭게 조정된 작업 플로우를 생성하게 된다. Now, the requirements simulator will produce a new work flow adjustment based on the requirements negotiations. 본 발명의 실시예들은 이미 검증이 완료된 요구사항 자산을 재사용하여 새로운 요구사항을 빠르게 생성하는 방법을 제안하고 있으며, 본 340 단계에서는 재사용 결과로 새롭게 조정된 요구사항에 기초하여 작업 플로우를 생성하게 된다. Embodiments of the invention and the details already verified the completion requirements suggest a way to re-use to quickly create new requirements for the asset, the present step 340 is to create a job flow based on information newly adjusted to re-use results required .

350 단계에서, 요구사항 시뮬레이터는 340 단계를 통해 조정된 작업 플로우를 새로운 자산으로서 저장한다. In step 350, the requirements simulator and stores the job flow can be controlled through step 340 as a new asset. 이 과정을 통해 요구사항 시뮬레이터는 조정된 작업 플로우를 요구사항 시뮬레이터의 저장소에 새로운 자산으로서 저장하게 된다. Needs through this process your simulator is stored as a new asset in the simulator repository requires a coordinated workflow. 그러나, 이 과정의 자산 저장은 아직 도메인 수준의 저장은 아니다. However, the assets of the storage process is not yet stored at the domain level. 왜냐하면, 본 발명의 실시예들에서 도메인 수준으로 관리되는 자산은 반드시 사후 검증이 완료된 자산이어야 하기 때문이다. Because assets are managed at the domain level in the embodiments of the present invention is due to necessarily be completed after asset verification. 이러한 관리 체계를 통해 본 실시예들에 따른 요구사항 시뮬레이터는 적어도 도메인 수준의 기 구축 요구사항 자산에 대해서는 작업 플로우에 대한 무결성을 보장하게 된다. With this management system requirements in accordance with this embodiment, it details simulator will ensure the integrity of the work flow for the asset details at least based deployment requires domain level.

이상의 과정을 통해 요구사항 시뮬레이터는 새로운 소프트웨어 개발을 위한 요구사항을 수렴하여 자산을 생성하였다. It needs through a process matters more than the simulator was created asset by taking the requirements for new software development. 이하에서는 이렇게 생성된 자산이 어떻게 요구사항 시뮬레이터를 통해 재사용될 수 있도록 관리되는지 그 방법을 소개하도록 한다. Hereinafter, to introduce the methods that manage to be reused through a simulator how this information so produced asset requirements.

360 단계에서, 요구사항 시뮬레이터는 350 단계를 통해 저장된 새로운 자산에 따라 구현된 소프트웨어를 테스트를 통해 검증한다. In step 360, the requirements simulator is verified by testing the software implementation in accordance with the new assets saved via step 350. 이러한 테스트는 본 발명이 구현되는 환경 내지 실시 태양에 따라 다양한 검증 기법을 활용하여 구현될 수 있으며, 검증 그 자체는 본 발명의 본질을 흐릴 우려가 있는 바, 여기서는 구체적인 설명을 생략한다. This test may be implemented utilizing a variety of validation techniques in accordance with the environment to an embodiment the invention is implemented, the verification bar itself, which might obscure the essence of the present invention will be omitted specific explanation.

370 단계에서, 요구사항 시뮬레이터는 360 단계를 통한 검증 결과 오류가 발견되지 않은 경우, 350 단계를 통해 저장된 작업 플로우를 상기 도메인의 한 유형으로 등록하여 재사용 가능한 자산으로 변경한다. In step 370, the requirements simulator when no error is detected through the verification result of step 360, the stored job flow registered through the step 350 a type of the domain to be changed into reusable assets. 즉, 본 단계에 이르러서야 비로소 새롭게 추가된 요구사항 자산은 도메인 수준의 자산으로서 편입되게 된다. That is, until the newly added requirements should not until this stage your assets are to be incorporated as an asset at the domain level. 따라서, 본 370 단계를 거쳐 도메인 수준의 자산으로 등록된 요구사항 자산은 이후 새로운 소프트웨어 개발 프로젝트가 진행될 경우, 320 단계의 자산 검색의 결과로서 화면상에 표시될 수 있다. Therefore, the details via the 370 steps require the registration of a domain-level assets can be displayed on the screen as a result of the search of the assets if a new software development project progressed after, step 320. 즉, 자산 재사용의 대상이 될 수 있다. That may be the subject of asset reuse. 반면, 360 단계 내지 370 단계의 검증에 실패한 자산의 경우에는 여전히 도메인 수준의 자산으로서 등록되지 않게 되고, 320 단계의 검색 과정에서도 검색 결과로서 나타나지 않게 된다. On the other hand, in the case of failed validation of the assets step 360 to step 370 has still not been registered as the property of the domain level, is being displayed in a search result in the search process of step 320.

이상에서 소개한 일련의 과정은 소프트웨어 개발을 위한 요구사항을 관리하는 요구사항 시뮬레이터에 의해 수행된다. A series of processes introduced above is performed by the simulator needs to manage the requirements for software development. 이 때, 이러한 요구사항 시뮬레이터는 적어도 하나의 프로세서(processor)를 구비한다. At this time, these requirements simulator includes at least one processor (processor). 또한, 일련의 연산을 수행하는 과정에서 데이터를 임시로 적재하는 메모리(memory) 내지 각각의 하드웨어를 제어하는 컨트롤러(controller)가 활용될 수도 있다. In addition, a control a series of memory (memory) to each of the hardware for loading the data in the process of performing an operation to temporarily controller (controller) may be utilized. 물론, 이상의 하드웨어들을 제어하기 위한 프로그램 코드로 구현된 소프트웨어가 부가될 수 있음은 당연하다. Of course, there is a software implemented in a program code for controlling the above hardware can be added it is natural. 따라서, 본 발명의 실시예들이 속하는 기술 분야에서 본 발명의 실시예들이 구현되는 환경의 특성을 이해하는 통상의 기술자들은 이상의 요구사항 시뮬레이터가 물리적인 하드웨어와 이를 제어하는 소프트웨어의 결합으로서 구현될 수 있음을 알 수 있다. Thus ordinary engineers locations than required simulator to understand the characteristics of the environment in which an embodiment of the present invention in the art, embodiments of the invention pertaining to the implementation may be implemented as a combination of the physical hardware and the software controlling it the can be seen.

이하에서는 본 발명의 실시예들을 직접 구현한 요구사항 시뮬레이터의 동작 화면들을 예시하여 각각의 수행 과정을 보다 구체적으로 설명하도록 한다. Hereinafter, to explain the respective processes performed to illustrate the GUI of requirements directly implement the embodiments of the present invention in more detail simulator.

도 4a 내지 도 4d는 본 발명의 일 실시예에 따른 요구사항 관리 방법에서, 기 저장된 자산으로부터 독출된 요구사항 및 관련 자산을 이용하여 새로운 소프트웨어 개발에 대한 요구사항을 생성하는 과정 및 그에 따른 UI를 예시한 도면으로서, 도 3의 310 단계 및 320 단계에 대응한다. In Figure 4a to Figure 4d are requirements management method according to an embodiment of the present invention, the process of using the requirements and associated assets read out from the pre-stored assets generate a requirement for a new development of software and the UI accordingly as an illustration of the figure, it corresponds to the step 310 and step 320 of FIG.

요구사항 시뮬레이터는 기 저장된 자산 중에 사용자에 의해 선택된 요구사항 자산을 독출하여 화면 상에 시각적인 형태로 표시한다. Requirements simulator reads the property requirements selected by a user in the group assets stored and displayed in visual form on the screen. 즉, 사용자(도메인 전문가가 될 수 있다.)는 요구사항 시뮬레이터가 관리하는 공용 저장소(검증된 요구사항 자산이 관리되는 데이터베이스가 될 수 있다.) 내에 저장되어 있는 동일한 도메인에 속하면서 이미 선행 개발된 소프트웨어의 요구사항 관련 자산들을 하나씩 검토해 나가면서, 현재 개발 대상이 되는 새로운 소프트웨어 개발에 재사용이 가능한 요구사항 자산들을 선별하는 작업을 수행한다. That is, the user (can be domain experts) are requirements simulator (can be your proven require database asset management.) Public Storage to manage belonging to the same domain that are stored in the already leading the development of software requirements related to going to review one or the assets, reusable required for new software development that is currently under development target locations to perform the task of selecting the assets. 도 4a는 요구사항 시뮬레이터에서 정의한 반복 시나리오 상의 액티비티의 수행 순서를 시각적으로 표시하는 비지니스 플로우 다이어그램을 도시하고 있다. Figure 4a shows a business flow diagram of a visual representation of the sequence of activities carried out on the iteration defined by the requirements simulator scenario. 이제, 사용자는 'Modify a biz. Now, users' Modify a biz. plan' 항목(410)을 선택하여 액티비티를 수정하고자 한다. Select the plan 'item (410) to be modified activity.

도 4b에서는, 도 4a를 통해 비지니스 플로우 다이어그램으로 보여준 'Register a Biz. In Figure 4b, Figure 4a through claimed in business flow diagram 'Register a Biz. Plan' 상호작용 시나리오에 대한 액티비티 리스트를 보여주고 있다. Plan 'shows the list of activities for the interaction scenarios. 본 화면에서 상호작용 시나리오에 대한 액티비티를 추가, 삭제 및 변경할 수 있다. Additional activities for interaction scenarios in this screen, you can delete and change it. 도 4b에는 마지막 항목(420)에 추가된 액티비티를 새롭게 정의하고 있는 것을 볼 수 있다. Figure 4b may see that newly defines the activity added to the last entry 420.

도 4c에서는, 이상에서 보여준 'Register a Biz. In Fig. 4c, 'Register a Biz shown above. Plan' 상호작용 시나리오에서 'Modify a biz. Modify a biz Plan 'from interaction scenarios. plan'의 액티비티 정보를 보여주고 있다. It shows the activity information of the plan '. 해당 액티비티는 속성으로서, 입력값(430)과 출력값(440)을 구체적으로 정의한다. The activity is a property is specifically defined as the input 430 and output 440. 우선 입력값으로는 'business ID', 'name' 및 'year'를 정의하고 있으며, 이들 입력값을 전달받아 'biz. The first input value is to define a 'business ID', 'name' and 'year', by receiving these input values' biz. plan' 수정 작업을 수행한 후, 출력값으로 'business category' 및 'content'를 생성할 수 있음을 알 수 있다. plan 'after performing the corrective actions, as output, it can be seen that it is possible to create a business category' and 'content'.

한편, 본 화면을 통해 액티비티의 입력 및 출력에 관한 속성뿐만 아니라 그 UI 디자인까지도 일괄하여 관리할 수 있다. On the other hand, through this screen, as well as properties related to the input and output of the activity can be collectively managed, even the UI design. 이제 이러한 UI 디자인을 관리하는 버튼(450)을 선택해보자. Now, let's select button (450) to manage these UI design.

도 4d는 도 4c의 UI 디자인 관리 버튼(450)의 선택에 따라 표시되는 화면을 예시한 것으로, 이상에서 보여준 'Register a Biz. Figure 4d is an illustration of a screen to be displayed according to the selection of the UI design management button 450 of Figure 4c, shown in the above 'Register a Biz. Plan' 상호작용 시나리오의 'Modify a biz. Modify a biz 'interaction scenarios' Plan. plan' 액티비티에 대한 UI 폼(form)을 보여주고 있다. plan 'shows the UI form (form) for the activity. 본 화면은 추후 비지니스 플로우 다이어그램에 따라 시뮬레이션된다. The screen is simulated in accordance with the future business flow diagram. 이러한 UI 폼은 최종 사용자에 의해 자유롭게 등록, 수정될 수 있으며, 정의된 입력값 및 출력값에 대응하는 것이 바람직하다. The UI form can be registered, modified freely by the end user, it is desirable to correspond to defined inputs and outputs.

이상의 과정을 통해 요구사항 시뮬레이터는 요구사항에 기반한 액티비티를 중심으로 새로운 작업 단위를 정의하고, 각각의 UI 및 관련 데이터 아이템들을 통합적으로 관리할 수 있다. Required by the above process details simulator may define a new unit operation around the activities based on the requirements, and managing the respective UI and associated data item in an integrated manner.

도 5는 본 발명의 일 실시예에 따른 요구사항 관리 방법에서, 요구사항별로 속성 데이터를 입력받아 작업 플로우의 비용을 산출하는 과정 및 그에 따른 UI를 예시한 도면으로서, 앞서 설명한 도 3의 330 단계에 대응한다. Figure 5 is an example in the requirements management method according to the example, the process of receiving the attribute data by the requirement calculating the cost of the operation flow, and a diagram illustrating a UI according thereto, 330 steps in FIG. 3 described above according to the present invention It corresponds to.

도 5에서는 요구사항을 협상하고 우선순위(520)를 결정하여 최종적인 프로젝트 비용을 산출하게 된다. In FIG. 5, to negotiate the requirements and prioritizing (520) will calculate the final cost of the project. 이를 위해, 요구사항 시뮬레이터는 시나리오의 수행 과정에서 필요한 데이터 기능(예를 들어, 내부 논리 파일 및 외부 연계 인터페이스 파일이 될 수 있다.)과 트랜잭션 기능(예를 들어, 외부 입력, 외 출력 및 외부 질의/조회 횟수가 될 수 있다.)에 관한 파라미터(parameter)에 해당 프로젝트의 특성 데이터를 입력하여 프로젝트 비용을 산정한다. To this end, the requirements simulator data functions required in the course of the scenario (e. G., May be the internal logical file and the external connection interface file.) And transaction capabilities (e.g., line-in, the outer output and an outer query / query is the number of times you can be.) by entering the characteristic data of the project on the parameters (parameter) shall be calculated on the cost of the project. 그리고 비용을 기준으로 요구사항 협상을 수행한다. And it performs the requirements negotiate on the basis of cost. 즉, 요구사항 협상이란, 소프트웨어 구축 결과 최종 사용자에게 가장 유용할 수 있는 요구사항 그룹을 구성하는 요구사항들을 선택하는 일련의 과정이라고 할 수 있다. In other words, it is possible to negotiate that requirement is, software to build the results set of the process of selecting the requirements that constitute the requirements which can be most useful to the end-user groups.

도 5에서 요구사항 시뮬레이터는 각 시나리오별 기능 포인트 값을 기준으로 내림차순으로 시나리오의 명칭과 각각의 기능 포인트의 값을 표시한다. Figure requirements simulator displays the value of the names and each of the feature points of a scenario in decreasing order of the respective scenarios function value point 5. 도메인 전문가는 이를 토대로 책정된 예산의 한계에 적합한 요구사항 그룹을 확정하게 된다. Domain experts will determine the appropriate requirements of the Group to limit the budget based on it. 도 5에는 앞서 도 4a 내지 도 4d를 통해 살펴보았던 'Register a Biz. Figure 5 is' a Register Biz looked at through Fig. 4a-4d above. Plan' 상호작용 시나리오가 구현하는 'Plan Administration'이라는 기능적 목표가 개발 대상(510)으로 포함되었음을 확인할 수 있다. Functional goals of Plan Plan Administration '' interaction scenarios implementation 'can be found that contain a development target (510).

도 6a 및 도 6b는 본 발명의 일 실시예에 따른 요구사항 관리 방법에서, 개별 액티비티를 수정하여 새로운 요구사항에 따라 조정된 작업 플로우를 생성하는 과정 및 그에 따른 UI를 예시한 도면으로서, 앞서 설명한 도 3의 340 단계에 대응한다. In Figure 6a and 6b requirements management method according to an embodiment of the present invention, there is provided a process and it shows an example of the UI according to generate the job flow adjusted to the new requirements by modifying the individual activities, previously described It corresponds to step 340 of FIG. 즉, 이러한 조정된 작업 플로우를 생성하는 과정은, 사용자 관점의 기능 단위에 대응하는 개별 액티비티를 미리 설정된 기준에 따라 정렬하고, 상기 정렬된 순서에 따라 상기 산출된 비용을 누적하여 예산을 충족시킬 수 있도록 상기 개별 액티비티의 속성을 조정함으로서 이루어진다. That is, such an adjustment process of generating a job flow is arranged according to a separate activity, corresponding to the functional unit of the user's point of view, the predetermined criteria, and by accumulating the calculated costs to the sorted order to meet the budget so it is made by adjusting the properties of the individual activities.

도 6a는 이상에서 보여준 'Register a Biz. 6a is shown above 'Register a Biz. Plan' 상호작용 시나리오의 액티비티 리스트에서 'Present biz. Plan Present biz 'activities in the list of interaction scenarios. plans' 액티비티(610)가 추가된 것을 보여주고 있다. plans show that the "activity 610 is added. 본 단계 이후부터는 기존 요구사항에서 재사용/추출을 끝내고 리뷰 작업이 수행된다. This review is carried out to finish the job reuse / extracted from the existing requirements since the beginning of this step. 이상의 과정을 거쳐 조정되거나 또는 완전히 새롭게 생성된 사항에 대해서는 각 사항에 대한 타당성을 판단하여 최종적으로 요구사항의 내용을 확정하게 된다. Adjusted through the above process, or for a completely new generation information is finally confirmed the contents of the requirement to determine the validity of each information.

도 6b는 이상에서 보여준 'Present biz. Figure 6b 'Present biz shown above. plans' 액티비티(620)가 추가된 'Register a Biz. plans 'activities (620) is added to the' Register a Biz. Plan' 상호작용 시나리오의 비지니스 플로우 다이어그램을 보여주고 있다. Plan 'shows the business flow diagrams of interaction scenarios. 모든 요구사항들에 대해 이러한 리뷰 작업이 완료되면, 확정된 요구사항들은 앞서 도 3을 통해 소개한 소프트웨어의 구현과 검증의 과정을 거치게 된다. Once this review is complete, for the all the requirements, the requirements established requirements are subjected to the process of implementation and verification of the software introduced through 3 above.

이러한 구현과 검증 결과 새로운 자산으로부터 오류가 발견되지 않은 경우, 상기 저장된 작업 플로우를 상기 도메인의 한 유형으로 등록하여 재사용 가능한 자산으로 변경하게 된다. If such an implementation and verification result no errors are detected from the new assets, by registering the stored operation flow a type of the domain is changed to reusable assets.

도 7은 본 발명의 일 실시예에 따른 요구사항 관리 방법에서, 새로운 작업 플로우에 대한 검증 결과 오류가 발견되지 않은 경우, 해당 작업 플로우를 도메인(domain)의 유형으로 등록하는 과정 및 그에 따른 UI를 예시한 도면으로서, 좌측의 화면은 검증 전의 화면이며, 우측의 화면은 검증 후 새로운 작업 플로우가 도메인 수준으로 등록된 화면에 해당한다. 7 is a process and the UI hence to register when in the requirements management method according to an embodiment of the present invention, the verification result error on a new job flow is not found, the operation flow to the type of the domain (domain) as an illustration of the figure, the left-hand side of the screen is pre-verification, on the display screen corresponds to a new job flow registration after the verification by the domain level. 최초에 좌측의 화면에서 'Biz Plan'(710)은 도메인(720) 수준에 이르지 못하고 프로젝트 수준에 머물러 있음을 알 수 있다. 'Biz Plan' (710) on the left side of the screen to the original can be seen that remain in the project did not reach the level domains (720) level. 즉, 소프트웨어로서 구현된 요구사항들 중, 검증 과정을 통해 오류가 발견되지 않은 요구사항 자산의 경우에 한해 향후 이어지는 새로운 개발에서 재사용 가능하다고 판단하게 된다. In other words, it is determined that only in the case of the requirements of the, requirements, no errors are detected through the verification process implemented as software assets can be reused in the future development of new leads. 이 경우, 도 7에 예시된 바와 같이 프로젝트별 공간(710)에서 도메인별 공간(730)으로 저장소를 옮겨 등록되었음을 확인할 수 있다. In this case, it can be seen that also the project-specific space 710 by the space domain 730 transferred to the storage register, as illustrated in the 7.

도 8은 본 발명의 일 실시예에 따라 소프트웨어 개발을 위한 요구사항을 관리하는 장치(요구사항 시뮬레이터)(800)를 도시한 블록도로서, 각각의 구성 요소들은 앞서 설명한 도 3의 일련의 수행 과정에 대응한다. Figure 8 is a device that manages the requirement for software development in accordance with one embodiment of the present invention (requirements simulator) as a block diagram showing a (800), each of the components are a series of performing the process of Figure 3 described above It corresponds to. 따라서, 여기서는 설명의 중복을 피하기 위해 장치적 특성에 기초하여 그 개요만을 약술하도록 한다. Therefore, in this case on the basis of device characteristics, to avoid duplication of explanation it will be abbreviated to only the outline.

저장부(20)는 도메인별로 요구사항에 따라 검증된 일련의 자산을 저장한다. The storage unit 20 stores a set of assets verified in accordance with the requirements for each domain.

입출력부(10)는 사용자(850)의 입력 및 선택을 수신하고, 상기 요구사항 및 상기 자산에 기초하여 생성된 영상을 영상 표시 수단(40)에 전달한다. Input-output section 10 receives the input and selection of the user 850, and transmits an image generated based on the locations and the property required for the video display means (40). 사용자(850)는 영상 표시 수단(40)을 통해 시각적으로 표시되는 영상을 인지함으로써 요구사항 자산을 직관적으로 제어할 수 있게 된다. Users 850 requirements by recognizing the images to be visually displayed through the image display means 40, it is possible to control the asset intuitively.

처리부(30)는 새로운 소프트웨어 개발에 따른 요구사항을 고려하여 상기 저장부에 저장된 자산 중에서 사용자에 의해 선택된 요구사항 및 관련 자산을 독출하여 시각적인 작업 플로우로 표시하고, 상기 사용자의 선택에 의해 상기 표시된 작업 플로우 내의 작업 요소인 액티비티에 대해 추가, 삭제, 변경 중 어느 하나를 수행하여 상기 새로운 소프트웨어 개발에 대한 요구사항을 생성한다. Processing unit 30 is displayed as a visual operation flow reads out the selected requirements, and its assets by a user among the assets stored in the storage unit in consideration of the requirements of the new software development, indicated the by the selection of the user, performing the work any of add, delete, change for the operation elements of the activity in a flow to generate a requirement for the new software development. 그런 다음, 처리부(30)는, 상기 생성된 요구사항별로 입력, 연산 및 출력에 따른 속성 데이터를 입력받아 상기 작업 플로우의 비용을 산출하고, 상기 산출된 비용을 고려하여 상기 작업 플로우의 개별 액티비티에 대한 선택을 상기 사용자로부터 입력받고, 상기 입력에 따라 조정된 작업 플로우를 생성하며, 상기 조정된 작업 플로우를 새로운 자산으로서 상기 저장부에 저장한다. Then, the processing unit 30 receives the generated requirements for each type of attribute data corresponding to the input, computation and output the calculated the cost of the operation flow, and considering the calculated cost to the individual activities of the operation flow for receiving a selection input from the user, it generates a flow adjustment operation according to the input, and stores the adjusted operation flow in the storage unit as a new asset.

여기서, 상기 액티비티는 하나 이상의 입력과 연산에 따른 출력을 가지며, 상기 사용자는 상기 시각적인 작업 플로우 상에서 GUI를 이용하여 상기 액티비티에 대한 입력과 출력을 통합적으로 설정하게 된다. Here, the activity has an output corresponding to one or more input and operation, the user can set the input and output for the activity using a GUI on the visual workflow in an integrated manner. 또한, 상기 액티비티는, 상기 액티비티의 수행에 관한 GUI 폼 디자인 및 상기 액티비티에 대한 입력과 출력이 연계되고, 상기 액티비티의 기능이 의미론적으로 유사한 그룹별로 상기 저장부에 저장되는 것이 바람직하다. Further, the activity is, the input and output of the GUI design form and the activity on the performance of the activity and the association, it is preferred that the activity of the features that are similar to each group semantically stored in the storage unit. 나아가, 구현의 관점에서 상기 처리부(30)는, 사용자 관점의 기능 단위인 유스 케이스별로 입력, 수행 동작 및 출력을 고려하여 상기 액티비티를 처리하는 것이 바람직하다. Furthermore, from the point of view of implementing the processing unit 30, it is preferred to process the activity, taking into account the type, to perform the operation and output of each functional unit of the user's point of view, the use case.

요구사항 협상의 관점에서 처리부(30)는, 상기 생성된 요구사항별로 상기 액티비티의 데이터에 관한 속성 데이터 및 트랜잭션에 관한 속성 데이터를 입력받아 상기 작업 플로우의 비용을 산출한다. Requirements in terms of the negotiation processing unit 30, receives the attribute data on the attribute data and the transaction related to the activity of the data by the generated information request and calculates the costs of the operation flow. 이 때, 상기 데이터에 관한 속성 데이터는, 내부 논리 파일 및 외부 연계 인터페이스 파일이며, 상기 트랜잭션에 관한 속성 데이터는, 외부 입력, 외부 출력 및 외부 질의의 횟수를 활용할 수 있다. At this time, the attribute data regarding the data, and the internal logic and external file associated interface file, the attribute data regarding the transaction, can utilize the external input, the number of external output and an outer query.

조정된 요구사항을 생성하는 관점에서 처리부(30)는, 사용자 관점의 기능 단위에 대응하는 개별 액티비티를 미리 설정된 기준에 따라 정렬하고, 상기 정렬된 순서에 따라 상기 산출된 비용을 누적하여 예산을 충족시킬 수 있도록 상기 개별 액티비티의 속성을 조정함으로써 상기 조정된 작업 플로우를 생성한다. In view of generating the details of adjustment request processing unit 30, arranged according to a separate activity, corresponding to the functional unit of the user's point of view, the preset criteria, and meet the budget by accumulating the calculated cost in accordance with the sort order, so as to generate a job flow by adjusting the adjust the properties of the individual activities.

이러한 처리부(30)는 적어도 하나의 프로세서를 구비하며, 필요에 따라서는 이상의 연산을 수행하기 위한 작업 공간으로서 메모리를 구비할 수 있을 뿐만 아니라, 이러한 하드웨어를 제어하고 연산을 수행하는 일련의 명령어 집합으로 구성된 소프트웨어 코드를 포함할 수 있다. The processing unit 30 into a series of instruction sets to at least provided with a single processor, as well as to a memory as a work area for carrying out the above operation, if necessary, control these hardware and perform the operation may include software code is configured.

나아가, 저장된 새로운 자산에 따라 구현된 소프트웨어를 소정 테스트를 통해 검증한 후, 상기 검증 결과 오류가 발견되지 않은 경우, 상기 처리부(30)는 상기 저장된 작업 플로우를 상기 도메인의 한 유형으로 등록하여 재사용 가능한 자산으로 변경하여 상기 저장부에 저장하게 된다. Further, possible after validation through a predetermined test the implemented software according to the new property are stored, and if the verification result error is not found, the processing unit 30 re-registers the stored operation flow a type of the domain It is changed to assets stored in the storage unit.

상기된 본 발명의 실시예들에 따르면, 검증된 자산으로부터 독출된 요구사항 및 관련 자산을 조정하여 새로운 요구사항이 반영된 작업 플로우를 생성함으로써 최종 사용자에 의해 유도된 개발 산출물의 품질을 보장하고, 해당 개발 산출물에서 나타날 수 있는 소프트웨어적인 결함을 차단할 수 있으며, 새롭게 생성된 작업 플로우가 검증된 경우에 한해 도메인(domain)의 새로운 유형으로 자산을 등록함으로써 요구사항 수렴 및 분석에 필요한 시간을 감소시켜 전체 소프트웨어 개발 과정의 생산성을 향상시킬 수 있다. According to embodiments of the present the invention, the adjusting of the requirements and associated assets read from the verified asset by generating a task flow reflect the new requirements ensure the quality of the development artifacts induced by the end user, and the you can block a software defect that can occur in the development deliverables, by newly registered assets into a new type of domain (domain) only if the workflow is validated created to reduce the time required for the convergence and analysis requirements, the entire software It can improve the productivity of the development process.

한편, 본 발명의 실시예들은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로 구현하는 것이 가능하다. On the other hand, embodiments of the present invention can be realized as a code which the computer can read in a computer-readable recording medium. 이 때, 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. At this time, the computer-readable recording medium includes any type of recording device in which data readable by a computer system.

컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현하는 것을 포함한다. Examples of the computer-readable recording medium are a ROM, RAM, CD-ROM, magnetic tapes, floppy disks, optical data storage devices, and to implement in the form of carrier waves (such as data transmission through the Internet) It includes. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. Further, the computer-readable recording medium is distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술 분야의 프로그래머들에 의하여 용이하게 추론될 수 있다. And functional (functional) programs, codes, and code segments for accomplishing the present invention can be easily construed by programmers skilled in the art to which the invention pertains.

이상에서 본 발명에 대하여 그 다양한 실시예들을 중심으로 살펴보았다. With respect to the present invention at least looked at the center of the various embodiments. 본 발명에 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. One of ordinary skill in the art to the present invention will be appreciated that the present invention may be implemented in a scope not departing from the essential characteristics of the invention in a modified form. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. The exemplary embodiments should be considered in a descriptive sense only and not for purposes of limitation. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다. The scope of the invention, not by the detailed description given in the appended claims, and all differences within the equivalent scope will be construed as being included in the present invention.

100 : 요구사항 시뮬레이터 100: Requirements simulator
200 : 요구사항 자산 (데이터베이스) 200: Requirements assets (database)
800 : 요구사항 시뮬레이터 850 : 최종 사용자(end-user) 800: 850 simulator requirements: End users (end-user)
10 : 입출력부 20 : 저장부 10: output section 20: storage unit
30 : 처리부 40 : 영상 표시 수단 30: processing unit 40: video display means

Claims (17)

  1. 적어도 하나의 프로세서(processor)를 구비하는 요구사항 시뮬레이터(simulator)가 소프트웨어 개발을 위한 요구사항(requirement)을 관리하는 방법에 있어서, At least one requirement simulator (simulator) having a processor (processor) according to the method of managing the requirements (requirement) for software development,
    상기 시뮬레이터가 도메인(domain)별로 요구사항에 따라 검증된 일련의 자산(asset)을 저장하는 단계; Storing a set of assets (asset) of the simulator, the verification in accordance with the requirements for each domain (domain);
    상기 시뮬레이터가 새로운 소프트웨어 개발에 따른 요구사항을 고려하여 상기 저장된 자산 중에서 사용자에 의해 선택된 요구사항 및 관련 자산을 독출하여 시각적인 작업 플로우(flow)로 표시하고, 상기 사용자의 선택에 의해 상기 시뮬레이터가 상기 표시된 작업 플로우 내의 작업 요소인 액티비티(activity)에 대해 추가, 삭제, 변경 중 어느 하나를 수행하여 상기 새로운 소프트웨어 개발에 대한 요구사항을 생성하는 단계; By selection of the user and the simulator wherein the simulator is displayed in the visual task flow (flow) to read out the selected requirements, and its assets by a user from the property of the stored, taking into account the requirements of the new software development, and generating the requirements for the new software developed to perform any one of add, delete, change for the operation elements in activity (activity) shown in the operation flow;
    상기 시뮬레이터가 상기 생성된 요구사항별로 입력, 연산 및 출력에 따른 상기 액티비티의 데이터에 관한 속성 데이터 및 트랜잭션(transaction)에 관한 속성 데이터를 입력받아 소프트웨어 개발에 소모되는 비용을 산출할 수 있는 정량 지표 중에서 선택된 값을 이용하여 상기 작업 플로우의 비용을 산출하는 단계; In which the simulator quantitative indicator that receives the attribute data on the attribute data and transaction (transaction) on the data of the activities according to the type, operation, and outputs for each information, the generated request to calculate the cost spent on development of software calculating the cost of the operation flow using the selected value;
    상기 시뮬레이터가 상기 산출된 비용과 책정된 예산의 한계를 상기 사용자에게 제공하고, 상기 사용자로 하여금 상기 산출된 비용을 고려하여 상기 예산의 한계 내에서 상기 작업 플로우의 개별 액티비티에 대한 선택을 입력하도록 유도함으로써, 상기 입력에 따라 조정된 작업 플로우를 생성하는 단계; Wherein the simulator provides the calculated costs and limitations of the development budget to the user, and guided to enter a selection for the individual activities of the task flow by causing the user considering the calculated cost within the limits of the budget the step of generating the adjusted operation flow according to the input by; And
    상기 시뮬레이터가 상기 조정된 작업 플로우를 새로운 자산으로서 저장하는 단계;를 포함하되, Including but; storing the operation flow of the simulator is the adjustment as new assets
    상기 액티비티는 하나 이상의 입력과 연산에 따른 출력을 가지며, 상기 사용자로 하여금 상기 시각적인 작업 플로우 상에서 GUI(graphical user interface)를 이용하여 상기 액티비티에 대한 입력과 출력을 통합적으로 설정하도록 하는 것을 특징으로 하는 방법. The activity is characterized by having an output in accordance with one or more input and the operation, so as to cause the user to set the input and output for the activity using a GUI (graphical user interface) on the visual workflow in an integrated Way.
  2. 삭제 delete
  3. 제 1 항에 있어서, According to claim 1,
    상기 액티비티는, The activity,
    상기 액티비티의 수행에 관한 GUI 폼(form) 디자인 및 상기 액티비티에 대한 입력과 출력이 연계되고, The input and output of the GUI forms (form) the design and performance of activities on the activity is linked,
    상기 액티비티의 기능이 의미론적으로 유사한 그룹별로 저장되는 것을 특징으로 하는 방법. It characterized in that the activity of the function to be stored by a similar group to the semantic.
  4. 제 1 항에 있어서, According to claim 1,
    상기 새로운 소프트웨어 개발에 대한 요구사항을 생성하는 단계는, Generating the requirements for new software development,
    사용자 관점의 기능 단위인 유스 케이스(use case)별로 입력, 수행 동작 및 출력을 고려하여 상기 액티비티를 처리하는 것을 특징으로 하는 방법. The functional units of the user's point of view, the use case (use case) by considering the input and output operation performed by characterized in that for processing the activity.
  5. 삭제 delete
  6. 제 1 항에 있어서, According to claim 1,
    상기 데이터에 관한 속성 데이터는, 내부 논리 파일 및 외부 연계 인터페이스(interface) 파일이고, Attribute data relating to the data, and the internal logical files and external connection interface (interface) file,
    상기 트랜잭션에 관한 속성 데이터는, 외부 입력, 외부 출력 및 외부 질의의 횟수인 것을 특징으로 하는 방법. Attribute data relating to the transaction, it characterized in that the external input, the number of external output and an outer query.
  7. 제 1 항에 있어서, According to claim 1,
    상기 조정된 작업 플로우를 생성하는 단계는, Generating the adjusted operation flow,
    사용자 관점의 기능 단위에 대응하는 개별 액티비티를 미리 설정된 기준에 따라 정렬하는 단계; Aligning along a separate activity, corresponding to the functional unit of the user's point of view, the pre-set criteria; And
    상기 정렬된 순서에 따라 상기 산출된 비용을 누적하여 예산을 충족시킬 수 있도록 상기 개별 액티비티의 속성을 조정하는 단계;를 포함하는 방법. Comprises a; adjusting the properties of the individual activities according to the sorted order to meet the budget by accumulating the calculated cost.
  8. 제 1 항에 있어서, According to claim 1,
    상기 저장된 새로운 자산에 따라 구현된 소프트웨어를 소정 테스트를 통해 검증하는 단계;를 더 포함하는 방법. The method further including; verifying over a predetermined testing a software implementation in accordance with the new assets stored.
  9. 제 8 항에 있어서, The method of claim 8,
    상기 검증 결과 오류가 발견되지 않은 경우, 상기 저장된 작업 플로우를 상기 도메인의 한 유형으로 등록하여 재사용 가능한 자산으로 변경하는 단계;를 더 포함하는 방법. If the verification result the error is not found, the method comprising: registering the stored job flow as a kind of the domain changed to reusable assets; further comprising the.
  10. 제 1 항, 제 3 항, 제 4 항, 제 6 항 내지 제 9 항 중에 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체. Of claim 1, claim 3, claim 4, claim 6 to a recording medium that can read any one of the method of claim 9 wherein a computer storing a program for executing on a computer.
  11. 소프트웨어 개발을 위한 요구사항을 관리하는 장치에 있어서, An apparatus for managing the requirements for software development,
    도메인별로 요구사항에 따라 검증된 일련의 자산을 저장하는 저장부; A storage unit to store a series of asset verification in accordance with the requirements for each domain;
    사용자의 입력 및 선택을 수신하고, 상기 요구사항 및 상기 자산에 기초하여 생성된 영상을 영상 표시 수단에 전달하는 입출력부; Input-output unit for receiving a user input and selecting and delivering a video image generated based on the property information and the request to the video display means; And
    새로운 소프트웨어 개발에 따른 요구사항을 고려하여 상기 저장부에 저장된 자산 중에서 사용자에 의해 선택된 요구사항 및 관련 자산을 독출하여 시각적인 작업 플로우로 표시하고, 상기 사용자의 선택에 의해 상기 표시된 작업 플로우 내의 작업 요소인 액티비티에 대해 추가, 삭제, 변경 중 어느 하나를 수행하여 상기 새로운 소프트웨어 개발에 대한 요구사항을 생성하는 처리부;를 포함하고, Operation of the elements in consideration of the requirement of the new software development to see all of the assets stored in the storage unit to the visual operation flow reads out the selected requirements, and its assets by a user, the operation flow from the displayed by the selection of the user, by the added, deleted for the activity, perform any of the change processing of generating the requirements for the new software development; includes,
    상기 처리부는, The processing section,
    상기 생성된 요구사항별로 입력, 연산 및 출력에 따른 상기 액티비티의 데이터에 관한 속성 데이터 및 트랜잭션에 관한 속성 데이터를 입력받아 소프트웨어 개발에 소모되는 비용을 산출할 수 있는 정량 지표 중에서 선택된 값을 이용하여 상기 작업 플로우의 비용을 산출하고, Wherein by using a value selected from a quantitative indicator that receives the attribute data can be used to calculate the cost spent on development of software on the attribute data and the transaction on the data of the activities according to the input by the information, the generated request, the operation and output calculating the cost of the work flow,
    상기 산출된 비용과 책정된 예산의 한계를 상기 입출력부를 통해 상기 사용자에게 제공하고, 상기 사용자로 하여금 상기 산출된 비용을 고려하여 상기 예산의 한계 내에서 상기 작업 플로우의 개별 액티비티에 대한 선택을 입력하도록 유도함으로써, 상기 입력에 따라 조정된 작업 플로우를 생성하며, The through input and output units the limits of the calculated costs and the development budget available to the user, and taking into account the instructions cause the user the calculated cost within the limits of the budget to enter a selection for the individual activities of the operation flow by induction, and generate a flow adjustment operation according to the input,
    상기 조정된 작업 플로우를 새로운 자산으로서 상기 저장부에 저장하되, But stores the adjustment flows in the storage unit as a new asset,
    상기 액티비티는 하나 이상의 입력과 연산에 따른 출력을 가지며, 상기 사용자로 하여금 상기 시각적인 작업 플로우 상에서 GUI를 이용하여 상기 액티비티에 대한 입력과 출력을 통합적으로 설정하도록 하는 것을 특징으로 하는 장치. The activity and wherein for having an output in accordance with one or more input and the operation, so as to cause the user to set the input and output for the activity using a GUI on the visual workflow in an integrated manner.
  12. 삭제 delete
  13. 제 11 항에 있어서, 12. The method of claim 11,
    상기 액티비티는, The activity,
    상기 액티비티의 수행에 관한 GUI 폼 디자인 및 상기 액티비티에 대한 입력과 출력이 연계되고, The input and output of the GUI design form and the activity on the performance of the activity and the association,
    상기 액티비티의 기능이 의미론적으로 유사한 그룹별로 상기 저장부에 저장되는 것을 특징으로 하는 장치. And wherein the activity of the features that are similar to each group of semantically stored in the storage unit.
  14. 제 11 항에 있어서, 12. The method of claim 11,
    상기 처리부는, The processing section,
    사용자 관점의 기능 단위인 유스 케이스별로 입력, 수행 동작 및 출력을 고려하여 상기 액티비티를 처리하는 것을 특징으로 하는 장치. Device characterized in that in consideration of the input, output, and performing operation processing the activity by the use case of functional units of the user's point of view.
  15. 제 11 항에 있어서, 12. The method of claim 11,
    상기 데이터에 관한 속성 데이터는, 내부 논리 파일 및 외부 연계 인터페이스 파일이며, Attribute data relating to the data, and the internal logic and external file associated interface file,
    상기 트랜잭션에 관한 속성 데이터는, 외부 입력, 외부 출력 및 외부 질의의 횟수인 것을 특징으로 하는 장치. And wherein attribute data relating to the transaction, the external input, the number of external output and an outer query.
  16. 제 11 항에 있어서, 12. The method of claim 11,
    상기 처리부는, The processing section,
    사용자 관점의 기능 단위에 대응하는 개별 액티비티를 미리 설정된 기준에 따라 정렬하고, Sort the individual activities corresponding to the functional unit of the user's point of view, the pre-set criteria, and
    상기 정렬된 순서에 따라 상기 산출된 비용을 누적하여 예산을 충족시킬 수 있도록 상기 개별 액티비티의 속성을 조정함으로써 상기 조정된 작업 플로우를 생성하는 것을 특징으로 하는 장치. Wherein generating a flow of the adjustment operation by adjusting the properties of the individual activities according to the sorted order to meet the budget by accumulating the calculated cost.
  17. 제 11 항에 있어서, 12. The method of claim 11,
    상기 저장된 새로운 자산에 따라 구현된 소프트웨어를 소정 테스트를 통해 검증한 후, 상기 검증 결과 오류가 발견되지 않은 경우, If after verifying over a predetermined testing a software implementation in accordance with the new asset is stored, the result of the verification error is not found,
    상기 처리부는 상기 저장된 작업 플로우를 상기 도메인의 한 유형으로 등록하여 재사용 가능한 자산으로 변경하여 상기 저장부에 저장하는 것을 특징으로 하는 장치. The processor device, characterized in that for storing in the storage unit by changing the stored operation flow a reusable assets to register a type of the domain.
KR20110124307A 2011-11-25 2011-11-25 Asset based requirements simulator and requirements management method thereof KR101508496B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR20110124307A KR101508496B1 (en) 2011-11-25 2011-11-25 Asset based requirements simulator and requirements management method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20110124307A KR101508496B1 (en) 2011-11-25 2011-11-25 Asset based requirements simulator and requirements management method thereof

Publications (2)

Publication Number Publication Date
KR20130058348A true KR20130058348A (en) 2013-06-04
KR101508496B1 true KR101508496B1 (en) 2015-04-10

Family

ID=48857643

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20110124307A KR101508496B1 (en) 2011-11-25 2011-11-25 Asset based requirements simulator and requirements management method thereof

Country Status (1)

Country Link
KR (1) KR101508496B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060063349A (en) * 2004-12-07 2006-06-12 한국전자통신연구원 System and method for support of embedded software development methodology with quantitative process management
KR20080087804A (en) * 2005-12-29 2008-10-01 마이크로소프트 코포레이션 Modeling user input and interaction in workflow based applications

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060063349A (en) * 2004-12-07 2006-06-12 한국전자통신연구원 System and method for support of embedded software development methodology with quantitative process management
KR20080087804A (en) * 2005-12-29 2008-10-01 마이크로소프트 코포레이션 Modeling user input and interaction in workflow based applications

Also Published As

Publication number Publication date Type
KR20130058348A (en) 2013-06-04 application

Similar Documents

Publication Publication Date Title
Sage Systems engineering
US8024397B1 (en) System for generating a services repository using a target services roadmap
Maciaszek Requirements analysis and system design
US7730123B1 (en) Software application implemented using services from a services repository generated using a target services roadmap
US7630965B1 (en) Wizard for use generating a services repository using a target services roadmap
US20040133457A1 (en) Flexible workflow management
Rosen et al. Applied SOA: service-oriented architecture and design strategies
Lu et al. On managing business processes variants
Alves et al. Challenges in COTS decision-making: a goal-driven requirements engineering perspective
Bennatan On time, within budget: software project management practices and techniques
US20060064178A1 (en) System, method and computer program product for developing a system-of-systems architecture model
Agarwal et al. Software engineering and testing
Armour et al. Advanced use case modeling: software systems
US20050005262A1 (en) Method and apparatus for developing software
US20010052112A1 (en) Method and apparatus for developing software
US20120110030A1 (en) Software database system and process of building and operating the same
US20110208788A1 (en) Service Integration Modeling and Execution Framework
Larson et al. A review and future direction of agile, business intelligence, analytics and data science
US20110029947A1 (en) Systems and methods for integrating process perspectives and abstraction levels into process modeling
US20080244594A1 (en) Visual scripting of web services for task automation
Jalote A concise introduction to software engineering
US20090249281A1 (en) Performance-related decision support for model-driven engineering
Keyes Software engineering handbook
US8145468B2 (en) Non-intrusive model annotation
US8438533B2 (en) Performance-related decision support for compositions of process modeling environments

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
E90F Notification of reason for final refusal
AMND Amendment
X701 Decision to grant (after re-examination)
FPAY Annual fee payment

Payment date: 20180108

Year of fee payment: 4