Skip to content
social-coding-kr edited this page Jun 27, 2015 · 37 revisions

개발 준비

이 문서는 지속적으로 업데이트 예정
이 문서에서는 개발에서 벗어나는 주제에 대해서는 다루지 않음
세부적인 내용을 다루어야 할때는 별도의 페이지로 작성

목차

  • 프로젝트 개요
  • 예상되는 어려움
  • 어떻게 개발할까
  • 서버 개발 검토사항
  • 클라이언트 개발 검토사항
  • 공통 검토사항

프로젝트 개요

  • CCTV 위치정보라는 공공데이터를 수집하고
  • 모바일 앱으로 시각화된 정보를 제공한다
  • 데이터 수집 관리 및 파생 데이터를 가공할 서버 개발 필요
  • 모바일 앱 개발 필요

예상되는 어려움

개발자 현황

  • 현재 개발자 4명
  • 앱도 만들고 서버 개발도 해야하는데 넉넉한 인원은 아니다

개발 경험 부족

  • 전체적으로 개발경험이 많은 편이 아님
  • 특히 이번에 개발하려는 모바일/웹/지도데이터 다루어 본 경험이 부족함
  • 공부도 해야되고 많은 시행착오가 예상된다

모이기가 쉽지 않다

  • 학생은 방학이지만...
  • 직장인은 회사에 출근해야 함
  • 주말이 아니면 모여서 공동작업하기 쉽지 않음
  • 물리적 거리로 의사소통이 어려움
  • 시간적 단절로 개발의욕이 떨어짐

어떻게 개발할까

오픈소스 활용

  • 가져다 쓸 수 있으면 가져다 쓰자
  • 개발서버에 설치하지 않아도 이용할 수 있는 온라인 서비스/API가 있으면 사용하자
  • 우리가 원하는 기능을 잘 구현하는게 우선순위
  • 러닝커브를 고려해서 선택해야 함 (공부해야할것들이 이미 많음)
  • 라이선스를 검토해야 함

온라인 협업 도구 활용

  • github - 버전 관리, 개발이슈 관리, 개발문서 관리, 다른 도구와 연동
  • slack - 상시적인 채팅
  • trello - 이슈 관리
  • CI(지속적 통합), 배포 등 자동화 도구 활용 검토

문서화를 잘 하자

  • 개발에 필요한 참고자료/학습자료/링크
  • 개발 관련 이슈 사항
  • 개발 모임을 하기전에 미리 공유하고 싶은 내용들
  • github 위키 - history가 남으므로 마음껏 쓰자

서버 개발 검토사항

  • 지도 데이터
    • open street map 검토
  • DB
  • 주 개발언어
  • 서버 OS
  • 길찾기 구현은 어떻게?

클라이언트 개발 검토사항

  • 앱 개발 도구/플랫폼
  • 대상 플랫폼 - 안드로이드? iOS? Web Service?
  • 개발환경 구성할 OS
  • 지도와 시각화된 정보를 나타낼 방법
  • 빌드 및 배포 자동화

공통 검토사항

  • 개발 일정?
  • 버전관리 방식?
  • 선 학습/연구 과제?
  • 해외 유사 개발사례 조사 예제 예제