2011-08-22 5 views
1

여러 UI 모드에서 공통적 인 기능이있을 때 사용자 스토리를 캡처하는 좋은 방법은 무엇입니까?여러 프레젠테이션 모드를 교차 적용하는 기능에 대한 사용자 스토리가 있습니까?

예를 들어, 상용 비행 정보 시스템을 상상해보십시오. "UA211 착륙 예정일은 언제입니까?"

흔히 그렇듯이 일정 정보를 제공하는 기능은 데스크톱 웹 브라우저, 모바일 브라우저 (다른 스타일을 사용하여 더 유용하게 사용하려는 경우)를 통해 요청할 수도 있지만 일반적인 기본 기능입니다.), 어쩌면 SMS 단축 코드를 통해서도 가능합니다.

이제는 단일 사용자 스토리 ("As someone meeting a traveller, I want to see flight arrival information so that I can be at the airport on time")가 될 수 있습니다. 그러나 그것은 틀린 것처럼 보입니다 (어쨌든, 서사적 인 이야기 일 것입니다).

당신은 그것을 별도의 사용자 이야기 할 수 있습니다 ("As a desktop user...", "As a smartphone user...", 등), 내가 과거에했던, 그리고 팀이 단지 기능의 모든을 포함하는 최초의 하나를 추정하기 위해 알고있는 UI 구현 만 평가할 수 있습니다.

세 번째 옵션은 기본 기능을 프리젠 테이션 계층과 분리 된 스토리로 만든 다음 UI 스토리가 "As a flight info system front end, I want to get flight status information so that I can present it to the user", "As a desktop user, I want to see flight arrival... etc"입니다. 그러나 그것은 인위적으로 보인다.

생각하십니까?

답변

1

DWH 나는 문제가 당신이 너무 꽉 백엔드에 UI 기능을 묶기 위해 노력하고 있다고 생각합니다. 간단한 이야기로 그것을 어기면

예를 들어, :

사용자는 항공편 번호를 부여 비행 상태를 알 수 있습니다.

좋아요, 이제 구현 했으니 이제는 민첩성의 한 부분이 과도하게 발전하지 않기 때문에 어느 플랫폼에서이를 호출 할 수 있는지 살펴볼 수 있습니다. 그러나이 경우에는 비즈니스 요구 사항에 따라 모바일 장치 및 데스크톱 장치를 지원해야한다면 REST 서비스로 구현하는 것이 가장 좋습니다.

그래서 REST 서비스는 위의 첫 번째 이야기를 해결합니다.

이제 각 플랫폼마다 다른 특징이 있다는 것을 알게 될 것입니다. 예를 들어, 이미 정보가있을 수있는 무언가가 전화 상에 있습니까? 예를 들어 여행자가 여행 사이트에 가서 정보를 입력 했습니까? 그런 다음 여행자가 사용자 연락처에 있다고 가정하고 거기에 가고 싶을 수 있습니다. .

또는 사용자가 비행편 번호를 입력하면 웹 페이지로 사용하지 않는 것이 가장 좋습니다. 두 가지 개념을 모두 지원하는 가장 간단한 방법입니다. 그런 다음 GET을 지원하는 URL이 있고 HTML로 출력하면 쉽게 표시 할 수 있습니다.

첫 번째 이야기는 너무 단순하므로 다른 유형의 데이터를 반환 할 수 있는지 고려하여 사용자가 HTML, PDF, json 또는 xml을 원할 수도 있지만 각 요소에 대해 비즈니스 필요가 있어야합니다.

불행히도 너무 많은 미지가 있기 때문에 질문에 대답하기가 어렵습니다. 그래서 당신은 힘든 시간을 보내고 있습니다. 당신이 틀린 질문을하는 경우에 서사시가있다, 그러나 당신이 다만 약간 간단한 이야기에 그것을 아래로 끊을 수있는 경우에 해결하는 것이 매우 쉽게된다.

+0

그래서, 제 3 가지 옵션을지지한다고 말하고 싶습니다. – denishaskin

+0

@dwhsix - 예, 그것이 내가 끝난 곳이라고 생각하지만, 제가 시작한 곳이 아닙니다. :) 그러나 최선의 접근법을 제공 할 수있는 너무 많은 미지가 있습니다. –

1

두 번째 옵션을 권하고 싶습니다.

제안한대로 첫 번째 사운드는 단일 스토리에 비해 너무 많이 들리고 스토리는 항상 한 번의 반복에 적합해야합니다.

세 번째 옵션을 사용하면 큰 문제는 이야기 끝 부분에서 비즈니스 가치를 제공하지 않는다는 것입니다. 이는 일반적으로 나쁜 습관입니다.

다른 방법으로이 작업을 나눌 수 있습니다. 처음에는 모든 클라이언트에서 작동 할 수있는 매우 베어 본 (barebones) 버전을 개발 한 다음 후속 이야기에서 각 버전을 수정할 수 있습니다.

관련 문제