본문 바로가기
728x90
반응형

개발5

[업무관리] 업무 나누기 - 육각형 개발자 하나의 일을 주면 처음부터 끝까지 책임지는 것이 기본이다. 개발자는 요구 사항 분석부터 구현, 출시까지 이어지는 일련의 과정을 관리하고 마무리해야한다. 여리서 책임은 혼자서 모든 일을 다 해야 한다는 뜻이 아니다. 일이 진행될 수 잇게 관리해야 한다는 뜻이다. 업무나누기 위험 관리 요구사항 이해 및 변경 대응 일정 관리 (또는 계획) [업무 나누기] 경험이 쌓이면 더 큰 업무가 주어지는데 작은 기능 단위로 주어지던 일이 작은 서비스를 만드는 수준으로 커진다. 큰 서비스 개발에 참여할 때는 일부 기능 집합을 맡은 식이다. 개발 규모가 커졌을 대 하는 실수 중 하나가 생각나는 대로 개발하는 것이다. 작은 일을 만아서 할 때는 체계적으로 진행하지 않아도 일을 완료할 수 있다. 일을 진행하기 위한 정리 작업은 .. 2023. 10. 13.
[개발 용어] 레거시에 대한 정의 레거시는 오래되었지만 여전히 사용되고 있는 코드를 말한다. 레거시 시스템은 오래된 하드웨어에서만 동작하거나 현재는 사용되지 않은 기술로 만들어진 시스템을 지칭한다. 최신 하드웨어에서 동작하지 않거나 새로운 기술을 적용하기 어렵다. 레거시 시스템을 구동할 하드웨어가 더 이상 생산되지 않으면 완전히 새로 만들어야 레거시 시스템을 변경할 수 있다. 반면에 레거시 코드는 단순히 예전 방식으로 만들어진 코드만을 지칭하는 것이 아니다. 테스트가 없는 코드를 레거시 코드로 부르기도 하고 이전 버전의 프레임워크를 사용해서 개발한 코드를 의미하기도 한다. 남이 만든 코드를 레거시 코드라고 부르기도 한다. 레거시에 대한 정의가 무엇이든 하나의 공통점이 있다. 그것은 바로 레거시는 수정하기 어렵다는 것이다. 코드 수정이 힘.. 2023. 10. 11.
[서비스 기획] 프로젝트 정의와 방법론 [프로젝트와 프로덕트 차이] 프로덕트는 서비스로 나타나는 ‘산출물’ 자체를 의미하며 프로젝트는 그 포로덕트를 만들어내는 ‘과정’을 뜻한다. 프로젝트에 더 익숙한 이유는 실제 업무에서 프로젝트를 하는 기간이 서비스를 생각하고 구성하는 시간보다 많기 때문이다. [프로젝트의 재정의] 프로젝트란 평소에 진행하는 일상적 업무가 아니라 일정 기간 목표를 위해 추진하는 특수한 업무를 말한다. 방법이나 내용적인 면은 천차만별이지만 사실 어느 직군, 어느 업무에서든 쓸 수 있는 단어다. 개발에서의 프로젝트는 ‘기획-디자인-개발-테스트-오픈’이라는 다섯 단계를 ‘기획자, 디자이너, 개발자’라는 최소 세 개의 직군이 함께하여 IT직군이 함께하여 IT시스템으로 서비스를 함께 만들어내는 협업 업무를 의미한다. 기획자는 기술직으.. 2023. 9. 30.
[Spring] Service의 정의와 역할 (+ 트랜잭션) [Spring] Service의 정의와 역할 (+ 트랜잭션) [트랜잭션] 트랜잭션이란 데이터베이스에서 데이터 처리를 위한 하나의 논리적인 작업 단위를 의미 [@Service란] @Service는 스프링의 비즈니스 로직 처리에서 트랜잭션 처리를 위한 구간이며, @Repository에 속하는 여러 메서드들을 하나의 작업 단위로 묶어 처리되는 데이터 작업 중 하나라도 실패하게 된다면 Rollback 시키고 모두 정상적으로 처리되면 Commit 시켜준다. [******* 별이 다섯개~~ 구간 ******] @Service구간이 정상적으로 구현되어 있다면 사용자가 시스템을 사용하는 도중 데이터 처리와 관련된 에러가 발생하더라도일부 데이터만 생기는 등의 문제가 발생되지 않습니다. - @Transactional 어노.. 2023. 4. 7.
[Spring] 비즈니스 로직이란? [비즈니스 로직이란?] - 실제 DB와 연동하여 Data를 얻어오기 위한 작업을 수행하는 영역 - 비즈니스(서비스) 로직 수행 - 컴퓨터 프로그램에서 실세계의 규칙에 따라 데이터를 생성·표시·저장·변경하는 부분을 일컫는다. 이 용어는 특히 데이터베이스, 표시장치 등 프로그램의 다른 부분과 대조되는 개념으로 쓰인다. 서비스 영역을 지칭하기도 한다. * 업무를 하면서 가장 기본적으로 알아야 하는 용어 2023. 4. 6.
728x90
반응형