SMART MANAGED INSTRUCTION WITH SNS 도지원 강동하 나지범 박창현 최병찬 SixSignal Capstone Design 2012
Contents 1. Smart Managed Instruction with SNS 2. Goal 3. Expected Effect 4. Composition and Functionality 1) 교수용 애플리케이션 2) 학생용 애플리케이션 5. SNS 6. System Architecture 7. Data Flow 8. 주요 기술
Smart Managed Instruction with SNS 기존의 CMI 체제의 공간적 한계에서 벗어나 교수 와 학생들이 자유롭게 강의 리소스에 접근하게 하 는 안드로이드 기반의 애플리케이션 Facebook의 그룹 기능을 통해 학습자들 간의 자 유로운 의사소통을 도모하고, 강의의 공지, 퀴즈, 강의 자료 등의 기록을 정리 스터디 기능을 통해 같은 강의를 듣는 학생들 간의 팀 프로젝트 및 그룹 스터디 활성화
Goal 스마트폰을 사용한 능률적인 학습 환경 구성 강의 공지, 자료나 퀴즈 알림 등으로 효율적인 강의 관리 SNS를 통하여 교수와 학생, 또는 학생들간의 뛰어난 접근성 제공
Expected Effect CMI 기능을 스마트폰에서 실행하여 사용자들의 접근성 증가 Facebook을 통한 학생들 간의 참여와 소통 유도 강의 컨텐츠로의 효과적인 접근을 통해 유연한 강의 진행을 도모 스터디 그룹 기능을 통해 학생들 간의 친목 및 토론 활성화 스마트 폰의 교육용 자재로서의 잠재력 확인
Composition and Functionality Smart Managed Instruction with SNS는 크게 교수용 애플리케이션과 학생용 애플리케이션으로 나뉜다. 출석을 처리할 NFC 단말 애플리케이션을 구현하였다. Facebook 그룹을 통해 Class의 강의 자료 업로드와 퀴즈 출 제 내역, 게시글과 댓글 등 모든 강의 활동들을 기록 할 수 있 다. 교수용 앱 CLASS 학생관리 수업관리 강의자료 강의퀴즈 강의게시판 설정 학생용 앱 CLASS 출석 개인정보관리 강의자료 강의퀴즈 강의게시판 설정 STUDY 그룹관리 채팅 퀴즈 자료 일정 NFC 단말용 앱 Facebook CLASS 강의자료 알림 퀴즈출제 알림 게시글과 댓글
1) 교수용 애플리케이션 학생의 출석 현황, 퀴즈 점수, 중간 기말 점수를 확인 가능 퀴즈를 제출하고 채점, 피드백 등을 학생에게 즉시 전달 가능 게시판에 글을 올리거나 학생의 글을 확인 가능 교수의 글은 공지 형태로 따로 정리 됨 강의를 휴강하거나, 보강을 추가할 수 있음 자료를 업로드 하여 학생이 수업 리소스에 자유롭게 접근 할 수 있게 함 Facebook 연동, 자동 로그인 등을 설정
학생관리 수강생 목록에서 정보를 열 람하기 원하는 학생을 선택 함 학생의 사진, 학번, 이름, 시험 점수, 및 강의 날짜에 따른 출석 정보를 가로 스크롤 리스트로 제공
강의관리 강의의 날짜와 출석, 지각, 결석한 학생의 수가 리스트로 제공 휴강을 원하는 강의를 길게 누르면 강의를 삭제 가능 보강을 원하면 +버튼을 선택 후 추가 할 강의 날짜와 시간(1, 2, 3 혹은 A, B, C)을 조정
퀴즈 퀴즈 출제를 원하면 액션 바의 우측에 있는 +버튼을 선택 퀴즈 문제와, 모범 답안, 퀴즈 시작 시간 및 종료 시간, 만점을 조정하여 전송
자료 새로운 자료의 업로드를 원하면 액션 바의 우측에 있는 +버튼을 선택 액션 바 우측의 디스크 모양의 버튼을 선택하여 자료를 저장하고 열 수 있음
게시판 과거에 업로드 되었던 게시글이 리스트로 제공 교수님의 글과 학생의 글이 각각 다른 탭으로 제공되어 교수님의 글일 경우 공지로 인식
게시판 내용을 보고 싶은 글을 선택 글 내용 및 댓글을 동시에 볼 수 있음 원하는 경우 댓글 입력 가능 새로운 게시글을 입력하고 싶을 경우 액션 바의 우측에 있는 +버튼을 선택 게시글을 입력한 후 글쓰기 버튼을 눌러 글을 전송
설정 Facebook 계정을 연동 이 과정을 거치지 않으면 애 플리케이션 사용에 제한되 는 사항이 많음 애플리케이션에 오는 알림 설정을 조정 도움말, 개발자 정보 등을 확인 자동 로그인 등의 서비스를 제한
2) 학생용 애플리케이션 출석 버튼으로 NFC 출석 가능 개인정보 확인으로 출석 현황, 성적 등을 확인 가능 스터디 그룹을 선택하면 채팅을 기본 탭으로 가지는 스터디 룸에 입장
클래스 수업에 출석하기 위해 NFC를 활성화 할 때 사용 출제 된 퀴즈를 즉시 풀고 채점과 피드백 후 확인 가능 게시판에 글을 올리거나 교수님의 글을 확인 가능 교수님의 글은 공지 형태로 따로 정리 됨 자신의 출석 정보 등을 확인할 수 있음 교수님이 업로드 한 자료를 학생이 자유롭게 접근 할 수 있게 함 Facebook 연동, 자동 로그인 등을 설정
출석 메인 메뉴의 출석을 선택 NFC 출석 단말 앱을 실행한 기기 에 출석할 단말기를 접촉하면 화 면이 작아지고, NFC 출석이 성공 하면 출석, 지각, 결석에 대한 메 시지를 전송 받음
개인정보 자신의 사진, 학번, 이름, 시험 점수, 및 강 의 날짜에 따른 출석 정보를 가로 스크롤 리스트로 제공 받음
퀴즈 글이 작성 되기 전에는 제출하기 버튼 비활성화 답을 작성하면 제출하기 버튼 활성화 진행 중인 퀴즈에서 답안을 작성 할 퀴즈를 선택 댓글보기 버튼을 선택하면 댓글을 달 수 있는 화면이 제공
자료 액션 바의 우측에 있는 디스크 모양의 버튼을 선택 댓글을 달 수 있는 화면이 제공 해당 파일에 대한 다운로드 혹은 다운로드 후 열기를 선택하여 파일을 엽
게시판 과거에 업로드 되었던 게시글이 리스트로 제공 교수님의 글일 경우 공지로 인식 글을 선택하면 글 내용 및 댓글을 동시에 볼 수 있음 원하는 경우 댓글을 입력 가능 새로운 게시글을 입력하고 싶을 경우 액션 바의 우측에 있는 +버튼을 선택
스터디 - 그룹 관리 새로운 그룹을 생성하고 싶을 경우 액션 바의 우측에 있는 +버튼을 선택 원하는 그룹을 선택하여 입장
채팅 채팅 탭에서 Hello Study에 등록 된 다른 사용자들과 대화 채팅을 전송하면 다른 채팅에 참가한 사람들에게 알림 메시지가 전송됨
퀴즈 새로운 퀴즈를 생성하고 싶을 경우 액션 바의 우측에 있는 +버튼을 선택 퀴즈의 문제와 정답을 쓰고 출제하면 목록에 내가 출제한 문제가 채점 가능으로 표시됨
자료 새로운 파일을 업로드하고 싶을 경우 액션 바의 우측에 있는 +버튼을 선택 원하는 파일을 선택하면 다음과 같은 메시지가 의사를 물음
일정 액션 바의 우측에 있는 달력 버튼을 선택하여 일정들을 전송 일정 탭에서 모임이 가능한 시간을 선택 일정을 전송하면 채팅 창에 일정을 전송했다는 알림이 뜸
How SNS? SMI 애플리케이션에서 올린 파일을 Facebook 페이지에서 확인할 수 있고, 애플리케이션에서와 마찬가지로 다운로드 할 수 있다. Facebook은 파일 공유 기능을 제공하지 않기 때문에 SMIServer가 대신하여 파일을 보관하고 Facebook에는 파일의 링크만 제공한다. 링크제공파일제공 SMIServer
How SNS? SMI에서 쓴 게시글과 댓글 모두 Facebook에서 접근이 가능하다. 마찬가지로 Facebook에서 쓴 게시글과 댓글 모두 SMI에서 접근 가능하다.
How SNS? 일정계산 1. 각자 모임이 가능한 시간을 터치하여 서버에 전송 2. 방장이 자신의 모임 가능 시간을 터치하여 서버에 전송 3. 서버에서 팀원 전원이 참석 가능한 시간을 계산 4. 채팅 창에 공지 채팅 기능을 통해 그룹 원들이 자유롭게 대화를 주고 받을 수 있다.
System Architecture CLIENT CLIENT(Android SDK-2.3.3) Facebook API Google C2DM Streaming Push JSON VIEW Network Manager XML/JSON Parser DATA SERVER Wowza Media Server Apache Tomcat Server Servlet JDBCJDBC Response Query DATA Query DATA XML HTTP Request Push Request RTSP Request HTTP Request
System Architecture 클라이언트의 통신은 항상 서버를 통해 이루어짐 모든 데이터는 HTTP 프로토콜을 통해 전달된다. 서버는 데이터베이스를 포함하는 Apache Tomcat과 동영상 스트리밍 서비스를 제공하는 Wowza Media 서버로 구성 요청 값은 클라이언트로부터 HTTP Request 객체를 통해 Servlet으로 들어옴 데이터베이스에 접근 해야 할 경우 JDBC를 통해 쿼리를 전송 쿼리에서 원하는 Data를 삽입하거나 선택 연산이 끝난 결과 값을 JSP에 담아 XML 형태로 클라이언트에 전송
System Architecture 동영상 파일에 대한 요청을 수행할 때는 Servlet에서 Wowza Media Server로 요청 후 클라이언트에 RTSP를 통해 전송 클라이언트는 네트워크 매니저를 통해 서버의 결과를 전송 받음 XML Parser를 통해 필요한 데이터를 받고, 애플리케이션 상에서 보여줌 Facebook 서비스는 특정 상황에서 클라이언트의 요청 값을 서버에서 Facebook으로 보내어 글을 등록하고, 처리 된 값을 JSON으로 클라이언 트의 네트워크 매니저로 전송 클라이언트는 JSON Parser를 통해 필요한 데이터를 처리하여 필요한 값 을 애플리케이션에서 확인 가능 클라이언트에 특정 알람 등의 서비스를 처리할 때는 Google의 C2DM 서비스를 사용
Data Flow Server Request Parameter XML Request Parameter Query Client Database HTTP Data Streaming XML Request Parameter Push Request Push Message
주요 기술 Google C2DM JDBC Facebook API NFC
1) Google C2DM Google의 C2DM 서비스는 서버에서 해당 디바이스에게 메시지를 보내는 방법 SMI 서버에서 직접 보내지 않고 아니라 Google 서버에 요청하여 메시지를 전송
2) JDBC SMI Server JAVA Servlet JSP JDBC DataBase Client Request Response 자바 프로그램 안에서 SQL을 실행하기 위해 데이터베이스를 연결해주는 응용프로그램 인터페이스 데이터베이스에 데이터를 삽입, 수정, 삭제할 때 SQL 프롬프트에서 SQL문을 사용하지 않고 자바 프로그램에서 SQL Query를 전송하여 데이터베이스에 데이터 관리를 하는 작업을 가능하게 함
2) JDBC 1. 클라이언트에서 서버로 요청하는 파라미터를 Servlet에서 request객체를 통하여 JDBC로 전송 2. Servlet에서는 요청 파라미터를 이용하여 클라이언트에서 원하는 작업을 수행하기 위해 쿼리를 만들어 JDBC로 전송 3. 데이터베이스는 작업 결과를 JDBC를 통해 다시 Servlet으 로 전송 4. Servlet은 response 객체에 클라이언트로 회신할 내용을 JSP로 전송 5. JSP는 xml형식으로 데이터를 정리하여 클라이언트에 응답
3) Facebook API Facebook 애플리케이션 등록
3) Facebook API Facebook 애플리케이션 설정
4) NFC Near Field Communication NFC는 전자태그(RFID)의 하나로 13.56Mz 주파수 대역을 사용 하는 비접촉식 근거리 무선통신 모듈로 10cm의 가까운 거리에서 단말기 간 데이터를 전송하는 기술 실제로는 양 단말이 서로 접촉 할 경우 통신이 이루어짐
NFC 안드로이드 NFC API에는 android.nfc와 android.nfc.tech라는 클래스가 포함됨 android.nfc는 세 가지 NFC 기능 모드를 위해 NFC 기기와의 상호작용을 도와 주며 태그를 발견하거나 NDEF 메시지를 생성하는 클래스로 구성 android.nfc.tech는 태그가 가진 속성을 조사하고 이에 따른 I/O 작업을 처리 하는 클래스들의 모임 안드로이드 NFC API에서 P2P의 일부 기능만 구현된 부분, SE(Secure Element), 즉 카드 에뮬레이션을 위한 소프 트웨어가 없음 NDEF 메시지 처리를 위해서는 애플리케이션이 Foreground 상태여야만 함
Thank you