소프트웨어를 설계할때 구현이 쉽도록 잘 짜는방법

제목과 같이 소프트웨어를 설계할때 어떻게 기획해야지 잘 설계할수있을까요? 소프트웨어 요구사항 정의서에 들어갔으면 하는 요소나 다이어그램 등등을 자세하게 배우고 싶습니다.

3개의 답변이 있어요!

  • 안녕하세요. 박재화 전문가입니다.

    소프트웨어 설계 시 구현이 쉽게 잘짜는 핵심은 복잡하게 쓰는 게 아니고 누가 무엇을 왜 쓰는지를 명확하게 쪼개는 것입니다.

    요구되는 사항이나 목적, 그리고 사용자, 기능, 예외상황 같은 것들만 정확히 잡아도 대부분 잘 풀릴 수 있다고 합니다. 기능의 경우 사용자가 ~ 할 수 있다 처럼 바로 구현 가능한 문장으로 작성하시고, 다이어그램은 유스케이스와 화면흐름, 시퀀스, ERD 이 4개만 제대로 그려도 충분할 것 같습니다.

    예쁘게 하는 것보다 헷갈리지 않고, 작게 나눠서 쓰는 것이 좋은 설계가 아닐까 싶습니다.

  • 안녕하세요. 김상엽 전문가입니다.

    설계 시 요구사항 정의, 구조도 작성, 모듈 분리, 데이터 흐름 정리가 중요합니다. UML이나 다이어그램을 활용해 구조를 명확히 하면 구현이 쉬워지고 유지보수도 편해집니다.

  • 안녕하세요. 김재훈 전문가입니다.

    좋은 소프트웨어 설계는 처음부터 기능을 다 만들기보다 요그사항 전의서에 목적 사용자 시나리오 기능 비기능 요구사항 제약조건을 명확히 정리하고 이를 바탕으로 유스케이스 시퀀스 클래스 다이어그램 등으로 구조와 흐름을 시각화해 구현전에 오류를 줄이는 것이 핵심입니다 또한 기능을 모듈 단위로 잘게 나누고 인터페이스를 머저 정의하면 각 부분을 독립적으로 개발할 수 있어 유지수와 확장이 쉬워집니다 마지막으로 변경을 고려한 유연한 구조와 테스트 계획까지 함께 설계하면 실제 구현 난이도가 크게 낮아집니다