DOI QR코드

DOI QR Code

A Class Management System on Mobile Platform

모바일 기반 학급관리 시스템

  • Kim, Sung Jun (Dept. of Information & Communication Engineering., Graduate School, Changwon National University) ;
  • Park, Dong Gyu (Dept. of Information & Communication Engineering., Graduate School, Changwon National University)
  • Received : 2016.01.28
  • Accepted : 2016.03.07
  • Published : 2016.04.30

Abstract

Development of information and communication technologies has given a lot of changes in the business processing methods including the school and class managements. However, many business processing systems are still based on desktop computer. In particular, most of the class management system only supports desktop computers; hence school teachers have difficulty in using their class managements systems on mobile environment. In this paper, we proposed and developed a mobile classroom management system for teachers, which will easily handle information such as personal records of students, student counseling records, student life record and so on. The implementation of the application of mobile-based class management can be managed by many school elements including student register information, student evaluation records and transcripts, counseling report, and so on.

Keywords

1. 서 론

교육자와 피교육자에 의해 학교와 같은 일정한 공간에서 이루어지는 교육의 내용과 질은 개인의 삶과 질적인 개선뿐만 아니라 사회의 발전측면에서도 매우 중요하며, 학교교육의 질적향상은 국가화 사회에 있어 매우 중요한 일이다. 이러한 학교교육의 교육적 성과와 질은 대부분 학급내에서 이루어지는 교육의 성과와 질에 의해 결정된다. 그리고 학급에서 이루어지는 교육 활동의 중심에는 담임교사가 있다. 담임교사로서의 역할은 수업안내자로서의 역할, 생활안내자로서의 역할, 학급경영자로서의 역할로 나눌 수 있다. 즉 담임교사는 학급의 안내자이자 경영자로서 학급 관리 능력이 요구된다고 할 수 있다[1].

학급 담임교사는 교실에서 학생들과 함께 생활하며 그들을 행동을 관찰하고, 문제가 인지되는 학생에 대해서는 지속적인 상담 등을 통해 학생이 직면한 문제의 해결책을 함께 모색해보고 해결할 수 있도록 안내해주면서 교육을 한다. 이러한 일련의 활동은 교사로서 당연히 해야하는 학급경영 업무에 해당되는 것이다. 그리고 업무와 관련한 내용이기에 관련한 모든 내용을 교무수첩이나 상담일지 등에 상세히 기록함으로서 문서화하여 보관할 수 있도록 하고 있다. 이렇게 작성된 기록문서는 추후 학생과 관련한 다양한 문제를 해결하는데 도움이 되는 자료로 활용될 뿐만 아니라 하나의 사례로서 비슷한 다른 학생을 지도할 때 참고 자료로서의 역할을 할 수 있다. 그리고 이러한 학급경영과 관련된 업무는 학교내 근무시간을 벗어난 시점에서도 지속적으로 이뤄지는 경우가 많은 것이 현실이다[1,2].

정보기술의 발달로 학생의 성과지표관리등과 같은 업무를 학교 현장에서는 대부분의 업무를 NEIS (National Education Information System)로 처리하고 있다[1]. 하지만 이러한 시스템은 데스크탑 컴퓨터 시스템에서만 이용할 수 있으므로 교사가 학교를 벗어나거나 네트워크 접속이 어려운 환경에서는 이용하라 수 있다는 한계가 있다. 따라서 최근 iOS와 안드로이드와 같은 모바일 운영체제의 등장과 함께 공간과 시간제약으로부터 자유로운 환경에서 학급경영정보에 접근하고자 하는 연구가 이루어지고 있다[3-7]. 특히 담임교사의 역할 중 가장 중요한 학급경영과 관련하여 업무가 이루어지는 시간은 학교 근무시간을 벗어난 시간대에서도 활발하게 이뤄지는 것을 감안한다면 시간과 장소, 디바이스의 구분없이 사용가능한 학급관리시스템의 개발이 필요하나, 현재 NEIS로서는 해결하기 힘든 실정이다. 이러한 부분에 대한 보완을 위해 학급경영의 디지털화에 대한 연구를 찾아 볼 수 있다. 대부분의 연구는 PC환경에서의 사용을 전제로 하여 연구된 것으로 지금의 모바일OS에 대응할 만한 수준은 되지 못하였다. 최근에 박찬솔등은 ASP .NET 기반의 모바일 학급관리 웹 어플리케이션을 제안하고 연구하였으며[3], 현재 학급경영과 관련하여 배포 이용되고 있는 모바일 어플리케이션으로 ㈜클래스팅의 ‘클래스팅’, 경상남도교육청의 ‘투데이 알림장’, ㈜IAMCOMPANY의 ‘아이엠스쿨’등이 있다[13-15]. 그러나 클래스팅은 교육용 SNS의 기능이 강하고, 투데이 알림장과 아이엠스쿨은 알림장과 단순한 학교 공지사항을 제공하는 기능에 그치고 있어, 교사의 학급경영에 필요한 학생 정보관리와 상담관리, 생활, 성적 등과 같은 것을 관리하는 기능은 제공되지 않았다. 앞서 제시한 학급경영과 관련한 기능을 제공하는 것으로는 ASP .NET기반 학급관리 웹어플리케이션이 있으나, 이는 웹기반으로 만들어짐에 따라 어플리케이션의 기능은 웹 사용 환경에 따라 결정되는 어려움이 있다[4-6].

본 연구에서는 이와 같은 문제를 개선하여 담임교사의 학급관리에 실질적인 도움이 되기 위한 모바일 어플리케이션을 설계하고 구현하였다. 이에 본 연구의 목적 및 시스템의 특징은 다음과 같이 정의하였다.

첫째, 학급경영을 하는 담임교사가 활용하는 어플리케이션은 모바일 서비스를 기반으로 하여 시간과 장소의 구애를 받지 않도록 한다.

둘째, 학생들의 개인정보를 데이터베이스로 구조화하여 담임교사들이 학생들을 체계적이고 효율적으로 관리할 수 있게 한다.

셋째, 불필요한 기능을 배제하여 직관적이며 간결한 메뉴구성을 통해 사용자의 편의를 높인다.

 

2. 연구내용과 방법

본 연구는 교사의 학급경영의 효율성을 높이기 위해 모바일 기반의 학급관리 어플리케이션을 구현하였으며 연구 목적을 달성하기 위한 연구의 내용은 다음과 같다.

첫째, 효율적인 학급 경영을 하기 위해 필요한 요소에 대한 논의를 통해 어플리케이션의 기본 방향을 정하였다.

둘째, 학급경영과 관련하여 선행연구된 연구들을 분석하여 필수적으로 구현해야 할 기능을 추출하였다.

셋째, 모바일 어플리케이션에 최적화된 사용자 경험을 바탕으로 최대한 이용하기 편리한 사용자 인터페이스를 구현하였다.

넷째, 위의 내용을 바탕으로 모바일 학급경영 어플리케이션을 설계하고, Objective-C, SQLite등을 사용하여 구현하였다.

 

3. 관련연구

3.1 학급경영

경영은 일을 추진함에 있어 계획적이고 체계적으로 운용하고 관리하는 것이다. 그리고 목적을 달성하기 위해 사람과 물자를 확보하고 관리하는 것이다. 이러한 의미에서 학급경영은 교육의 목적을 당성하기 위해 구성된 학급을 계획적이고 체계적으로 관리하고 운영하는 것이라고 정의할 수 있다. 학급내 학생들을 위해 교육활동을 계획하고, 실천하고 평가하는 교육활동이면서 이를 도와주는 교육 지원 활동이다[1,6].

3.2 SQLite

SQLite는 소형기기에 적합한 데이터베이스 엔진으로 2000년 리처드 힙(D. Richard Hipp)의 주도로 그의 동료들과 함께 개발되었다. SQLite는 2000년 8월에 1.0버전이 출시되었고 지속적으로 버전업이 이뤄지고 있다. SQLite는 오픈소스 프로젝트로서 다른 데이터베이스 제품에 비해 가볍고 속도가 빠르며, 사용하기 쉽다는 장점이 있다. 이러한 장점을 무기로 SQLite는 임베디드 분야를 비롯해 주위에서 흔히 볼 수 있는 애플을 아이폰이나 맥 OS X, 구글의 안드로이드, 노키아의 심비안, 파이어폭스 브라우저, 드롭박스 등 다양한 곳에서 사용되고 있다[7].

3.3 M.V.C. 패턴

M.V.C. 패턴은 프로그래밍 패턴중 하나로 79년 스몰토크와 관련된 작업을 하던중 Trygve Reenskaug에 의해 최초로 소개되었다. M.V.C. 모델은 “모델-뷰-컨트롤러”로 구성요소를 분리되어 따로따로 동작한다. 즉, 모델이나 컨트롤러를 바꾸지 않고도 화면에 표시되는 스위치를 버튼으로 변경할 수 있다는 것이다. 프로그래밍의 동작은 변하지 않았지만 GUI (Graphic User Interface)의 모습을 바꿀 수 있다. 혹은 GUI는 변경하지 않더라도 컨트롤러나 모델을 변경하게 되면 다른 식으로 어플리케이션을 이용할 수 있게 되는 것이다. 이렇게 구성요소를 분리하여 프로그래밍하는 것은 개별적인 업데이트를 통해 유지보수를 쉽게할 수 있게 할 수 있다[8].

3.4 Model(모델)

모델은 어플리케이션 컨트롤러가 수행할 콜백 메소드와 델리게이트 프로토콜이 필요로 하는 메소드를 제공한다. UITableViewDataSource 프로토콜을 모델의 예라고 볼 수 있다. 이와 같이 다른 객체가 필요로 하는 데이터를 제공하는 객체를 데이터 소스라고 한다. 테이블이 들어있는 UITableViewController에서 데이터 소스는 사용자가 원하는 데이터로 뷰를 채워 반환하는 것이 그 좋은 예라고 할 수 있다[8].

3.5 View(뷰)

iOS에서 뷰는 UIView와 UIViewController라는 두 개의 중요한 클래스를 기본으로 한다. 화면에 무언가를 그리는 역할을 하는 뷰는 UIView Class가 가장 대표하는 추상클래스이다. iOS에서 뷰의 체계는 다음과 같다. NSObject–UIResponder– UIView- UITextView, UIImageView 등 과 같은 체계를 가지고 있다. 즉 뷰는 화면에 보이는 모든 것을 담당하는 요소라고 볼 수 있다[8].

3.6 Controller(컨트롤러)

컨트롤러는 모델이 가지고 있는 데이터를 화면에 보이는 것을 담당하는 뷰에 전달하는 중간자 역할을 한다. 대표적으로 타켓-액션을 예로 들 수 있다. 버튼을 눌렀을 때 어떤 내용을 보일지에 대해서 컨트롤러는 관여하지 않는다. 다만 버튼을 눌렀을 때 이벤트로 전달할 객체를 지정하는 것이다. 타겟-액션과 더불이 컨트롤러의 역할을 하는 것에는 델리게이션와 노티피케이션이 있다. UITableView에서 셀을 선택했을 때 이벤트를 콜백 메소드로 전달하는 것이 델리게이션의 좋은 예가 될 수 있다[8].

 

4. 학급경영 어플리케이션의 설계

Fig. 1은 본 연구에서 개발하는 학급경영 시스템의 구조를 단순화시킨 모형이다. 본 시스템은 학생들의 개인정보를 저장하고 있는 앱의 특성상 사용자 확인을 하는 비밀번호를 요구하는 기능을 추가하였다. 비밀번호를 설정하는 방법은 어플리케이션을 설치하고 최초로 실행할 때 한 번 설정할 수 있다. 이후 초기 설정한 비번을 입력하여 앱에 접근한 후 설정관리 단에서 비밀번호를 재설정 할 수 있다. 어플리케이션의 기본적인 내용은 학생관리, 상담관리, 학생생활, 평가관리, 설정관리 이렇게 5개의 기본 메뉴로 구성하였다.

Fig. 1.A mobile application system architecture and management database.

본 어플리케이션에서는 SQLite를 이용하여 Fig. 2와 같이 10개의 테이블을 관계형으로 묶는 RDB방식으로 구성하였다. students 테이블의 학생 고유번호를 primary key로 설정하였고, 이것을 다른 테이블에서는 참조키로 설정하는 형태로 구성하였다. 이렇게 참조키로 설정하게 되면 자동적으로 참조 무결성 제약조건이 설정되어 종속 테이블의 외래키에는 상위 테이블의 기본키의 값들 중 하나가 입력되거나 NULL이 입력된다. 이러한 설정은『CONSTRAINT [제약조건 키 이름] FOREIGN KEY([컬럼이름]) REFERENCES[상위테이블] ([참조할 컬럼 이름])』의 구문으로 가능하다.

Fig. 2.Database relation diagram ; the database has students, point, consulting, evolution, evolution type and subject table.

화면을 구성하는 ViewController는 Fig. 3과 같이 크게 UITabBarController와 UINavigation Controller를 이용하여 화면전환을 구현하였다. UITabBar Controller 아래에 각 ViewController와 UINavigation Controller를 배치하였다. 또한 탭바에서 선택할 수 있는 ViewController는 학생관리, 상담관리, 생활관리, 평가관리, 설정관리로 5개이다.

Fig. 3.A detailed user interface diagram of a mobile system.

학생관리 뷰에서는 학생에 대한 기본 정보를 입력하여 저장할 수 있다. 여기에 학생 정보가 입력되어야만 상담관리, 생활관리, 평가관리의 기능을 이용할 수 있다. 이는 앞서 설명한 RDB의 기능이 반영된 것으로 최상위 테이블로 설정되어 있는 students 테이블에 저장된 학생정보를 이용하기 때문이다.

 

5. 모바일 시스템의 세부 구현

5.1 앱 실행 및 보안설정

앱이 실행이 될 때, 앱 내의 도큐먼트에 데이터베이스가 존재하는지 확인한 후 데이터베이스가 없으면 번들에 있는 데이터베이스를 복사하여 도큐먼트에 저장한다. 그리고 사용자 등록은 4자리 이상 10자리 이하의 숫자+문자+특수문자 모두 가능하며 앱을 설치하고 최초로 시행하였을 때만 실행된다. 비밀번호는 NSUserDefaults에 NSString 타입으로 저장된다. 비밀번호를 설정한 후에는 비밀번호만 입력하는 View를 통해 앱 안으로 진입한다.

5.2 학생관리

UITabBarController의 첫 ViewController는 학생관리 View로서 학생정보를 저장하고, 수정하며 활용할 수 있도록 구성하였다. 저장하는 학생정보는 이름, 생년월일, 집, 부모님 전화번호, 주소, 간단한 메모 사항이다. 저장된 전화번호를 터치하면 해당번호로 전화연결이 지원된다.

ABPeoplePickerNavigationController를 이용하여 주소록에 저장되어 있는 정보 가져올 수 있고, UIImagPicker Controller를 이용하여 학생 사진 저장 기능도 제공한다[7].

5.3 학생상담

UITabBarController의 두 번째 ViewController는 학생상담을 기록하는 기능을 제공한다. 여기에서는 Fig. 6과 같이 UITableView의 섹션을 터치하면 Fig. 6과 같이 각 섹션 하위행의 높이 값이 없을 경우 0이 되기도 하고, 그렇지 않을 경우 목록이 나타나기도 한다.

Fig. 4.App launch and security code setting process; ① Database search, ② Find database tables, ③ User authentication, ④ User‘s first run to app, ⑤ User's try out after first run.

Fig. 5.Management view of student information; user can access student information by name and scroll up/down for detail look-up and update.

Fig. 6.Student counseling Management View.

5.4 학생생활

CustomCell을 이용하여 UITableView를 구성하였다. Cell위에는 UIButton, UILabel, UITextView를 배치하여학습자의 학급생활과 관련한 정보를 한 눈에 볼 수 있도록 배치하였다. Fig. 7은 학생생활을 상점과 벌점으로 관리하는 화면으로 버튼 클릭형태로 제공되고 기본 문장이 제공이 되지만 사용자의 의도에 따라 학생생활과 관련한 내용을 추가하여 입력할 수 있다.

Fig. 7.Students of school life : penalty point and reward point.

5.5 학생평가 관리화면

Fig. 8은 학생 평가와 관련하여 평가할 교과와 영역을 등록하고 학생별로 상, 중, 하와 같이 3단계 평가를 할 수 있는 기능을 지원한다. 과목구성에는 UI CollectView를 이용하였고, 영역과 평가 입력은 UI TableView를 이용하였다. 저장된 평가결과는 text와 ‘,’로 구성된 CSV 형식의 파일을 Document에 생성하여 저장한 후 이 파일을 메일로 내보낼 수 있다.

 

6. 웹 기반 학급관리 프로그램과 모바일 기반 학급관리 프로그램의 비교

Table 1은 현재 일선 학교에서 사용하고 있는 학급 관리 프로그램인 NEIS와 모바일 기반 학급관리 프로그램일 비교한 표이다. 프로그램 자체가 제공하는 컨텐츠의 내용을 제외하고 학급관리 프로그램에 접근하는 방법과 편의성에 대해서 비교해 보았을 때, 입력의 편의성은 키보드를 사용하는 NEIS가 높다고 판단된다. 하지만 활용의 편의성에 있어서는 장소에 관계없이 즉시 활용이 가능한 모바일 기반 학급관리 프로그램이 더 나은 결과를 보였다.

Table 1.Comparison of NEIS and mobile-based classroom management application

 

7. 결론 및 향후 연구

본 논문에서는 효율적인 학급경영을 위한 모바일 어플리케이션 개발에 대하여 연구하였다. 학급업무를 줄이면서도 효율적인 학급경영을 위해서 필요한 부분에 대한 많은 논의를 바탕으로 연구한 학급경영 어플리케이션은 SQLite를 이용한 자료관리를 통해 빠르고 안정적인 데이터베이스 기능을 구현하였다. 또한 다양한 뷰 컨트롤러와 데이터베이스를 다루는 DataModel, 스토리보드를 이용한 View구성을 엄격히 구분하여 작업함으로서 M.V.C. 디자인 패턴을 적용하여 향후 지속적인 유지보수를 쉽게 하였다. 웹 기반 학급관리 프로그램인 NEIS와 모바일 기반 학급관리 프로그램을 비교하여 다음과 같은 결과를 얻었다. NEIS는 폐쇄적인 시스템을 구축하고 있다. 그로 인해 교사가 담당학생 관리를 위한 다양한 자료의 입력과 출력을 하기 위해서는 다소 귀찮은 과정을 거쳐야만 한다. 또한 교실에 있는 컴퓨터 앞에서만 원활한 입력이 가능한 불편함이 있다. 이에 본 연구의 모바일 기반 학급관리 프로그램을 통해 PC 웹 기반 학급관리 프로그램인 NEIS가 확장가능한 방향을 제시하고 있다. 더 나아가 반응형 웹앱을 이용한 학급관리 시스템을 구축하는 방법을 추가로 제시할 수 있다. 이것은 악성스크립트나 sql인젝션 등에 대응할 수 있는 방안이 마련된 전제로 추진할 수 있을 것이다[10,11].

본 연구의 향후 과제는 하나의 서버를 중심으로 모바일과 웹 클라이언트가 자료를 공유하고 각 플랫폼이 가지는 장점을 최대한 살려 사용자에게 보다 나은 서비스를 제공할 수 있는 새로운 방법을 추진할 예정이다.

본 연구를 하는데 있어서의 제한점과 향후 연구과제는 다음과 같다.

첫째, 본 연구는 초등학교 담임교사의 학급경영을 중심으로 기획하였다. 따라서 중등학교 이상의 학급 실정과 다소 맞지 않는 부분이 있을 수 있다.

둘째, 본 연구에서 구현한 모바일 어플리케이션은 iOS기반의 스마트폰 환경을 기반으로 구현하였다. 따라서 안드로이드 기반의 스마트폰에서는 구현하지 못한다.

셋째, 본 연구에서는 개인정보와 관련한 보안에 대한 내용을 다루지 않았기에 기본적으로 로컬데이터베이스를 이용하였다. 향후 온라인 기반의 자료 동기화 및 자료 공유 등에 대한 부분은 추가적인 연구가 필요하다.

References

  1. N.G. Park and S.J. Im, "Navigating the Concept and the Orientation of Smart Classroom Management," The Korean Society For The Study Of Teacher Education, Vol. 32, No. 1, pp. 371-394, 2015.
  2. C.S. Park, Development of Mobile Based Web Application for ClassManagement, Master's Thesis of Chinju National University of Education Major in Elementary Education of Computer Graduate School of Education, 2014.
  3. M.J. Kim, A Design and Implementation of Web-based ClassManagement Program, Master's Thesis of Kookmin University of Computer Science Education Graduate School of Education, 2002.
  4. J.H. Kang, Development of A Web-based Automatic ClassManagement System for Enhancing Efficiency of Teacher Job, Marster's Thesis of Silla University Major in Computer Education Graduate School of Education, 2006.
  5. G.J. Kim, Implementation of Class Management System using WEB, Master's Thesis of Myongji University of Major in Information Technology, 2000.
  6. B.U. Lee and S. Heo, Teachers and Teaching Life, Knsbookup, 2014, Seoul.
  7. S.J. Woo and H.C. Shin, SQLite3, Wikibooks, 2011, Paju.
  8. E. Sadun, The iOS 5 Developer’s Cookbook, Addison-Wesley, 2012, Bostion.
  9. C.M. Park, “Improved Smart Learning,” Proceedings of Korea Multimedia Society, Vol. 18, No. 2, pp. 555-556, 2015.
  10. SQL Injection vulnerabilities and workarounds, http://support.oullim.co.kr/portal/Techletter/20080615/news4.htm (accessed Jan., 20, 2016).
  11. S.G. Bae and S.H. Oh, “An Implementation of Java Score Management Program Based on Responsive Web,” Proceedings of Korea Multimedia Society, Vol. 18, No. 2, pp. 345-346, 2015.
  12. J.H. Son and D.G. Park, "A Mobile Application and Web Integration Service for Public Bicycle Sharing System," Journal of Korea Multimedia Society, Vol. 18, No. 11, pp. 1351-1357, 2015. https://doi.org/10.9717/kmms.2015.18.11.1351
  13. Classting, https://www.classting.com (accessed Jan., 20, 2016).
  14. Today Alert Note Download Site, https://play.google.com/store/apps/deails?id=co.kr.babelsoft.icham&hl=ko (accessed Jan., 20, 2016).
  15. Iamschool, http://www.iamschool.net (accessed Jan., 20, 2016).