Month: 11월 2015

Distributed Podcast Crawler

분산 시스템을 적용하여 Podcast Crawler를 구현하였다.

웹에서 Podcast를 수집하면서 Podcast의 제목에 따라 분산된 서버에 저장하였다.
자료는 분산되어 저장되어 있지만 사용자는 하나의 시스템을 사용하고 있는 것 처럼 느껴야 한다.
또한, 자료를 저장할 때는 Fault Tolerance가 어느정도 보장되어야 하며
Replication, Duplication for Recovery가 구현되어 있어야 한다.
프로젝트명 Distributed Podcast Crawler
과목명 Distributed System
담당 교수 유준
개발환경 Java
제작기간 30 일

 

91acd35ba5d048907a5843063d63fcd2211815 52556d29eff45bc8e1821667d35603b6211816 d8e7119007fb25634c2cdd6c00960774211816

Social Based Podcast Search Engine

구현 스크린샷

iPod과 Broadcast의 합성어인 팟캐스트는 Apple에서 처음 만들어진 신조어이다. 라디오와 비슷한 특징을 가지고 있지만, 별도의 특별한 장비 없이 개인이 만든 미디어 파일을자유롭게 라디오처럼 방송하고, 청취자들도 자유롭게 다운받아서 볼 수 있다는 특징이 있다. 하지만 팟캐스트를 다루는 사이트는 많지 않고, iTunes를 이용해서 팟캐스트를 청취하면 미국식의 UI구조 때문에 한국인들은 낯설어 하기마련이다. 따라서 우리는 기존의 검색 엔진에 팟캐스트를 결합시키고자 하였다. 또한 SNS요소를 추가하여 사용자가 어떤 팟캐스트에 흥미가 있을 지 추천해 주는 검색 엔진을 만들고자 하였다.

자세한 사항은 Documentation이 첨부되어 있다.

논문 : 팟캐스트 검색시스템을 위한 크롤러 설계 및 구현 = Design and Implementation of Crawler for Podcast Search System( 한국정보과학회 Vol.39 No.2A [2012] 120-122P )
소셜 네트워크 기반 팟캐스트 검색시스템(인터넷정보학회논문지 제14권 제2호, 2013.4, 35-43 (9 pages))

graduation project

Video Encoder and Decoder

Video Codec을 제작하였다.

수업시간에 배운 대중적인 H.264의 Process를 자체적으로 구현하였다.
Intra prediction과 Inter prediction을 이용하였고, PSNR과 Encoding time을 측정하여 성능을 비교하였다.
프로젝트명 Video Encoder and Decoder
과목명 Multimedia
담당 교수 한우진
개발환경 C++
제작기간 30 일

 

d230d213ff8a3a79a2d6567b8d1c5c1c213434  21921bcd00acbf40a972920d90d26762213434a8774095f0bf96affbd2083c81bc6b36213435

Decision Tree

데이터마이닝의 K-fold 알고리즘을 이용하여 Decision Tree를 구현하였다.

데이터마이닝에서 배운 K-fold 알고리즘을 이용하여 Big Data의 처리를 고려하여 구현하였다.
제한된 메모리는 1GB이고, 1GB 이상의 메모리를 사용하게 되면 Disk에 접근하여 메모리에 올리는 정보를 한정지었다.
프로젝트명 Decision Tree
과목명 Data Mining
담당 교수 김철연
개발환경 Java
제작기간 20 일

62acbfb1281a3627e9c4b213132c3f5e212919

Restaurant Management System

SE 절차에 따라 다양한 Tool을 이용하여 프로젝트를 진행하였다.

StarUML을 이용하여 Diagram을 그리며 설계를 하였으며
SVN을 이용하여 팀원간에 Version을 관리하며 구현을 하였다.
Testlink를 이용하여 Test Plan을 세우고
SPLint, Binscope, JUnit, JMeter, Codepro를 이용하여 Test를 진행하였다.
마지막으로 Doxygen을 이용하여 문서화하였다.
C로 제작한 Alpha Version
Java로 제작한 Beta Version
Web으로 제작한 Release Version으로 진행되었다.
프로젝트명 Restaurant Management System
과목명 Software Engineering
담당 교수 정옥란
개발환경 자바,C,Web
제작기간 50 일

documentation

Online Othello Game

2011년도 2학기 네트워크 과목에서 배운 내용을 토대로 온라인 오델로 게임을 제작하였다.

주요기능

  • 채팅 방을 만들고 서로 대화하기
  • 서로 다른 방에 있다면 대화 단절
  • 같은 방에 2명이 있는 경우 Othello Game 대전 가능
  • 대기실을 제외한 방은 사람이 없는 경우 자동 삭제
프로젝트명 Online Othello Game
과목명 Network
담당 교수 최재혁
개발환경 Java
제작기간 30 일

7a74e5905b44fa4f17f3cc089002edc7205839 112fc7f13489a926df49cfe799a93dd8205840 c8caba13fe783e80a1832fe514e0f95d205840

Smart Alarm Robot

LEGO Mindstorm NXT을 이용하여 알람 로봇을 제작하였다.

사용자가 지정한 시간이 되면 로봇이 장애물을 피해가며 시끄러운 소리를 내게 된다.
사용자는 로봇을 직접 잡거나, 스마트폰을 이용한 원격으로 알람을 중지할 수 있다.
또한, 외부에서 로봇을 작동하여 원하는 시간에 알람을 작동하게 할 수 있다.
 

프로젝트명

Smart Alarm Robot
과목명 로봇 공학
담당 교수 한우진
개발환경 Robot C, LEGO Mindstorm NXT
제작기간 30 일

beb2d4e8616e7ae3b6a03061e0f9043b210605 fe3acf95bbb7dd931a3224abb0a64017210605

You and Me

Between과 같은 커플 전용 앱을 제작하였다.

다음 6가지의 기능이 구현되어 있다.
1. 상대방의 전화, 문자 바로 연결
2. 서로 공유되는 일기장
3. 날씨에 따른 데이트 장소 추천
4. 나의 현재 위치를 상대방에게 문자로 전송
5. 서로 공유되는 스케쥴러
6. 상대방과 1:1 채팅
대부분은 Open Source로 구현되어 있는 것이 많았지만 1:1 채팅같은 경우, 별도의 서버가 필요하였다.
Google의 C2DM을 이용하였지만 Third-party Server가 필요하여 따로 구현하게 되었다.
또한 JDBC를 이용할 수 없어서 별도의 XML parsing을 이용한 Web Server를 제작하여 DB에 접근하였다.
프로젝트명 You and Me
과목명 Mobile Programming
담당 교수 최재혁
개발환경 Android
제작기간 30 일

67ec0f878dafd2286ed792365328ce63212525 6bad6fad270d9f2261c085479858ecdf212524