소프트웨어가 고객이 원하는 기능을 하도록 하세요.
요구사항 수집 순서
1. 고객의 요구사항 리스트 만들기
2. 시스템이 무엇을 해야 하는지, 고객이 그것을 어떻게 사용할 지를 정확히 이해해야 한다.
-> 시스템을 파악한 후 고객에게 여러가지 질문을 하여 원하는 것을 알아내야 한다.
3. 유스케이스를 작성한다.
4. 유스케이스를 가지고 요구사항 체크하기 (2~4번 반복)
-> 시스템이 해야 할 일을 모두 담고 있는지 확인을 해야 함.
* 좋은 요구 사항을 얻는 가장 좋은 방법은 시스템이 무엇을 해야 하는지를 이해하는 것입니다.
* 유스케이스는 고객의 특정한 목표를 달성하기 위해 여러분의 시스템이 무엇을 하는지를 기술합니다.
* 요구사항
하나의 요구사항은 특정 상품이나 서비스가 어떤 것이어야 하는지 또는 무엇을 수행해야 하는지를 자세하게 설명하는것입니다. 주로 시스템엔지니어링이나 소프트웨어 엔지니어링 분야에서 공식적으로 자주 사용합니다.
유스케이스
유스케이스는 새로 만들 시스템이나 소프트웨어 변경 사항에 대한 요구 사항을 찾아내는 방법입니다.
각 유스케이스는 특정 목표를 달성하기 위해 시스템이 사용자 또는 다른 시스템과 어떻게 상호작용하는지를
전달하는 하나 이상의 시나리오를 제공합니다.
* 고객의 목표가 바로 유스케이스의 핵심입니다.
* 하나의 유스케이스는 하나의 목표에만 집중합니다.
* 유스케이스들은 무엇에 관한 것입니다. 무엇을 해야 하는가?, 어떻게에 대해서는 지금 걱정하지 않는다는 것을 기억하세요.
* 좋은 유스케이스에는 기본적으로 세가지 부분이 있고, 유스케이스가 일을 끝내려면 모두 필요 합니다.
- 명확한 가치
모든 유스케이스는 시스템에게 명확한 가치를 가지고 있어야 합니다. 유스케이스가 고객의 목표 달성에도움이 되지 않는다면 소용없는 유스케이스 입니다. - 시작과 종료
모든 유스케이스는 명확한 시작 시점과 종료 시점이 있어야 합니다. 뭐가가 유스케이스를 기동시키고, 유스케이스가 완료되었음을 표시하는 상태가 있어야 합니다. - 외부 기동자(액터)
모든 유스케이스는 액터에 의해 시작됩니다. 액터는 주로 사람이지만 시스템 외부의 어떤 것이나 될 수 있습니다.
요구 사항들
- 좋은 요구 사항은 시스템이 고객이 기대한 대로 동작하도록 합니다.
- 여러분의 요구 사항이 시스템 유스케이스의 모든 단계들을 담고 있는지 확인하세요.
- 유스케이스를 사용해서 고객이 잊고 얘기하지 않았던 것들을 찾아내세요.
- 유스케이스는 시스템에 추가되어야 할 불환전하거나 빠진 요구 사항들을 분명하게 합니다.
핵심 내용
- 요구 사항은 시스템이 제대로 동작하기 위해 해야 할 일입니다.
- 초기 요구 사항은 보통 고객이 말해줍니다.
- 유스케이스는 시스템이 해야 할 일을 자세하고 명확하게 설명합니다.
- 하나의 유스케이스는 하나의 목표를 가집니다. 하지만 그 목표를 이루는 경로는 여러 가지 입니다.
- 좋은 유스케이스는 시작 조건, 종료 조건, 외부 구동자, 사용자의 명확한 가치를 가지고 있습니다.
- 유스케이스는 다른 시스템이 어떻게 동작하는지를 말하는 것입니다.
- 여러분의 시스템이 달성해야 할 각 목표에 대해 최소 하나 이상의 유스케이스가 필요 합니다.
- 유스케이스들을 작성 후, 요구 사항들을 다듬거나 추가할 수 있습니다.
- 여러분의 시스템은 모든 게 여러분의 기대대로 돌아갈 때분만 아니라, 실제 상황에서도 동작해야 합니다.
- 문제가 생기면, 시스템은 대체 경로를 사용해서 시스템의 목표를 달성해야 합니다.
'Programs > OOAD' 카테고리의 다른 글
5-2. 좋은 디자인 = 유연한 소프트웨어 (0) | 2012.09.22 |
---|---|
5-1. 좋은 디자인 = 유연한 소프트웨어 (0) | 2012.09.21 |
4. 분석 (0) | 2012.09.19 |
3. 요구사항 변경 (2) | 2012.09.18 |
1.잘 설계된 프로그램을 만드는 방법 (2) | 2012.09.15 |