ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 2장 요구 사항 수집. 그들에게 원하는 것을 주세요.
    읽은 책/OOAD 2014. 2. 20. 11:54


    02920750

     책이름

     Object-Oriented Analysis & Design

     저자

     브렛 맥래프린, 게리 폴리스, 데이빗 웨스트저 / 신광연 박종걸 역

    출판사 

     O’REILLY / 한빛미디어



    첫 번째 단계가 고객이 원하는 기능을 수행하도록 하는 것이었다. 그럼 어떻게 고객이 원하는 것을 알 수 있을까? 그러기 위해서는 요구사항 수집이 필요한 것이다.




    요구 사항 

    - 여러분의 시스템(프로젝트)이 올바르게 동작( 고객이 결정함. 고객이 깜박잊고 얘기하지 않더라도 그거을 끌어내어 구현하는 것)하기 위해서 수행하는 특정한 하나의 일입니다. 

    - 하나의 요구사항은 보통 한 가지 일이고 그 요구 사항을 해결했다는 것을 확인하기 위해 테스트를 할 수 있다.

    하나의 요구상항은 특정 상품이나 서비스가 어떠 것이어야 하는지 또는 무엇을 수행해야 하는지를 자세하게 설명하는 것입니다. 주로 - - 시스템 엔지니어링이나 소프트웨어 엔지니어링 분야에서 공식적으로 자주 사용합니다. 

     

    ※ 고객에게 귀를 기울이고 고객이 말하도록 합시다. 

    ※ 좋은 요구사항은 고객이 여러분에게 말하는 것 이상의 것을 포함하고 있고, 예상 밖의 상황에서도 시스템이 잘 동작하도록 하는 내용도 포함하고 있다.

    ※ 좋은 요구 사항을 얻는 가장 좋은 방법은 시스템이 무엇을 해야 하는 지를 이해하는 것입니다.


    고객들도 자기들이 원하는 것을 모를때가 있다. 




    유스케이스 

    - 시스템이 어떤 일을 수행하기 위해 거쳐야 하는 단계들을 말합니다. 

    - 유스케이스는 새로 만들 시스템이나 소프트웨어 변경 사항에 대한 요구사항을 찾아내는 방법입니다. 각 유스케이스는 특정 목표를 달성하기 위해 시스템이 사용자 또는 다름 시스템과 어떻게 상호작용하는지를 전달하는 하나 이상의 시나리오를 제공합니다.  

    - 고객(시스템 외부에 있음)의 특정한 목표(하나의 목적)를 달성하기 위해 여러분의 시스템이 무엇을 하는지를 기술합니다. 

    ※ 하나의 목적이란? 여기선 강아지문을 사용할 때 주인들이 침대 밖으로 나오지 않아도 강아지가 밖으로 나가는 것인데 만약 주인들이 문을 얼마나 많이 이용하는지 기록하고 싶어한다면 그것은 다른 목적이다. 


    하나의 유스케이스의 3가지 구성요소 

    1. 명확한 가치 

    2. 시작과 종료 : 모든 유스케이스는 명확한 시작 시점과 종료 시점이 있어야 한다.

    종료 조건이 없으면, 유스케이스는 끝나지 않는다. 

    3. 외부 기동자(액터): 모든 유스케이스는 액터에 의해 시작된다. 액터는 시스템 외부의 어떤 것.


    ※ 우리의 시스템은 실제 상황에서 동작해야 합니다. 그래서 문제가 일어날 경우에 대하 계획하고 테스트해야 한다. 





    용어정리

    1. 대체경로 : 추가적인 단계(예외적인 단계)/ 고객이 생각하지 못한 단계를 추측한 것.

    2. 주경로 :  모든 것이 제대로 진행되었을 때의 시스템이 하는 일. 고객이 시스템에 대해 얘기 할 때 보통 이것을 이야기함.





    느낀점 

    예외사항을 생각하는 것이 쉽지만은 않다는 것을 깨달았다. 




    코딩부분

    Q. 왜 타이머 변수에 final로 선언했죠?

    A. TimerTask 익명 클래스에서 timer의 cancel() 메소드를 호출해야 하기 때문이다. 익명 클래스에서 자신을 포함하는 클래스(여기서는 Remote 클래스)의 변수에 접근하려면, 그 변수는 final로 선언되어야 합니다. 그냥 그래야 동작한다고 알아두세요.


    '읽은 책 > OOAD' 카테고리의 다른 글

    1장. 위대한 소프트웨어는 여기에서 시작된다.  (0) 2014.02.15
Designed by Tistory.