안녕하세요. 박재화 전문가입니다.
소프트웨어 설계 시 구현이 쉽게 잘짜는 핵심은 복잡하게 쓰는 게 아니고 누가 무엇을 왜 쓰는지를 명확하게 쪼개는 것입니다.
요구되는 사항이나 목적, 그리고 사용자, 기능, 예외상황 같은 것들만 정확히 잡아도 대부분 잘 풀릴 수 있다고 합니다. 기능의 경우 사용자가 ~ 할 수 있다 처럼 바로 구현 가능한 문장으로 작성하시고, 다이어그램은 유스케이스와 화면흐름, 시퀀스, ERD 이 4개만 제대로 그려도 충분할 것 같습니다.
예쁘게 하는 것보다 헷갈리지 않고, 작게 나눠서 쓰는 것이 좋은 설계가 아닐까 싶습니다.