Community

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

← Go back
TIL. Mission(3)
#pragmatic
2년 전
794

📌 연습문제 33

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

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

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

💡 나의 해답 : 진정한 요구사항이라 생각한다. 하지만 조금 더 구체적이였으면 좋겠다. 왜 500ms 이하인지 물어볼 것 같고, 응답시간이 500ms 이하로 처리되지 않는 부분이 있을 수도 있다고 생각한다.

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

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

💡 나의 해답 : 진정한 요구사항이라 할 수 없다. rgb 값에 따라 색이 아예 달라지는데 사람의 입장에선 비슷한걸 모두 회색이라 할 수 있다. 어떤 회색이 필요한지 구체적인 값으로 말하고, 어떤 용도인지 말하면 더 좋을 것 같다.

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

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

💡 나의 해답 : 진정한 요구사항이 아니다. 아키텍처는 고객의 상황에 따라 언제든지 수정이 될 수 있다. 고객과의 피드백을 통해 고객의 생각을 알아내야한다.

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

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

💡 나의 해답 : 진정한 요구사항이 아닌 것 같다. 고객이 원하는건 알 수 있으나 사용자에 입장에서는 정확한 이유를 알지 못할 수도 있다. 그리고 고객과의 의사소통을 통해 고객의 생각이 사용자에게 올바르게 전달할 수 있도록 노력해야 할 것 같다.

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

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

💡 나의 해답 : 진정한 요구사항이다. 구체적인 조건이 존재하고, 애플리케이션 특성상 하드웨어에 의존할 수 밖에 없다. 하지만 좀 더 명확하게 할 필요가 있을 것 같다.