Skip to content

osamhack2020/APP_SUM_ComeToOSAM

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

71 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

프로젝트 소개

  • SUM(Smart+Untact+Meeting)은 군 생활을 하는 장병 및 군무원들을 대상으로 각 분야의 인재(전문가)와 비대면 소통할 수 있는 커뮤니티 앱 플랫폼입니다. 사용자가 선택한 분야와 개인관계지수를 고려하여, 개인에게 필요한 맞춤 전문가를 찾아주어 업무를 수행함에 있어 적시에 실질적인 도움을 받을 수 있는 커뮤니티 플랫폼을 목표로 하고있습니다.

필요성

  • 현 실태(문제점)
    • 軍에는 다양한 분야의 전문가들이 있지만 그들의 역량 및 노하우를 손쉽게 공유하거나 획득하는 것이 어려움
  • 해결방안
    • 분야별 최적의 전문가를 추천해주고 상호 소통 가능한 시스템을 접근성이 높은 'APP' 으로 구현

기능 설계

어플리케이션 화면

도움이 필요한
분야 선택

분야별 전문가
Reranking

개인관계지수를
고려한 추천

전문분야, 개인관계
맞춤 분석 추천

비대면 소통으로
신속한 도움

다양한 추천 방식 및 카테고리 적용

  • 다양한 추천 방식
    • 개인관계지수(사용자간의 관계만을 고려)
    • 전문가지수(해당분야의 전문성만 고려)
    • 복합지수(개인관계지수와 전문가 지수를 모두고려)
  • 카테고리별 최적의 전문가 검색 및 재정렬(Reranking)
    • 초기버전 적용분야 : 어학, 전투능력, 전산, 행정, 법
    • 추후 다양한 분야 추가 예정

추천받은 전문가의 프로필을 통한 관계도, 전문성을 고려한 실시간 소통

추천 알고리즘

Topic Sensitive_Social Relation Rank Algorithm

  • 사용자들이 갖는 내재적 속성과 토픽 간에 상호 연관성을 고려하여 소셜관계 지수 계산 및 전문가 추천
  • Association Matrix : 내재적 속성이 토픽에 영향을 받으면 '1', 영향을 받지 않으면 '0' 부여

  • 토픽에 영향을 받을 때 사용자 간의 소셜관계 랭크 및 전문가 추천 식 적용

Kim, Young-an, and Gun-woo Park. "Topic sensitive_social relation rank algorithm for efficient social search." The Journal of Korean Institute of Communications and Information Sciences 38.5 (2013): 385-393.

API 설계 (Firebase Cloud Functions)

  • addIndexExpert
    • 전문가 지수 계산을 위한 데이터 전처리
    • Parameter : uid (현재 계정 ID)
  • addIndexIntimacy
    • 개인관계 지수 계산을 위한 데이터 전처리
    • Parameter : uid (현재 계정 ID)
  • getRelationalMatrix
    • 전문가 추천도 계산 및 결과 반환
    • Parameter : uid (현재 계정 ID)
    • Return : 전문가 정보, 개인관계 지수, 전문가 지수 결과 (Matrix 형태)

DB 설계 (Firebase Realtime Database, NoSQL)

  • 주요 Key
    • Chatlist : 대화방 정보
    • Chats : 실시간 대화 정보
    • IndexExpert : 전문가 지수 계산에 사용
    • IndexIntimacy : 개인관계 지수 계산에 사용
    • MyUsers : User 정보
    • Tokens : 기기 정보 (Firebase Cloud Messaging, Notification에 사용)

기대 효과

AI기반 스마트 인재관리시스템 발판 마련

  • AI기반 원천기술 확보
    • 국방인사정보체계(국방부), 인터넷 공개자료(SNS, 블로그 등) 수집 및 연동하여 빅데이터 분석가능
  • 인재획득
    • 추후 확보된 원천 기술을 통해서 적격자 추천 및 선발 결과를 자동 분석가능
  • 전역지원
    • 취업역량 강화, 전역장병 만족도 제고
  • 인재 양성/운영
    • 맞춤식 자기개발 추천 및 인사관리를 통해 필요한 인재육성 및 적재적소 운영가능

어플리케이션 구동 환경

  • 최소 사양 : Android 4.1 (Jelly Bean)

설치 안내 (Installation Process)

  • APK 설치파일 : SUM 설치파일
    • APK 파일 실행을 위해 출처를 알 수 없는 앱 설치를 허용해주십시오.

프로젝트 사용법 (Getting Started)

  • 저장소 클론
git clone https://github.com/osamhack2020/APP_SUM_ComeToOSAM.git
  • FrontEnd (Android)
// APP 프로젝트 열기
Android Studio > File > Open > ../APP_SUM_ComeToOSAM/FrontEnd 클릭 > OK
  • BackEnd (Node Js)
// 경로 이동
$ cd APP_SUM_ComeToOSAM
$ cd BackEnd
// Node.js 및 npm이 설치되었으면 원하는 방법으로 Firebase CLI를 설치
$ npm install -g firebase-tools
// Firebase 도구 인증
$ firebase login
// Firebase 함수(./functions/index.js) 수정 후 배포
$ firebase deploy
// 자세한 사항은 아래 'Firebase 가이드' 참조

서버(BackEnd) 수정 후 배포를 위해 Firebase Project의 User로 추가되고 권한이 있어야합니다. 현재 프로젝트의 권한을 획득하시려면 baesungjin1996@gmail.com으로 메일을 주거나, 아래 가이드를 참고하여 새로운 프로젝트를 생성하여 진행하십시오.

기술 스택

Back-End

  • Firebase Authentication
  • Cloud Function for Firebase
  • Firebase Realtime Database
  • Firebase Cloud Messaging
  • Node Js

Front-End

  • Android (JAVA)
  • Glide
  • Retrofit
  • PhotoView

MNG

  • GitHub

팀 정보 (Team Information)

저작권 및 사용권 정보 (Copyleft / End User License)

  • 라이센스 : MIT