Skip to content

rodvkf72/WebMailSystem

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

63 Commits
 
 
 
 
 
 
 
 

Repository files navigation

WebMailSystem

JSP를 활용한 웹 메일 시스템 유지/보수 입니다.
유지/보수 유형별 구현은 다른 유형과의 차이를 서술하기 위한 것이지 다른 유형에서 사용한 기법 및 기술을 사용하지 않은 것이 아닙니다.


역할 학과 학번 이름
팀 장 소프트웨어공학과 20143226 김광호
팀원1 소프트웨어공학과 20173114 권미소
팀원2 소프트웨어공학과 20143221 김민수
팀원3 소프트웨어공학과 20173237 김희정



폴더 분류


  • 1_ REPORT
    프로젝트 계획서, 결과 보고서 및 시스템 테스트 케이스 폴더입니다.

  • 2_ MEETING
    주차별 유스케이스 명세서, 모니터링 도구 및 회의록 폴더입니다.

  • 3_ PROJECT
    프로젝트 소스코드 폴더입니다.



개요

본 프로젝트는 '객체지향설계' 수업에서 학습한 JSP 웹 개발 방법을 기반으로 웹 메일 프로그램을 개발하고 유지/보수를 통해 더 향상된 프로그램을 만드는 것을 목표로 한다.



기대효과

  • 개인의 기술적 능력 향상
  • github를 이용한 팀원 간의 형상관리 기법 수행
  • SMTP, POP3, telnet 등 프로토콜의 원리
  • Java와 MySQL의 연동 및 slf4j 로그 사용법
  • 스크럼 기법을 통한 요구사항 위주의 개발 경험



유지/보수 유형별 구현


1. 교정 유지보수

교정 유지보수를 위해 정적 분석 도구인 Yasca, SonarQube를 사용하였습니다.
프로젝트를 진행하면서 정적 분석을 수행하고 오류 중 해결이 필요한 문제는 분석하고 수정하였습니다.


image
▲ Yasca 사용 모습



image
▲ SonarQube 사용 모습



2. 적응 유지보수

적응 유지보수를 위해 코드를 분석하였습니다.
기존의 첨부파일 추가 기능은 첨부파일이 여러개 일 경우 메인 쓰레드가 순차적으로 동작하게 되어 첨부파일 추가 시간이 오래걸릴 수 있었습니다. 따라서 유스케이스 다이어그램을 그리고 본문을 분석하여 시스템 시퀀스 다이어그램, 도메인 모델, 통신 다이어그램, 설계 클래스 다이어그램을 작성하고 코드를 수정하였습니다.


image
▲ 본문 문석


image
▲ 시스템 시퀀스 다이어그램



3. 완전화 유지보수

완전화 유지보수를 위해 시스템 테스트 케이스 작성하였습니다.


image
▲ 전체적인 시스템 테스트 케이스


image
▲ 시스템 테스트 케이스의 일부



4. 예방 유지보수

예방 유지보수를 위해 보안을 강화하였습니다.
안전한 비밀번호 예시 (http://www.strongpasswordgenerator.com) 를 참고하였으며 yasca 분석을 통한 오류 검출, 에러 페이지 생성, 비밀번호 변경 요청, XSS 공격 방지를 위한 XSS 필터 구현 등을 하였습니다.


image
▲ 안전한 비밀번호 예시


image
▲ 에러 페이지 설계



일정 계획


  • WBS
    image


  • 최소 소요기간 산정

image


  • 간트 차트

image



형상관리 / 협업도구


  • Git

image


  • Notion

image

About

JSP를 활용한 웹 메일 시스템 유지/보수 입니다.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages