1.팀구성
  • 1팀은 3명 ~ 4명이며, 팀원들이 팀장을 선출하고, 팀명을 정합니다.
  • 모든 팀원은 팀장의 리딩을 따라야 하며, 팀장은 모든 팀원의 역할을 명확히 제시하여야 합니다.
  • 팀장의 주재로 "기술분야"를 정하는 팀원회의를 합니다.
  • 기술분야는 심화전공트랙에 맞춰 【AI】,【AIoT(IoT,블록체인)】,【클라우드】중에 하나를 정합니다.
  • 팀장의 역할은 팀원관리, 일정관리, 산출물관리를 합니다.
  • 프로젝트가 끝날때에 팀원 상호평가를 합니다.
  • 산출물: 팀구성신청서
2.기획단계
  • 기획단계에서는 미리 정해놓은 기술분야에 부합되도록 주제를 정합니다.
  • 컴퓨터공학과 심화전공트랙별 프로젝트 요건 페이지를 보고, 개발범위에 맞게 기획하여야 합니다.
  • 최신기술동향과 사회적이슈(예, GPT4.0, Bard, 자율주행, NFT 등)를 고려하고 많은 벤치마킹으로 주제를 정합니다.
  • 주제는 아래와 같은 예시를 참고하여, 비슷한 방식(~~기술을 이용한 ~~~서비스개발)으로 명칭을 정합니다.
  • 단, 서비스개발(백엔드, 프런트엔드 개발)은 분야를 막론하고 공동으로 개발되어야 합니다.
    • 예시1) 상단메뉴(Portfolio) 페이지를 참조하세요. (프로젝트 상세내용을 펼쳐서 보세요)
    • 예시2) 웹기반 머신러닝기술을 이용한 예약가 자동구매 쇼핑서비스개발
    • 예시3) IoT와 AI기술을 이용한 음성인식 경매시스템 개발
    • 예시4) 블록체인 기반의 IoT 청과물 운송시스템 개발
    • 예시5) 실시간 공유기술를 이용한 모바일 여행보조 서비스 개발

  • 샘플1: "0팀-제안서v1.0-이름1-이름2-이름3-이름4.pptx"
  • 샘플2: "1팀-제안서v1.0-이름1-이름2-이름3-이름4.pptx"
  • 샘플3: "2팀-제안서v1.0-이름1-이름2-이름3-이름4.pptx"
3.설계단계
  • 설계단계의 산출물은 "요구분석 및 설계서"입니다.
  • 설계는 구현과 테스트시 발생할 오류를 원천차단하기 위해, 최대한 상세히, 분량도 200페이지이상 작성합니다.
  • 설계서의 목차는 기술분야에 따라서 다르므로 ,각 기술분야에 맞는 목차대로 작성하세요.
  • 설계서는 학과표준 템플릿(양식)을 다운로드받아, 작성한후, 아래파일명으로 제출합니다.
  • 산출물(AI트랙용): "0팀-설계서v1.0-AI트랙-홍길동-김길동-박길동-홍길동.hwp"
  • 산출물(AIoT트랙용): "0팀-설계서v1.0-AIoT트랙-홍길동-김길동-박길동-홍길동.hwp"
  • 데이터분석/AI분야
    1. 프로젝트 개요
    2. 요구사항정의
    3. 데이터분석/AI기술고찰, AI학습모델요구사항, 서비스요구사항
    4. 데이터분석
    5. 데이터수집, 특징분석/특징추출, 필터링, 데이터셋 생성
    6. AI학습설계
    7. 모델파이프라인설계, 파라메터설정, 모델생성/성능평가
    8. 화면설계
    9. 사용자메뉴구성, 사용자 화면설계(웹,모바일), 관리자메뉴구성, 관리자화면설계(웹)
    10. 기능설계
    11. 사용자기능설계(UML), 관리자기능설계(UML, AI학습모델 업데이트관리)
    12. API설계
    13. REST API정의, API상세설계
    14. 데이터설계
    15. ERD, DB테이블명세서(학습결과DB포함), 로그파일설계, 오류코드설계
    16. 성능시험지표
    17. 예측/분석정확도(ROC 등), 서비스기능/성능등 성능평가지표
    18. 개발환경설정
    19. 환경사양/버전(HW,OS,프레임워크,IDE), 소스디렉터리구조/파일명리스트
    AIoT분야
    1. 프로젝트 개요
    2. 요구사항정의
    3. 디바이스요구사항, (사용자,관리자) 기능요구사항, AI요구사항
    4. IoT 디바이스설계
    5. 보드/센서규격, 회로도설계, 하우징(외관)규격/설계
    6. 센서데이터분석
    7. 센서데이터수집, 특징분석/특징추출, 필터링, 데이터세트 생성,학습모델생성
    8. 화면설계
    9. 사용자메뉴구성, 사용자 화면설계(웹,모바일), 관리자메뉴구성, 관리자화면설계(웹)
    10. 기능설계
    11. 사용자기능설계(UML), 관리자기능설계(UML, AI학습모델 업데이트 배포관리)
    12. API설계
    13. BLE프로토콜 설계, REST API정의, REST API상세설계
    14. 데이터설계
    15. ERD, DB테이블명세서, 로그파일설계, 오류코드설계
    16. 성능시험지표
    17. 서비스기능/성능등 목표결과제시
    18. 개발환경설정
    19. 환경사양/버전(HW,OS,프레임워크,IDE), 소스디렉터리구조/파일명리스트
    클라우드 분야
    1. 프로젝트 개요
    2. 요구사항정의
    3. 인프라스트럭쳐 설계
    4. 클라우드프로바이더(AWS,Azure,Google Cloud) 선정
      리소스(서비스,DB,네트워크 등)정의, 마이크로서비스아키텍쳐설계
    5. 화면설계
    6. 사용자메뉴구성, 사용자 화면설계(웹,모바일), 관리자메뉴구성, 관리자화면설계(웹)
    7. 기능설계
    8. 사용자기능설계(UML), 관리자기능설계(UML),컨테이너내의 구성
    9. API설계
    10. 각 컨테이너별 API, REST API정의, API상세설계
    11. 데이터설계
    12. ERD, 테이블명세서, 로그설계, 오류코드설계
    13. 성능시험지표
    14. 서비스기능/성능등 목표결과제시
    15. 서비스패킹 및 배포방안 설계
    16. 컨테이너(도커)설계, 오케스트레이션(쿠버네티스)정의, 배포방안
4.구현단계
  • 먼저, 구현진도표 작성방법()에 따라 작성하여 제출한 후, 팀장이 구현진도표의 일정을 체크하고 관리합니다.
  • 구현은 개발환경에 맞도록 구현하되, 반드시 학과 프로젝트서버(ceprj.gachon.ac.kr)에 포팅하여야 합니다.
  • 개발은 모든팀원이 github을 사용하여 팀원간 협업코딩을 하며, v0.3, v0.5, v0.9, v1.0 마다 학과서버에 모든소스를 통합합니다.
  • 진도점검은 v0.5, v0.9에 하며, 반드시 학과서버에 통합한 후에 시연하여야 합니다.
  • 다만, 클라우드를 이용하여 개발한 서비스의 경우, 컨테이너(Docker)에서 운용할 경우에는 서비스이용이 가능하도록 유지합니다.
  • 백엔드 개발프레임워크는 Java/Spring 또는 Node/express를 사용하며, DB는 MariaDB 을 사용합니다.
  • 학과서버를 팀별로 사용할 수 있도록, (리눅스 팀계정/암호), (DB계정/암호),(팀전용포트)를 제공합니다.
  • 다만, DB명과 테이블명은 팀마다 각각 다르게 생성하여 데이터를 저장할 수 있습니다.
  • 학과 프로젝트서버는 랙타입(4U)서버로써, a5000 AI용 고성능 GPU가 탑재된 Rocky Linux OS환경입니다.
  • 학과 프로젝트서버는 프로젝트 수업중에 자세한 안내방법을 공지합니다.
  • 산출물: 구현진도표, 프로그램소스코드, DB 데이터백업파일(팀명-dbbackup.sql)
5.시험단계
  • 시험단계는 기능시험과 성능시험을 수행하고 그 시험결과서를 작성합니다.
  • 기능시험은 동작이 설계한 대로 되는지를 확인하는 과정입니다. (예, 회원가입시 입력한 정보가 정확히 DB에 저장되는지를 확인).
  • 또한, 비정상적인 경우도 시험해야 합니다. (예, 회원가입시, 허용길이보다 훨씬 길 문자열을 입력했을때 어떻게 동작되는지 등)
  • 성능시험은 설계서에서 정의한 성능시험지표로 시험하되, 동작과정에서의 응답시간, 처리시간, 소요시간이 적당한지를 확인하는 과정입니다.
    (예, 성능평가지표가 로그인 응답시간이 1초이내어어야 한다면, 그것을 만족하는지를 확인)
  • 산출물: 시험결과서(완료보고서에 포함시킴)
6.완료단계
  • 완료단계에서는 완료보고서를 작성합니다.
  • 완료보고서는 운영환경, 운영메뉴얼, 프로그램참조메뉴얼, 데이터참조메뉴얼, 개발후기로 구분하여 작성합니다.
  • 운영환경은 개발한 프로그램이 정상적으로 수행되려면 필요한 모듈, 라이브러리, 설정파일, 설정내용, 테스트용 계정 등을 설명합니다.
  • 운영메뉴얼은개발한 프로그램의 실행절차, 종료절차, 예상되는 장애목록, 장애시 조치사항을 설명합니다.
  • 프로그램참조메뉴얼은 개발한 프로그램의 디렉터리 구조, 파일목록, 각 파일의 기능을 설명합니다.
  • 데이터참조메뉴얼은 프로그램을 실행하는데 필요한 주요데이터 파일, 파일용도, 파일포맷, 데이터수집방법, 데이터처리방법을 설명합니다.
  • 시연동영상을 5분짜리로 편집하여 제출합니다.
  • 산출물: 완료보고서(doc), 시연동영상(mp4), 작품프로필 1장(pptx), 각 단계별 모든 산출물