무지개곰
article thumbnail

목차

관리자 계정 구분

관리자 페이지의 필요 기능

와이어 프레임

ERD

Flow chart

느낀 점


관리자 계정 구분

로그인 한 사용자가 관리자인지 아닌지 구분하기 위하여 DB에 정보를 저장

고민한 방법

  1. 현재 userinfo 테이블에 관리자 구별을 위한 column을 추가하는 방법
  2. 관리자 계정만 모아서 저장하는 테이블 추가로 생성

선택한 방법

관리자 계정을 저장하는 테이블을 추가로 생성하기로 결정

 

이유

관리자인지 아닌지 구분하기 위하여 DB에서 값을 조회할 때 모든 사용자 정보 속에서 구분하는 것보다 소수의 관리자 정보가 저장된 테이블을 조회하는 방법이 빠를 것으로 판단 (반정규화)


관리자 페이지의 필요 기능

관리자 페이지의 기능은 프로젝트를 진행하며 추가될 것으로 예상
한 번에 모든 것을 고민하는 것보다 단계별로 겪으며 고민하는 과정을 선택

우선적으로 구현할 기능

  • 관리자 cookie로 session을 확인하여 관리자 계정이 아니면 /admin경로 접근 불가 (동일한 로직으로 로그인하지 않은 유저는 root url로 이동하게 설정)
  • 관리자는 일반 페이지에서 헤더의 프로필 클릭 시 드롭다운에 메뉴 추가)
  • 기술 스택 테이블에 정보 CRUD 기능
  • 기술 스택 테이블에 CUD는 관리자 테이블에 저장된 사용자만 가능하도록 제한
  • 관리자 권한 부여 기능

와이어 프레임

관리자 페이지는 최소한의 UI로 기능 구현을 최우선의 목표로 잡음

 

url : /admin

 

url : /admin/home

 

url : /admin/setting/tech

 

url : /admin/setting/rank


ERD

  • default 값
    • rank의 기본 값은 5로 지정
    • password의 기본 값은 000000으로 지정
  • rank
    • rank별로 권한에 차별을 주어 관리
    • 최상위 rank값 1
    • rank 별로 권한은 추후에 고민
  • password
    • password는 기본 값을 000000으로 지정하여 관리자 접속 시 비밀번호 변경
    • 변경 방법은 추후에 추가

Flow chart

 


느낀 점

이전까지 프로젝트는 기능을 구현하고 작동을 하는 것을 목표로 찍어내듯 진행하였습니다.

Prism 프로젝트의 경우 기능 하나하나를 Flow chart도 생각해 보고 작업의 우선순위를 구별하고 작업 과정을 기록하는 과정을 중점적으로 진행하고 있습니다.

이러한 과정을 통하여 여태까지 프로젝트들을 진행하며 상당히 많은 부분을 놓치고 있었다는 것을 느끼고 있습니다.

한편으론 작업 속도가 이전만큼 빠르지 않아 걱정이 되지만 속도는 노력으로 보완하고 기록하는 습관을 통하여 놓치고 있던 부분을 확실하게 공부하며 성장한다는 생각에 너무 뿌듯한 프로젝트라고 느끼고 있습니다.

profile

무지개곰

@무지개곰

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!