KR20180024723A - Software development and design system base on online-outsourcing - Google Patents

Software development and design system base on online-outsourcing Download PDF

Info

Publication number
KR20180024723A
KR20180024723A KR1020160111478A KR20160111478A KR20180024723A KR 20180024723 A KR20180024723 A KR 20180024723A KR 1020160111478 A KR1020160111478 A KR 1020160111478A KR 20160111478 A KR20160111478 A KR 20160111478A KR 20180024723 A KR20180024723 A KR 20180024723A
Authority
KR
South Korea
Prior art keywords
information
software
module
software development
development
Prior art date
Application number
KR1020160111478A
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 KR1020160111478A priority Critical patent/KR20180024723A/en
Publication of KR20180024723A publication Critical patent/KR20180024723A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4494Execution paradigms, e.g. implementations of programming paradigms data driven
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/161Computing infrastructure, e.g. computer clusters, blade chassis or hardware partitioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/75Structural analysis for program understanding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3234Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Stored Programmes (AREA)

Abstract

Disclosed is a system to develop and design software based on online outsourcing, capable of smoothly performing a project through systematic information sharing. According to the present invention, a software development support system of a client/server scheme connected through a network comprises: an application server; and a database to store and manage data related to software development received from the application server. The application server includes: a user authentication module using login information inputted from a client to identify a user and assigning a system use right corresponding to the user; at least one function module divided into each software development project unit to provide information management and sharing for all processes from planning to commercialization, and operated independently of other function modules; and an information transmission module receiving data from the corresponding function module in response to an information request of the client having the use right to generate an extensible information matrix, generating a new information matrix through selection, removal, and merging of the generated information matrix in accordance with data selection information upon an information request to transmit the new information matrix to the corresponding client, and integrating and linking the function modules.

Description

온라인 아웃소싱 기반의 소프트웨어 개발 및 설계 시스템{SOFTWARE DEVELOPMENT AND DESIGN SYSTEM BASE ON ONLINE-OUTSOURCING}BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a software development and design system based on online outsourcing,

본 발명은 소프트웨어 개발에 관한 것으로, 더욱 상세하게는 온라인 상에서 소프트웨어 개발 및 설계 업무를 분산 공지하고, 불특정 다수의 개발자 검증을 기반으로 소프트웨어 개발 프로세스를 통합적으로 관리할 수 있는 온라인 아웃소싱 기반의 소프트웨어 개발 및 설계 시스템에 관한 것이다.More particularly, the present invention relates to software development based on online outsourcing which can distribute and announce software development and design work on-line and integrally manage a software development process based on an unspecified number of developers' Design system.

현재 소프트웨어 생산방식의 가장 큰 문제점은 사람, 즉 개발자가 해주어야 할 일이 너무나 많다는 점이다. 현재 대부분의 소프트웨어 개발절차 및 개발에 사용되는 도구들을 활용한 개발작업에서 개발자들은 요구 제기자(비즈니스 실무 담당자) 또는 소프트웨어 설계자의 지시를 받아 비즈니스 로직을 구현하기 위한 소스 코딩 작업을 수행해야 하며, 그러한 비즈니스 로직 구현에 필요한 일체의 데이터베이스 I/O, 하드웨어 제어, 운영체제 제어, 보안관리 등의 기능을 단위 모듈마다 일일이 만들어주어야 한다.The biggest problem with software production today is that there are too many people, or developers, to do so. In development work that uses tools that are currently used in most software development procedures and development, developers must perform source coding tasks to implement the business logic under the direction of the requester (business practitioner) or software designer, All functions required for implementing business logic such as database I / O, hardware control, operating system control, and security management should be created for each module.

이렇게 간단하게 서술하면 이런 것들이 별로 대단한 작업으로 느껴지지 않고, 기존의 기술패러다임에 익숙한 사람들에게는 너무나 당연한 것처럼 느껴질 수도 있겠지만, 그 속에는 소프트웨어의 개발이라는 업무를 극도로 비효율적으로 만드는 개발방식상의 두 가지 잘못된 전제가 존재하고 있다.It may seem too obvious to those who are familiar with the existing technology paradigm that these things do not seem to be a great job, but there are two false assumptions about the development method that make the task of software development extremely inefficient: .

첫 번째 잘못된 전제는 ‘개발자는 요구제기자로부터 지시를 받는다.’라는 [0004] 부분이다. 물론 지금까지 사용되어 온 개발도구나 플랫폼을 기준으로 생각한다면 이것은 어쩔 수 없는 사실이다. 그러나 당연한 사실로만 받아들여진 이 점, 즉 실제로 현업에 대한 오랜 경험과 지식을 갖고 비즈니스용 소프트웨어가 해주어야 할 기능을 명확하게 파악하고 있는 현업 실무자(비즈니스용 소프트웨어 개발 시 이 사람들이 요구제기자가 되는 경우가 많다)가 복잡하고 어려운 프로그래밍 언어를 다루는 기술을 갖춘 개발자에게 요구사항을 제기해야 한다는 바로 이 점 때문에 실제 소프트웨어 개발과 사용시에 다양한 문제들이 발생해왔다. 기초지식과 마인드는 물론이고 그들이 갖추고 있는 전문적인 능력에서까지도 완전히 상이한 두 계층 사이의 커뮤니케이션에서 발생하는 문제는 차치하고라도, 비즈니스용 소프트웨어 개발에서 가장 핵심적인 역량이라고 할 수 있는 비즈니스 로직에 대해 제대로 알지 못하는 전문개발자들에 의해서 실질적인 작업이 모두 이루어진다는 점 자체가 본질적으로 더욱 큰 문제라고 할 수 있는 것이다.The first false premise is that the developer receives instructions from the requesting party. Of course, this is an unavoidable assumption based on the development tools and platforms that have been used so far. However, this is only taken for granted, that is, a practitioner who has a clear understanding of the functions that business software should have in terms of his / her long experience and knowledge of the business. Many of which are complicated and difficult to address programming language problems, developers have to address the problem because of the actual software development and the use of various problems have occurred. Apart from the problems that arise from the communication between the two layers, which is completely different from the basic knowledge and mind, and even the professional abilities they have, they do not know much about the business logic, which is the core competency in software development for business. The fact that all the real work is done by professional developers is itself a bigger problem in itself.

본 발명은 이와 같은 문제점을 해결하기 위해 창출된 것으로, 본 발명의 [0006] 목적은 소프트웨어 개발 전반을 통합시스템화하여 유관 조직(관리, 개발, 지원, 사업) 간의 체계적인 정보 공유를 통해 원활한 업무 수행이 이루어 질 수 있도록 하며 개발 소프트웨어에 대한 기술지원, 테스트, 매뉴얼, 디자인 서비스의 요청과 제공을 정형화 할 수 있는 온라인 아웃소싱 기반의 소프트웨어 개발 및 설계 시스템을 제공함에 있다.SUMMARY OF THE INVENTION [0006] The present invention has been made in order to solve the above problems, and an object of the present invention is to provide a system and method for integrating system of software development as a whole to provide systematic information sharing among related organizations (management, development, And to provide a software development and design system based on online outsourcing that can formalize the request and provision of technical support, test, manual, and design service for development software.

상기 목적을 달성하기 위한 본 발명의 관점에 따른 온라인 아웃소싱 기반의 소프트웨어 개발 및 설계 시스템은, 네트워크로 연결된 클라이언트/서버 방식의 소프트웨어 개발 지원 시스템에 있어서, 상기 클라이언트로부터 입력된 로그인 정보를 이용하여 사용자 확인을 하고, 사용자에 따른 시스템 사용 권한을 부여하는 사용자 인증 모듈; 소프트웨어의 개발 업무 단위 별로 세분화되어 기획에서 제품화까지의 전 과정에 대한 정보의 관리와 공유를 제공하며, 다른 기능 모듈과 독립적으로 동작되는 적어도 하나 이상의 기능 모듈; 사용 권한이 부여된 상기클라이언트의 정보 요청에 응답하여 해당하는 기능 모듈로부터 데이터를 받아 확장 가능한 정보 매트릭스로 생성하고, 정보 요청 시의 데이터 선택 정보에 따라 상기 생성된 정보 매트릭스에 대한 선택, 제거 및 병합을 통해 새로운 정보 매트릭스를 생성하여 해당 클라이언트로 전송하며, 상기 기능 모듈을 통합 및 연계시키는 정보전송 모듈로 이루어진 애플리케이션 서버; 및 상기 애플리케이션 서버로부터 전송되는 소프트웨어 개발 관련 데이터를 저장 관리하는 데이터베이스를 포함하는 것을 특징으로 한다.According to an aspect of the present invention, an online outsourcing-based software development and design system includes a network-connected client / server software development support system, A user authentication module for granting a system use right according to a user; At least one functional module that provides management and sharing of information on the entire process from planning to commercialization by subdividing it into software development tasks and operates independently from other functional modules; And generating an expandable information matrix by receiving data from a corresponding function module in response to an information request of the client to which the use right is granted, and selecting, removing and merging the generated information matrix according to data selection information at the time of requesting information An application server including an information transmission module for generating a new information matrix and transmitting the new information matrix to a corresponding client, and integrating and linking the function modules; And a database for storing and managing software development-related data transmitted from the application server.

본 발명에서 제시되는 온라인 아웃소싱 기반의 소프트웨어 개발 및 설계 시스템은, 소프트웨어 시스템을 개발할 때 프로젝트 관리 측면과 시스템 모형화 측면을 통합 연계함으로써 관리자는 프로젝트 관리에 쉽고 빠른 의사결정을 할 수 있고, 개발자는 언제든지 자신이 해야 할 작업을 작업 일정에 따라 미리 정의된 도구를 통하여 작업을 수행하고 그 결과인 산출문서를 등록하여 온라인으로 승인을 받음으로써 프로젝트 수행에 있어 효율성 및 생산성을 높일 수 있는 우수한 효과가 있다.The online outsourcing-based software development and design system presented in the present invention integrates the aspects of project management and system modeling when developing a software system so that the manager can make quick and easy decision making on project management, There is an excellent effect that it is possible to increase the efficiency and productivity in the project execution by carrying out the work to be done through the predefined tool according to the work schedule and registering the result output document and obtaining the approval online.

또한, 모형화 지원 편집도구에서 모형 간 일관성을 검증해주는 기능을 통하여 도구 사용자에게 자신이 작업하고 있는 다이어그램과 구성요소 간의 일관성을 즉시 확인시킴에 따라, 모형화 작업 시의 논리적 오류를 줄일 수 있으며, 일관성의 자동 검증을 통해 시스템의 모형화 작업을 효율적으로 수행할 수 있는 효과가 있다.In addition, since the modeling support editing tool verifies the consistency between the models, the tool user can immediately confirm the consistency between the diagrams and the components he is working with, thereby reducing the logical errors in modeling work, And the system can be efficiently modeled through automatic verification.

도 1은 종래 소프트웨어 개발 방법을 설명하기 위한 구성도이다.
도 2는 본 발명에 따른 소프트웨어 개발 및 설계를 위한 구성도이다.
도 3은 본 발명에 따른 소프트웨어 개발 통합 지원 과정을 나타낸 플로우챠트이다.
도 4는 도 3을 실행하기 위한 기능별 모듈을 나타낸 구성도이다.
도 5는 본 발명에 따른 소프트웨어 개발 절차를 설명하기 위한 플로우챠트이다.
1 is a block diagram for explaining a conventional software development method.
2 is a configuration diagram for software development and design according to the present invention.
3 is a flowchart illustrating a software development integration support process according to the present invention.
Fig. 4 is a configuration diagram showing functional modules for executing Fig. 3. Fig.
5 is a flowchart illustrating a software development procedure according to the present invention.

이하, 본 발명의 바람직한 실시 예를 첨부된 예시도면에 의거 상세히 설명하면 다음과 같다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 2는 본 발명에 따른 온라인 아웃소싱 기반의 소프트웨어 개발 및 설계 환경을 설명하기 위한 구성도이다. 먼저, 네트워크로 연결되어 있는 클라이언트(10), 애플리케이션 서버(20) 및 데이터베이스(30)로 구성된다. 사용자들은 TCP/IP 네트워크가 지원되는 상기 클라이언트(10)를 이용하여 인터넷이나 인트라넷을 통해 상기 애플리케이션 서버(20)에 접속하여 소프트웨어 개발 관련 정보와 서비스를 실행할 수 있다.FIG. 2 is a block diagram for explaining software development and design environment based on an online outsourcing according to the present invention. First, the client 10 connected to the network, the application server 20, and the database 30 are configured. Users can access the application server 20 via the Internet or an intranet using the client 10 supported by the TCP / IP network to execute software development related information and services.

상기 애플리케이션 서버(20)는 상기 클라이언트(10)로부터 입력받은 로그인 정보로 사용자 확인을 하고, 사용자에 따른 시스템 사용 권한을 부여하는 사용자 인증 모듈(21)과; 소프트웨어의 개발 업무 단위별로 세분화되어 기획에서 제품화까지의 전 과정에 대한 정보의 관리와 공유를 제공하는 적어도 하나 이상의 기능 모듈(23~2The application server (20) comprises a user authentication module (21) for authenticating a user with login information input from the client (10) and granting a system use right according to a user; At least one functional module 23-2 for providing management and sharing of information on the entire process from planning to commercialization,

8)과; 사용 권한이 부여된 상기 클라이언트(10)의 요청에 응답하여 해당하는 적어도 하나 이상의 기능 모듈(23~28)로부터 데이터를 받아 가공한 후 해당 클라이언트(10)로 전송하는 정보 전송 모듈(22)로 구성되어 있다.8); (22) configured to receive data from at least one corresponding function module (23-28) in response to a request of the client (10) to which the use right is granted, and transmit the processed data to the client (10) .

상기 데이터베이스(30)는 상기 애플리케이션 서버(20)로부터 전송되는 소프트웨어 개발 관련 데이터를 저장하며, 상기 애플리케이션 서버(20)에 상기 저장된 데이터를 제공한다. 본 발명에 따른 소프트웨어 개발 및 설계 환경은 인터넷과 인트라넷 및 분산 환경과 컴포넌트 환경 지원을 위해 애플리케이션 서버(20)를 기반으로 하여 데이터베이스(30)가 시스템 외부에 존재하는 경우 TCP/IP 네트워크를 통하여 데이터를 다룰 수 있으며, 각 기능 모듈도 물리적으로 분리된 시스템에서 동작할 수 있는 구조로 이루어진다.The database 30 stores software development-related data transmitted from the application server 20 and provides the stored data to the application server 20. The software development and design environment according to the present invention is based on the application server 20 for supporting the Internet, the intranet, the distributed environment, and the component environment. When the database 30 exists outside the system, And each function module also has a structure capable of operating in a physically separated system.

상기 기능 모듈(23~28)은 소프트웨어 개발 업무 단위 별로 세분화되어 기획에서 제품화까지의 전 과정에 대한 정보의 관리와 공유를 제공하는데, 소프트웨어 정보 관리 모듈(23), 기술 지원 관리 모듈(24), 개발 자원 관리 모듈(25), 출하 정보 관리 모듈(26), 로지스틱스 관리 모듈(27), 디자인 지원 관리 모듈(28) 등으로 구성되어The functional modules 23 to 28 are subdivided into software development business units to provide management and sharing of information on all processes from planning to commercialization. The software modules include a software information management module 23, a technical support management module 24, A development resource management module 25, a shipping information management module 26, a logistics management module 27, a design support management module 28, and the like

있다.have.

상기 소프트웨어 정보 관리 모듈(23)은 개발 소프트웨어 및 서브 모듈 정보를 관리 및 제공한다. 상기 기술 지원 관리 모듈(24)은 각 소프트웨어 개발 상에 발생되는 기술적인 요청사항이나 문제점이 발생했을 경우, 요청자가 작성한 기술지원 요청 사항에 대한 해당 소프트웨어의 기술정보를 알려 주고, 기술지원 절차가 접수되어 완료되기까지 모든 과정을 관련자들이 확인할 수 있도록 하는 기능을 제공한다.The software information management module 23 manages and provides development software and sub-module information. The technical support management module 24 informs the technical information of the corresponding software about the technical support request made by the requestor when a technical request item or a problem that occurs in each software development occurs, It provides a function that allows the concerned parties to confirm all processes until completion.

상기 개발 자원 관리 모듈(25)은 소프트웨어 개발에 있어 필요한 하드웨어, 소프트웨어에 대한 상세 정보를 관리하고, 개발 소프트웨어에 투입된 하드웨어, 소프트웨어 자원에 대한 정보를 제공하여 효율적인 자원관리가 이루어질 수 있도록 한다. 상기 출하 정보 관리 모듈(26)은 개발된 소프트웨어의 출하 과정 또는 제품 테스트 과정에서 발생한 결함 사항, 결함률 및 검사 일정 등의 정보를 관리 및 제공한다.The development resource management module 25 manages detailed information on hardware and software necessary for software development, and provides information on hardware and software resources input to the development software so that efficient resource management can be performed. The shipment information management module 26 manages and provides information on defects, defect rates, and inspection schedules that occurred during the shipping process or the product testing process of the developed software.

상기 로지스틱스 관리 모듈(27)은 개발된 소프트웨어의 제품 매뉴얼 및 상품화와 관련된 로지스틱스 작업 정보를 관리 및 제공한다. 상기 디자인 지원 관리 모듈(28)은 소프트웨어 개발에 필요한 디자인 요청, 디자인 요청처리 결과 등의 디자인 지원 정보를 관리 및 제공한다. 여기서, 상기 각 기능 모듈(23~28)은 해당 모듈의 관리자로부터 입력받은 정보를 저장하고, 이를 통해 관련자들은 현재 개발되는 소프트웨어의 정보 서비스를 제공 받을 수 있다. 개발되는 소프트웨어의 정보는 버젼별, 서브 모듈별 및 정보의 유형별로 분류되어 관리 되어지며, 정보를 필요로 하는 개발 유관 조직에서 조회해 볼 수 있다.The logistics management module 27 manages and provides the logistics work information related to the product manual and the commercialization of the developed software. The design support management module 28 manages and provides design support information such as a design request and a design request processing result necessary for software development. Here, each of the function modules 23 to 28 stores information inputted from the manager of the corresponding module, so that related parties can receive information services of currently developed software. The information of the developed software is categorized and managed according to version, submodule, and information type, and it can be inquired by the development related organization that needs information.

여기서, 상기 각 기능 모듈(23~28)은 시스템의 제공 서비스 특성상 개발 소프트웨어 정보를 중심으로 통합되어 있어, 기능 모듈(23~28)이 개발 소프트웨어 정보에 대해 의존적인 형태로 보여진다. 그러나, 시스템 내부적으로는 기능이나 업무 단위로 나누어진 각 기능 모듈(23~28)은 다른 기능 모듈들에 의존적이지 않도록 설계되어 다른 기능 모듈과 독립적으로 동작이 가능하다.Here, the function modules 23 to 28 are integrated based on the development software information due to the nature of the service provided by the system, so that the function modules 23 to 28 are shown in a form dependent on the developed software information. However, each functional module 23-28 divided into functions or business units in the system is designed not to be dependent on other functional modules, and can operate independently of other functional modules.

다만, 시스템 내의 기능 모듈(23~28)의 통합이나 연계의 역할이 정보 전송 모듈(22)을 통해 이루어지므로, 각 기능 모듈(23 28)은 정보 전송 모듈(22)에는 의존적이다. 따라서, 각 기능 모듈의 추가, 변경 및 제거 시 정보 전송 모듈(22)과의 호환성만 고려하면 되므로, 기능 모듈의 유지보수가 용이한 구조이다.상기 각 기능 모듈(23~28)은 체계적인 정보 관리를 위해 내부적으로 다시 세분화되어 있는데, 일례로 소프트웨어 정보관리 모듈(23)에서 처리되는 정보를 살펴보면 다음과 같다.However, since the functions of integration and connection of the function modules 23 to 28 in the system are performed through the information transfer module 22, each function module 23 28 is dependent on the information transfer module 22. Therefore, only the compatibility with the information transmission module 22 can be taken into account when adding, changing, and removing each function module, so that the maintenance of the function module is easy. Each of the function modules 23 - For example, the information processed in the software information management module 23 is as follows.

< 소프트웨어 기본 정보 ><Basic software information>

- 소프트웨어 ID, 소프트웨어 명칭, 개발 부서, 소프트웨어 유형, 개발 개요- Software ID, software name, development department, software type, development outline

< 소프트웨어 서브 모듈 정보 ><Software sub module information>

- 소프트웨어 ID, 서브 모듈 ID, 모듈 명칭, 개발 팀, 모듈 버젼, 언어, 플랫폼 정보, 개발 개요- Software ID, Sub-module ID, Module name, Development team, Module version, Language, Platform information, Development outline

< 소프트웨어 서브 모듈 상세 기술 정보 ><Software sub module detailed technical information>

- 서브 모듈 ID, 개발 OS, 개발 HW, 개발 플랫폼, 개발 언어, 개발 툴, 핵심 기술, 활용 기술, 부가 기술- Sub module ID, development OS, development HW, development platform, development language, development tool, core technology, utilization technology, supplementary technology

< 소프트웨어 개발 인력 현황 정보 ><Status of software development manpower>

- 서브 모듈 ID, 개발 관리자, 설계자, 개발자, 개발자(외주)- Sub-module ID, development manager, designer, developer, developer (outsourcing)

상기 분류된 각 정보에서 각종 ID 필드가 주된 키 값이며 그 외의 필드들도 시스템에서 키 값 역할을 할 수 있다.In the classified information, various ID fields are the main key values, and other fields can serve as key values in the system.

도 3은 본 발명에 따른 소프트웨어 개발 통합 지원 과정을 나타낸 흐름도로써, 소프트웨어 개발 업무 관련자가 본 발명에 따른 소프트웨어 개발 통합 지원 시스템에 접속하여 각자가 필요로 하는 기능 모듈(23~28)을 선택하여 원하는 업무를 수행하거나 정보를 조회하는 과정의 전체 흐름을 도시하고 있다.FIG. 3 is a flowchart illustrating a software development integration support process according to the present invention. Referring to FIG. 3, a software development business person accesses a software development integration support system according to the present invention and selects a function module 23 to 28 It shows the entire flow of the process of performing work or inquiring information.

사용자는 클라이언트(10)를 이용하여 네트워크를 통해 본 발명에 따른 소프트웨어 개발 통합 지원 시스템(즉, 애플리케이션 서버(20))에 접속하고, 로그인 정보(ID, Password)를 입력한다(S200). 사용자 인증 모듈(21)은 상기 입력받은 로그인 정보를 통해 사용자 확인을 하고 사용자에 따른 시스템 사용 권한을 부여한다(S201). 사용자 인증이 정상적으로 이루어지면, 업무 메뉴가 출력(S202)되는데, 사용자는 상기 부여받은 사용권한에 따라 제한적으로 이용할 수 있는 업무 메뉴를 선택하면 그와 관련된 기능 모듈(23~28)이 선택(S203, S204)되어 필요한 서비스를 실행하여 업무를 수행하거나 정보를 조회한다(S205~S210). 다른 기능 모듈(23~28)의 서비스를 실행하고자 하면(S211) 다시 기능 모듈(23~28)을 선택하여 서비스를 실행하도록 한다.The user accesses the software development integration support system (i.e., the application server 20) according to the present invention via the network using the client 10 and inputs login information (ID, Password) (S200). The user authentication module 21 confirms the user through the input login information and grants a system use right according to the user (S201). If the user authentication is normally performed, the task menu is output (S202). If the user selects a task menu that is limited according to the granted use rights, the function module 23-28 associated therewith selects (S203, S204) to execute necessary services to perform tasks or inquire information (S205 to S210). If it is desired to execute the service of the other function modules 23 to 28 (S211), the function modules 23 to 28 are selected again to execute the service.

도 4는 본 발명에 따른 소프트웨어 개발을 일 실시 예로 나타낸 도면이다.4 is a diagram illustrating software development according to an embodiment of the present invention.

도 4를 참조하면, 시스템에서 관리되는 정보가 각 기능 모듈(23~28)에서 발생되는 정보의 상호 전송과 클라이언트(10)로의 정보 전송은 정보 전송 모듈(22)을 거쳐 이루어지게 된다. 전송되는 정보는 정보 전송 모듈(22)을 거치며 일정한 형식을 갖게 되는데, 정보 전송 모듈(22)에서는 각 기능 모듈(23~28)에서 발생된 데이터 필드를 확장 가능한 다중 매트릭스(Matrix) 데이터 구조로 만든다. 이와 같은 과정을 단계적으로 보면 기능 모듈(23~28)들은 타 기능 모듈(23~28)이나 클라이언트(10)에서 요청한 정보 데이터를 읽어 순차적으로 나열하는 방식으로 정보 전송 모듈(22)로 전달하면, 정보 전송 모듈(22)은 전송되는 일련의 데이터를 의미 있는 정보 단위로 잘라 매트릭스 형태로 만든 후, 다른 기능 모듈(23~28)이나 클라이언트(10)로 전송한다. 또한, 둘 이상의 성격이 다른 기능 모듈(23~28)로부터 가공된 정보를 필요로 하는 경우에도 각각 매트릭스를 만드는 과정은 같으며, 각기 만들어진 매트릭스에서 필요한 필드만을 선택한 후 병합하여 새로운 데이터 매트릭스를 만들어 정보를 전송하게 된다. 따라서, 타 기능 모듈(23~28)로부터 정보를 전송받아 처리할 필요가 있는 경우에도 데이터매트릭스로 받아 필요한 필드의 데이터만을 선택하여 활용할 수 있다.Referring to FIG. 4, mutual transmission of information managed in the system by the functional modules 23 to 28 and transmission of information to the client 10 are performed through the information transmission module 22. The information to be transmitted has a certain format through the information transmission module 22. The information transmission module 22 converts the data fields generated in the function modules 23 to 28 into an expandable multi-matrix data structure . If the functional modules 23 to 28 read the information data requested by the other functional modules 23 to 28 or the client 10 and sequentially transmit the information data to the information transmission module 22 in a sequential manner, The information transmission module 22 cuts a series of data to be transmitted into a matrix in the form of a meaningful information unit and then transmits the data to the other function modules 23 to 28 or the client 10. Even if two or more characteristics require processed information from different function modules 23 to 28, the process of creating a matrix is the same, and only a necessary field is selected in each created matrix, and a new data matrix is created by merging . Therefore, even when it is necessary to receive and process information from the other function modules 23 to 28, it is possible to select and use only necessary field data in a data matrix.

도 4에서 흰 화살표는 정보가 전송될 수 있는 방향을 나타내며, 검정 화살표는 데이터의 현재 전달 방향을 나타낸다. 기술지원 관리 모듈(24)에서 필요한 소프트웨어 정보와 자원 정보를 요청하면 소프트웨어 정보 관리 모듈(23)에서 생성한 데이터(123)와 개발 자원 관리 모듈(25)에서 생성한 데이터(125)는 각각 순차적으로 정보 전송모듈(22)로 전달되어 가공과정(선택 → 제거 → 병합)을 거치고, 이렇게 만들어진 다중 매트릭스 데이터 구조의 정보(224)가 기술 지원 관리 모듈(24)로 전달된다.In Fig. 4, a white arrow indicates a direction in which information can be transmitted, and a black arrow indicates a current transmission direction of data. When the technical support management module 24 requests necessary software information and resource information, the data 123 generated by the software information management module 23 and the data 125 generated by the development resource management module 25 are sequentially The information is transmitted to the information transmission module 22 and processed through the processing (selection → removal → merging), and the information 224 of the multi-matrix data structure thus created is transmitted to the technical support management module 24.

도 5는 도 3의 정보 요청에서 정보 제공까지의 과정을 상세히 나타낸 흐름도이다. 도 5를 참조하면, 정보 요청 모듈은 도 2에서 선택된 기능 모듈(23~28)을 말하며, 선택된 정보 제공 모듈은 정보 요청모듈에서 요청된 정보를 제공하는 기능 모듈(23~28)을 의미한다. 여기서, 상기 정보 요청 모듈 또한 정보 제공 모듈이 될 수 있으므로, 선택된 정보 제공 모듈인 기능 모듈(23~28)에는 정보 요청 모듈도 포함된다.FIG. 5 is a detailed flowchart illustrating a process from information request to information provision in FIG. Referring to FIG. 5, the information request module refers to the function modules 23 to 28 selected in FIG. 2, and the selected information providing module refers to function modules 23 to 28 for providing information requested by the information request module. Here, since the information request module can also be an information providing module, the function modules 23 to 28, which are selected information providing modules, include an information request module.

도 3에서 업무에 따른 기능 모듈(23~28)을 선택한 클라이언트가 요구 정보를 입력하여 정보 요청을 한다. 클라이언트의 요구 정보를 전송받은 상기 선택된 기능 모듈(23~28)은 요구 정보에 따른 정보 제공 모듈을 선택하고, 선택된 정보제공 모듈로 필요로 하는 정보에 대한 키/키필드/필드 전송하여 정보 요청을 한다. 상기 선택 된 정보 제공 모듈은 전송된 키/키필드/필드 값으로 정보 검색을 하여, 요청 정보가 존재하는지 확인한다. 요청정보가 존재하면 데이터 필드를 선택하여 데이터를 읽고, 읽혀진 데이터를 정보 전송 모듈(22)로 전송한다. 만약, 요청 정보가 존재하지 않을 경우에는 정보의 부재를 나타내는 데이터를 전송한다. 상기 정보 제공 모듈에서 데이터를 수신한 정보 전송 모듈(22)은 수신 데이터에 데이터가 존재하는지 확인하고, 데이터가 존재하면 데이터를 가공하고, 정보 요청 모듈로 데이터 수신 확인 신호를 전송한다. 데이터 수신을 확인한 정보 요청 모듈은 추가 정보가 필요한지 확인하고, 추가 정보가 필요없는 경우 정보 전송 모듈(22)은 완성된 정보를 정보 요청 모듈로 전송한다. 상기 추가 정보 확인 결과 추가 정보가 필요한 경우에는 정보 요청 모듈은 타정보 제공 모듈에 동일한 방식으로 정보를 요청하고, 상기 타 정보 제공 모듈에서 전송된 데이터를 수신한 정보 전송 모듈(22)은 데이터 가공 후, 추가 정보인가를 확인한 후, 추가 정보인 경우 데이터병합 과정을 통해 기 가공된 데이터에 새로 추가된 정보를 병합시켜 정보를 완성한다. 이렇게 완성된 정보는 정보 요청 모듈로 전송되어 정보를 요청한 해당 클라이언트에 출력된다.In FIG. 3, the client selecting the function module 23-28 according to the task inputs the request information and requests the information. The selected function module 23-28 receiving the request information of the client selects the information providing module according to the request information, transmits the key / key field / field for the information required by the selected information providing module, do. The selected information providing module performs information search using the transmitted key / key field / field value to check whether request information exists. If the request information exists, the data field is selected to read the data, and the read data is transmitted to the information transmission module 22. If there is no request information, data indicating absence of information is transmitted. The information transmission module 22 receiving the data from the information provision module checks whether data exists in the received data, processes the data if data exists, and transmits a data reception acknowledgment signal to the information request module. The information request module confirming the receipt of data checks whether additional information is needed. If additional information is not needed, the information transmission module 22 transmits the completed information to the information request module. If additional information is required as a result of the additional information check, the information request module requests information in the same manner to the other information providing module, and the information transmission module 22, which has received the data transmitted from the other information providing module, After confirming that the information is additional information, if the information is additional information, the newly added information is added to the previously processed data through the data merging process to complete the information. The completed information is sent to the information request module and output to the corresponding client requesting the information.

도 5의 일 실시 예로 개발자가 소프트웨어 개발 과정에서 발생한 문제를 해결하기 위해 기술 지원 관리 모듈(24)을 선택하여 기술 지원을 요청하는 과정을 살펴보면 다음과 같다.5, a process of requesting technical support by selecting a technical support management module 24 in order to solve a problem occurred in a software development process will be described.

기술 지원 관리 모듈(24)은 기술 지원 요청에 필요한 기본 정보는 다른 기능 모듈로부터 읽어 오고, 추가정보는 사용자가 입력한 기술지원 신청서를 통해 요청한다. 기술 지원 관리 모듈(24)은 기술 지원 기본 정보를 위해 소프트웨어 정보 관리모듈(23)과 개발 자원 관리 모듈(25)에 사용자가 소속되어 개발 중인 소프트웨어의 기본 정보, 기술 정보 및 하드웨어/소프트웨어 정보를 요청한다. 정보 요청을 받은 소프트웨어 정보 관리 모듈(23)은 사용자의 소속 팀을 키 값으로 하여 소프트웨어 서브 모듈 정보와 기술 정보를 정보 전송 모듈(22)로 전송하는 것으로 처리를 마친다. 다음은 소프트웨어 서브 모듈 정보를 키 값으로 하여 개발 자원 관리 모듈(25)에 개발소프트웨어가 사용중인 하드웨어/소프트웨어정보를 요청하면 개발 자원 관리 모듈(25)은 해당 정보 검색 후 데이터를 정보 전송 모듈(22)로 전송하는 것으로 처리를 마친다. 두 모듈(23, 25)로부터 넘겨받은 데이터는 정보 전송 모듈(22)에서 처리 과정(선택, 제거, 병합)을 거쳐 요청한 정보로 생성된다.The technical support management module 24 reads the basic information required for the technical support request from the other function module and requests the additional information through the technical support application inputted by the user. The technical support management module 24 requests basic information, technical information, and hardware / software information of the software under development to which the user belongs in the software information management module 23 and the development resource management module 25 for technical support basic information do. The software information management module 23 receives the information request and transmits the software sub-module information and the technical information to the information transmission module 22 with the user's belonging team as a key value. Next, when the software sub module information is a key value and the development resource management module 25 requests the hardware / software information being used by the development software, the development resource management module 25 searches the information and transmits the data to the information transmission module 22 ) To complete the process. Data received from the two modules 23 and 25 are processed by the information transmission module 22, and are generated as requested information.

기술 지원 관리 모듈(24)은 생성된 정보를 읽어 신청서 화면에 보여 주고, 기술 지원 신청자가 입력하는 추가 정보와 함께 기술 지원 신청 입력 데이터로 시스템에 등록된다.The technical support management module 24 reads the generated information, displays it on the application form screen, and registers it in the system with the technical support application input data together with the additional information inputted by the technical support applicant.

따라서, 정보 매트릭스를 이용한 정보 가공(선택 → 제거 → 병합)은 각 모듈별로 독립적으로 이루어질 수 있으며, 두 개 이상의 모듈들로부터 전송받은 데이터로부터 생성된 정보 매트릭스들은 주어진 키 필드 값을 통해 매트릭스를 병합하는 과정에서 각 매트릭스의 원하는 필드(O 표시)를 선택함으로써 필요치 않은 데이터(X 표시)들이 자연 제거되면서 새로운 정보 매트릭스가 만들어진다.Therefore, information processing (selection, removal, and merging) using information matrices can be performed independently for each module, and information matrices generated from data transmitted from two or more modules are merged through a given key field value By selecting the desired field (O display) of each matrix in the process, unnecessary data (X display) are naturally removed and a new information matrix is created.

이렇게 정보 매트릭스 생성이 완료되면, 정보 요청 모듈로는 매트릭스와 매트릭스 정보를 넘겨주어 그로부터 원하는 데이터를 읽어 처리할 수 있도록 해준다. 다차원 매트릭스인 경우 개별 요소에 대한 접근은 숫자와 해당 데이터의 필드 또는 인덱스 명을 조합하여 가능하며 2차원 매트릭스인 경우는 정보 마디를 이용한 숫자만으로가능하다.When the information matrix generation is completed, the information request module passes the matrix and matrix information to read and process the desired data. In the case of a multidimensional matrix, access to individual elements can be achieved by combining numbers and corresponding fields or index names. In the case of a two-dimensional matrix, only numbers using information nodes are possible.

10 : 클라이언트 20 : 애플리케이션 서버
21 : 사용자 인증 모듈 22 : 정보 전송 모듈
23 : 소프트웨어 정보 관리 모듈 24 : 기술 지원 관리 모듈
25 : 개발 자원 관리 모듈 26 : 출하 정보 관리 모듈
27 : 로지스틱스 관리 모듈 28 : 디자인 지원 관리 모듈
30 : 데이터베이스
10: client 20: application server
21: user authentication module 22: information transmission module
23: software information management module 24: technical support management module
25: development resource management module 26: shipping information management module
27: Logistics management module 28: Design support management module
30: Database

Claims (2)

네트워크로 연결된 클라이언트/서버 방식의 소프트웨어 개발 지원 시스템에 있어서, 상기 클라이언트로부터 입력된 로그인 정보를 이용하여 사용자 확인을 하고, 사용자에 따른 시스템 사용 권한을 부여하는 사용자 인증 모듈; 소프트웨어의 개발 업무 단위 별로 세분화되어 기획에서 제품화까지의 전 과정에 대한 정보의 관리와 공유를 제공하며, 다른 기능 모듈과 독립적으로 동작되는 적어도 하나 이상의 기능 모듈; 사용 권한이 부여된 상기 클라이언트의 정보 요청에 응답하여 해당하는 기능 모듈로부터 데이터를 받아 확장 가능한 정보 매트릭스로 생성하고, 정보 요청 시의 데이터 선택 정보에 따라 상기 생성된 정보 매트릭스에 대한선택, 제거 및 병합을 통해 새로운 정보 매트릭스를 생성하여 해당 클라이언트로 전송하며, 상기 기능 모듈을 통합 및 연계시키는 정보 전송 모듈로 이루어진 애플리케이션 서버; 및
상기 애플리케이션 서버로부터 전송되는 소프트웨어 개발 관련 데이터를 저장 관리하는 데이터베이스를 포함하는 것을 특징으로 하는 온라인 아웃소싱 기반의 소프트웨어 개발 및 설계 시스템.
A system for supporting software development of a client / server system connected via a network, comprising: a user authentication module for authenticating a user using login information input from the client and granting a system use right according to a user; At least one functional module that provides management and sharing of information on the entire process from planning to commercialization by subdividing it into software development tasks and operates independently from other functional modules; And generating an expandable information matrix by receiving data from a corresponding function module in response to an information request of the client to which the use right is granted, and selecting, removing and merging the generated information matrix according to data selection information at the time of requesting information An application server including an information transmission module for generating a new information matrix and transmitting the new information matrix to a corresponding client, and integrating and linking the function modules; And
And a database for storing and managing software development-related data transmitted from the application server.
제 1 항에 있어서, 상기 기능 모듈은,
개발 소프트웨어 및 서브 모듈 정보를 관리 및 제공하는 소프트웨어 정보 관리 모듈; 소프트웨어 개발상에 발생되는 기술적인 요청사항이나 문제점에 대한 해당 소프트웨어의 기술정보를 제공하는 기술 지원 관리 모듈;
소프트웨어 개발에 필요한 하드웨어, 소프트웨어에 대한 상세 정보를 관리 및 제공하는 개발 자원 관리 모듈;
개발된 소프트웨어의 출하 과정 또는 제품 테스트 과정에서 발생한 결함 사항, 결함률 및 검사 일정 정보를 관리 및 제공하는 출하 정보 관리 모듈;
개발된 소프트웨어의 제품 매뉴얼 및 상품화와 관련된 로지스틱스 작업 정보를 관리 및 제공하는 로지스틱스 관리 모듈; 및 소프트웨어 개발에 필요한 디자인 요청, 디자인 요청 처리 결과 등의 디자인 지원 정보를 관리 및 제공하는 디자인 지원 관리 모듈을 포함하는 것을 특징으로 하는 온라인 아웃소싱 기반의 소프트웨어 개발 및 설계 시스템.
The information processing apparatus according to claim 1,
A software information management module for managing and providing development software and sub-module information; A technical support management module for providing technical information of a corresponding software to a technical request or problem occurring in the software development;
A development resource management module for managing and providing detailed information on hardware and software necessary for software development;
A shipment information management module for managing and providing defects, defect rates, and inspection schedule information generated in a shipping process or a product testing process of the developed software;
A logistics management module for managing and providing logistics work information related to the product manual of the developed software and merchandising; And a design support management module for managing and providing design support information such as a design request required for software development and a processing result of a design request, and a software development and design system based on an online outsourcing.
KR1020160111478A 2016-08-31 2016-08-31 Software development and design system base on online-outsourcing KR20180024723A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160111478A KR20180024723A (en) 2016-08-31 2016-08-31 Software development and design system base on online-outsourcing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160111478A KR20180024723A (en) 2016-08-31 2016-08-31 Software development and design system base on online-outsourcing

Publications (1)

Publication Number Publication Date
KR20180024723A true KR20180024723A (en) 2018-03-08

Family

ID=61726433

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160111478A KR20180024723A (en) 2016-08-31 2016-08-31 Software development and design system base on online-outsourcing

Country Status (1)

Country Link
KR (1) KR20180024723A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110536017A (en) * 2019-09-03 2019-12-03 中国联合网络通信集团有限公司 Message sending control method, message transmission control device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110536017A (en) * 2019-09-03 2019-12-03 中国联合网络通信集团有限公司 Message sending control method, message transmission control device

Similar Documents

Publication Publication Date Title
US8219431B2 (en) Workflow management system, method and device for managing a workflow including plural hierarchically-classified tasks
US5893906A (en) Managing work in a computing application
US20070250335A1 (en) Workflow applications
US20020156929A1 (en) XML-based system and method for collaborative web-based design and verification of system-on-a-chip
CN102982396A (en) General process modeling framework
CN103927353A (en) Method and device for generating service tables
JP2007328791A (en) Use of database in network-based project schedule management system
US20070245321A1 (en) Computer games localisation
ITMI20130390U1 (en) METHODS AND SYSTEM FOR DYNAMIC ENDPOINT GENERATORS, DETECTION AND MEDIATION (BROKERAGE) OF DYNAMIC REMOTE OBJECTS
US7469217B2 (en) Product toolkit system and method
JP2007328792A (en) Integration of member schedule with project schedule in network based project schedule management system
KR100970851B1 (en) System construction guide system
JP2007328790A (en) Use of schedule editor in network-based project schedule management system
EP3454203A1 (en) Data modelling and flow engine for building automated flows within a cloud based developmental platform
CN113987541A (en) Data access control method and device and electronic equipment
CN116185383A (en) Draggable self-configuration workflow generation method and system
CN105871998A (en) Data displaying method and device
KR20180024723A (en) Software development and design system base on online-outsourcing
CN116664060A (en) Method, system and device for generating expense reimbursement basic data
CN113535574B (en) Automatic generation method, device, equipment and medium for test user data
Matejaš et al. Building a BPM application in an SOA-based legacy environment
Fang et al. Using object oriented analysis design workflow engine for manufacturing industry in IoT
Dixit et al. Integrating facility management functions in building information modeling (BIM): a review of key issues and challenges
KR100508425B1 (en) Integrated support system for software development and method thereof
KR20210026389A (en) Integrated support system for software development andmethod thereof