3-1공부/소프트웨어공학론

5. Use-case

KGW2027 2022. 4. 17. 19:37
728x90
반응형

Use-case

 - 요구사항을 수집한 후, 요구사항을 분석하고 정제하여 명확한 구조를 제작한다.

 - DFD ( Data Flow Diagram )UML(Use Case Modelling) 등이 있다.

 - 유저의 상호작용을 각각의 Use case로 설정하고, 사용자는 Actor, 시스템은 Use-case의 집합, Scope는 시스템의 범위

 - use-case를 통해 만들 소프트웨어를 정확히 정리할 수 있으며, 사용자도 더 쉽게 이해할 수 있다.

  -> 기능에 대해 고객에게 확인받기도 편리하다.

 

Q. Who reads use-cases?

 - 고객 : 주문한 소프트웨어를 확인하기 위해 읽는다.

 - 사용자 : 소프트웨어의 시스템을 이해하기 위해 읽는다.

 - 요구사항 분석가 : 소프트웨어 요구사항을 상세화하기 위해 읽는다.

 - 개발자 : 어떤 기능을 만들어야 하는지 확인한다.

 - 테스터 : 테스트 해야할 기능을 확인한다.

 - 프로젝트 매니저 : 소프트웨어의 진척사항을 확인한다.

 - 기술 가이드 : 유저 가이드 메뉴얼을 작성하는데 도움이 된다.

 

 Use-case Diagram

 - 액터와 Use-case간의 연결을 화살표로 표시한다.

 - 액터는 사람 뿐만이 아니라, 다른 시스템이나 센서등도 의미한다.

 - 화살표로 나타내는 선은 Interaction의 시작을 강조하는 의미이다.

 Use-case Diagram을 만들 때 고려할 점

  - Actor는 사용자, 정보획득처, 정보 제공자, 시스템 사용 회사, 자원 유지팀, 다른 시스템 등을 의미한다.

  - Use-case는 Actor가 사용하길 원하는 시스템을 의미한다.

  - Include-Relationship UCM : Use-case간 포함(Include)관계를 설정한다. (점선)

  - Extend-Releationship UCM : 특정 조건으로 작동하는 Use-case간 관계를 설정한다. (점선)

  - Use-case Generalization : 유사한 Use-case간 부모-자식 관계를 표현한다.

 

 Use-case Specification ( 사용 사례 상세? )

 - UCM에서 Usecase는 이름만 있으므로, 이에 대한 basic flow, alter flow 등을 따로 정리함.

 - Pre-condition : Use-case의 시작 조건

 - Post-condition : Use-case의 종료 조건

 - Use-case Name, 참여 Actor, Pre/post Condition, Basic flow 등이 들어감.

 

 

Software Requirement Specification ( SRS )

 - 시스템 개발자에게 Official Statement이다.

 - 사용자에게 이해하기 쉬운 내용과, 시스템 요구사항에 대한 자세한 내용이 둘 다 있다.

 - 시스템에 무엇이 필요한지, Use-case의 조건, 내용 들이 정리되어진다.

 - SRS는 모든 stakeholder가 사용한다.

 SRS Basic Elements

  -> 시스템 개요, 유저 요구사항, 시스템 요구사항(기능, 비-기능) 등..

 

요구사항 검증 ( Requirement Validation )

 - 필요한 모든 요구사항이 들어갔는가?

 - 모호하거나 잘못된 요구사항이 있는가?

 - Validity, Consistency, Completeness, Realism

 - Verifiability, Comprehensibility, Traceability, Adaptability

 

요구사항 리뷰 :  Walkthrough, Inspection, Formal Review (질문을 통한 검토)

프로토타이핑 : Executable한 모델을 만들어 요구사항 검증

Test-case Generation : 요구사항에 대한 상호작용 관계를 테스트

728x90
반응형

'3-1공부 > 소프트웨어공학론' 카테고리의 다른 글

기말1. UML Diagram 조금  (0) 2022.05.10
6. 시스템 모델링  (0) 2022.04.17
4. 요구사항  (0) 2022.04.17
3. 일정 계획, 팀  (0) 2022.04.17
2. 소프트웨어 개발 절차  (0) 2022.04.17