Skip to content

2021-2학기 소프트웨어공학 / 실습 관리 시스템 MateStudy

Notifications You must be signed in to change notification settings

junguk98/MateStudy

 
 

Repository files navigation

MateStudy




2021-2 소프트웨어공학개론 일찍칼퇴팀

🥇

프로젝트 우수팀 선정

-11팀 중 6팀 우수팀 시상-

주제 : 실습 관리 시스템

개발 기간 : 21.11.06 ~ 21.12.01

유지보수 기간 :

프로젝트 개요

2021-2학기 최은만 교수님의 소프트웨어공학개론을 수강하며 배운
소프트웨어 개발 주기 사이클을 프로젝트로서 체화하는 경험을 갖었다.
구체적으로 사용사례 명세, 클래스 다이어그램 설계, 프로젝트 백로그 수립, 스프린트와 백로그,
UI 설계, 스프린트 과정을 거쳐 본 프로젝트를 마무리하였다.
프론트엔드 개발

2016112144 김민석
2017112083 김범규

백엔드 개발

2017112129 이정욱 - 컨트롤러 설계 및 개발, DB 설계, 백엔드 통신 및 뷰 처리, 권한에 따른 라우팅 처리
2017112095 최준호 - DB 설계 및 RDS 관리, 스프링 DATA JPA 활용한 도메인 개발, 컨트롤러 일부 처리 등

소프트웨어 개발 문서, DB 설계 내용, 백엔드 구현 문서 관련


사용사례 명세, 클래스 다이어그램 설계, DB 설계등의 내용과
애자일 방법론으로 스프린트 백로그 작성 및
스프린트 회고 과정에 관한 문서, 백엔드 개발 과정에서 참고한 문서들이 다음의 노션 링크에 정리되어있다.
https://periodic-leopard-f2d.notion.site/21-11-06-21-12-01-86cb225a9ed9452b9b4cc85d5e0e42b0

DB 관련 설정


  • src/main/resources/ 경로에 application.yml 작성 필요
  • DB의 경우 데모때 사용한 DB를 백업하여 DB_Backups에 제공하고 있음
spring:
  datasource:
    url: jdbc:mysql://[MySQL DB 경로 입력]
    username: [유저네임 입력]
    password: [비밀번호 입력]
    driver-class-name: com.mysql.cj.jdbc.Driver
  jpa:
    hibernate:
      ddl-auto: none
      naming:
        physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl # JPA에서 Physical 모델 생성 관련 설정
    database: mysql
    database-platform: org.hibernate.dialect.MySQL5InnoDBDialect
    properties:
      hibernate:
        show_sql: true
        format_sql: true
        use_sql_comments: true
logging:
  level:
    org:
      springframework:
        security: DEBUG

구현 결과물 요약


1. 로그인

  • 실습 관리자와 학생이 실습관리시스템에 접속하기 위해 로그인을 한다.
    • 회원의 Role에 따라 실습 관리자 또는 학생 계정으로 로그인이 된다.
    • 보안을 위해 스프링 시큐리티 적용하여 로그인한 유저의 정보를 관리한다. login

2. 실습과제 관리

  • 실습과제 관리자는 과제를 등록, 조회, 수정 삭제한다.
  • 학생은 부여받은 과제를 등록, 조회, 수정, 삭제한다. hw-admin

과제등록하기-교수

과제 세부

  • 학생은 과제 점수를 확인한다. image

3. 실습과제 채점

  • 실습과제 관리자는 자신이 관리하는 학생들의 과제를 확인하여 점수를 부여한다. 채점하기-교수

4. 질문 관리

  • 실습과제 관리자는 자신이 담당하는 모든 과목 또는 특정 과목에서 학생이 올린 질문들을 확인하고 답변한다.
  • 학생은 자신이 속한 모든 과목 또는 특정 과목에서 질문을 등록하고 조회한다.
  • 학생은 답변을 확인이 가능하고 추가 질문을 한다. question-admin

image

5. 출석 관리

  • 실습과제 관리자는 자신이 담당하는 과목들에 소속된 학생들의 출석('미정', '출석', '지각', '결석', '공결')을 확인하고, 등록, 갱신한다.
  • 학생은 자신이 속한 과목들의 출석 정보를 확인한다.

attend-admin

attend-admin-specific-class

6. 채팅 (미구현)

About

2021-2학기 소프트웨어공학 / 실습 관리 시스템 MateStudy

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 58.3%
  • HTML 39.3%
  • JavaScript 2.4%