logo
한달 포트폴리오 멘토링
블로그

저번 포스팅에서는 프로젝트 관리 및 화면 기획 및 디자인에 사용하는 도구들을 알아보았습니다. 이번에는 프로젝트 설계 및 테스팅할때 도움이 되는 도구들을 알아보겠습니다.

설계

ERDCloud (DB설계)

ErdCloud온라인에서 ERD Diagram을 그려 SQL 데이터베이스 설계를 할수 있게 만드는 도구입니다. Cloud이기 때문에 팀원들과 공유가 쉽고 SQL나 PNG로 export가 가능하기 때문에 설계한 erd를 바로 sql서버에 적용해 볼수 있습니다.

또한 library에서 다른사람이 공개한 ERD를 볼 수 있어 자신의 데이터베이스 설계시에 참고할 수 있습니다.

PlantUML (UML)

PlantUmlText로 UML 다이어그램을 그려주는 툴입니다. SequnceDiagram, ClassDiagram 등 유용한 다이어그램들을 그릴 수 있죠. 텍스트로 그림을 그려보면 다시는 마우스로 못그릴 정도로 편합니다... VSCode에는 PlantUML plugin인이 존재해 플러그인을 설치하고 .puml 파일을 만들어 다이어그램을 만들 수 있습니다. 또한 온라인 에디터도 존재하니 설치하기 귀찮은 분들은 온라인에서 편집해보세요 ㅎㅎ 저는 주로 전체 소프트웨어 디자인을 UML로 그리기 보다는 복잡한 기능을 설명할때 SequnceDiagram을 통해 설명하곤 합니다.

Swagger UI (API)

Swagger는 API를 Documentation하는데 사용하는 도구입니다. API 문서를 볼수 있을 뿐 아니라 Postman처럼 API를 호출하고 응답을 받는 기능도 제공하는 도구입니다.

언어별로 라이브러리를 제공하며 API를 자동으로 검색해서 문서를 만들어주기도 합니다. 따라서 실제 사용시에는 사전 설계 단계 보다 서버 테스팅전에 많이 배포하기도 합니다. API 설계 자체는 notion이나 excel로 작업한 후 마지막 문서화때 만들어진 코드에 Swagger를 적용하는 방식이죠.

그렇다고 초기설계에 못쓰는것은 절대 아닌데요 스웨거 온라인에디터 처럼 yaml이나 json으로 API를 기술해 미리 설계를 하고 Swagger 웹 형태로 API를 설계하는데 사용할 수 있습니다. 개발시 즉시즉시 메세지를 보낼 수 있어 좋습니다.

테스팅

Rest Client (API 호출)

RestClient는 Postman처럼 API호출을 할 수 있게 해주는 도구입니다. Vscode와 IntelliJ(유료)에 플러그인으로 구현되어 있습니다. Postman과 다른점은 Postman이 장황한 UI에 http 호출을 하는 도구라면 RestClient는 .http 파일을 만들어 Http 호출을 할 수 있습니다.

이는 많은 이점을 가지고 있는데요 파일로 관리하기 때문에 git에 파일을 같이 공유하여 팀원들에게 API 테스팅을 할 수 있도록 할 수 있습니다.(postman은 git외에 따로 공유해야하죠) 또한 한 파일에 여러가지 API를 기술할 수 있기 때문에 매우 유용하게 쓸 수 있습니다. 강추 하는 툴입니다.

SonarQube (코드분석)

SonarQube는 코드 정적 분석 툴입니다. 소스코드를 분석해서 에러가 날 수 있는 부분을 발견해주고, 코드 퀄리티에 대해서도 알려주죠. 만약 당신의 프로젝트의 코드 퀄리티를 일정수준 이상으로 관리하여 좋은 코드를 유지하고 싶다면 SonarQube는 매우 좋은 선택일 것입니다. 보통은 다양한 CI/CD 툴과 연계해서 특정 이벤트마다 코드 분석하고 보고서를 받는 형태로 동작시킵니다.

포트폴리오 제작 전 과정을 가이드를 받고싶다면

카우치코딩에서는 6주 포트폴리오 수업을 통해 기획 ~ 배포까지의 과정을 멘토링하고 있습니다. 기획 ~ 배포까지의 과정을 전부 경험하고 싶으면 방문해주세요~

PortfolioAD
관련있는 글

couchcoding

2024-01-12

포트폴리오(개발 프로젝트) 제작시 도움이 되는 도구들 - 3 (CI/CD, Hosting)

이번 포스팅에서는 배포 및 CI/CD 및 Hosting에 사용할 수 있는 도구들을 알아보도록 하겠습니다. 주로 무료이면서 간편한 툴 위주로 소개하였습니다. ...

개발 도구

CI/CD
github actions
배포
무료 호스팅
netlify
무료 서버
jenkins
heroku

couchcoding

2024-01-12

충돌 없는 Git을 위해 Git Flow에 대해 알아보자

Git Flow는 Vincent Driessen가 만든 Git Branch 관리 전략입니다. Git Flow는 기능별로 Git을 관리하기 쉽고, 스크럼 프로세스에서 칸반보드와 같이 사용하기 매우 유용하고 CI/CD와도 통합하기 좋기 때문에 많은 회사들이 사용하고 있습...

개발 도구

git
git flow
프로젝트 관리
branch
협업 전략

couchcoding

2024-01-12

Postman Mock Server로 팀 프로젝트의 개발 속도와 갈등을 개선하기

프로젝트의 개발 효율을 저해시키는 요소에는 정말 여러가지가 있습니다. Mock Server는 개발 효율을 저해시키는 요소 중에 개발 병목현상과 불명확한 커뮤니케이션을 해결할 수 있는 좋은 솔루션입니다. 여기 백엔드 개발자 A와 프론트엔드 개발자 B가 같이 개발을 하는...

개발 도구

협업도구
API 설계
mock server
API
postman

couchcoding

카우치코딩 공식 계정입니다.