본문 바로가기

전체 글192

85일차: Pre-Project Day 5 (이슈 설정, 역할 분담) 어제까지 정리했던 사용자 요구사항 정의서 내용을 바탕으로 프론트엔드 / 백엔드로 구분해서 이슈를 설정하고 칸반보드를 작성했다. 우선순위(중요도)에 따라서 이슈를 구분하고나니 무엇부터 해야할지, 어떻게 진행해야할지 어느정도 흐름은 보이는것같다. 백엔드 업무분장을 할 때 [API / 보안 및 인증 / 서버 및 배포] 이렇게 기능별로 나누는 것이 좋을지, 아니면 비즈니스 로직들을 도메인에 따라 [회원 / 질문 / 답변] 으로 나누는게 좋을지 이야기를 했다. 실제 업무였다면 첫번째 방법으로 진행하는것이 전문성을 갖추기에는 좋을것같다는 생각이 들었으나 학습하는 입장에서는 작은 단위로 쪼개 여러가지를 경험하는것이 좋을것같다고 의견이 모아졌다. 그리고 어려운 부분이나 겹치는 부분에 대해서는 같이 얘기하면서 구현해보기.. 2023. 6. 15.
84일차: Pre-Project Day 4 (사용자 요구사항 정의서, ERD) 팀원들과 회의를 시작하기에 앞서 클론 과제인 스택오버플로우 사이트를 찾아보고 어떤 기능들이 있는지, 내가 구현할 수 있는 기능은 어떤 것들이 있을지 생각해 보았다. 먼저 요구사항을 큰 기능 단위로 나누고 세부적인 기능들로 구분하였다. 프론트엔드 부분은 어떤 기능이 구현 가능한지, 어떤 식으로 구분하는 것이 좋은지 판단할 수 없어서 해당 부분은 제외했다. 회의를 통해 서로 할 수 있는 부분, 하고 싶은 부분에 대해 얘기해서 매칭되는 부분을 위주로 진행해야 할 것 같다. 요구사항ID 요구사항명 세부기능ID 세부기능명 상세설명 우선순위 비고 PP-01 멤버십 PP-01-M-01 회원가입 아이디와 비밀번호를 입력받아 회원가입 요청 처리 1 아이디 / 비밀번호 유효성 검증 PP-01 멤버십 PP-.. 2023. 6. 14.
83일차: Pre-Project Day 3 (프로젝트 관리) 프로젝트의 기획부터 구현, 배포 및 테스트까지의 전반적인 흐름에 대해 학습하였다. 이때까지 진행되었던 학습은 코드 작성에 중점을 두었기 때문에 기획, 분석, 설계 단계 없이 바로 구현만 진행했는데 프로젝트부터는 직접 어떤 기능이 필요할지 생각해보고 일정과 개발 단계를 관리해야하기때문에 프로젝트를 관리법 또한 잘 알아야한다. ❯ 비즈니스 관점에서의 개발 프로젝트 과업 발생: 수행해야할 프로젝트가 발생한다. 이 때 회사 내부에서 자체적으로 해결할 수 있겠지만 필요한 경우 다른 업체에게 프로젝트를 위탁할수도 있다. 사업자 선정 및 계약: 외부 업체에 발주를 진행할 경우 위탁 업체에게 RFP(Request For Proposal, 제안 요청서)를 요청할 수 있다. RFP를 통해 적절한 제안을 제시한 업체를 선정.. 2023. 6. 13.
82일차: Pre-Project Day 2 (GitHub 다루기) 팀을 이루어 하나의 프로젝트를 진행할 때 중요한 부분 중 일정 및 업무 관리, 코드 이력 관리가 있다. 오늘은 그 방법에 대해 학습하였다. ❯ GitHub Repository 이미 여러 학습을 하면서 레포지토리를 생성해보기도 하고 다른 레포지토리를 Fork 하기도 하고 Push, Pull, PR 하면서 실습을 진행했다. 레포지토리에서 실질적인 코드 뿐만 아니라 여러 파일들을 확인할 수 있었는데, 이때까지는 크게 수정할일이 없었지만 프로젝트부터는 해당 파일들을 관리하는 것 또한 수행해야 할 내용 중 하나이다. README.md: 마크다운 문법을 통해 작성할 수 있으며 다른 사용자나 개발자가 해당 프로젝트를 사용/이해하는데 도움 되는 내용을 제공한다. .gitignore: git을 통해 관리하지 않는 파일을.. 2023. 6. 12.
[Spring] HandlerInterceptor HandlerInterceptor Spring MVC에서 HTTP 요청을 처리하는 과정에서 요청과 응답 사이에 Intercept 하여 원하는 동작을 수행할 수 있는 인터페이스를 말한다. 요청을 가로채는 시점의 Spring Context와 Bean에 접근할 수 있다. HandlerInterceptor의 특징은 다음과 같다. 1. 컨트롤러 동작 전/후에 작업 수행이 가능하다. 요청의 전처리(인증, 권한 검사 등)나 후처리(데이터 변환, 로깅 등)에 사용할 수 있다. 2. 체인 형태의 다중 인터셉터: 여러개의 HandlerInterceptor를 등록한 후 체인 형태로 동작시킬 수 있다. 3. 요청 및 응답 조작: HttpServletRequest와 HttpServletResponse 객체를 전달받아 요청과 응.. 2023. 6. 11.
81일차: Pre-Project Day 1 (팀빌딩) 드디어 프로젝트가 시작되었다. 오늘은 첫날인만큼 OT, 팀빌딩이 주로 이루어졌다. 프론트엔드 4명 + 백엔드 3명으로 팀이 구성되었고 FE, BE에서 팀장 / 부팀장을 각각 한명씩 정해야하는데 FE에서 팀장을 맡아주시기로 했고, 나는 부팀장을 맡게 되었다. 아무래도 전체 일정도 챙기고 진행상황도 관리하려면 이해도가 있어야할 것 같은데 아직 스스로 많이 부족하다고 생각하기때문에 더 많은 시간과 노력을 투자해야할 것 같다. 주말동안 지난번 구현했던 Q&A 게시판도 한번 다시 확인해봐야겠다. 이제 본격적인 시작에 앞서 Git 사용법, 일정 관리 프로그램 설정, 팀 규칙 설정 등 기본적인 내용부터 정해가고있다. 혼자 작성하는게 아니다보니 Git이나 다른 프로그램을 아무래도 더 조심해서 다루어야할 것 같다. 일정.. 2023. 6. 9.