본문 바로가기

분류 전체보기20

작은 단위의 산출물 일의 규모가 클수록 작게 나누고, 각 단계에서 작은 단위의 산출물을 만들어야한다.결론과 근거가 정리되어있는 각각의 산출물은 현재의 상황을 이해하고 설명할 수 있게 해준다. 설명하기 어려운 일은 협업하기 어려운 일이 된다. 작은 단위로 문제를 재정의한다.  보다 명확한 목표 설정  일의 진행 단계가 보다 명확하게 나타난다.작은 단위의 산출물   작은 단위의 문제를 해결한 결과가 정리 된다.  결론과 근거가 담긴 산출물은 현재의 상황을 공유할 수 있다.  공유할 수 있다는 것은 피드백 받을 수 있다는 의미 산출물은 그 결론이나 근거가 정답일 필요는 없다. 현재 내린 결론과 근거에 대해서 명확하게 서술할 수 있는 것으로 충분하다. 이 후 피드백이나 추가 작업을 통해 보완하면 된다. 맡은 일이 너무 크고 복잡하.. 2025. 3. 30.
DDD, Domain Driven Development란? Domain Driven Development란?"도메인 정보가 잘 표현된 프로그램"을 지향하는 것왜?프로그램이 커지고 복잡해질수록 코드에서 도메인 정보를 알기 어려워진다.오롯이 소프트웨어 개발을 위한 기술적 장치들과 지식들이 도메인에 대한 정보와 함께 난잡하게 섞여프로그램의 본질이 되는 도메인이 정의한 기능을 잘못 구현하게 될 확률이 높아지며 수정하기도 어려워진다.(몇만개의 파일, 수백만줄의 코드로 만들어진 프로그램을 상상해보자)어떻게?도메인 정보가 잘 드러날 수 있는 코딩 (디자인 패턴) 가이드가 필요하며 이를 습득함- 사내에 통용되는 용어를 동일하게 사용하여 개발- 각 용어가 정의하는 비즈니스 로직을 코드에서 명확하게 확인할 수 있는 디자인 패턴- (cqrs 패턴은 DDD하며 생긴 기술적 어려움을.. 2024. 11. 9.
눈이 아프면 모니터를 닦자 모니터를 닦으니까 눈이 안 아프다. 요즘 아침에 일찍 일어나면 카페에서 개인 시간을 보내는데 노트북을 열면 새 메일과 일을 하던 흔적들이 보인다. 그래서 오롯이 내 개인적인 일상이 담긴 컴퓨터를 사용하자고 마음먹었다. 오랜만에 내 노트북을 챙겨서 나왔는데 눈이 너무 아프더라 모니터를 열심히 닦으니 고민이 해결됐다. 부지런히 모니터를 닦으려고 LCD 클리너와 키보드 덮개를 주문하면서 일상에 나를 위한 작은 습관이 생겼다는 생각에 즐거웠다. 사소하지만 좋은 습관과 새로운 취미를 하나씩 만들어 가는 게 사는 즐거움이 되는 것 같다. 2024. 4. 12.
소프트웨어를 설계 해보자, Domain Driven Development (DDD) 왜 DDD?우리 팀의 첫번째 임무는 이미 노코드 툴로 만들어진 프로젝트 관리 시스템을 성능상의 이슈로 인해 새롭게 마이그레이션 하는 것이었다.UI/UX 차원에서 걷어내고 개선해야할 것이 많고 Database Modeling, Cloud Storage, 등을 새로 설계하고 만들어야 한다.기존 데이터를 새로운 서버에 마이그레이션도 해야한다. 물론 단계적으로 만들어 가는것이지만, 팀 내부에서만 소통하며 개발할 수 있는 상황이 아니고이미 해외에서 꽤 큰 수익을 내며 운영중인 시스템이어서 조심스러웠기 때문에우리 팀이 이해하고있는 비즈니스 도메인에 대한 이해와 기존 시스템의 쓰임새를 클라이언트와 대화를 통해 검증하고 싶었다. DDD?나는 DDD가 무엇인지 명확히 알지 못했다.관련글도 가끔 읽고, 한번쯤 시도는 해.. 2023. 5. 25.