최프 - 210116토 오전 수업

갓김치·2021년 1월 16일
0

최종프로젝트

목록 보기
5/19

오늘 일정

1: 프로젝트시 유의점
2: 요구사항 정의서 작성 및 보완
3: 검토
4. 메뉴구조도 작성 및 보완
5: 개발환경구성시 유의점
6: 메뉴구조도 검토
7: erd 또는 화면정의서 작성 및 보완
8: erd 또는 화면 정의서 작성 및 보완

  • 빨리 끝내놓으면 다시 고칠 수 있고, 보완할 수 있다

프로젝트 수행 기본 절차

분석

설계 (1주)

  • 테이블정의서
  • erd
  • 줄일건 줄여서 쓰도록
  • 화면구성을 ppt말고 차라리 jsp로 만들어라

구현 (4주)

  • 4주안에 구현

테스트 (1주)

  • ㄱㄱㄱㄴㄴㄴ 테스트하면안됨
  • 2주 3주전에 끝나야 제대로 테스트할 수 있음

배포

  • 원래는 사용자, 운영자 매뉴얼, 프로젝트 안내서를 써야함
  • 운영자매뉴얼: 배포했으니 기동하고 하는 방법, 장애조치에 관한 내용

프로젝트 수행시 신입사원 역할

  • 분석때 분석만하고, 설계때 설계만하고, 구현때 구현만하면 망한다

분석

  • 담당업무 분석: 해당 업무 담당자라는 사실을 인지
  • 사용자 유형 분석: 외부/내부사용자, 관리자, 운영자등 파악
  • 분석산출물 작성: 가이드에 따른 산출물 작성
  • 구현기술습득: 프로젝트 수행간 사용되는 기술 스스로 학습

설계

  • 담당업무 설계: 구현할 화면과 클래스에 대한 정의
  • 설계산출물작성: 가이드에 따른 산출물 작성
  • 구현기술습득: 관련 샘플 프로그램 수시로 작성
  • 설계기간에 설계에만 치중하면 구현 1주차에 헤메게 되어있음

구현

  • 담당업무 구현: 일별 진행 일정과 보고 일정을 분리해서 진행
  • 단위테스트 실시: 해당 프로그램 구현 후 꼭 테스트 진행할 것
    • 자기 코드 테스트 돌려보는것은 필수임

테스트

  • 테스트만 하면서 문제점 고치는 기간
  • 통합테스트실시: 업무흐름에 딸느 데이터 진행확인
  • 통합테스트결과 반영 오류 및 개선사항 반영

배포

  • 시스템안정화: 오류 및 개선사항 반영
  • 잘하는 사람에게 한시간 짜리 일.. 테스트때 이미 준비를 마쳤기때문

실무프로젝트 실시간 교육생 자세

  • 적극적인 수행자 입장이 될 것
  • 전과정을 직접 경험할 수 있도록 할 것
  • 지금 위치한 공간은 개발원이 아니고 회사라고 인식할 것
  • 원하는 결과를 묻지 말고, 그 결과를 만들어 낼 것
  • 지금까지 배운 내용을 기반으로 각자 1개 모듈 이상 개발할 것
    • 지금 잘 만들어둬야 나중에 회사에서도 쓸 수 있음
  • 질문방법
    • x : 이거뭐에요? 어떻게해요?
    • o : 이렇게 했는데 좋은 방법인가요, 어느 사이트를 참고해야할까요,

실무프로젝트 구성 방안

  • 형상관리툴 (svn, git)사용
  • 팀별 문서서버 운영
  • 현장에서 많이 쓰는 기술 적용 고려
    • 기본구성: mybatis, 전자정부, log4j 등
    • 필수구성: excel 다운/업로드, jquery, tree구조 조직도
    • model2 구현 (spring mvc)
  • 고급기술 활용도 고려
    • 일부 서비스 모바일 화면제공
    • 화면관련 오픈API
    • SOA기술을 통한 데이터 통신
    • 텍스트/XML 파일 파싱 및 생성
      • 가서도 쓸 수 있는 기술
    • 오픈소스 활용기술 (APACHE COMMONS) 라이브러리 활용
      • 파일생성 간단
      • 텍스트파일 작성하기 위해 2줄이면 끝난다?

효율적인 개발일정

  • 3H: 프로그램(CRUD 한 세트) 개발
  • 2H: 테스트 및 보완
  • 2H: 다음프로그램 SQL준비
  • 1H: 퇴근준비 및 미비점보완
  • 저녁시간: 개발기술습득

레이어 기반 구현

  • jsp: 화면ㅍ시에 관한 기술만 구현
  • controller: 조건에 따른 서비스 및 jsp 선택
  • service: 트랜잭션 보장 단위로 구현 (예: 본문저장과 첨부파일저장)
  • dao: db를 대상으로 등록, 조회, 수정, 삭제 단위 기능만 구현
  • db

조언

산출물

  • vo,컨트롤러,jsp만 만들면 액션타서넘길수있음 프로그램목록 산출물도 만들수있음?
  • 메뉴구조도
    • 간략하게 줄여라, 기존것은 요구사항추적도와 메뉴구조도가 섞여있다
    • 기존것에는 '수정,삭제'라고 있는데 그런건 메뉴로 있을 게 아니다
    • kised.or.kr
      • 1depth: 알림마당
      • 2depth: 공지사항, 사업공고, 입찰공고
    • 메뉴가 depth가 깊어봤자 못찾아들어감 통상3depth에서 끝남
    • 탑메뉴 있고, 탑메뉴 선택해서나오는게 중간메뉴,
    • 서식을 화면ID와 요구사항ID빼고 권한으로 수정해라, 메뉴ID같은건 빼라
  • 요구사항정의서
    • id와 공백 신경써라, 내용 토씨하나 서술하는게아님

우리팀 조언

  • 차량번호판인식같은건 뒤로 빼도록

제안요청서

  • 나라장터에서 시스템이라고 검색하면 제안요청서가 나옴

COMMON-IO

DB

  • 오라클 data dictionary 사용
  • 코멘트 달아놓거나 하면 쿼리로 코드 뽑아낼 수 있음

업무분배

DB

  • 관리자기능부터 DB
  • 기본틀을 1-2명이 잡아라
  • 한번에 완성될 수 없음 계속 수정이 필요하니 글

화면단

  • 부트스트랩준비
  • JSP로 화면정의서
  • DB했던사람은 분량을 조금 적게주고

개발환경 구축

  • c드라이브-3.8.0-아파치톰캣/이클립스/워크스페이스
  • sql-mapper-config.xml: camlecase설정으로 vo와 컬럼매핑가능
  • Data Source Explorer 쓸 줄알면 편해짐

프로젝트만들기

  • new - other - eGovFrame - egov Web Project

메서드

  • 매개변수 String하지말고 무조건 vo로해라 나중에 매개변수가 추가될수 있으니
  • 모든데이터는 VO에 담아 넘긴다

중복등록방지

  • 게시판 등록시 f5 계속 넣었을 때 어떡할래 => 방지방법알려주실것

기타

  • 맥 드라이브 m2?mvc?mvm? 아마존에서 구매후 젠더로 연결?

앞으로의 일정

전체일정



다음주일정

  • 기본개발셋팅, 설계부분 검토하실 것
  • 늦어도 다음주까지 설계 및 쉬운 기능 한번씩해봐야함
profile
갈 길이 멀다

0개의 댓글