KR20240068388A - 실무 역량 과제 테스트 환경 구축 방법과 이를 위한 프로그램 및 서버 - Google Patents

실무 역량 과제 테스트 환경 구축 방법과 이를 위한 프로그램 및 서버 Download PDF

Info

Publication number
KR20240068388A
KR20240068388A KR1020220149780A KR20220149780A KR20240068388A KR 20240068388 A KR20240068388 A KR 20240068388A KR 1020220149780 A KR1020220149780 A KR 1020220149780A KR 20220149780 A KR20220149780 A KR 20220149780A KR 20240068388 A KR20240068388 A KR 20240068388A
Authority
KR
South Korea
Prior art keywords
competency
practical
test
scoring
environment
Prior art date
Application number
KR1020220149780A
Other languages
English (en)
Inventor
김재석
박상열
추헌준
오창희
Original Assignee
(주)그렙
Filing date
Publication date
Application filed by (주)그렙 filed Critical (주)그렙
Publication of KR20240068388A publication Critical patent/KR20240068388A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0639Performance analysis of employees; Performance analysis of enterprise or organisation operations
    • G06Q10/06398Performance of employee with respect to a job function
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3692Test management for test results analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3696Methods or tools to render software testable
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation

Abstract

실무 역량 과제 테스트 환경 구축 방법이 개시된다. 본 구축 방법은, 실무 역량 과제 테스트에 응시하는 하나 이상의 응시 단말에서 자동 채점 명령이 트리거되는 경우, 응시자 작성 코드를 수신하는 단계, 수신된 응시자 작성 코드를 응시 단말 각각에 대응하는 채점 컨테이너 및 채점 관리 컨테이너에 볼륨 마운트하는 단계, 응시 단말에서 구성된 환경을 조성하기 위해 채점 관리 컨테이너에서 응시자 작성 코드의 적어도 일부를 실행하는 단계 및 응시자 작성 코드를 채점 코드 기반으로 채점하고, 채점 결과를 생성하는 단계를 포함할 수 있다. 이에 따라, 실무 역량 과제 테스트가 효율적으로 수행될 수 있다.

Description

실무 역량 과제 테스트 환경 구축 방법과 이를 위한 프로그램 및 서버{METHOD FOR MAKING UP TESTING ENVIRONMENT OF PRACTICAL SKILLS COMPETENCY ASSIGNMENT, PROGRAM AND SERVER THEREFOR}
본 발명은 소프트웨어 관련 실무 역량 과제 테스트에서 자동 채점 기능을 제공하는 환경을 구축하는 방법과 이를 위한 프로그램 및 실무 역량 과제 테스트 환경 구축 서버에 관한 것이다.
최근 스마트폰의 보급으로 IT 업계의 시장 규모가 커지면서 프로그래머들에 대한 수요도 지속적으로 증가하고 있다. 그러나 이처럼 증가하는 프로그래머들에 대한 수요에 비해, 프로그래머들의 실무 역량을 전문적으로 평가할 수 있게 한 특화된 서비스가 존재하지 않아 프로그래머들로서는 자신의 역량을 발휘할 수 있는 업체를 찾기 어렵고, 업체로서는 자사에 적합한 프로그래머를 채용하기 어려운 문제점이 있었다.
편리성, 원거리성 및 최근 전염병 유행에 따른 비대면 선호성의 이유로 늘어나는 온라인 평가 수요자에 따라 진보된 평가 공정성이 요구되고 있으며, 만에 하나 일어날지도 모르는 부정행위는 출제자, 응시자의 시험 공정성 훼손과 불편부당의 오해를 야기하므로, 온라인 실무 역량 과제 테스트의 공정성 및 신뢰성을 확보하기 위한 여러 가지 방법들이 제안되고 있다.
아울러, 프로그래머들이 자신들의 코딩 능력을 향상시킴과 아울러, 이러한 프로그래머들의 노력을 업체에서도 용이하게 파악하여 채용에 활용할 수 있게 한 새로운 형태의 서비스, 즉 프로그래머의 전문화된 특성을 충실히 반영할 수 있는 새로운 인력풀에 대한 요청이 필요하다.
한편, 상기와 같은 정보는 본 발명의 이해를 돕기 위한 백그라운드 (background) 정보로서만 제시될 뿐이다. 상기 내용 중 어느 것이라도 본 발명에 관한 종래 기술로서 적용 가능할지 여부에 관해, 어떤 결정도 이루어지지 않았고, 또한 어떤 주장도 이루어지지 않는다.
등록특허공보 제10-2156931호 (등록일 : 2020.09.10.)
본 발명이 해결하고자 하는 일 과제는 소프트웨어 관련 실무 역량 과제 테스트에서 자동 채점이 가능한 응시 환경을 제공하는 데에 있다.
본 발명의 다른 과제는, 응시 환경과 채점 환경을 분리하여 보안 이슈에 선제적으로 대응하는 실무 역량 과제 테스트 환경 구축 방법을 제공하는 데에 있다.
본 발명이 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상술한 기술적 과제를 달성하기 위한 본 발명의 일 실시 예에 따른 실무 역량 과제 테스트 환경 구축 서버에 의해 수행되는 실무 역량 과제 테스트 환경 구축 방법은, 실무 역량 과제 테스트에 응시하는 하나 이상의 응시 단말에서 자동 채점 명령이 트리거되는 경우, 응시자 작성 코드를 수신하는 단계; 상기 수신된 응시자 작성 코드를 상기 응시 단말 각각에 대응하는 채점 컨테이너 및 채점 관리 컨테이너에 볼륨 마운트하는 단계; 상기 응시 단말에서 구성된 환경을 조성하기 위해 상기 채점 관리 컨테이너에서 상기 응시자 작성 코드의 적어도 일부를 실행하는 단계; 및 상기 응시자 작성 코드를 채점 코드 기반으로 채점하고, 채점 결과를 생성하는 단계를 포함할 수 있다.
상기 실무 역량 과제 테스트 환경 구축 방법은, 상기 응시자 작성 코드에 대한 채점 결과를 상기 응시 단말에 제공하는 단계를 더 포함할 수 있다.
상기 응시자 작성 코드의 적어도 일부를 실행하는 단계는, 설치용 스크립트 파일을 실행하여 응시 단말에서 구성된 환경에 필요한 패키지 프로그램을 설치하는 단계; 및 실행용 스크립트 파일을 실행하여 상기 응시 단말에서 구성된 환경을 조성하는 단계를 포함할 수 있다.
상기 채점 결과를 생성하는 단계는, 상기 응시자 작성 코드로부터 수신된 결과 정보에 기초하여, 채점 결과를 생성하는 단계를 포함할 수 있다.
상기 실무 역량 과제 테스트 환경 구축 방법은, 상기 응시자 작성 코드를 수신하는 단계 이전에, 상기 실무 역량 과제 테스트를 위한 에디터 프로그램을 상기 응시 단말에 제공하는 단계를 더 포함할 수 있다.
상기 실무 역량 과제 테스트는, 환경 설정 역량 및 문제 해결 역량을 평가하기 위한 테스트를 포함할 수 있다.
상기 실무 역량 과제 테스트는, 응시자가 입사하고자 하는 기업의 실무 특성에 따라 결정될 수 있다.
또한, 본 발명의 일 실시 예에 따른 실무 역량 과제 테스트 환경 구축 서버는, 통신부; 및 실무 역량 과제 테스트에 응시하는 하나 이상의 응시 단말에서 자동 채점 명령이 트리거되는 경우, 응시자 작성 코드를 상기 통신부를 통해 수신하는 제어부를 포함할 수 있다.
상기 제어부는, 상기 응시 단말 각각에 대응하는 채점 컨테이너 및 채점 관리 컨테이너에 상기 응시자 작성 코드를 볼륨 마운트하고, 상기 응시 단말에서 구성된 환경을 조성하기 위해 상기 채점 관리 컨테이너에서 상기 응시자 작성 코드의 적어도 일부를 실행하며, 상기 응시자 작성 코드를 채점 코드 기반으로 채점하고 채점 결과를 생성하도록 구성될 수 있다.
상기 제어부는, 상기 응시자 작성 코드에 대한 채점 결과를 상기 통신부를 통해 상기 응시 단말에 제공하도록 구성될 수 있다.
상기 제어부는, 상기 응시자 작성 코드의 적어도 일부를 실행할 때, 설치용 스크립트 파일을 실행하여 응시 단말에서 구성된 환경에 필요한 패키지 프로그램을 설치하고, 실행용 스크립트 파일을 실행하여 상기 응시 단말에서 구성된 환경을 조성하도록 구성될 수 있다.
상기 제어부는, 상기 채점 결과를 생성할 때, 상기 응시자 작성 코드로부터 수신된 결과 정보에 기초하여, 채점 결과를 생성하도록 구성될 수 있다.
상기 제어부는, 상기 실무 역량 과제 테스트를 위한 에디터 프로그램을 상기 통신부를 통해 상기 응시 단말에 제공하도록 구성될 수 있다.
상기 실무 역량 과제 테스트는, 환경 설정 역량 및 문제 해결 역량을 평가하기 위한 테스트를 포함할 수 있다.
상기 실무 역량 과제 테스트는, 응시자가 입사하고자 하는 기업의 실무 특성에 따라 결정될 수 있다.
이 외에도, 본 개시를 구현하기 위한 실행하기 위한 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램이 더 제공될 수 있다.
이 외에도, 본 개시를 구현하기 위한 방법을 실행하기 위한 컴퓨터 프로그램을 기록하는 컴퓨터 판독 가능한 기록 매체가 더 제공될 수 있다.
본 발명의 다양한 실시 예에 따르면 아래와 같은 효과가 도출될 수 있다.
먼저, 소프트웨어 관련 실무 역량 과제 테스트에서 자동 채점이 가능한 응시 환경이 제공됨으로써, 테스트가 효율적으로 운영될 수 있으며, 사용자 편의가 제고될 수 있다.
또한, 응시 환경 및 채점 환경이 서로 분리됨으로써, 응시자 작성 코드가 채점 환경에서만 채점됨으로써, 보안 이슈가 선제적으로 대응될 수 있으며, 직무 역량 테스트에 대한 신뢰도가 향상될 수 있다.
본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 일 실시 예에 따른 실무 역량 과제 테스트 환경을 개략적으로 설명하기 위한 도면,
도 2는 본 발명의 일 실시 예에 따른 실무 역량 과제 테스트 환경 구축 서버의 구성을 나타내는 블록도,
도 3은 본 발명의 일 실시 예에 따른 실무 역량 과제 테스트 환경 구축 방법을 나타내는 시퀀스도,
도 4는 본 발명의 일 실시 예에 따른 실무 역량 과제 테스트에 대한 채점 과정을 설명하기 위한 도면,
도 5는 본 발명의 일 실시 예에 따른 채점 코드를 설명하기 위한 도면,
도 6 내지 도 8은 본 발명의 일 실시 예에 따른 응시 환경에 제공되는 에디터를 나타내는 도면들, 그리고,
도 9 및 도 10은 본 발명의 일 실시 예에 따른 실무 역량 과제 테스트를 설명하기 위한 도면들이다.
본 개시 전체에 걸쳐 동일 참조 부호는 동일 구성요소를 지칭한다. 본 개시가 실시예들의 모든 요소들을 설명하는 것은 아니며, 본 개시가 속하는 기술분야에서 일반적인 내용 또는 실시예들 간에 중복되는 내용은 생략한다. 명세서에서 사용되는 '부, 모듈, 부재, 블록'이라는 용어는 소프트웨어 또는 하드웨어로 구현될 수 있으며, 실시예들에 따라 복수의 '부, 모듈, 부재, 블록'이 하나의 구성요소로 구현되거나, 하나의 '부, 모듈, 부재, 블록'이 복수의 구성요소들을 포함하는 것도 가능하다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 직접적으로 연결되어 있는 경우 뿐 아니라, 간접적으로 연결되어 있는 경우를 포함하고, 간접적인 연결은 무선 통신망을 통해 연결되는 것을 포함한다.
또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
명세서 전체에서, 어떤 부재가 다른 부재 "상에" 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.
제 1, 제 2 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위해 사용되는 것으로, 구성요소가 전술된 용어들에 의해 제한되는 것은 아니다.
단수의 표현은 문맥상 명백하게 예외가 있지 않는 한, 복수의 표현을 포함한다.
각 단계들에 있어 식별부호는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 실시될 수 있다.
이하 첨부된 도면들을 참고하여 본 개시의 작용 원리 및 실시예들에 대해 설명한다.
도 1은 본 발명의 일 실시 예에 따른 실무 역량 과제 테스트 환경(1)을 개략적으로 설명하기 위한 도면이다.
실무 역량 과제 테스트 환경(1)은 실무 역량 과제 테스트의 응시자측 응시 환경(TE) 및 응시자 환경(TE)에 대응하여 응시자 작성 코드를 채점하기 위한 채점 환경(SE)을 포함할 수 있다. 본 명세서에서 실무 역량 과제 테스트 환경(1)은 클라이언트-서버 모델인 도커(docker) 기반으로 구현될 수 있다. 도커는 리눅스의 응용프로그램들을 소프트웨어 컨테이너 안에 배치하는 일을 자동화하는 프로젝트일 수 있다.
우선, 응시 환경(SE)은 다양한 시스템 환경 설정 조작을 입력받는 인터페이스 및 다양한 프로그래밍 언어가 입력 가능한 인터페이스 등을 포함하는 에디터 프로그램을 포함할 수 있다. 응시 환경(SE)은 에디터 프로그램을 통해 입력되는 응시자 작성 코드(11)를 포함하는 응시 컨테이너(10)를 포함할 수 있다.
선택적 실시 예로, 응시 환경(SE)은 도커 클라이언트(docker client)로 구현될 수 있으며, 실무 역량 과제 테스트 구축 서버(도 2의 100)에서 운영되는 도커 대몬(daemon)과 통신(가령, 소켓 또는 REST API를 이용)할 수 있다. 응시 컨테이너(10)는 도커 API 를 사용하여 생성, 시작, 중지, 이동, 또는 삭제할 수 있는 이미지의 실행가능한 인스턴스(instance)일 수 있다.
응시 환경(SE)은 작성된 응시자 작성 코드(11)에 대한 소정의 명령(가령, 자동 채점 명령)이 입력되면, 응시자 작성 코드를 복사(Co)하여 채점 환경(SE)에 제공할 수 있다.
채점 환경(SE)은 응시 환경(TE)에 일대일로 대응하며 채점 컨테이너(20) 및 채점 관리 컨테이너(30)를 포함할 수 있다. 채점 환경(SE)은 응시자 작성 코드를 볼륨 마운트하여 이를 채점에 이용할 수 있다. 가령, 채점 환경(SE)의 채점 컨테이너(20) 및 채점 관리 컨테이너(30)에는 응시자 작성 코드(21)가 볼륨 마운트(VM1, VM2)될 수 있다. 여기서, 마운트는 저장 장치에 접근할 수 있는 경로를 디렉토리 구조에 편입시키는 작업일 수 있다.
채점 컨테이너(20) 및 채점 관리 컨테이너(30)는 응시 컨테이너(10)에만 일대일 대응하는 컨테이너들이며, 채점 관리 컨테이너(30)에서 볼륨 마운트된 응시자 작성 코드(31)가 채점 코드(33)에 기반하여 채점될 수 있다. 채점 코드(33)는 채점 관리 코드(35)의 세팅 정보를 설정(SI)할 수 있다.
도 2는 본 발명의 일 실시 예에 따른 실무 역량 과제 테스트 환경 구축 서버(100)의 구성을 나타내는 블록도이다.
실무 역량 과제 테스트 환경 구축 서버(100)는 컨테이너들 및 이미지들 등을 포함하는 도커 오브젝트를 관리할 수 있으며, 채점 환경(SE)을 주로 포함할 수 있다.
실무 역량 과제 테스트 환경 구축 서버(100)는 통신부(110), 입력부(120), 디스플레이(130), 메모리(150) 및 제어부(190)를 포함할 수 있다. 도 2에 도시된 구성요소들은 본 발명의 일 실시 예에 따른 실무 역량 과제 테스트 환경 구축 서버(100)를 구현하는데 있어서 필수적인 것은 아니어서, 본 명세서 상에서 설명되는 실무 역량 과제 테스트 환경 구축 서버(100)는 위에서 열거된 구성요소들 보다 많거나, 또는 적은 구성요소들을 가질 수 있다.
상기 구성요소들 중 통신부(110)는 외부 장치와 통신을 가능하게 하는 하나 이상의 구성 요소를 포함할 수 있으며, 예를 들어, 방송 수신 모듈, 유선통신 모듈, 무선통신 모듈, 근거리 통신 모듈, 위치정보 모듈 중 적어도 하나를 포함할 수 있다. 또한, 통신부(110)는 소프트웨어적인 통신을 수행하기 위한 모듈도 포함할 수 있다.
입력부(120)는 영상 정보(또는 신호), 오디오 정보(또는 신호), 데이터, 또는 사용자로부터 입력되는 정보의 입력을 위한 것으로서, 적어도 하나의 카메라, 적어도 하나의 마이크로폰 및 사용자 입력부 중 적어도 하나를 포함할 수 있다. 입력부(120)에서 수집한 음성 데이터나 이미지 데이터는 분석되어 사용자의 제어명령으로 처리될 수 있다.
디스플레이(130)는 본 장치에서 처리되는 정보를 표시(출력)한다. 예를 들어, 디스플레이(130)는 본 장치에서 구동되는 응용 프로그램(일 예로, 어플리케이션)의 실행화면 정보, 또는 이러한 실행화면 정보에 따른 UI(User Interface), GUI(Graphic User Interface) 정보를 표시할 수 있다.
메모리(150)는 본 장치의 다양한 기능을 지원하는 데이터와, 제어부(190)의 동작을 위한 프로그램을 저장할 수 있고, 입/출력되는 데이터들(예를 들어, 음악 파일, 정지영상, 동영상 등)을 저장할 있고, 본 장치에서 구동되는 다수의 응용 프로그램(application program 또는 애플리케이션(application)), 본 장치의 동작을 위한 데이터들, 명령어들을 저장할 수 있다. 이러한 응용 프로그램 중 적어도 일부는, 무선 통신을 통해 외부 서버로부터 다운로드 될 수 있다.
이러한, 메모리(150)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), SSD 타입(Solid State Disk type), SDD 타입(Silicon Disk Drive type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(random access memory; RAM), SRAM(static random access memory), 롬(read-only memory; ROM), EEPROM(electrically erasable programmable read-only memory), PROM(programmable read-only memory), 자기 메모리, 자기 디스크 및 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 또한, 메모리는 본 장치와는 분리되어 있으나, 유선 또는 무선으로 연결된 데이터베이스가 될 수도 있다.
제어부(190)는 본 장치 내의 구성요소들의 동작을 제어하기 위한 알고리즘 또는 알고리즘을 재현한 프로그램에 대한 데이터를 저장하는 메모리, 및 메모리에 저장된 데이터를 이용하여 전술한 동작을 수행하는 적어도 하나의 프로세서(미도시)로 구현될 수 있다. 이때, 메모리와 프로세서는 각각 별개의 칩으로 구현될 수 있다. 또는, 메모리와 프로세서는 단일 칩으로 구현될 수도 있다.
또한, 제어부(190)는 이하의 도 3 내지 도 10에서 설명되는 본 개시에 따른 다양한 실시 예들을 본 장치 상에서 구현하기 위하여, 위에서 살펴본 구성요소들을 중 어느 하나 또는 복수를 조합하여 제어할 수 있다.
도 2에 도시된 구성 요소들의 성능에 대응하여 적어도 하나의 구성요소가 추가되거나 삭제될 수 있다. 또한, 구성 요소들의 상호 위치는 시스템의 성능 또는 구조에 대응하여 변경될 수 있다는 것은 당해 기술 분야에서 통상의 지식을 가진 자에게 용이하게 이해될 것이다.
한편, 도 2에서 도시된 각각의 구성요소는 소프트웨어 및/또는 Field Programmable Gate Array(FPGA) 및 주문형 반도체(ASIC, Application Specific Integrated Circuit)와 같은 하드웨어 구성요소를 의미한다.
도 3은 본 발명의 일 실시 예에 따른 실무 역량 과제 테스트 환경 구축 서버의 테스트 환경 구축 방법을 설명하기 위한 시퀀스도이다. 도 4는 본 발명의 일 실시 예에 따른 실무 역량 과제 테스트에 대한 채점 과정을 설명하기 위한 도면이다.
실무 역량 과제 테스트 환경 구축 서버(100)의 제어부(190)는 실무 역량 과제 테스트에 응시하는 하나 이상의 응시 단말에서 자동 채점 명령이 트리거되는 경우, 통신부(110)를 통해 응시자 작성 코드를 수신할 수 있다(S310, 응시자 작성 코드 수신 단계).
선택적 실시 예로, 실무 역량 과제 테스트는 개발 직군이 공통적으로 알고 있어야 하는 내용으로 구성되어, 직무 별 문제 세분화의 필요성을 낮추는 문제를 포함할 수 있다.
선택적 실시 예로, 실무 역량 과제 테스트는 응시자가 입사하고자 하는 기업의 실무 특성에 따라 결정될 수 있으며, 환경 설정 역량 및 문제 해결 역량을 평가하기 위한 테스트를 포함할 수 있으나, 실시 예가 이에 한정되는 것은 아니다.
응시 단말은 응시 환경(TE)이 구성되는 단말이며, 다양한 역량을 테스트하기 위한 환경이 구현될 수 있으며, 소프트웨어와 관련된 코딩 테스트가 수행될 수 있으며, 응시자 작성 코드에 대한 자동 채점 기능을 포함할 수 있다. 이에 따라, 응시자는 설정된 환경 정보 및 작성된 소스 코드를 실시간으로 채점할 수 있다.
응시 단말은 소프트웨어 에디터에 배치된 '채점하기' 명령이 선택되면, 자동 채점을 위한 명령을 실무 역량 과제 테스트 환경 구축 서버(100)로 전송할 수 있다.
응시 단말은 컴퓨터, 서버 장치 및 휴대용 단말기를 모두 포함하거나, 또는 어느 하나의 형태가 될 수 있다. 여기에서, 상기 컴퓨터는 예를 들어, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(desktop), 랩톱(laptop), 태블릿 PC, 슬레이트 PC 등을 포함할 수 있다. 상기 서버 장치는 외부 장치와 통신을 수행하여 정보를 처리하는 서버로써, 애플리케이션 서버, 컴퓨팅 서버, 데이터베이스 서버, 파일 서버, 게임 서버, 메일 서버, 프록시 서버 및 웹 서버 등을 포함할 수 있다. 상기 휴대용 단말기는 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, 각종 통신 단말 및 스마트 폰(Smart Phone) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치와 시계, 안경, 머리 착용형 장치(head-mounted-device(HMD) 등과 같은 웨어러블 장치를 포함할 수 있다.
제어부(190)는, S310 단계(응시자 작성 코드 수신 단계) 이전에, 실무 역량 과제 테스트를 위한 에디터 프로그램을 상기 응시 단말할 수 있다. 에디터 프로그램은 도 6 내지 도8의 설명에서 자세히 설명하기로 한다.
제어부(190)는, S310 단계(응시자 작성 코드 수신 단계) 이후, 수신된 응시자 작성 코드(310)를 응시 단말 각각에 대응하는 채점 컨테이너 및 채점 관리 컨테이너에 볼륨 마운트할 수 있다(S320, 볼륨 마운트 단계).
제어부(190)는 각각의 응시 환경(TE)에 대응하는 채점 환경(SE)을 일대일로 매핑하여 관리할 수 있으며, 응시 환경(TE)에서 채점이 수행되지 않아 보안에 효과적일 수 있다. 채점 공간을 안전한 서버측에 두어 공정한 채점이 수행될 수 있다.
선택적 또는 부가적 실시 예로, 제어부(190)는 '채점하기' 명령이 최초 선택(가령, 클릭을 통해)되는 경우에 응시 컨테이너에 대응하는 채점 컨테이너 및 채점 관리 컨테이너를 생성할 수 있다.
제어부(190)는, S320 단계(볼륨 마운트 단계) 이후, 응시 단말에서 구성된 환경을 조성하기 위해 채점 관리 컨테이너(30)에서 응시자 작성 코드의 적어도 일부를 실행할 수 있다(S330, 코드 일부 실행 단계, 도 4의 S1).
구체적으로, 제어부(190)는 설치용 스크립트 파일(가령, setup.sh)을 실행하여 응시 단말에서 구성된 환경에 필요한 패키지 프로그램을 설치하고, 실행용 스크립트 파일(가령, run.sh)을 실행하여 응시 단말에서 구성된 환경을 조성할 수 있다.
제어부(190)는 응시 단말에서 구성된 환경이 정확하게 조성된 경우, 이를 채점 점수에 반영할 수 있다. 제어부(190)는 응시자 작성 코드를 채점 코드 기반으로 채점하고, 채점 결과를 생성할 수 있다(S340).
구체적으로, 제어부(190)는 evaluate.lock timeout 만큼 대기 후, evaluation.py 모듈을 실행하여, 응시자 작성 코드를 채점 코드(33) 기반으로 채점 실행하여(S2), 채점 결과(420, 가령, score.json)를 생성할 수 있다.
채점 관리 코드(35)는 응시자 작성 코드 실행(S1)을 통해 생성된 로그(가령, output.log) 및 채점 결과(420, 가령, score.json)를 수신하여, 로그로 전송할 수 있다(430, firebase realtime database).
제어부(190)는 채점 관리 코드(35)를 통해 채점 결과를 전송하며(440), 응시 환경에 최종 결과를 전송할 수 있다(450). 즉, 제어부(190)는 상기 응시자 작성 코드에 대한 채점 결과를 상기 응시 단말에 비동기 방식으로 제공할 수 있다. 이에 따라, 응시자는 실시간으로 작성 코드를 자동 채점할 수 있다. 또한, 제어부(190)는 응시자 작성 코드로부터 수신된 결과 정보에 기초하여, 채점 결과를 생성할 수 있다.
도 5는 본 발명의 일 실시 예에 따른 채점 코드를 설명하기 위한 도면이며, 도 5에 도시된 채점 코드는 전체 채점 코드의 일부일 수 있다.
제어부(190)는 채점 코드를 파이썬 decorator 문법을 통한 TC(test case) 간 의존성 관리 및 문제 이름, 배점을 정의할 수 있다.
제어부(190)는 로컬 서버가 정상인지, 데이터 전송이 가능한지, 배포 서버와의 통신이 정상인지 등을 채점 코드에 포함할 수 있다.
채점 환경(SE)은 출제자에게 채점 프레임워크를 제공할 수 있는데, 채점 프레임워크는 출제자가 정해진 형식에 따라 필요한 테스트 케이스 및 로직을 구현하는 뼈대를 제공할 수 있다. 채점 프레임워크의 장점은 출제자가 채점 코드를 하나하나 작성하는 것이 아니라, 정해진 형식에 따라 필요한 테스트 케이스 및 로직을 구현하는 데에 있으며, 채점 과정에서 누락될 수 있는 작은 요소를 사전에 발견할 수 있는 프로세스적 근거를 마련할 수 있다. 이에, 출제자는 테스트 이름 및 점수, 채점에 필요한 로직만 설계하여, 사용자 편의가 제고될 수 있다.
도 6 내지 도 8은 본 발명의 일 실시 예에 따른 응시 환경에 제공되는 에디터를 나타내는 도면들이다.
에디터는 프로젝트 각각을 관리할 수 있는 메뉴창과 코드를 작성하는 코드 작성란(도 7의 710), 모든 명령 표시, 파일로 이동, 파일에서 찾기, 디버깅 시작, 터미널 설정/해제 등을 세팅하는 아이템이 배치되는 화면(620), 채점하기 버튼이 사용자 조작에 의해 선택된 후 채점 상황을 나타내는 란(810)을 디스플레이할 수 있다.
에디터는 문제 풀이할 때, 사전 세팅 환경을 출제자가 자유롭게 구성할 수 있으며, 신입 또는 경력에 따라 테스트 난이도가 다르게 설정될 수 있으며, 제어부(190)에 의해 설정될 수 있다.
응시 단말은 에디터에서 제공하는 채점하기 버튼을 통해 응시한 문제에 대한 채점 결과를 실시간을 획득할 수 있다.
도 9 및 도 10은 본 발명의 일 실시 예에 따른 실무 역량 과제 테스트를 설명하기 위한 도면들이며, 도 9는 환경 설정 역량을 평가하기 위한 내용이며, 도 10은 문제 해결 역량을 평가하기 위한 내용이다.
도 9를 참고하면, 제어부(190)는 환경 설정 역량 요청(가령, 서버 세팅 완료?)을 설정할 수 있고, 환경 설정 역량 응답(가령, 서버 세팅 완료)을 설정하 수 있다.
도 10을 참고하면, 제어부(190)는 제1 문제 해결 역량 요청(가령, 오리지널 URL 을 단축 URL 로 변경, 930)을 설정할 수 잇고, 제1 문제 해결 역량 응답(가령, 오리지널 URL 을 단축 URL 로 변경, 940)을 설정할 수 있다.
또한, 제어부(190)는 제2 문제 해결 역량 요청(가령, 모든 URL 조회)을 설정할 수 잇고, 제2 문제 해결 역량 응답(가령, 모든 URL 조회)을 설정할 수 있다. 다만, 실무 역량 과제 테스트는 실시 예에 따라 다양하게 구현될 수 있다.
선택적 실시 예로, 응시 단말이 위치한 공간에는 응시자를 촬영하는 카메라가 추가적으로 배치될 수 있으며, 해당 카메라는 실무 역량 과제 테스트가 시작하면 턴온되어 응시자 및 응시자 주변의 일정 공간을 촬영하여 실무 역량 과제 테스트 환경 구축 서버(100)로 제공될 수 있다.
테스트 환경 구축 서버(100)은 사전에 확보한 응시자의 촬영 영상에서 눈, 코, 인중, 입의 수직 거리를 벡터로 구성하여 저장하며, 테스트가 시작된 후의 응시자의 눈, 코, 인중, 입의 수직 거리를 벡터로 구성한 후, 두 벡터 간의 코사인 유사도에 기초하여, 사용자 인증을 수행할 수 있다. 구체적으로, 두 벡터 간의 코사인 유사도가 0.85 이상인 경우, 사용자 인증을 통과할 수 있으나, 실시 예가 이에 한정되는 것은 아니다.
한편, 개시된 실시예들은 컴퓨터에 의해 실행 가능한 명령어를 저장하는 기록매체의 형태로 구현될 수 있다. 명령어는 프로그램 코드의 형태로 저장될 수 있으며, 프로세서에 의해 실행되었을 때, 프로그램 모듈을 생성하여 개시된 실시예들의 동작을 수행할 수 있다. 기록매체는 컴퓨터로 읽을 수 있는 기록매체로 구현될 수 있다.
컴퓨터가 읽을 수 있는 기록매체로는 컴퓨터에 의하여 해독될 수 있는 명령어가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래쉬 메모리, 광 데이터 저장장치 등이 있을 수 있다.
이상에서와 같이 첨부된 도면을 참조하여 개시된 실시예들을 설명하였다. 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자는 본 개시의 기술적 사상이나 필수적인 특징을 변경하지 않고도, 개시된 실시예들과 다른 형태로 본 개시가 실시될 수 있음을 이해할 것이다. 개시된 실시예들은 예시적인 것이며, 한정적으로 해석되어서는 안 된다.
1 : 실무 역량 과제 테스트 환경,
100 : 실무 역량 과제 테스트 환경 구축 서버.

Claims (15)

  1. 실무 역량 과제 테스트 환경 구축 서버에 의해 수행되는 실무 역량 과제 테스트 환경 구축 방법으로서,
    실무 역량 과제 테스트에 응시하는 하나 이상의 응시 단말에서 자동 채점 명령이 트리거되는 경우, 응시자 작성 코드를 수신하는 단계;
    상기 수신된 응시자 작성 코드를 상기 응시 단말 각각에 대응하는 채점 컨테이너 및 채점 관리 컨테이너에 볼륨 마운트하는 단계;
    상기 응시 단말에서 구성된 환경을 조성하기 위해 상기 채점 관리 컨테이너에서 상기 응시자 작성 코드의 적어도 일부를 실행하는 단계; 및
    상기 응시자 작성 코드를 채점 코드 기반으로 채점하고, 채점 결과를 생성하는 단계를 포함하는, 실무 역량 과제 테스트 환경 구축 방법.
  2. 제1항에 있어서,
    상기 응시자 작성 코드에 대한 채점 결과를 상기 응시 단말에 제공하는 단계를 더 포함하는, 실무 역량 과제 테스트 환경 구축 방법.
  3. 제2항에 있어서,
    상기 응시자 작성 코드의 적어도 일부를 실행하는 단계는,
    설치용 스크립트 파일을 실행하여 응시 단말에서 구성된 환경에 필요한 패키지 프로그램을 설치하는 단계; 및
    실행용 스크립트 파일을 실행하여 상기 응시 단말에서 구성된 환경을 조성하는 단계를 포함하는, 실무 역량 과제 테스트 환경 구축 방법.
  4. 제3항에 있어서,
    상기 채점 결과를 생성하는 단계는,
    상기 응시자 작성 코드로부터 수신된 결과 정보에 기초하여, 채점 결과를 생성하는 단계를 포함하는, 실무 역량 과제 테스트 환경 구축 방법.
  5. 제4항에 있어서,
    상기 응시자 작성 코드를 수신하는 단계 이전에,
    상기 실무 역량 과제 테스트를 위한 에디터 프로그램을 상기 응시 단말에 제공하는 단계를 더 포함하는, 실무 역량 과제 테스트 환경 구축 방법.
  6. 제5항에 있어서,
    상기 실무 역량 과제 테스트는,
    환경 설정 역량 및 문제 해결 역량을 평가하기 위한 테스트를 포함하는, 실무 역량 과제 테스트 환경 구축 방법.
  7. 제6항에 있어서,
    상기 실무 역량 과제 테스트는,
    응시자가 입사하고자 하는 기업의 실무 특성에 따라 결정되는, 실무 역량 과제 테스트 환경 구축 방법.
  8. 하드웨어인 컴퓨터와 결합되어, 제1항 또는 제7항의 방법을 실행하기 위해 컴퓨터 판독 가능한 매체에 저장된, 실무 역량 과제 테스트 환경 구축 프로그램.
  9. 실무 역량 과제 테스트 환경 구축 서버로서,
    통신부; 및
    실무 역량 과제 테스트에 응시하는 하나 이상의 응시 단말에서 자동 채점 명령이 트리거되는 경우, 응시자 작성 코드를 상기 통신부를 통해 수신하는 제어부를 포함하며,
    상기 제어부는,
    상기 응시 단말 각각에 대응하는 채점 컨테이너 및 채점 관리 컨테이너에 상기 응시자 작성 코드를 볼륨 마운트하고, 상기 응시 단말에서 구성된 환경을 조성하기 위해 상기 채점 관리 컨테이너에서 상기 응시자 작성 코드의 적어도 일부를 실행하며, 상기 응시자 작성 코드를 채점 코드 기반으로 채점하고 채점 결과를 생성하도록 구성되는, 실무 역량 과제 테스트 환경 구축 서버.
  10. 제9항에 있어서,
    상기 제어부는,
    상기 응시자 작성 코드에 대한 채점 결과를 상기 통신부를 통해 상기 응시 단말에 제공하도록 구성되는, 실무 역량 과제 테스트 환경 구축 서버.
  11. 제10항에 있어서,
    상기 제어부는,
    상기 응시자 작성 코드의 적어도 일부를 실행할 때, 설치용 스크립트 파일을 실행하여 응시 단말에서 구성된 환경에 필요한 패키지 프로그램을 설치하고, 실행용 스크립트 파일을 실행하여 상기 응시 단말에서 구성된 환경을 조성하도록 구성되는, 실무 역량 과제 테스트 환경 구축 서버.
  12. 제11항에 있어서,
    상기 제어부는,
    상기 채점 결과를 생성할 때, 상기 응시자 작성 코드로부터 수신된 결과 정보에 기초하여, 채점 결과를 생성하도록 구성되는, 실무 역량 과제 테스트 환경 구축 서버.
  13. 제12항에 있어서,
    상기 제어부는,
    상기 실무 역량 과제 테스트를 위한 에디터 프로그램을 상기 통신부를 통해 상기 응시 단말에 제공하도록 구성되는, 실무 역량 과제 테스트 환경 구축 서버.
  14. 제13항에 있어서,
    상기 실무 역량 과제 테스트는,
    환경 설정 역량 및 문제 해결 역량을 평가하기 위한 테스트를 포함하는, 실무 역량 과제 테스트 환경 구축 서버.
  15. 제14항에 있어서,
    상기 실무 역량 과제 테스트는,
    응시자가 입사하고자 하는 기업의 실무 특성에 따라 결정되는, 실무 역량 과제 테스트 환경 구축 서버.
KR1020220149780A 2022-11-10 실무 역량 과제 테스트 환경 구축 방법과 이를 위한 프로그램 및 서버 KR20240068388A (ko)

Publications (1)

Publication Number Publication Date
KR20240068388A true KR20240068388A (ko) 2024-05-17

Family

ID=

Similar Documents

Publication Publication Date Title
EP3821330B1 (en) Electronic device and method for generating short cut of quick command
US10942713B2 (en) Computer-vision based execution of graphical user interface (GUI) application actions
RU2439670C2 (ru) Система и способ для осуществления управления удаленными компьютерами
Billi et al. A unified methodology for the evaluation of accessibility and usability of mobile applications
US20140082511A1 (en) Method and system for emulating desktop software applications in a mobile communication network
US11288064B1 (en) Robotic process automation for interactive documentation
US20220138470A1 (en) Techniques for Presentation Analysis Based on Audience Feedback, Reactions, and Gestures
US20220141532A1 (en) Techniques for rich interaction in remote live presentation and accurate suggestion for rehearsal through audience video analysis
CN109783388A (zh) Ui自动化测试方法、装置及电子设备
CN113094613B (zh) 在线编程系统、在线编程方法及相关产品
US10275341B2 (en) Mobile application usability testing
CN113505082B (zh) 应用程序测试方法及装置
CN115065652B (zh) 消息回复方法、装置、存储介质及计算机设备
CN109918314A (zh) 移动终端上的测试方法及装置、电子设备、存储介质
US11650834B1 (en) Leveraging digital footprints in software development life cycle
CN104991857B (zh) 跟踪调试方法及装置
CN113220308A (zh) 用于部署及提供服务的方法、电子设备和存储介质
CN113709243A (zh) 设备远程控制方法及装置、电子设备和存储介质
KR20240068388A (ko) 실무 역량 과제 테스트 환경 구축 방법과 이를 위한 프로그램 및 서버
Ospanova et al. Mobile devices and portative classroom based on Raspberry Pi computers
KR20210029731A (ko) 모바일 환경에서의 외국어 학습 관리 시스템
US11308258B1 (en) Textbook content reorganization based on classroom analytics
US20230393871A1 (en) Method and system of intelligently generating help documentation
Moskalenko Approach for testing Augmented reality applications
Yan et al. Testing of mobile applications. A review of industry practices