敎育學碩士學位論文 웹서비스를활용한문제은행시스템 Item Pool System using Web Service 2005年 2月 仁荷大學校敎育大學院 情報 컴퓨터 敎育專攻 張恩美
敎育學碩士學位論文 웹서비스를활용한문제은행시스템 Item Pool System using Web Service 2005年 2月 指導敎授 趙根植 이論文을敎育學碩士學位論文으로提出함 仁荷大學校敎育大學院 情報 컴퓨터 敎育專攻 張恩美
이論文을張恩美의碩士學位論文으로認定함 2005年 2月 主審 ( 印 ) 副審 ( 印 ) 委員 ( 印 )
요 약 기존온라인학습평가시스템은문제제공에관련된문제은행과학습자 에관한사항을관리하는형태를가지고있어인증을거친학습자들에게 평가문항을제시하며학습자별로평가부분을관리한다. 그러나여러구 축되어있는학습평가시스템의문제은행들은 HTML이나데이터베이스로 자료가구축되어있어타학습평가시스템에서재사용하기가어려우며검 색하기도어렵다. 그렇기때문에교사들이학습평가시스템을구축하기 위해서는기존의문제은행들을사용하지못하고동일한문제들로구성된 문제은행을새롭게구축해야하는많은부담을갖게되며유사한시스템들 사이에문제들이중복되어자원낭비또한유발하게된다. 이런문제점을 개선하기위해서본논문은웹서비스를이용하여통합적인문제를생성, 검색, 활용할수있는웹서비스기반의문제은행시스템의설계및구현 을하였다. 본논문에서는문제은행을하나의시스템으로학습평가시스템과별도 로분리하였다. 학습평가시스템을구축하고자하는교사들에게특정과 목에대한문제은행을구축하여문제들을웹서비스로제공한다. 문제은 행은문제등록, 검색, 수정, 삭제등문제에관한사항만을담당하고학습 평가시스템은이런문제은행에서제공하는서비스들을활용하여학습자의 평가에활용하며학습평가결과에대한관리부분만을전담한다. 이런 구성은여러온라인학습평가시스템에서문제은행웹서비스를통하여동 일한형태의다양한문제들을사용자정보에맞추어제공할수있다는장 점을가지게된다.
목 차 요약 ⅰ Abstract ⅱ 목차 ⅲ 제 1 장서론 1 1.1 연구의필요성및목적 1 1.2 연구의내용및방법 2 제 2 장이론적배경 5 2.1 웹서비스의고찰 5 2.2.NET 의고찰 10 2.3 ASP.NET 의특징 13 2.4 기존문제은행시스템의고찰 15 제 3 장문제은행시스템설계 17 3.1 시스템설계의기본방향 17 3.2 시스템구현환경 18 3.3 문제은행시스템의설계 19 3.4 데이터베이스의설계 22 제 4 장문제은행시스템구현 24 4.1 교과과정등록시스템구현 24 4.2 문제등록시스템의구현 26 4.3 웹서비스의구현 29 4.4 실험및결과분석 35 제 5 장결론및향후연구 41 참고문헌 43
제 1 장서론 1.1 연구의필요성및목적 빠른통신망과멀티미디어기술을기반으로한인터넷사용의보편화는 우리시대를정보화사회로만들었다. 인터넷을통한자료검색과정보취 득은가장기본적인생활로자리잡았으며전자상거래와멀티미디어자료 를활용한다양한형태의활용이현재활발하게이루어지고있다. 이런현 상은우리교육현장에도많은변화를가져왔다. 학습의형태가오프라인 학습에서온라인학습으로다양하게변화하고있는것이다. 교육평가부 분은교육과정중에서학습자의능력과교육의결과를측정하는가장핵 심이되는분야지만교사들에게는많은부담과업무를주는부분이다. 그 러다보니중요성만큼실질적으로이루어지기가힘들었다[1]. 이런학습 평가부분을온라인평가시스템으로구성하면한정된시간에학습과학습 평가를모두해야하는교사들의부담을어느정도해소할수있다. 교사 들은수업시간에웹으로학습평가를한자료를바탕으로수업을할수있어시간절약과많은학습정보를학생들에게더전달할수있는기회가된다. 그러나학습평가시스템을구축하기위해서는교사들의많은노력과시 간을투자해야한다. 기존의문제은행을사용하지못하고동일한문제들 로구성된문제은행을새롭게구축해야하는많은부담을갖게되며유사한시스템들사이에문제들이중복되어자원낭비또한유발하게된다. 이런문제점들을보완하기위해서본논문은웹서비스(Web Service) 를
활용하였다. 웹서비스는기존의분산컴퓨팅시스템과달리웹에적용을 시킬수있다. 많은기존분산컴퓨팅기술은자신의통신프로토콜을갖 고있으나웹서비스의네트워크프로토콜은이미널리사용되고있는월 드와이드웹에존재한다. 그래서새로운애플리케이션은웹서비스를사 용할수있는곳이면가능하다. 웹서비스는인터넷과유사한추상화수 준으로독립되어있는애플리케이션과다른애플리케이션을통합하는형태 로볼수있다. 이런부분을적용시켜하나의학습평가시스템으로구성 되어있던문제은행부분과학습평가시스템부분을분리시켰다. 개별학 습평가시스템은학습자에대한평가와결과관리부분만을담당하고문 제은행시스템은학습자에대한평가를할수있는문제만을담당하도록 하였다. 이두부분이서로다른시스템환경에서구현이되어도하나의 시스템과같이사용하기위해서웹서비스기술을적용시키었다. 본연구는다음과같이구성된다.2장에서는 1장의서론에이어본연구에서 제안한방법을적용할수있는관련기술을살펴본후본연구와관련된학습 평가시스템을분석한다. 3장에서는본연구에서구현할문제은행시스템과 데이터베이스를설계한다.4장에서는 3장의설계를바탕으로문제은행시스 템을구현하고실험한후 5 장에서는결론및향후연구를제시한다. 1.2 연구의내용및방법 1) 웹서비스와문제은행 웹서비스에대한논의를통해서문제은행시스템을구축하는데에웹 서비스의활용의필요성을살펴보도록한다. 또한기존문제은행시스템에 서갖고있는자료의공유와확장성의한계를살펴보고웹서비스를활용
한문제은행시스템이갖는장점을설명하고자한다. 2) 문제은행시스템의설계내용및방법 본문제은행시스템의설계에서이루어지는과정은문항의형태분석을 통하여데이터베이스테이블을설계하였다. 그리고문제의교육과정을입 력할수있는테이블을설계하였고교육과정요소와문제사이의상호연 관성을갖도록설계하였다. 그리고개별학습평가시스템에서사용할수 있도록문제에관련된웹서비스모듈을설계하였다. 설계방법은크게문제은행시스템과개별학습평가시스템두부분으로나누어설계하여야하나본논문에서는주안점인문제은행시스템만을설계하였다. 문제은행시스템에서는웹사이트제공부분과웹서비스부분으로설계 한다. 웹사이트부분은웹사이트에서수행할수있는관리자영역과 문제등록에관련된부분을구현하기위한설계를수행하며웹서비스부분 은개별학습평가시스템에서문제은행시스템의데이터베이스에직접연 결하지않고문제를제공할수있도록설계를하였다. 3) 구현내용및방법 문제은행시스템을이용하여교육과정의정보를입력하고입력된교육과정요소에맞추어문항을생성하고웹서비스를통해생성된문항을공유함으로써문제들을제공받는여러학습평가시스템에서는제공받은문제를학습자에게재가공하여제공할수있도록구현하였다.
[ 그림 1-1] 시스템구현내용 구현방법은 Visual Studio ASP.NET을이용하여문제은행시스템에서 제공하는웹서비스와문제은행시스템웹사이트를구축하고문제은행은 MS SQL 2000 Server 를이용하여데이터베이스로생성한다.
제 2 장이론적배경 2.1 웹서비스의고찰 1) 웹서비스의정의 현재웹서비스에대한정의는발표기관마다매우다양하다. 우선 W3C(World Wide Web Consortium) 에서는 하나의 URI(Uniform Resources Identifier) 에의해정의된소프트웨어애플리케이션으로, XML 구조에의해애플리케이션인터페이스및결합의정의, 서술, 발견이가능 해지고, 인터넷기반의프로토콜을경유한 XML기반의메시지를사용하는 다른소프트웨어애플리케이션과직접적인상호운영이가능하도록지원해 주는것" 으로정의하였고, IDC 에서는 웹서비스아키텍처는인터넷프로 토콜(IP), SOAP, WSDL등을포함한공개적인접속표준과독자적으로기 술된구성요소에의해서다이내믹한구성요소간의연결성및상호운영을 가능하게하는표준화된접근방식 으로정의하였다. 그리고 Barland에서 는 웹서비스는인터넷상에서표준화된기술을사용하여운영되고발견될 수있는비즈니스프로세스 라고하였고 Gartner 에서는 웹서비스는 e- 비즈니스관련표준을기반으로하고있으며, 인터넷을통해제공되는비 즈니스로직을갖는소프트웨어컴포넌트, Aankee group 에서는 분산된 애플리케이션을구축하기위한개발툴, 전체애플리케이션또는애플리 케이션의조립을위한구성요소를전달하는소프트웨어로서의 이라고각각다양한정의를제시하였다[2]. ASP 모델 발표기관에따른웹서비스정의를보면기술적인부분과상업적인측면 에서접근하는것을알수있다. 기술적인부분을살펴보면웹서비스는
인터넷상에서표준화된기술을사용하여정의된소프트웨어애플리케이션 이지만상업적인측면에서의웹서비스는소프트웨어기술을통해기업들 이다양한비즈니스를발견하여운영할수있게해줌으로써웹서비스자 체를하나의비즈니스로직으로받아들이고있다. 이런관점들을통합하여일반적인정의를하자면웹서비스란산업표준 프로토콜의집합으로모사된포괄적인단어이며실행되는플랫폼에상관없 이애플리케이션간의상호운용성을용이하게해주는표준화된소프트웨 어기술로서필요한서비스를발견하고제공하여다양한작업을가능하게 해주는것이다. 웹서비스의대표적인특징은다음과같다. 첫째, 플랫폼에독립적이다. 이는유연한(loosely coupled) 소프트웨어 구조를갖는것으로서비스공급자와수요자가새로운플랫폼을도입하거 나특정플랫폼에구애되지아니함을뜻한다. 둘째, 장치나위치에독립적이다. PC, PDA, 핸드폰, 노트북등다양한유 무선장치에서웹서비스를통해어디서나서비스를제공받을수있는것 을말한다. 셋째, 동적인기능을갖는다. 서비스제공자에게다양한기능을찾아실 시간으로서비스를받는것이가능하며서비스제공자와제공을받는고객 의역할이고정되어있지않는쌍방향서비스를제공하는방식이며필요한 기능과서비스제공자를고객이자유롭게선택함으로써비용을절감할수 있으며비즈니스모델이변경될때편의성을제공한다. 넷째, 기존시스템에적용이가능하다. 이는기존에투자되고생산된 IT 애플리케이션및인프라등기존의시스템에웹서비스프로세서를적 용시키는가능한것을말한다. 기존의처리방식을외부에서원하는사람
들이사용할수있도록웹서비스프로세스를포함하기만하면시스템의 변경없이사용이가능한것을말한다 [3]. 2) 웹서비스를위한요소기술 웹서비스는자신의정보및제공할서비스정보, 그리고이를이용할 수있는방법등에대한정보를 WSDL 파일에작성하고이를 UDDI 레지 스트리에등록해놓는다. 이때등록되는개체나서비스는 UUID에기반한 고유 ID 를부여받게된다. 그러면특정서비스를받고자하는서비스요청 자는요구되는서비스에대한메시지를작성한후 UDDI 레지스트리에서 분류및식별체계와같은여러검색조건을통해검색해찾게된다. 그리 고해당서비스를이용하기위한 WSDL 파일을받게되고이정보를이용 하여서비스제공자와의연결을통해서비스를제공받게되는데그실행 결과값만을 XML 문서형태로받게된다. 이런웹서비스의이용을위한 요소기술들은아래와같다. (1) XML(eXtensible Markup Language) : 1996년에 W3C(World Wide Web Consortium) 에서제안한것으로현재도계속다양한표준들이 제정되고있다. 이런 XML은웹에서데이터를사용하기위한표준이 되는범용적인언어로다양한애플리케이션으로부터구조화된데이터 를처리하고표현하는데이용되어웹서비스의가장기본이되는요소 이다. (2) SOAP(Simple Object Access Protocol) : 웹에서구조화되고형 (type) 이있는정보를교환하는 XML기반의프로토콜로서업계의표준 이되어가고있다. 개방된인프라스트럭처(infrastructure) 를기반으로
한풍부하고자동화된웹서비스를대량의데이터를전송할때사용이 용이한메시지전송과적은양의데이터를전송할때사용하는 RPC 호출에대한방법을모두지원한다. (3) WSDL(Web Services Description Language) : 웹서비스인터페이 스에대한기술언어이다. 서버에서제공되는서비스를표현하는 XML 포맷으로새로운웹서비스를공개할때서버가제공하는서비스와각 서비스에대한오퍼레이션집합을식별하는파일이 WSDL 파일이다. WSDL 은서버와클라이언트상호요구사항을기록하여올바른포맷으 로기술된 SOAP 메시지를처리하여서비스가실행되도록한다. 이를 구성하는요소는 Types, Message, Operation, Port Type, Binding, Port, Service 로구성되어있다. (4) UDDI(Universal description, discovery and integration) : 서버가 제공하는서비스를등록하여클라이언트에서원하는서비스를찾을수 있도록해주는정보의저장소이다. 제공하는웹서비스를검색하여다 른곳에서이용할수있도록자동화하기원한다면 UDDI에등록해야 한다. UDDI 는공개적으로접근과검색, 프로그래밍이가능한공개된 레지스트리의역할을하는것으로일종의검색엔진과유사하다. UDDI 의이용으로 XML 기반의웹서비스로제공하는각회사들은서비스를 공개하여서로의서비스들을이용할수있도록하고있다. 아래 [ 그림 2-1] 은위에서기술한웹서비스요소기술들이어떻게구현 되는지를나타낸다.
[ 그림 2-1] 웹서비스요소기술구현
2.2.NET 의고찰 1).NET 의등장과플랫폼 MS.NET의중심에는 XML 웹서비스가존재하고있다. 마이크로소프트 는향후소프트웨어산업의중요키워드가애플리케이션간의통합그리고 포스트 PC라고전망하였고이러한요구사항을만족시켜줄수있는것이 바로 XML 웹서비스기술이라고정의하였다그래서.NET의핵심으로 XML 웹서비스를포함하게된것이다 [ 그림 2-2] NET 플랫폼의구조.NET 플랫폼은 [ 그림 2-2] 와같이 4가지주된요소로구성이되어있 다..NET 플랫폼의구성요소를살펴보면 PC, PDA, 핸드폰, 노트북등다 양한유형의장치들이클라이언트로존재한다. 이런장치들을통해웹서
비스에접근하여작업하거나정보를제공받는다. 두번째구성요소로서버 가있는데.NET 서버들은 XML 구조를지원하여 XML 웹서비스를사용 하는시스템과응용프로그램들사이의통합을가능하게만들며주요서버 제품군으로는 Application Center, BizTalk Server, SQL Server, Commerce Server, Content Management Server, Exchange Server, Host Integration Server 등이있다. 세번째로개발도구가있는데, 이개 발도구는개발자들이 Visual Studio.NET 과.NET프레임워크를이용하여 쉽고빠르게웹서비스를구축할수있으며.NET 프레임워크에서제공되 는 CLR(Common Language Runtime) 을이용하여자신이원하는언어 (VB.NET, C#, VC++.NET 등) 로애플리케이션을개발할수있게한다. 마지막구성요소로써 XML 웹서비스를들수있는데개발자가자신만의 서비스를구축하는것이외에모든이들에게공통적으로사용될수있거나 일반적인서비스들을마이크로소프트가제공하겠다는것이다 [4]. 2).NET 의프레임워크.NET 프레임워크는실제애플리케이션이나서비스들이동작하는환경을 말한다..NET 프레임워크는.NET 응용프로그램의실행을위한언어독 립적기반구조이며구현및배포의생산성, 효율성, 단순성을증대시킨 새로운플랫폼이다. 그리고인터넷과의통합을지향하는응용프로그램개 발플랫폼이자구현에필요한방대한클래스라이브러리이기도하다.
[ 그림 2-3].NET 프레임워크의구조 [ 그림 2-3] 은.NET 프레임워크의구조를나타낸것이다..NET 프레임 워크에서가장중요한부분이 CLR 이다. CLR 은가비지컬렉션, 타입체크, 보안체크등의작업을지원하게되는데이런기능들은자바환경에서자 바가상머신의역할과비슷하다. 하지만자바가상머신이자바언어만지 원하고있는것에비해 CLR 은다양한언어를지원하고있다. 물론자바 머신은다양한플랫폼위에올라갈수있지만현재까지.NET은단지윈도 우플랫폼에서만동작이가능하다..NET 환경에서작성된프로그램을컴 파일하게되면곧바로네이티브코드가생성되는것이아니라 CLR에서해 석가능한형태의코드 MSIL(Microsoft Intermediate Language) 로컴파 일되어생성된다. 이코드는코드와데이터뿐만아니라 CLR에서관리할 수있는정보를포함하는메타데이터도같이들어있어 CLR은수행시이 MSIL 코드를분석하여클래스를로드하고네이티브코드를생성하며, 보안 을적용하는등의동작을통해서프로그램을동작시킨다[4]. 다음.NET 기본클래스라이브러리는언어에관계없이.NET 응용프로그램을보다
효율적이고신속하게구현할수있는다양한클래스의집합을말한다..NET 기본클래스라이브러리의상위레벨에는데이터엑세스관련클래 스와 XML 관련클래스들의집합이위치하고있는데 ADO.NET이라불리 는이새로운데이터액세스클래스들은기존의 ADO를더욱발전시킨새 로운형태의데이터액세스기술을구현한것으로특히 XML가밀접하게 통합되어있다. 2.3 ASP.NET 의특징 ASP.NET 은이벤트기반프로그래밍모델을통해체계적인프로그래밍 구조를제공한다. 성해낼수있다. 이를통해매우이해하기쉬운체계적인프로그램을생 웹폼등수많은서버컨트롤들을제공해주어보다많 은기능을가진웹사이트를코드의군더더기없이구축할수있도록하였 고컨트롤들을프로그래밍으로쉽게제어할수있기에직관적인프로그래 밍을제작할수있게되었다. 그리고언어독립적인플랫폼을제공한다. C# 이나 Visual Basic 등과같은어떠한.NET 언어로 ASP.NET 페이지를 만들수있다. 이들언어로만들어진웹페이지들은 CLR이지원되는그 어떠한플랫폼에서도구동이가능하다. 이것은기존에프로그래밍방법과 매우다르다. 새로운방법이제시될때마다처음부터다시배워야하는불 편함을효과적으로개선시켜프로그래머의부담을개선하였다. ASP.NET 은또한코드비하인드라는것을제공한다. 프로그래밍코드와 HTML 컨 텐트가혼합된방식이아닌컨텐트와코드의분리된방식이제공되며컴파 일언어를사용하여페이지가작성되고, 컴파일되어실행시메모리에올 라가동작하기에매우좋은성능을가지게되며가비지컬렉터에의해개
체들의관리가이루어지기에메모리누수와같은원인으로서버가다운되 는일이최소화된다. 그외에도클라이언트장치들을지원하는장점을가 지고있다. ASP.NET의실행을살펴보면우선클라이언트는원하는 aspx 화일을 호출하게되고서버는이파일( 정확하게확장자) 과연결되어있는 DLL에 게처리를요청한다. ASP.NET은이파일을받아파싱작업을하게되고 작업을마친다음에는컴파일단계를거친다. 컴파일이된후 MSIL과메타 데이타가만들어지고이는 Assembly IL 로생성된다. 이는어셈블리캐시 에저장되고이파일을원하는클라이언트의요청이들어오면메모리에적 제되어수행되어진다 [6].
2.4 기존문제은행시스템의고찰 새로운문제를만드는것은다양한아이디어를제시하는것과마찬가지 로많은시간과노력의투자가요구된다. 이렇게어렵게만들어진다양하 고좋은문제를많은사람들과공유하고더좋은문제를재생산할수있 있도록한곳에모아놓아저장할수있도록해놓은것을문제은행 (Item Pool) 이라고한다. 이런문제은행을활용한기존의시스템들이많이있는데크게문제제공 형태와실시간평가형태와단계별평가형태로나눌수있다. 우선문제제공형태는일반적으로사용되고있는방식으로교사가학생 들에게문제와자료를워드나텍스트형태로제공하는전통적인방식이다. 이방식은관리자인교사가사용하기쉽게복잡한시스템을구축할필요 가없기에현재도많이사용되고있다. 그러나문제를제공한다는단순한 기능만을가지고있어서학습자가평가후평가결과를확인할수있는기능이없기때문에활용의측면에서질적으로가치가떨어질수밖에없다. 두번째실시간평가형태는웹에서주로행해지고있는평가의형태이다. 데이터베이스에저장되어있는문제은행을활용하여실시간모의고사를실 시하고평가결과를알려주는방식이다. 이러한방식은난이도별로문제를 풀어보고정답및결과를실시간으로알려주기때문에학습자는본인의학 습능력을파악하기용이하다. 일반교사들이구축하기에는어렵기때문에 유료로운영하는사설교육단체에서현재많이운영하고있다. 마지막단 계별평가형태는학습평가가단계별로구성되어하위단계를통과하지 못하면다음단계의평가를수행할수없도록되어있다. 이런방식은 대부분요즘제시되고있는문제은행에서볼수있다. 단계별평가는본인
의학습단계를파악할수있으며부족한부분이나더높은단계를제시할 수있는장점을갖고있다. 이상의문제은행시스템들을분석한결과 3가지형태의대부분의시스 템들은단일서버형태로서교수 학습자가단일서버에접속하여문제를출 제하고푸는형태로만제공되고있다. 그리고웹기반의문제은행시스템 은문항단위로관리되는시스템과시험지단위로관리되는시스템으로두 부분으로나누어져있다. 단일서버형태의문제은행시스템은다른문제 은행시스템과의문제공유에문제점을보이며시험지단위로관리되는시 스템은 PDF나 GIF등의형태로문제가제공되어지기때문에문제를재사 용하거나재가공하여사용할수없는문제점을가지고있다. 이런문제점 을극복하기위해문제은행시스템과평가시스템을분리하고문제은행시 스템은웹서비스를제공하는단일시스템으로만들어평가시스템으로의 문제들을서비스하도록만드는것이다. 이것은문제의공유문제나재사용 에많은도움이될것이다.
제 3 장문제은행시스템의설계 3.1 시스템설계의기본방향 기존의제시되어진많은웹기반의학습평가시스템은단독으로구성 되어있어학습자들의평가결과와문제은행을교사가모두관리를하는형 태를가지고있다. 이에교사개개인이학습평가시스템을구축한다는것 은많은시간과노력이소요가되며여러교사학습평가용시스템에서보 유하고있는다양한문제들을타학습평가시스템간에공유하기가어려 워동일한문제들을각기다른학습평가시스템에입력해야하는자원의 낭비가유발된다. 그리고기존에입력되어있는다양하고유용한문제들을 재사용하기가쉽지않아학습자들에게더나은학습평가기회를제공하지 못하는문제점이있다. 이러한점을보완하기위하여본논문에서는아래 와같은설계방향을설정하였다. 첫째, 다수의교사학습평가용시스템에서하나의과목별문제은행으로 부터문제를제공받을수있도록문제은행과학습을평가하는부분을독 립적인시스템으로구성한다. 둘째, 한정보, 서로분리된문제은행시스템과개별학습평가시스템간의원활 즉문제정보를전달을위해서서로다른환경에서도쉽게사용 이가능한웹서비스를사용한다. 셋째, 문제은행에등록되어있는문제들은문제은행시스템의사용자인 교사들이직접관리하여오류와수정이가능하도록설계한다.
3.2 시스템의구현환경 본연구에서는문제은행시스템의서버를운영하기위하여 Windows 2000 Server 를채택하였으며, 웹서버는 MS Windows 2000 Server 전 용웹서버인 IIS 를포함하고있다. 그리고웹응용프로그램의구성요소로 서데이터의조작과함께문제은행시스템과개별학습평가시스템간의 문제전달을위한웹서비스를구현하기위해 MS Visual Studio ASP.NET 을개발도구로이용하여시스템을구축하였다. 문제은행이제공 하는웹서비스는다른개발도구를사용하여제작한학습평가시스템에 서도구축이가능하다. 마지막으로문제정보및교사정보등을저장한 데이터베이스서버로는 MS SQL Server 2000 을이용하였다. 전체구현 환경은아래 [ 표 3-1] 로정리하였다. [ 표 3-1] 시스템의구현환경 구분운영체제웹서버 DBMS 개발도구저작언어이미지웹브라우저
3.3 문제은행시스템의설계 문제은행시스템은크게두가지로웹사이트, 웹서비스모듈로나누었 다. 웹사이트모듈은다시관리자모듈과문제모듈로나누어진다. 관리 자모듈은문제은행시스템전반에대한관리통제를할수있도록하였으 며등록한교사의문제은행시스템이용을위해승인활동을할수있도록 구성을하였다. 문제모듈은승인된교사들에의해강의교과목의교과과 정에관한등록, 조회, 수정, 삭제등을할수있으며문제에대한부분또 한등록, 조회, 수정, 삭제등을할수있다. 그리고웹서비스모듈은개별학습평가시스템에서원하는문제를조 건에맞도록제공할수있는웹서비스및웹사이트에서작업을하는문 제와교과과정처리부분을개별적으로구축하는개별학습평가시스템에 서도적용하여사용가능할수있게하는웹서비스를제공할수있도록 구성하였다. 다음 [ 그림 3.1] 은문제은행시스템의전체적인구성요소를 나타낸것이다. [ 그림 3-1] 문제은행시스템의전체구성요소
1) (1) 웹사이트 관리자모듈 관리자는문제은행시스템의전반적인관리모듈로교사정보와전체적 인데이터베이스를관리할수있다. 교사가교과과정과문제정보에대해 서다룰수있는권한에대한승인작업을부여할수있도록되어있다. (2). 문제모듈 문제은행시스템의사용승인을받은교사는웹을통하여문제은행의실 질적인데이터인교과과정과문제를등록수정삭제할수있도록되어있 다. 출제하고자하는문제는미리입력을해놓은교과과정을선택한후 등록이가능하며문제에따라텍스트자료와이미지자료를등록할수 있도록되어있다. 문제/ 교과과정에대한등록구성은 [ 그림 3-2] 와같다. [ 그림 3-2] 문제/ 교과과정등록구성도
2) 웹서비스 본논문에서가장중요한부분인웹서비스는교사들이직접운영하는 개별학습평가시스템에서유용하게사용될수있는서비스이다. 문제은행시스템에접속하지않고교사가구축하는개별학습평가시스 템에서교과과정/ 문제에관한조회, 등록, 삭제, 수정에관한모든사항을 자체적으로구축할수있는서비스를제공하는부분이다. XML로표준화 된 SOAP, WSDL을사용하는문제은행시스템의웹서비스는다른언어나 환경으로구축된개별학습평가시스템에서사용이가능하므로학습평가 시스템에서는문제은행시스템에등록되어있는교사정보를문제은행시 스템에보내고원하는서비스를요청하면직접적인 DB의연결없이원하 는데이터를서비스받을수있다. 이런동작은많은교사의개별학습 평가시스템에서환경의제약없이문제를공유하며사용이가능하다. 문 제은행시스템과개별학습평가시스템이어떤식으로서비스전달이이 루어지는지아래 [ 그림 3-3] 으로표현하였다. [ 그림 3-3] 문제은행시스템과개별학습평가시스템의서비스전달
1 학습평가시스템에서교과과정조회요청을받음 2 3 4 5 6 7 8 학습평가시스템으로교과과정조회에대한전달 학습평가시스템에서문제자료요청을받음 학습평가시스템으로문제자료에대한자료전달 학습평가시스템에서교과과정/ 문제등록, 수정, 삭제를함 학습평가시스템에서요청받은웹서비스에대한자료처리요구 학습평가시스템에서요청받은웹서비스에대한자료처리결과 학습평가시스템에서학습자 DB의자료검색과학습결과자료갱신 3.4 데이터베이스의설계 본논문의데이터베이스설계는문제은행시스템의데이터베이스를아래 와같이설계한다. 우선문제은행시스템을사용하는교사정보저장을위한테이블 User 는다음[ 표3-2] 와같다. [ 표 3-2] 교사정보테이블의구성 필드이름데이터형식설명 리스트목록번호 교사 ID 교사이름 교사비밀번호 교사소속학교 교사연락처 비승인(0) 교사(1) 관리자(2)
문제를구성하는교과과정정보저장을위한테이블 tcurri 은다음 [ 표 3-3] 과같이구성하였다. [ 표 3-3] 교과과정정보테이블의구성 필드이름데이터형식설명 교과과정목록번호 해당학년 해당학기 대단원 소단원 작성자( 교사번호) 문제은행시스템의핵심은문제저장테이블 munjebank 는다음 [ 표 3-4] 와같이구성하였다. [ 표 3-4] 문제저장테이블의구성 필드이름 데이터형식 설명문제목록번호문제문항지문내용지문그림예제 1 예제 2 예제 3 예제 4 예제 5 문제정답문제풀이문제수준교과과정 작성자
제 4 장문제은행시스템의구현 3 장의설계를기본으로이번장에서는교과목으로는국사과목을선정 하여구체적인문제은행시스템으로구현하였다. 다음 [ 그림 4-1] 은문 제은행시스템승인후교사가볼수있는화면이다. [ 그림 4-1] 국사문제은행시스템의첫화면 4.1 교과과정등록시스템의구현 문제등록의기본이되는교과과정의조회, 수정, 삭제등을담당하는영 역은아래 [ 그림 4-2] 이다.
[ 그림 4-2] 교과과정조회, 수정, 삭제 이부분에서는교사들이현재등록되어있는교과과정을한눈에볼수 있으며오타나잘못된점이발견되었을때는교사본인이입력해놓은 교과과정에한해서수정버튼을눌러변경이가능하며삭제또한가능하다. 다음에살펴볼부분은교과과정을등록하는부분이다. 학년, 학기입 력은라디오버튼으로손쉽게설정할수있으며, 대단원과소단원을모두 입력한후 교과과정입력 버튼을클릭하면교사가입력한교과과정정 보가등록이된다. 동일한교과과정이입력이되면경고메시지를출력 한다.
[ 그림 4-3] 교과과정등록화면 4.2 문제등록시스템의구현 기등록된문제들을살펴보고조회, 수정, 삭제할수있는영역으로교사 들은본인이작성문제에대해서수정과삭제의권한을갖게된다. 아래 [ 그림 4-4] 는문제조회에관련한부분을보여주고있다.
[ 그림 4-4] 문제조회화면 문제를등록하기위해서는우선등록되어있는해당교과과정을찾아야 한다. 해당교과과정이없을경우는앞에서설명한교과과정영역에들 어가서등록을한다. 문제등록첫화면은아래 [ 그림 4-5] 와같이나오
는데원하는교과과정에있는 다음 버튼을누르면 [ 그림 4-6] 의입력화 면이나온다. 입력화면에서는저장할문제와지문, 문제에포함된이미지 들을입력할수있으며문제에해당하는보기는수학능력평가기준에맞추 어 5 개의항목으로표현할수있도록구성하였다. [ 그림 4-5] 교과과정선택화면 [ 그림 4-6] 문제입력화면
4.3 웹서비스의구현 지금까지는문제은행시스템자체에서제공하는웹사이트에서교과과 정과문제를취급하는시스템을보았다. 문제은행시스템자체만아니라 교사학습평가용시스템에서도문제은행시스템의데이터베이스에접근하지않고위사항들을구현할수있도록제공하는웹서비스메소드를살펴보겠다. 웹서비스로구현한웹메소드중교과과정을조회하는메소드를아래와같이예제로제시한다. 교과과정조회
외부학습평가시스템에서필요한웹서비스를등록하여웹서비스에 등록되어있는웹메소드들을호출하면원하는결과를 XML 데이터로받 을수있다. 본논문에서제시하는교사학습평가용시스템에서국사문 제은행시스템웹서비스에서제공하는웹메소드 getcurriinfo() 를호출하 면국사문제은행시스템웹서비스는데이터베이스에접근하여교과과정 정보를받아 dataset이라는형태로호출한시스템으로다시반환을해주 는형태를나타내고있다. 이때웹메소드를사용하는시스템에서는웹메 소드의내부처리과정을알필요도없으며알수도없다. 웹메소드의항목을제공해주는것을.NET에서는시각적으로웹메소 드를아래 [ 그림 4-7] 과같이제공하여준다. [ 그림 4-7] getcurriinfo 웹메소드화면
[ 그림 4-8] getcurriinfo 웹메소드를실행한결과화면 위에서살펴본 getcurriinfo는인자값이없는웹메소드형태를가지고 있었으나아래 [ 그림 4-9] 의 insertcurriinfo는교과과정정보를입력하는 것으로서매개변수들을갖고있다.
[ 그림 4-9] insertcurriinfo 웹메소드화면 [ 그림 4-9] 에서입력한정보가무사히입력이되었다면 [ 그림 4-10] 과 같은 true값을가지는정보가반환되며이상이있는경우는 false를반환 하여웹서비스를사용하는학습평가시스템에서는성공여부를판단할 수있다. [ 그림 4-10] insertcurriinfo 웹메소드결과화면
문제은행시스템에서제공하는웹서비스들은 getcurriinfo와 insertcurriinfo 외에도많은메소드들을제공한다. 이런웹메소드들은어 느시스템에서사용이가능하며 [ 표 4-1] 과 [ 표 4-2] 는본문제은행시 스템에서제공하는웹메소드들과매개변수그리고설명을보여준다. [ 표 4-1] 문제은행시스템에서제공하는교과과정관련웹서비스 웹메소드명 매개변수 설명 교과과정번호 교과 교사아이디교사비밀번호 과정삭제 교과과정번호학년학기대단원소단원교사아이디교사비밀번호학년학기대단원소단원교사아이디교사비밀번호없음 교과과정수정교과과정입력교과과정조회
[ 표 4-2] 문제은행시스템에서제공하는문제관련웹서비스( 계속) 웹메소드명매개변수설명 문제번호교사아이디교사비밀번호문제번호문제 문제삭제 지문 그림보기1 보기2 보기3 보기4 보기5 정답풀이난이도교과과정번호교사아이디교사비밀번호없음문제번호교사아이디교사비밀번호교과과정번호랜덤으로받아올문제수교사아이디교사비밀번호 문제수정문제조회특정문제조회평가용문제조회
[ 표 4-2] 문제은행시스템에서제공하는문제관련웹서비스 웹메소드명 매개변수 설명 문제 지문 그림 보기1 보기2 보기3 보기 4 보기 5 문제등록 정답풀이난이도교과과정번호교사아이디교사비밀번호 4.4 실험및결과분석 본장에서는다수의교사들이특정단원의문제들을본논문에서제시한 문제은행시스템을사용하는경우와비사용하는경우에서나온결과를비 교하여출제문제의중복과유사정도알아보고평가를하도록하겠다. 실험의기본적인조건은아래 [ 표 4-3] 과같은특정단원으로제한을 한다. 그리고출제교사수는 4명으로제한하였고문제수는교사 1인당 대단원에서총 15 문제를출제도하도록하였다.
[ 표 4-3] 실험을위한특정단원 과목명대단원명소단원명문제수 중학국사 고조선의성장 한민족의기원과선사문화 고조선의성립과발전 여러나라의발전 총 15문제 1) 문제은행시스템비사용조건의문제출제 교사 4 명에게 [ 표 4-3] 을제시하여문제를각자개별적으로제출하도록 하였다. 제출된문제는각교사들이개별적으로구축한학습평가시스템 에등록된문제로가정하였다. 제출된문제를분석한결과문제의소단원 별문제수는아래 [ 표 4-4] 와같다. 결과를보면출제교사들은소단원 별로문제수를일정하게출제하지않음을알수있다. [ 표 4-4] 소단원별출제문제수 소단원명 교사 1 교사 2 교사 3 교사 4 총 한민족의기원과선사문화 5 4 4 4 17(37.7%) 고조선의성립과발전 5 5 6 5 21(46.6%) 여러나라의발전 5 6 5 6 22(48.8%) 다음은각교사들이제출한문제의중복성과유사성을비교해보았다. 문제와보기가동일한경우는문제가중복된다고보았으며문제만동일하 고보기는다르게출제된경우는문제가유사성이있다고설정하여중복과 유사를갖고있는문항수의정도를정리하였다. 다음 [ 표 4-5] 는위설 정을토대로문제를조사하여중복과유사성정도를나타낸표이다.
[ 표 4-5] 문제은행시스템비사용시중복성과유사성정도 소단원명 2문제 3문제 4문제총중복유사중복유사중복유사중복유사 한민족의기원과선사문화 1 1 0 1 1 0 2 2 고조선의성립과발전 2 1 1 2 0 0 3 3 여러나라의발전 2 3 1 1 0 0 3 4 5 5 2 4 1 0 8 9 위표를분석한결과총 60문제중 2문제씩중복되는경우는 5건있 었으며 3문제씩중복된경우는 2 건, 4문제이상중복되는경우는 1건이 존재했다. 유사성을갖고있는문제는중복된문제보다 1건정도많은 9건 을보여주고있다. 2) 문제은행시스템사용조건의문제출제 이절에서는앞절에서와같이교사 4 명에게 [ 표 4-3] 을제시하여문제 를각자개별적으로제출하도록하였다. 단, 문제를제출시본논문에서 제시하고구현한문제은행시스템의웹사이트에접속하여제출하도록하 였다. 제출된문제를분석한결과문제의소단원별문제수는 [ 표 4-4] 과같은결과가나타났다. 그리고다음은앞절에서문제의중복과유사성을조사한방법과동일하 게출제문제를분석한결과표이다.
[ 표 4-6] 문제은행시스템사용시중복성과유사성정도 소단원명 2문제 3문제 4문제총중복유사중복유사중복유사중복유사 한민족의기원과선사문화 1 1 0 2 0 0 1 3 고조선의성립과발전 0 3 0 2 0 0 0 5 여러나라의발전 0 4 0 1 0 0 0 5 1 8 0 5 0 0 1 13 위표를분석한결과총 60문제중 2문제씩중복되는경우는 1건있 었을뿐중복된경우가없었으며유사성을갖고있는문제는 13건으로중 복되는문제에비해서많은건수를나타내고있다. 3) 결과분석 이절에서는분석한결과를바탕으로본논문에서제시한문제은행시스 템의평가를한다. 제출된문제를분석한결과문제의소단원별문제수는 [ 표 4-4] 의결 과를 [ 그림 4-11] 와같이도표로나타내보았다. 7 6 5 4 3 2 교사 1 교사 2 교사 3 교사 4 1 0 한민족의기원과선사문화 고조선의성립과발전 여러나라의발전 [ 그림 4-11] 소단원별출제문제수도표
앞도표의결과로각단원별로동일한문제수를제출해도소단원별로 출제문제수가다르다는것을알수있다. 이는문제를추출할때소단원 별로등록되어있는문제수에비례에서처리되어야함을알수있다. 2.5 2 1.5 1 한민족의기원과선사문화고조선의성립과발전여러나라의발전 0.5 0 비적용적용비적용적용비적용적용 2 문제 3 문제 4 문제 [ 그림 4-12] 중복된문제수도표 [ 그림 4-12] 는문제은행시스템을사용하지않았을경우와적용했을 경우출제문제가얼마나중복이되는지한눈에알아볼수있도록도표 로작성해보았다. 시스템을비적용했을경우 2문제중복이 5 건, 3문제 중복이 2 건, 4문제중복이 1건으로총 8 건의중복이발생이되었다. 반면 에본논문에서제시한문제은행시스템을사용했을경우에는 2문제중 복이 1 건만발생을했다. 이결과를토대로개별문제은행시스템을사용 했을때보다본연구에서제시한문제은행시스템이문제의중복을상당 량제거를했음을알수있다.
4.5 4 3.5 3 2.5 2 1.5 1 0.5 0 비적용적용비적용적용비적용 2 문제 3 문제 4 문제 한민족의기원과선사문화고조선의성립과발전여러나라의발전 [ 그림 4-13] 유사한문제수도표 [ 그림 4-13] 은문제은행시스템을적용했을때와비적용했을때유사 한문제로출제된문제수를도표로작성해보았다. 시스템을비적용했 을경우 2문제가유사한경우가 5 건, 3문제가유사한경우가 4 건이었다. 그리고문제은행시스템을사용한경우는 2문제가유사한경우가 8 건, 3문 제가유사한경우는 5건으로시스템을비적용했을때보다소폭증가하였 다. 이는중복된문제를문제은행시스템을사용하면서수정하면서생긴 결과임을알수있다. 실험의내용을전체적으로평가한결과를보면문제은행시스템을사용 하면개별적으로구축한문제은행에비해문제들의중복을상당수제거할 수있음을알수있다. 그리고동일한내용의여러유형문제들이만들어 져학습자에게다양한문제들을제공할수있는이점을보인다고할수있 다.
제 5 장결론및향후연구 현재온라인상에서접할수있는많은문제은행시스템은하나의메인 서버를기준으로독립된환경에서구축되어져있다. 이와같은시스템은 학습자들에게일관된문제양식을제공하여학습평가를하고있으며피드 백으로서비스를하고있다. 이런이유로다양하고수준있는문제를접하 기어려우며, 각각다른환경에서구현되고설계되어진시스템으로인해 문제의공유가쉽지않고재사용성이많이부족하다. 이러한연구배경을기초로하여, 본논문에서는기존분산컴퓨팅시스 템과는다르게웹에적용하기쉬운웹서비스를이용하여문제를관리하고 문제를제공하는문제은행시스템을별도로구축하였다. 개별평가시스템 에서는이런문제은행시스템에서제공하는웹서비스의도움을받아문제를추출하고재가공하여온라인으로학습자의학습평가를가능하도록하였다. 본논문에서설계및구현된문제은행시스템에서는다음과같은효과를얻을수있었다. 첫째, 특정프로토콜을기반으로하여동작하는분산처리시스템과는달 리웹서비스는 네트워크프로토콜상에서동작할수있다. 와같은일반적인 이런장점을활용하여구축한 문제은행시스템은타환경에서개발된개별학습평가시스템에서도쉽게 접근이가능하며문제에관련된서비스들을손쉽게제공할수있다. 둘째, 평가시스템과분리된공동으로관리하는문제은행시스템으로인 해중복된문제를크게감소시킬수있었으며다양한유형을갖는문제들 이증가하였다. 셋째, 복잡한문제은행시스템의구축없이간단한평가시스템만을구축 하여다양한형태로서비스받은문제를재가공하여학습자에게제공할수
있게되었다. 하지만위와같은결과를얻을수있었던반면에다음과같은향후연구과제가필요하다. 학습자의평가결과가문제은행시스템에반영되어문제의난이도를조 절할수있는연구가필요하며 4장의실험결과에서나타난소단원별 제출문제수와비례하여문제들을추출할수있는방안이추가연구해야 할것이다.
참고문헌 [1] 한희섭, XML 기반문제은행시스템(IDB) 의설계및구현, 경인교 육대학교석사학위논문, 2003. [2] 김완, ASP.NET 을이용한웹사이트구축에관한연구, 연세대학 교공학대학원석사학위논문, 2003. [3] 정부연, 웹서비스의현황및비즈니스모델의변화, 정보통신 정책제14권 15 호, 2002. [4] 정성권, 최성우, 하민규, about.net XML 웹서비스, 영진닷 컴, 2002. [5] 송호중역, Web Service의이해학위 XML,WSDL, SOAP와 UDDI 표준이용, 피어슨에듀케이션코리아, 2002. [6] 김태영, Taeyo's ASP.NET v1.0 with C#," 영진닷컴, 2003. [7] 황정규, 학교학습과교육평가, 서울교육과학사, 1992. [8] 나창하, ASP를이용한교수학습용평가시스템의설계및구 현, 전주대학교교육대학원석사학위논문, 2003. [9] 이효강, ASP 를利用한學習評價시스템, 안양대학교첨단산업기 술대학원석사학위논문,2003. [10] 이수미, 웹기반에서의문항분석을통한문제은행시스템의설계 및구현, 홍익대학교교육대학원석사학위논문, 2003. [11] TAEYO : http://www.taeyo.pe.kr
감사의글 우선, 교육대학원 2년동안지도를해주시고본논문이나오기까지많은 격려와지도를아끼지않으셨던조근식교수님께감사의말씀을드립니다. 또한, 왕창종교수님, 이균하교수님, 양용준교수님, 유원희교수님, 배해 영교수님, 이정현교수님, 유형선교수님, 이필규교수님, 유상봉교수님, 한경숙교수님, 이주홍교수님, 신병석교수님, 이종식교수님, 심정섭교 수님께도감사의인사를드립니다. 석사과정을보내는동안직장동료이자배움의동행자로많은힘이되어 준경은이와대학원에들어와새롭게알게된선영, 성미, 현이언니, 현 정, 보영, 보현, 혜진, 류민형선생님, 채인선선생님등많은교육대학원동 기들과태간오빠에게감사의인사를드립니다. 학부때부터많은힘이되어준현정, 윤정, 성운, 현숙, 성이와진우오 빠, 효철오빠, 규남오빠, 익환오빠, 종은오빠, 오지현양, 용집오빠에게 또한감사의인사를전하고싶습니다. 늦었지만소중한만남이된진영, 선희, 석규, 성호, 태현, 진선, 미희, 지 현, 순근오빠, 호선, 병윤, 현석, 윤희언니, 정희언니, 효원, 이학조선생 님, 경국오빠에게도고마운마음을함께전합니다. 그리고마지막으로가장사랑하는소중한부모님과동생호영이그리고 정희에깊은감사를전하고싶습니다.