Community

개발자 99% 커뮤니티에서 수다 떨어요!

← Go back
mission3. 요구사항
#pragmatic
2년 전
820

📌 연습문제 33

다음 문장들이 진정한 요구 사항인가? 가능하다면 진정한 요구사항이 아닌 것을 좀 더 유용하게 고쳐 써 보라.

1. 응답시간은 500ms 이하여야 한다.

📖 책의 해답 : 이 문장은 진짜 요구 사항처럼 보인다. 환경 때문에 애플리케이션에 제약을 추가해야 할 수 있다.

💡 나의 해답 :

요구사항이다. 하지만 왜 이 기준이 생긴건지 궁금할것 같다. 만약 리소스가 많이 활용된 제품 기획전의 경우 이 조건을 위해서 리소스의 퀄리티를 낮춰야 할 수 있고, 영상도 추가 활용된 경우에는 동영상을 빼던지, 아니면 더 압축시킨 버전이든지 이 조건을 위해 수정해야 할 사항들에 대한 안내가 필요하다. 기획전 작업을 하면서 리소스 크기로 인한 로딩에 대한 이슈가 종종 있었는데, 이 경우에는 최대한 이미지 파일을 압축한다거나, 영상을 마지막에 로드하거나 여러 꼼수를 사용했었던것 같다.

2. 모달 창의 바탕색은 회색이다.

📖 책의 해답 : 이 문장 자체만으로는 진짜 요구사항이 아니다. 하지만 진짜로 무엇이 필요한지 알아내려면 마법의 질문을 던져야 한다. ”왜?”(중략)

💡 나의 해답 :

의뢰인이 콕 집어서 '회색이어야 한다' 라고 한다면 나는 우선순위가 낮은 요구사항이 될 수도 있다고 생각한다. 다만 왜 모달창의 바탕색은 회색인지, 모든 모달창이 동일하게 회색이어야 하는지, 화면 디자인에 따라 회색이 안어울리거나 혹은 수정 될 여지가 있는지, 모든 기기에서 동일하게 회색이어야 하는지 등의 설명이 없다면 물어볼 것 같다.

3. 애플리케이션은 프론트엔드 프로세스 몇 개와 백엔드 서버로 구성된다.

📖 책의 해답 : 이 문장은 요구사항이 아니다. 이것은 아키텍처다. 이런 종류의 것과 마주쳤다면 사용자가 무슨 생각을 하는지 알아내기 위해 깊이 파고들어야 한다.

💡 나의 해답 :

아키텍쳐의 경우, 서비스의 환경과 사이즈를 고려해서 프론트엔드 개발자 뿐만 아니라 백엔드 개발자와 프로젝트 리더 등의 개발자들이 함께 피드백을 해야 한다고 생각한다. 그리고 프로젝트의 모든 서비스 기능에 따라 달라질 수 있다는것도 계속 안내해야 한다.

4. 사용자가 숫자가 아닌 글자를 숫자 필드에 입력하면 시스템은 입력 필드를 깜빡이고 입력을 거부한다.

📖 책의 해답 : 밑에 숨겨진 요구 사항은 아마 “시스템은 사용자가 필드에 올바르지 않은 값을 입력하는 것을 막는다. 올바르지 않은 값을 입력하는 경우 경고를 보낸다.”라는 문장에 더 가까울 것이다.

💡 나의 해답 :

요구사항에 대해 추가적으로 확인할 부분을 이야기 할 것 같다. 숫자 뿐만 아니라, 올바르지 않는 값에 대한 정의를 라던가. 숫자 필드라면 예를 들어, 핸드폰 번호를 받는 필드의 경우 대쉬-인 특수문자도 함께 받을 수 있게 할 것인지. 깜빡이고 입력을 거부하는 경우, 입력 거부에 대한 표시는 어떻게 보여줄 것인지, 빨간 글씨로 아래에 메시지가 뜨는지 필드 박스의 테두리 색을 빨갛게 변경 할 것인지 등의 경고를 보낸다는 부분에서도 논의가 필요할 것 같다.

5. 이 임베디드 애플리케이션의 코드와 데이터 크기는 32Mb 이내여야 한다.

📖 책의 해답 : 이 문장은 하드웨어의 규격에 맞춘 것 같아 보인다. 아마 꼭 지켜야 하는 요구 사항일 것이다.

💡 나의 해답 :

필요한 요구사항으로 보인다. 다만 32mb 이내이기만 하면 되는지, 넘는 경우는 맞추기 위해 수정될 여지가 있다는것을 이야기 해볼 것 같다. -> 기능에 대해 요구사항이 다 나오지 않은 상황이라면, 이 규격을 맞추기 위해 요구사항에 대해 제한적으로 구현해야 할지에 대한 여러 피드백이 필요할 수도 있을 것 같다.