요구 사항의 정의

    단 켄트백이 주장한 요구사항이라는 단어 자체가 잘못 사용되고 있다는 것에 동의 한다.고객(사용자)은 우리에게 자신들이 원하는 것을 만들어 주기를 바라며, 비용을 지불한다.그때 고객(사용자)이 우리에게 원하는 것을 요구사항이라고 한다.
    하지만 사전적 의미의 요구사항이란 필수적이거나 강제적인 무엇 이다.
    켄트백의 주장처럼 우리가 소프트웨어를 개발 함에 꼭 필수 적이고 강제 적인 사항은 전체의 10%~20% 밖에 되지 않는다. 나머지 대다수의 요구 사항들은 꼭 필수 적이고 강제 적이지 않다.
    누군가 나에게 이렇게 반문 할 수 있겠지만 ‘고객은 꼭 그 요구사항을 만족 해달라고 한다’ 하지만 우리가 소프트 웨어를 개발 함에 요구사항이라는 것들이 시간이 지나면 쉽게 변화 해 버리는 것을 볼때 역시 요구사항이란 정적인 사항이 아닌 항상 변화와 동적인 것을 동반하는 것이라고 생각 할 수 있다.

    구사항은 의사소통의 문제이다.
    앞서 말한 것과 같이 고객이 원하는 것을 우리에게 알려주는 그리고 우리는 고객이 원한는 것이 어떻게 실체를 갖출것이며, 얼마의 비용이 들어 간다는 것을 알려주는 행위 이다.즉 고객은 자신이 구상하고 필요한 소프트웨어의 기능을 전달 하고, 개발자는 실제 구현될 소프트웨어의 기능과 비용을 전달 한다.
    이 과정의 핵심은 존중속에서 양쪽의 균형을 지키는 것이다.
    고객이 기술진을 존중 하지 않으면, 지켜 질수 없는 기능과 일정을 모두 요구 할 것이다.
    또한 기술진이 고객을 존중 하지 않으면 요구사항을 만족 하지 못한는 미약한 기능과 과도한 비용을 고객에게 지울 것이다.
    만약 요구사항 과정에서 존중을 바탕으로한 의사소통의 핵심 기술이 지켜 지지 않는다면, 프로젝트는 실패 할 것이다.

    처럼 요구사항이란 원한 것이 무엇이고 어떤 것을 만들어야 하는가의 단순한 기능 나열이나 수집의 문제가 아니다. 요구사항에서는 고객과 기술진이 모두 만족 하고 지켜질수 있는 결과를 도출해야 하며, 모든 요구사항이 결론적으로 고객이 추구하는 프로젝트의 결과 이익을 최대화 할 수 있도록 논리적으로 타당한 조정의 결과 이다.

'Requirement' 카테고리의 다른 글

사용자 스토리 브레인스토밍(사용자 찾기)  (1) 2008.10.27
계약과 사용자 스토리  (0) 2007.09.12
|
blog comments powered by Disqus

matrim's Blog is powered by Daum & tistory