staruml ns - example
DESCRIPTION
StarUML NS - ExampleTRANSCRIPT
Copyright© 2014 Enkisoft, Ltd. All rights reserved.
Object-Oriented Analysis & Design with UML
Example :Meeting Room Reservation System
ContentsVision DocumentBusiness Modeling Artifacts
Domain Model
Business Process Model
Software Requirements Specification (SRS)Analysis Artifacts
Analysis Model
Use Case Realizations (Analysis-Level)
Design ArtifactsDesign Model
Implementation Model
Deployment Model
Data Model
Use Case Realizations (Design-Level)
Enkisoft, Ltd i Ver. 1.0
목 차
1. VISION ............................................................................................................................... 2
1.1 Introduction .................................................................................................................. 2
1.2 Vision Statement ......................................................................................................... 2
1.2.1 Background .................................................................................................................................... 2
1.2.2 Objectives ....................................................................................................................................... 2
1.2.3 System Functions ........................................................................................................................ 2
2. BUSINESS MODELING ARTIFACTS .............................................................................. 4
2.1 Domain Model ............................................................................................................. 4
2.1.1 Domain Model Procedure ....................................................................................................... 4
2.1.2 Domain Model ............................................................................................................................. 9
2.2 Business Process Model ............................................................................................. 9
2.2.1 Business Process Model ........................................................................................................... 9
3. SOFTWARE REQUIREMENTS SPECIFICATION (SRS) .............................................. 10
3.1 Introduction ................................................................................................................ 10
3.1.1 Purpose .......................................................................................................................................... 10
3.1.2 Scope .............................................................................................................................................. 10
3.1.3 Definition, Acronyms and Abbreviations ........................................................................ 10
3.1.4 References .................................................................................................................................... 10
3.1.5 Overview ....................................................................................................................................... 10
3.2 Overall Description .................................................................................................... 11
3.2.1 Product Perspective ................................................................................................................. 11
3.2.2 Use Case Model Survey ......................................................................................................... 11
3.2.3 Operating Environment .......................................................................................................... 11
3.2.4 Constraints ................................................................................................................................... 12
3.2.5 Assumptions and Dependencies ........................................................................................ 12
3.3 Specific Requirements .............................................................................................. 13
3.3.1 Use Case Reports ...................................................................................................................... 13
3.3.1.1 사용자 인증을 한다 .....................................................................................................................13
3.3.1.2 회의실을 예약 한다 .....................................................................................................................15
3.3.1.3 회의실 예약을 조회한다 ............................................................................................................17
3.3.1.4 회의실 예약을 취소한다 ............................................................................................................18
Enkisoft, Ltd ii Ver. 1.0
3.3.1.5 회의실 예약 요청을 처리한다 ................................................................................................19
3.3.1.6 회의실 정보를 관리한다 ............................................................................................................20
3.3.2 Supplementary Requirements ............................................................................................. 22
3.3.2.1 Reference ..........................................................................................................................................22
3.3.2.2 Functionality.....................................................................................................................................22
3.3.2.3 Usability .............................................................................................................................................22
3.3.2.4 Reliability ...........................................................................................................................................22
3.3.2.5 Performance .....................................................................................................................................22
3.3.2.6 Supportability ..................................................................................................................................22
3.3.2.7 Security ..............................................................................................................................................22
3.3.2.8 Design Constraint ..........................................................................................................................22
3.3.3 External Interface Requirements ......................................................................................... 23
4. ANALYSIS ARTIFACTS .................................................................................................. 24
4.1 Analysis Model ........................................................................................................... 24
4.1.1 사용자 인증을 한다. ................................................................................................................ 24
4.1.2 회의실을 예약한다. .................................................................................................................. 25
4.1.3 회의실 예약을 조회한다. ....................................................................................................... 26
4.1.4 회의실 예약을 취소한다. ....................................................................................................... 26
4.1.5 회의실 예약 요청을 처리한다. ........................................................................................... 27
4.1.6 회의실 정보를 관리한다. ....................................................................................................... 28
4.2 Use Case Realization (Analysis-Level) ................................................................... 29
4.2.1 사용자 인증을 한다. ................................................................................................................ 29
4.2.2 회의실을 예약한다. .................................................................................................................. 30
4.2.3 회의실 예약을 조회한다. ....................................................................................................... 31
4.2.4 회의실 예약을 취소한다. ....................................................................................................... 32
4.2.5 회의실 예약 요청을 처리한다. ........................................................................................... 33
4.2.6 회의실 정보를 관리한다. ....................................................................................................... 34
4.2.6.1 회의실 정보를 조회한다. ...........................................................................................................34
4.2.6.2 회의실 정보를 추가한다. ...........................................................................................................35
4.2.6.3 회의실 정보를 삭제한다. ...........................................................................................................36
5. DESIGN ARTIFACTS ...................................................................................................... 37
5.1 Design Model ............................................................................................................. 37
5.1.1 사용자 인증을 한다. ................................................................................................................ 37
5.1.2 회의실을 예약한다. .................................................................................................................. 38
Enkisoft, Ltd iii Ver. 1.0
5.1.3 회의실 예약을 조회한다. ....................................................................................................... 39
5.1.4 회의실 예약을 취소한다. ....................................................................................................... 40
5.1.5 회의실 예약 요청을 처리한다. ........................................................................................... 41
5.1.6 회의실 정보를 관리한다. ....................................................................................................... 42
5.2 Implementation Model............................................................................................. 43
5.2.1 Implementation .......................................................................................................................... 43
5.3 Deployment Model ................................................................................................... 44
5.3.1 Deployment ................................................................................................................................. 44
5.3.2 Deployment Instatnce ............................................................................................................. 45
5.4 Data Model ................................................................................................................. 46
5.4.1 Data Model .................................................................................................................................. 46
5.5 Use Case Realization (Design-Level) ..................................................................... 47
5.5.1 사용자 인증을 한다. ................................................................................................................ 47
5.5.2 회의실을 예약한다. .................................................................................................................. 48
5.5.3 회의실 예약을 조회한다. ....................................................................................................... 49
5.5.4 회의실 예약을 취소한다. ....................................................................................................... 50
5.5.5 회의실 예약 요청을 처리한다. ........................................................................................... 51
5.5.6 회의실 정보를 관리한다. ....................................................................................................... 52
5.5.6.1 회의실 정보를 조회한다. ...........................................................................................................52
5.5.6.2 회의실 정보를 추가한다. ...........................................................................................................53
5.5.6.3 회의실 정보를 삭제한다. ...........................................................................................................54
Enkisoft, Ltd 1 Ver. 1.0
Meeting Room Reservation System
Vision
Ver. 1.0
Enkisoft, Ltd 2 Ver. 1.0
1. Vision
1.1 Introduction
이 문서의 목적은 회의실 예약 시스템의 고수준의 요구와 기능을 수집, 분석 및 정의하는 것이다.
사용자 및 이해 당사자 들의 요구사항과 그에 대한 필요성에 대해 초점을 맞춘다. 회의실 예약
시스템에 대하여 자세한 기능적인 요구사항과 부가적인 사항들은 Software Requirement
Statement 를 참조 하도록 한다.
1.2 Vision Statement
1.2.1 Background
사내에 준비되어 있는 회의실의 사용을 함에 있어서, 어떤 회의실이 직접 방문하지 않고서는, 현재
사용되지 않고 있는지는 확인 불가능합니다. 이와 더불어서 각 회의실에 비치되어 있는 장비와
수용인원이 확인 되지 않아, 잘못된 회의실을 찾아 가는 경우도 발생하게 됩니다. 이를 보안하기
위해, 각각의 회의실에 대한 정보를 관리하고, 예약 시스템을 갖추어 사원들이 회의실을 원활히
사용할 수 있도록 하기 위해 시스템을 구축하고자 한다
1.2.2 Objectives
사내에 존재하는 회의실 사용을 원활히 하기 위하여 시스템을 도입한다. 사원은 회의실에 대한 모든
정보를 조회함으로써, 회의에 가장 잘 맞는 회의실을 선택할 수 있도록 한다.
1.2.3 System Functions
회사 내에 있는 회의실을 사원들이 원활히 사용할 수 있도록 하기 위하여 회의실 예약을 할
수 있도록 하고자 한다.
이 시스템을 사용하기 위해서는 부여 받은 사원의 정보를 이용하여 사용자 인증을 받아야
하며, 사용자 인증을 받은 정보는 사용자의 등급에 따라 시스템에 기록되며, 이는 사용자가
시스템을 사용을 마치기 전까지 유지되어야 한다.
사원은 날짜 별, 회의실 별로 회의실에 대하여 조회할 수 있다. 날짜 별 조회의 경우에는 조
회 각 회의실의 시간 별 예약 현황을 기술하고, 회의실 별로 조회를 한 경우에는 회의실의
검색일로부터 일주일 간의 예약 현황을 표시한다. 예약 현황에는 예약 상태를 표현하며, 예
약 상태는 미 예약, 예약 대기, 예약 승인 상태로 나누어진다.
각 회의실에 대한 정보 조회는, 회의실의 수용인원, 비치 장비와 회의실 단면도, 등을 표현하
고, 오늘 날짜의 시간 별 예약 현황을 표현한다.
사원은 현재 예약되지 않은 날짜, 시간 및 회의실 등을 입력하여, 필요한 날짜에 회의실을
예약합니다. 예약 시간은 30분 단위로 나누어진다. 회의실 예약 시 연속적으로 몇 개의 단위
를 한꺼번에 예약할 수 있으며, 연속된 예약은 1회의 예약으로 본다. 시스템은 사원의 예약
Enkisoft, Ltd 3 Ver. 1.0
요청 시에 일정관리 시스템(Scheduling System)에 통보하고, 결과를 통보 받아 가능한 경우,
예약 대기 상태로 설정한다.
예약 시에 현재 예약하고자 하는 부서의 벌칙 등급에 따라 예약을 제한할 수 있다. 회의실의
예약은 근무시간에만 가능하며, 조회, 수정 및 취소는 언제든지 가능하다. 한 부서는 하루에
2회 이상의 회의실 예약은 할 수 없으며, 2회 이상을 하기 위해서는 관리자에게 따로 승인을
받아야 한다. 또한 회의실 예약 일자는 근무 일에만 가능하며, 근무 일 외에는 예약이 불가
능하다. 근무 일 외에 사용 위해서는 관리자에게 승인을 받아야 한다.
부서의 벌칙 등급은 항시 사용 가능한 등급과 1주일간 사용금지 등급 그리고 1개월간 사용
할 수 없는 등급으로 나누어 지고, 이를 나누는 기준은 회의 사용 후 청결성과 비치 장비의
파손 여부 등을 고려하여 관리자가 설정할 수 있도록 한다.
예약 요청을 되었을 때, 일정관리 시스템은 관리자에게 예약 요청을 알리고, 관리자는 요청
된 예약 정보를 조회하고, 특이한 사항과 업무의 관련성 부분을 검토하여 승인을 합니다. 예
약 요청에 대한 승인 시에 부서에 알리고, 불허 시에는 불허 사유와 함께 예약 신청자에게
알린다.
관리자는 사내의 회의실 사용에 대한 등급을 부서별로 관리하고, 등급의 조정 시에는 알림
시스템(Notify System)을 통하여 각 부서에 통보한다.
모든 정보에 대한 알림은 알림 시스템(Notify System)을 통하여 통보하도록 한다.
사원 또는 관리자는 회의실을 예약한다.
사원 또는 관리자는 회의실 예약을 수정한다
사원 또는 관리자는 회의실 예약을 취소한다
관리자는 회의실 정보를 관리한다
관리자는 회의실 예약에 대하여 승인한다.
관리자는 회의실 예약에 대하여 불허한다.
Enkisoft, Ltd 4 Ver. 1.0
2. Business Modeling Artifacts
2.1 Domain Model
2.1.1 Domain Model Procedure
- Conceptual Class 추출
Step 1. 명사구를 식별하여 후보 클래스를 추출한다.
Requirement Statement 를 참조하여, 문서 내에 있는 명사구를 추출한다
회사 내에 있는 회의실을 사원들이 원활히 사용할 수 있도록 하기 위하여 예약을 할 수 있도록
하고자 한다.
이 회의실 예약 시스템을 사용하기 위해서는 부여 받은 사원의 정보를 이용하여 사용자 인증을
받아야 하며, 사용자 인증을 받은 정보는 사용자 등급에 따라 시스템에 기록되며, 이는 사용자가
시스템을 사용을 마치기 전까지 유지되어야 한다.
사원은 날짜별, 회의실별로 회의실에 대하여 조회할 수 있다. 날짜별 조회의 경우에는 조회 각
회의실의 시간별 예약 현황을 기술하고, 회의실 별로 조회를 한 경우에는 회의실의 검색일로부터
일주일 간의 예약 현황을 표시한다. 예약 현황에는 예약 상태를 표현하며, 예약 상태는 미 예약, 예약
대기, 예약 승인 상태로 나누어진다.
각 회의실에 대한 정보 조회는, 회의실의 수용 인원, 비치 장비와 회의실 단면도 등을 표현하고, 오늘
날짜의 시간별 예약 현황을 표현한다.
사원은 현재 예약 날짜, 예약 시간 및 회의실 등을 입력하여, 필요한 날짜에 회의실을 예약합니다.
예약 시간은 30 분 단위로 나누어진다. 회의실 예약시 연속적으로 몇 개의 단위를 한꺼번에 예약할
수 있으며, 연속된 예약은 1 회의 예약으로 본다. 시스템은 사원의 예약 요청 시에 일정관리
시스템(Scheduling System)에 통보하고, 결과를 통보 받아 가능한 경우, 예약 대기 상태로 설정한다.
예약 시에 현재 예약하고자 하는 부서의 벌칙 등급에 따라 예약을 제한할 수 있다. 회의실의 예약은
근무시간에만 가능하며, 조회, 수정 및 취소는 언제든지 가능하다. 한 부서는 하루에 2 회 이상의
회의실 예약은 할 수 없으며, 2 회 이상을 하기 위해서는 관리자에게 따로 승인을 받아야 한다. 또한
회의실 예약 일자는 근무 일에만 가능하며, 근무 일 외에는 예약이 불가능하다. 근무 일 외에 사용
위해서는 관리자에게 승인을 받아야 한다.
부서에는 회의실 사용 후의 청결성과 비치 장비의 파손 여부 등을 고려하여 벌칙을 부여할 수
있으며, 부서에 부여되는 벌칙 등급은 항시 사용 가능한 등급과 1 주일간 사용금지 등급 그리고
Enkisoft, Ltd 5 Ver. 1.0
1 개월간 사용할 수 없는 등급으로 나누어 진다.
예약 요청을 되었을 때, 일정관리 시스템은 관리자에게 예약 요청을 알리고, 관리자는 요청된 예약
정보를 조회하고, 특이한 사항과 업무의 관련성 부분을 검토하여 승인을 합니다. 예약 요청에 대한
승인 시에 예약 신청자에 알리고, 불허 시에는 불허 사유와 함께 예약 신청자에게 알린다.
관리자는 사내의 부서와 사원의 정보를 관리하여, 이를 통하여 회의실 사용에 대한 등급을 관리하고,
등급의 조정 시에는 알림 시스템(Notify System)을 통하여 각 부서의 책임자에게 통보한다.
모든 정보에 대한 알림은 알림 시스템(Notify System)을 통하여 통보하도록 한다.
후보 클래스 리스트
회사, 회의실, 사원, 예약, 회의실 예약 시스템, 사원의 정보, 사용자 인증, 사용자 등급, 예약 현황,
예약 상태, 수용 인원, 비치 장비, 회의실 단면도, 예약 날짜, 예약 시간, 일정관리 시스템(Scheduling
System), 벌칙 등급, 근무시간, 관리자, 회의실 예약 일자, 벌칙, 예약 요청, 예약 정보, 불허 사유,
예약 신청자, 부서, 알림 시스템(Notify System), 부서의 책임자, 알림
Step2. 개념 클래스 카테고리를 통하여 후보 클래스를 추출
개념 클래스 카테고리 예제
물리적 혹은 만질 수 있는 객체들 비치 장비
사물에 대한 명세, 설계 혹은 기술 회의실명세
장소 회의실
트랜잭션 예약
트랜잭션 라인 아이템
사람의 역할 사원, 관리자, 부서의 책임자
다른 것들을 담은 컨테이너 부서
컨테이너에 담긴 것들 사원
현 시스템 외부의 컴퓨터나 전자 기계적 시스템 일정관리 시스템, 알림 시스템
추상 명사 개념
조직 회사, 부서
이벤트
프로세스
(보통 개념으로 표시 되지 않지만 그럴 수도 있다.)
법칙과 정책
카탈로그 예약 현황
재정, 작업, 계약, 법률적 사항의 기록
재무 도구와 서비스
매뉴얼, 문서, 참고문헌, 책
Enkisoft, Ltd 6 Ver. 1.0
비치 장비, 회의실, 회의실 명세, 예약, 사원, 관리자, 부서의 책임자, 일정관리 시스템, 알림 시스템,
회사, 부서, 예약 현황
Step3. 후보 클래스 중에서 동사형 명사 삭제한다.
후보 클래스들 중에서 동사형 명사를 삭제하고, 후보 클래스를 정제한다.
회사, 회의실, 사원, 예약, 회의실 예약 시스템, 사원의 정보, 사용자 인증, 사용자 등급, 예약 현황,
예약 상태, 수용 인원, 비치 장비, 회의실 단면도, 예약 날짜, 예약 시간, 일정관리 시스템(Scheduling
System), 벌칙 등급, 근무시간, 관리자, 회의실 예약 일자, 벌칙, 예약 요청, 예약 정보, 불허 사유,
예약 신청자, 부서, 알림 시스템(Notify System), 부서의 책임자, 알림, 회의실명세
Step 4. 동일한 의미를 가지는 것과 시스템 외부에 존재하는 후보 클래스들을 삭제한다.
단 시스템과 상호 작용을 하는 것들은 남겨 둔다
회사, 회의실, 사원, 예약, 회의실 예약 시스템, 사원의 정보, 사용자 등급, 예약 현황, 예약 상태, 수용
인원, 비치 장비, 회의실 단면도, 예약 날짜, 예약 시간, 일정관리 시스템(Scheduling System), 벌칙
등급, 근무시간, 관리자, 회의실 예약 일자, 벌칙, 예약 정보, 불허 사유, 예약 신청자, 부서, 알림
시스템(Notify System), 부서의 책임자, 회의실 명세
Step 5. 클래스들 중에서 특정 클래스의 속성으로 표현되는 것 중에서 형태가 기본적인 형태(숫자,
문자열, 시간)들를 가지는 것을 삭제한다.
회의실, 사원, 예약, 사용자 등급, 예약 현황, 예약 상태, 수용 인원, 비치 장비, 회의실 단면도, 예약
날짜, 예약 시간, 부서, 일정관리 시스템(Scheduling System), 벌칙 등급, 근무시간, 관리자, 회의실
예약 일자, 벌칙, 불허 사유, 부서, 알림 시스템(Notify System), 부서의 책임자, 회의실 명세
Step 6. 추출된 개념 클래스들을 명칭을 정리한다.
회의실, 사원, 예약, 예약리스트, 비치 장비, 회의실 단면도, 일정관리 시스템(Scheduling System),
관리자, 부서, 알림 시스템(Notify System), 부서장, 회의실 명세
최종 추출된 개념 클래스(Conceptual Classes)
회의실, 사원, 예약, 예약리스트, 비치 장비, 회의실 단면도, 일정관리 시스템(Scheduling System),
관리자, 부서, 알림 시스템(Notify System), 부서장, 회의실 명세
Enkisoft, Ltd 7 Ver. 1.0
- 연관(Association)
Step 7. 일반 적인 연관 카테고리를 이용하여 Association 을 추출한다.
카테고리 예
A 는 B 의 물리적인 한 부분이다
A 는 B 의 논리적인 한 부분이다 회의실 – 예약
A 는 B 에 물리적으로 포함된다
A 는 B 에 논리적으로 포함된다 회의실 – 비치 장비
회의실 – 회의실 단면도
A 는 B 에 대한 기술이다 회의실 – 회의실명세
A 는 트랜잭션 또는 보고서 B 의 라인 아이템이다 예약 리스트 – 예약
A 는 B 에 기록된다/알려진다/보고된다/파악된다 사원 – 예약
예약 – 관리자
A 는 B 의 구성원이다 부서 – 사원
A 는 B 의 조직상 하위 단위이다
A 는 B 를 사용하거나 관리한다 사원 – 회의실
관리자 – 회의실
A 는 B 와 정보를 교환한다 예약 – 일정관리 시스템
예약 – 알림 시스템
부서장 – 알림 시스템
사원 – 알림 시스템
A 는 트랜잭션 B 와 관련된다
A 는 트랜잭션 B 와 관련된 트랜잭션이다
A 는 B 의 옆에 있다
A 를 B 가 소유한다
A 는 B 와 관련된 이벤트이다 예약 – 알림
- 주요 속성(Key Attribute)
Step 8. 개념 클래스의 중요한 속성을 추출한다.
회의실 회의실 번호
예약 상태
사원 사원 ID, 패스워드
예약 예약 날짜, 예약 시간
예약리스트
비치 장비 이름, 종류
회의실 단면도
일정관리 시스템(Scheduling System)
Enkisoft, Ltd 8 Ver. 1.0
관리자
부서 부서명
알림 시스템(Notify System)
부서장 이름, 사원 ID
알림
회의실 명세 수용 인원
Step 9. 연관 관계(Association)에 필요한 Multiplicity 를 추출한다.
Step 10. 추출된 정보를 바탕으로 도메인 모델을 작성한다.
Enkisoft, Ltd 8 Ver. 1.0
2.1.2 Domain Model
예약
+예약일자+예약시간+예약상태
회의실
+Number
사원
+ID
+passw ord
예약리스트
비치장비
+Name
회의실 단면도
관리자
알림시스템
회의실 명세
+이름+수용인원 1..*1
1*
1
**
11
*
인사관리 시스템
1
1
부서 벌칙
1..*
1
11
Enkisoft, Ltd 9 Ver. 1.0
2.2 Business Process Model
2.2.1 Business Process Model
사원 회의실예약시스템 일정관리시스템 알림시스템
[ 근무시간 내인 경우 ]
[ else ]
정보를 취합한다
근무시간 여부를 체크한다
회의실을 예약을 요청한다
예약 가능 여부를 확인한다[ 부여된 벌칙이 없는 경우 ]
예약 가능여부를 통보한다
[ 예약이 가능한 경우 ]
예약을 저장한다
신청자에게 통보를 한다
부서의 벌칙상태를 검사한다
Enkisoft, Ltd 10 Ver. 1.0
3. Software Requirements Specification (SRS)
3.1 Introduction
3.1.1 Purpose
이 문서는 회의실 예약시스템의 기능적인 요구사항과 비 기능적인 요구사항을 정리하여, 개발 시스템
의 이해를 높이고, 향후 개발을 위한 기초 자료로 활용하기로 한다
3.1.2 Scope
이 문서는 회의실 예약 시스템에 대하여 작성하며, 인사 관리 시스템과 알림 시스템은 외부 서브 시
스템으로 한다
3.1.3 Definition, Acronyms and Abbreviations
번호 용어 설명 영문명 별칭(Alias)
1 회의실 예약을 위한 대상이 되며, 사내에 비치되
어 있는 회의실을 지칭한다
Meeting
Room
MR
2 인사관리
Subsystem
사원 정보 및 부서정보를 저장하고 관리
하는 기존에 구축된 시스템이다
사용자 인증 또는 벌칙 부여 등의 기능에
서 사용한다
Enterprise
Information
Management
System
PMS
3 알림 Subsystem 사내의 모든 통보를 관리하는 시스템이
다. 회의실 예약에 대한 승인 및 불허 시
에 이 시스템을 이용하여 통보 한다
Notify System Notify
System
- 표 1 회의실 예약 시스템 용어정리
3.1.4 References
None
3.1.5 Overview
이 문서는 사용자와 개발 참여자가 요구하는 요구사항을 정리하고, 이를 구조화 한다.
Enkisoft, Ltd 11 Ver. 1.0
3.2 Overall Description
회의실 예약 시스템의 기본적인 요구사항을 정리하는 문서이다.
3.2.1 Product Perspective
이 시스템의 구축을 통하여 사원들의 회의실 사용을 원활이 할 수 있도록 한다.
3.2.2 Use Case Model Survey
사원
알림 시스템
관리자
회의실을 예약한다
회의실 예약 요청을 처리한다
회의실 정보를 관리한다
사용자 인증을 한다
회의실 예약을 조회한다
회의실 예약을 취소한다
인사 관리 시스템
회의실 정보
추가
수정
삭제
조회
- 그림 1 회의실 예약 시스템
3.2.3 Operating Environment
운영체제 Windows 2000 Professional
웹 어플리케이션 서버 IIS 5.0, .NET Framework
DBMS MS SQL Server 2000
Case 도구 PLASTIC 2003 Standard
개발 도구 Visual Studio .NET
클라이언트 Web Browser ( Default – Internet Explorer 5.0 or later)
- 표 2 회의실 예약 관리 시스템 개발 및 운영환경
Enkisoft, Ltd 12 Ver. 1.0
3.2.4 Constraints
시스템 운영을 위한 외부 시스템과의 상호 작용은 10초 이상이 소요되어서는 안되며, 10이상 소요
시에는 관리자에게 알리고, 시스템의 보완을 권고 한다.
3.2.5 Assumptions and Dependencies
사용자 인증을 위해서 인사관리 시스템에게 위임하여 수행한다.
Enkisoft, Ltd 13 Ver. 1.0
3.3 Specific Requirements
회의실 예약 시스템에 대한 기능적인 요구사항과 비기능적인 요구사항을 자세히 설명하는 섹션 입니
다.
3.3.1 Use Case Reports
3.3.1.1 사용자 인증을 한다
Use Case Name 사용자 인증을 한다 ID UC-1
Brief Description 사원이 시스템 사용을 위하여 인증 절차를 거친다.
Actors 사원 (관리자)
Trigger 사원이 회의실 예약 시스템을 사용하기 위하여 처음 접근하는 경우
Flow of Events
Basic Flow Step Action
1 시스템은 사용자 인증을 할 수 있는 화면을 출력한다
2 사원은 인증을 위한 입력 요소를 입력한다.
- 입력 요소: ID, Password
3 시스템은 인사관리 시스템에게 입력 받은 요소와 함께 사용자 인
증 여부를 요청한다
4 시스템은 사용자 인증을 통한 사원의 정보를 기록하고, 사원의 레
벨 정보를 유지한다.
- 사원 레벨: 일반 사원, 관리자
5 <Use Case: 회의실 예약을 조회한다>를 수행한다
Alternative 1 1 4a – 사용자 인증이 실패하였을 경우
1 시스템은 경고 메시지를 보여준다.
- 경고 메시지: (사원명)님, 입력하신 (입력요소)를 다시 확인하신 후
다시 입력하여 주십시오.
2 시스템은 입력요소 미비에 대한 안내정보와 재입력 할 수 있는 화
면을 보여준다.
- 안내 정보: ID 분실 및 재발급/발급은 관리부서에 문의 하여 주시
기 바랍니다.
- 입력 요소: ID, Password
3 Basic Flow 2로 이동한다
Preconditions None
Postconditions - 사용자 인증이 성공한 경우
사용자 인증에 성공한 사용자 정보를 기록하고 사용자의 레벨 정보를
유지한다.
- 사용자 인증이 실패한 경우
Enkisoft, Ltd 14 Ver. 1.0
인증 실패 횟수를 증가 하고, 3번 이상의 실패 시에는 사용 불가 상태
를 인사관리 시스템에 요구한다
Extension Points None
Reference UC-3
Special Requirements None
Enkisoft, Ltd 15 Ver. 1.0
3.3.1.2 회의실을 예약 한다
Use Case Name 회의실을 예약 한다 ID UC-2
Brief Description 시스템에 등록 되어 있는 사원이 회의실을 특정 시간에 사용하기 위하여 회
의실 예약 시스템을 통하여 예약한다.
Actors 사원 (관리자)
Trigger 사원이 회의실 예약을 요청한 경우
Flow of Events
Basic Flow Step Action
1 시스템은 회의실 예약을 위한 화면을 보여준다.
- 선택 사항: 날짜
- 특이 사항: 현재 날짜가 표현한다.
2 사원은 예약을 원하는 날짜를 선택한다.
3 시스템이 사원이 지정한 일자에 회의실 별로 회의실 예약 현황 리
스트를 출력한다
- 예약 상태: 미 예약, 예약 대기, 예약 승인
4 사원은 미 예약 상태의 회의실과 시간을 지정한다
5 시스템은 사원이 선택한 회의실과 시작 시간에 예약을 위한 화면
을 출력한다.
6 사원은 예약을 위한 정보를 입력하고, 회의실 예약을 요청한다
- 입력 정보: 예약 시간(종료), 기타 참고사항, 회의 제목
7 시스템은 예약 날짜에 부서의 예약 가능 여부를 검사하다
- 예약 불가상태: 예약일 2건 이상의 예약, 벌칙 기간내
8 시스템은 입력 받은 정보를 저장한다.
- 저장 정보: 예약자, 예약 부서, 예약 시간(시작, 종료), 회의실, 기
타, 참조 사항, 회의 제목, 예약 상태(예약 대기)
9 시스템은 <Use Case: 회의실 예약을 조회한다>을 수행한다
- 요청 첨부 자료: 날짜, 회의실
Alternative 1 Step 1a – 근무 시간이 아닌 경우
1 시스템은 경고 메시지를 보여준다.
- 메시지: 회의실 예약은 업무시간에 이용해 주시기를 바랍니다.
2 시스템은 <Use Case: 회의실 예약을 조회한다>을 수행한다
Alternative 2 Step 1a – 요청된 정보에 날짜에 관련된 정보가 있는 경우
1 시스템은 요청 받은 날짜를 선택사항을 날짜로 변경한다
2 시스템은 Basic Flow 3으로 이동한다
Alternative 3 Step 3a – 예약이 불가능한 날짜를 지정한 경우
- 공휴일, 과거 일자
1 시스템은 경고 메시지를 보여준다
- 메시지: 지정하신 날짜에는 예약이 불가능한 날짜입니다.
Enkisoft, Ltd 16 Ver. 1.0
2 시스템은 Basic Flow 1으로 이동한다
Alternative 4 Step 3b – 시스템에 보여줄 회의실 정보가 없거나, 회의실 예약이 모두
끝난 경우
1 시스템은 경고 메시지를 보여준다.
- 메시지: 예약할 수 있는 회의실이 없습니다
2 시스템은 Basic Flow 1으로 이동한다
Alternative 5 Step 8a – 사원이 지정한 날짜에 사원 부서가 2건 이상의 예약이 되어
있는 경우
1 시스템은 경고 메시지를 보여준다
2 시스템은 Basic Flow 2로 이동한다
Alternative 6 Step 8b – 사원이 지정한 날짜에 직원의 부서가 벌칙기간인 경우
1 시스템은 경고 메시지를 보여준다
- 메시지: 귀하의 부서는 회의실을 부주의하게 사용하여, (벌칙 기
간)동안 회의실을 이용하 실 수 없습니다.
2 시스템의 Basic Flow 1으로 이동한다
Preconditions 사원은 사용자 인증이 되어 있어야 한다.
Postconditions 회의실 예약이 성공한 경우
- 회의실 예약 정보를 기록한다
- 예약 정보: 예약자, 예약 부서, 예약일, 예약 시간, 회의실, 기타 참고 사
항, 회의 제목, 예약 상태(대기 상태)등등
Extension Points None
Reference UC-3
Special Requirements None
Enkisoft, Ltd 17 Ver. 1.0
3.3.1.3 회의실 예약을 조회한다
Use Case Name 회의실 예약을 조회한다 ID UC-3
Brief Description 사원이 시스템 등록되어 있는 회의실 예약 사항을 조회한다
Actors 사원(관리자)
Trigger 사원이 회의실 예약 사항을 조회하기 위해 요청하는 경우
Flow of Events
Basic Flow Step Action
1 시스템은 오늘 날짜의 회의실 별 예약 목록을 보여준다
2 사원은 원하는 날짜를 선택한다
3 시스템은 선택한 날짜의 회의실 별 예약 목록을 보여준다
- 목록: 예약 시간, 회의 제목, 예약 부서, 예약 상태
- 미 예약 상태: 모든 곳에 None으로 설정
4 사원은 보고 싶은 회의실 예약 정보를 선택한다
5 시스템은 선택한 예약 정보를 상세히 보여준다
- 예약 정보: 예약자, 예약 부서, 예약일, 시작시간, 종료시간, 회의
제목, 기타 참고 사항, 예약 상태
- 연결점: 취소
6 Use Case를 종료한다
Alternative 1 Step 2a – 사원이 다른 날의 예약 상황을 보고 싶지 않은 경우
1 Basic Flow 4으로 이동한다
Alternative 2 Step 4a – 사원이 상태 정보를 보고 싶지 않은 경우
1 Use Case를 종료한다
Preconditions 사원은 사용자 인증이 되어 있어야 한다
Postconditions
Extension Points None
Reference
Special Requirements None
Enkisoft, Ltd 18 Ver. 1.0
3.3.1.4 회의실 예약을 취소한다
Use Case Name 회의실 예약을 취소한다 ID UC-4
Brief Description 사원이 회의실 예약을 취소하기 위해 사용한다
Actors 사원(관리자)
Trigger 회의실 예약을 취소를 요청한 경우
Flow of Events
Basic Flow Step Action
1 시스템은 회의실 예약 취소 요청을 확인한다
- 메시지: 정말로 취소 하시겠습니까?
2 사원은 회의실 예약 취소를 확인한다
3 시스템은 취소 요청자가 취소 권한이 있는지를 확인한다
- 취소 권한: 예약자, 관리자
4 시스템은 취소를 요청한 예약 정보를 취소 상태로 변경한다
5 <Use Case: 회의실 예약 정보를 조회한다>를 수행한다
Alternative 1 Step 2a – 예약 취소 요청을 취소 하는 경우
Use Case를 마친다.
Alternative 2 Step 3a – 취소권한이 없는 경우
1 시스템은 경고 메시지를 보여준다
- 메시지: (취소 요청자)님은 취소할 권한이 없습니다.
2 Basic Flow 5로 이동한다
Preconditions 사원은 사용자 인증이 되어 있어야 한다
Postconditions 취소 요청이 성공적으로 수행되었을 경우
- 기존 예약 정보에서 취소 상태로 변경한다
Extension Points None
Reference UC-3
Special Requirements None
Enkisoft, Ltd 19 Ver. 1.0
3.3.1.5 회의실 예약 요청을 처리한다
Use Case Name 회의실 예약 요청을 처리한다 ID UC-5
Brief Description 사원이 요청한 회의실 예약에 대하여 관리자가 처리하기 위해서 사용합니
다.
Actors 관리자
Trigger 관리자가 요청 받은 회의실 예약 정보를 처리(승인, 불허)하고자 할 때
Flow of Events
Basic Flow Step Action
1 관리자는 시스템에 예약 대기 상태에 대하여 리스트를 요청한다
2 시스템은 예약 대기 상태에 있는 예약 리스트를 출력한다
- 리스트 항목: 번호, 예약자, 예약 부서, 제목, 승인, 불허
3 관리자는 회의실 예약 요청을 승인 요청한다
4 시스템은 요청한 회의실 예약 상태를 승인 상태로 변경한다
5 시스템은 예약 승인 정보를 알림 시스템에 통보를 요청한다
통보 요청시 정보: 요청자 정보, 예약 정보
6 Use Case를 마친다
Alternative Flow 1 Step 2a – 예약 대기 상태의 회의실 예약이 없는 경우
1 시스템은 경고 메시지를 보여준다
- 메시지: 처리해야 할 예약은 없습니다.
2 Use Case를 마친다
Alternative Flow 2 Step 3a – 회의실 예약을 불허하는 경우
1 관리자는 회의실 예약 요청을 불허 요청한다
2 시스템은 요청한 회의실 예약 상태를 취소 상태로 변경한다
5 시스템은 예약 불허 정보를 알림 시스템에 통보를 요청한다
- 통보 요청시 정보: 요청자 정보, 불허 사유, 예약 정보
6 Use Case를 마친다
Preconditions 사용자 인증이 되어 있어야 한다
사용자 인증 레벨이 관리자이어야 한다
Postconditions 승인이 성공적으로 마친 경우
- 예약 정보가 승인상태로 변경되어야 한다
- 예약 승인 정보가 예약 신청자에게 통보 되어야 한다
불허가 성공적으로 마친 경우
- 예약 정보가 불허 상태로 변경되어야 한다
- 예약 불허 사유와 함께 불허 정보가 예약 신청자에게 통보 되어야 한다
Extension Points None
Reference None
Special Requirements None
Enkisoft, Ltd 20 Ver. 1.0
3.3.1.6 회의실 정보를 관리한다
Use Case Name 회의실 정보를 관리한다 ID UC-6
Brief Description 관리자가 본 시스템에 예약 가능한 회의실 정보를 추가/조회/수정/삭제하기
위해 사용한다
Actors 관리자
Trigger 관리자가 회의실 정보 관리를 선택한 경우.
Flow of Events
Basic Flow Step Action
1 회의실 정보 추가를 요청하는 경우 – Subflow 1
2 회의실 정보 조회를 요청하는 경우 – Subflow 2
3 회의실 정보 수정을 요청하는 경우 – Subflow 3
4 회의실 정보 삭제를 요청하는 경우 – Subflow 4
Subflow 1 Step 회의실 정보 추가를 요청하는 경우
1 시스템은 이 시스템이 필요한 회의실 입력 요소를 표시한다.
- 필수 요소: 회의실 명, 수용인원
- 부가 요소: 위치, 비치장비, 회의실 단면도
2 관리자는 표시된 회의실 입력요소에 정보를 입력하고, 추가를 요청
한다
3 시스템은 입력된 회의실 정보를 유효성을 검사한다
4 시스템은 입력된 회의실 정보를 저장한다.
- 저장 정보: 회의실 명, 수용인원, 위치, 비치장비, 회의실 단명도,
입력 날짜
5 시스템은 Subflow 2를 수행한다
Subflow 2 Step 회의실 정보 조회를 요청한 경우
1 시스템은 회의실 리스트 정보를 출력한다
- 항목당 연결 내용: 수정, 삭제
2 관리자는 보고 싶은 회의실 이름을 선택한다
3 시스템은 관리자가 선택한 회의실의 정보를 자세히 보여준다
- 회의실 내용: 회의실명, 회의실 사진, 기자재, 위치
4 관리자가 회의실 조회를 종료한다
Subflow 3 Step 회의실 정보 수정을 요청한 경우
1 시스템은 관리자가 선택한 회의실 정보를 수정 가능한 상태로 보
여준다
- 수정 가능 정보: 회의실 명, 수용인원, 위치, 비치장비, 회의실 단
명도
2 관리자는 회의실 정보를 수정한다.
3 시스템은 입력된 정보의 유효성을 검사한다
4 시스템은 수정된 정보를 저장한다.
Enkisoft, Ltd 21 Ver. 1.0
5 시스템은 Subflow 2를 수행한다
Subflow 4 Step 회의실 정보 삭제를 요청한 경우
1 시스템은 회의실 정보 삭제를 확인한다
- 메시지: 선택하신 (회의실명)을 삭제하시겠습니까?
2 시스템은 관리자가 선택한 회의실 정보를 삭제한다.
3 시스템은 Subflow 2를 수행한다
Alternative Flow 1 Step SF1.3a, SF3.3a – 입력된 정보가 미비한 경우
1 시스템은 미비한 정보에 기술한다
- 메시지: (미비한 정보) 정보가 부족합니다. 다시 입력하여 주십시
오.
2 시스템은 Subflow 1.2, Subflow 3.2로 이동한다
Alternative Flow 2 Step SF2.1a – 입력된 회의실 정보가 없는 경우
1 시스템은 경고 메시지를 보여준다
- 메시지: 입력된 정보가 없습니다. 회의실 정보 추가화면으로 이
동 한다.
2 시스템은 Subflow 1로 이동한다
Preconditions 사용자 인증이 되어 있어야 한다
사용자 인증 레벨이 관리자이어야 한다
Postconditions 회의실 정보 추가가 성공적으로 마친 경우
- 새로운 회의실 정보가 추가 되어야 한다
회의실 정보 조회가 성공적으로 마친 경우
None
회의실 정보 수정이 성공적으로 마친 경우
- 기존의 회의실 정보가 새롭게 입력된 정보로 수정 되어야 한다
회의실 정보 삭제가 성공적으로 마친 경우
- 기존의 회의실 정보가 삭제 되어야 한다
- 기존 삭제된 회의실의 예약 정보는 취소 사태로 변경한다
Extension Points None
Reference None
Special Requirements None
Enkisoft, Ltd 22 Ver. 1.0
3.3.2 Supplementary Requirements
3.3.2.1 Reference
None
3.3.2.2 Functionality
여러 명의 사용자가 동시에 사용할 수 있어야 한다.
관리자가 회의실 예약에 대하여 승인 또는 불허 했을 시에는 반드시 예약 신청자에게 알려주어야 한
다.
3.3.2.3 Usability
기본 클라이언트 표준은 Windows 기반의 Internet Explorer 5.0 이상으로 한다. 그러나 모든 웹 브라
우저에서 사용할 수 있어야 한다.
3.3.2.4 Reliability
일주일에 월요일 새벽 2시부터 3시사이의 백업 시간을 제외하고는 이용이 가능해야 한다.
3.3.2.5 Performance
기존 시스템과의 대화에서 10초 이하로 설정하고, 대화 시간을 초과할 경우 관리자에게 알린다.
3.3.2.6 Supportability
None
3.3.2.7 Security
최초 사용자 인증 시에 인증 과정 정보를 저장하고, 이 저장된 정보를 활용하여 사용자의 권한을 할
당한다.
3.3.2.8 Design Constraint
저장되는 매체는 RDBMS이로 한다.
Enkisoft, Ltd 23 Ver. 1.0
3.3.3 External Interface Requirements
Enkisoft, Ltd 24 Ver. 1.0
4. Analysis Artifacts
4.1 Analysis Model
4.1.1 사용자 인증을 한다.
사원 사용자 인증 폼
+사용자 인증 요청(사용자 아이디, 사용자 패스워드)
사용자 인증 컨트롤
+사용자 인증(사용자 아이디, 사용자 패스워드)
부서 관리 시스템
+사용자 인증(사용자 아이디, 사용자 패스워드)
회의실 예약 조회 폼
+예약 조회(날짜)
+취소 확인 화인 메시지()
+취소 요청(예약정보)
Enkisoft, Ltd 25 Ver. 1.0
4.1.2 회의실을 예약한다.
사원 회의실 예약 폼
+회의실 예약 요청(회의실 예약 정보)
회의실 예약 정보
+예약 정보 가져오기(날짜)
+예약 상태 설정(선택예약, 승인상태)
+예약 정보 저장하기(예약정보)
회의실 예약 컨트롤
+리스트 요청(예약: 예약상태)
+승인 요청(예약)
+불허 요청(예약)
+리스트 요청(날짜)
+리스트 요청(회의실)
+회의실 예약 폼 요청()
+회의실 예약(예약정보)
+예약 취소(예약 정보)
알림 시스템
+통보(대상, 통보 메시지)
알림 시스템
Enkisoft, Ltd 26 Ver. 1.0
4.1.3 회의실 예약을 조회한다.
사원
회의실 예약 조회 폼
+예약 조회(날짜)
+취소 확인 화인 메시지()
+취소 요청(예약정보)
회의실 예약 컨트롤
+리스트 요청(예약: 예약상태)
+승인 요청(예약)
+불허 요청(예약)
+리스트 요청(날짜)
+리스트 요청(회의실)
+회의실 예약 폼 요청()
+회의실 예약(예약정보)
+예약 취소(예약 정보)
회의실 예약 정보
+예약 정보 가져오기(날짜)
+예약 상태 설정(선택예약, 승인상태)
+예약 정보 저장하기(예약정보)
4.1.4 회의실 예약을 취소한다.
회의실 예약 조회 폼
+예약 조회(날짜)
+취소 확인 화인 메시지()
+취소 요청(예약정보)
사원
회의실 예약 컨트롤
+리스트 요청(예약: 예약상태)
+승인 요청(예약)
+불허 요청(예약)
+리스트 요청(날짜)
+리스트 요청(회의실)
+회의실 예약 폼 요청()
+회의실 예약(예약정보)
+예약 취소(예약 정보)
회의실 예약 정보
+예약 정보 가져오기(날짜)
+예약 상태 설정(선택예약, 승인상태)
+예약 정보 저장하기(예약정보)
Enkisoft, Ltd 27 Ver. 1.0
4.1.5 회의실 예약 요청을 처리한다.
관리자
예약 대기 상태 조회 폼
+리스트 요청()
+승인 요청(예약정보)
+불허 요청()
회의실 예약 컨트롤
+리스트 요청(예약: 예약상태)
+승인 요청(예약)
+불허 요청(예약)
+리스트 요청(날짜)
+리스트 요청(회의실)
+회의실 예약 폼 요청()
+회의실 예약(예약정보)
+예약 취소(예약 정보)
회의실 예약 정보
+예약 정보 가져오기(날짜)
+예약 상태 설정(선택예약, 승인상태)
+예약 정보 저장하기(예약정보)
알림 시스템알림 시스템
+통보(대상, 통보 메시지)
Enkisoft, Ltd 28 Ver. 1.0
4.1.6 회의실 정보를 관리한다.
관리자
회의실 정보 추가 폼
+추가 요청(회의실 정보)
회의실 정보 조회 폼
+날짜 선택()
+조회 요청()
회의실 정보 삭제 폼
+삭제 요청(인덱스)
회의실 정보 컨트롤
+회의실 정보 조회()
+회의실 정보 추가(회의실 정보)
+회의실 정보 삭제(인덱스)
회의실 정보
+회의실 정보를 가져온다()
+회의실 정보를 저장한다(회의실정보)
+회의실 정보를 삭제한다(인덱스)
Enkisoft, Ltd 29 Ver. 1.0
4.2 Use Case Realization (Analysis-Level)
4.2.1 사용자 인증을 한다.
: 사원 : 사용자 인증 컨트롤 : 사용자 인증 폼 : 부서 관리 시스템
: 인사 관리 시스템
사용자 인증 요청(아이디, 패스워드)
사용자 인증(아이디, 패스워드)
레벨 := 사용자 인증(아이디,패스워드)
사용자 인증()
Enkisoft, Ltd 30 Ver. 1.0
4.2.2 회의실을 예약한다.
: 사원 : 회의실 예약 컨트롤 : 회의실 예약 정보 : 회의실 예약 폼 : 회의실 정보 조회 폼
날짜 선택()
리스트 요청(선택날짜)
예약 정보 가져오기(날짜)
화면출력
회의실 예약 지정(회의실, 날짜, 시간)
회의실 예약 폼 요청()
회의실 예약 폼 출력()
회의실 예약 요청(입력 정보)
회의실 예약(예약정보)
예약 정보 미비사항을 점검한다()
[미비사항이 없는경우] : 예약 정보 저장하기(예약정보)
Enkisoft, Ltd 31 Ver. 1.0
4.2.3 회의실 예약을 조회한다.
: 사원
: 회의실 예약 조회 폼 : 회의실 예약 컨트롤 : 회의실 예약 정보
예약 조회(날짜)
리스트 요청(날짜)
예약 정보 가져오기(날짜)
회의실 별로 정렬()
화면 출력
Enkisoft, Ltd 32 Ver. 1.0
4.2.4 회의실 예약을 취소한다.
: 회의실 예약 조회 폼
: 사원 : 회의실 예약 컨트롤 : 회의실 예약 정보
예약 조회(날짜)
리스트 요청(날짜)
예약 정보 가져오기(날짜)
취소 요청(예약정보)
취소 확인 화인 메시지()
취소 확인()
예약 취소(예약 정보)
예약 상태 설정(예약정보, 취소)
Enkisoft, Ltd 33 Ver. 1.0
4.2.5 회의실 예약 요청을 처리한다.
: 관리자
: 예약 대기 상태 조회 폼 : 회의실 예약 컨트롤 : 회의실 예약 정보 : 알림 시스템
: 알림 시스템
리스트 요청()
리스트 요청(대기상태)
예약 정보 가져오기(대기상태)
[승인요청시] : 승인 요청(선택예약)
승인 요청(선택예약)
예약 상태 설정(선택예약, 승인)
통보(예약 요청자, 통보 메시지)
통보()
[불허요청시] : 불허 요청(선택예약)
불허 요청(선택예약)
예약 상태 설정(선택예약, 불허)
통보(예약요청자, 불허메시지)
통보()
Enkisoft, Ltd 34 Ver. 1.0
4.2.6 회의실 정보를 관리한다.
4.2.6.1 회의실 정보를 조회한다.
: 관리자
: 회의실 정보 조회 폼 : 회의실 정보 컨트롤 : 회의실 정보
회의실 정보 조회 요청()
회의실 정보 조회()
회의실 정보를 가져온다()
화면에 출력한다
Enkisoft, Ltd 35 Ver. 1.0
4.2.6.2 회의실 정보를 추가한다.
: 관리자
: 회의실 정보 추가 폼 : 회의실 정보 컨트롤 : 회의실 정보 : 회의실 정보 조회 폼
추가 요청(회의실 정보)
추가(회의실정보)
회의실 정보를 저장한다(회의실정보)
조회 요청()
Enkisoft, Ltd 36 Ver. 1.0
4.2.6.3 회의실 정보를 삭제한다.
: 관리자
: 회의실 정보 삭제 폼 : 회의실 정보 컨트롤 : 회의실 정보 : 회의실 정보 조회 폼
삭제 요청(인덱스)
회의실 정보 삭제(인덱스)
회의실 정보를 삭제한다(인덱스)
조회 요청()
Enkisoft, Ltd 37 Ver. 1.0
5. Design Artifacts
5.1 Design Model
5.1.1 사용자 인증을 한다.
UserAuthManagement
<<Business Object>>
+UserAuth(id, passw d)
UserAuthForm
<<ASPX>>
+txtId: TextBox
+txtPassw ord: TextBox
+btnSubmit: Button
+btnReset: Button
+btnSumit_Click()
PMS
RetrieveReservationForm
<<ASPX>>
+ConfirmCancel()
Success<<post>>
IUserAuth
Enkisoft, Ltd 38 Ver. 1.0
5.1.2 회의실을 예약한다.
ReserveMeetingRoomForm
<<ASPX>>
+txtSubject: TextBox
+txtDate: TextBox
+txtStartTime: TextBox
+txtEndTime: TextBox
+txtDescription: TextBox
+btnSubmit: Button
+btnSubmit_Click()
ReservationManagement
<<Business Object>>
+retrieveReservations(aReservationState: ReservationState)
+aggrement(aReservation: ReservationInfomation)
+disapproval(aReservation)
+retrieveReservations(aDate: Date)
+retrieveReservation(aMR: MeetingRoom)
+add(aReservation: ReservationInfomation)
+cancel(index: Integer)
+validateCheck()
+requestReservationForm()
ReservationInfomation
<<DAO>>
+search(adate: date)
+UpdateState(index: Integer, State: ReservationState)
+Create(aReservation: ReservationInfomation)
ReservationState
<<enumeration>>
+None
+Waiting
+Aggremenet
+Disapproval
+Cancel
Reservation
<<table>>
<<PK>>+Index: INT
+Date: DATE
+StartTime: TIME
+EndTime: TIME
+Requester: EmployeeID
+MeetingSubject: VARCHAR[50]
+Description: MEMO
Reservation_DataGrid
<<DataGrid>>
+lblReservationID: Label
+lblSubject: Label
+lblMeetingRoom: Label
+lblReservationState: Label
+lblRequester: Label
+btnCancel: Button
+btnCancel_Click()
RetrieveReservationForm
<<ASPX>>
+ConfirmCancel()
<<post>>
Enkisoft, Ltd 39 Ver. 1.0
5.1.3 회의실 예약을 조회한다.
ReservationInfomation
<<DAO>>
+search(adate: date)
+UpdateState(index: Integer, State: ReservationState)
+Create(aReservation: ReservationInfomation)
ReservationManagement
<<Business Object>>
+retrieveReservations(aReservationState: ReservationState)
+aggrement(aReservation: ReservationInfomation)
+disapproval(aReservation)
+retrieveReservations(aDate: Date)
+retrieveReservation(aMR: MeetingRoom)
+add(aReservation: ReservationInfomation)
+cancel(index: Integer)
+validateCheck()
+requestReservationForm()
Reservation
<<table>>
<<PK>>+Index: INT
+Date: DATE
+StartTime: TIME
+EndTime: TIME
+Requester: EmployeeID
+MeetingSubject: VARCHAR[50]
+Description: MEMO
RetrieveReservationForm
<<ASPX>>
+ConfirmCancel()
Enkisoft, Ltd 40 Ver. 1.0
5.1.4 회의실 예약을 취소한다.
RetrieveReservationForm
<<ASPX>>
+ConfirmCancel()
Reservation_DataGrid
<<DataGrid>>
+lblReservationID: Label
+lblSubject: Label
+lblMeetingRoom: Label
+lblReservationState: Label
+lblRequester: Label
+btnCancel: Button
+btnCancel_Click()
ReservationManagement
<<Business Object>>
+retrieveReservations(aReservationState: ReservationState)
+aggrement(aReservation: ReservationInfomation)
+disapproval(aReservation)
+retrieveReservations(aDate: Date)
+retrieveReservation(aMR: MeetingRoom)
+add(aReservation: ReservationInfomation)
+cancel(index: Integer)
+validateCheck()
+requestReservationForm()
ReservationInfomation
<<DAO>>
+search(adate: date)
+UpdateState(index: Integer, State: ReservationState)
+Create(aReservation: ReservationInfomation)
Reservation
<<table>>
<<PK>>+Index: INT
+Date: DATE
+StartTime: TIME
+EndTime: TIME
+Requester: EmployeeID
+MeetingSubject: VARCHAR[50]
+Description: MEMO
<<post>>
Enkisoft, Ltd 41 Ver. 1.0
5.1.5 회의실 예약 요청을 처리한다.
WaitingStateReservationForm
<<ASPX>>
+txtReservationID: TextBox
+txtReservationSubject: TextBox
+txtRequester: TextBox
+btnAggrement: Button
+btnDisapproval: Button
+btnAggrement_Click()
+btnDisapproval_Click()
ReservationManagement
<<Business Object>>
+retrieveReservations(aReservationState: ReservationState)
+aggrement(aReservation: ReservationInfomation)
+disapproval(aReservation)
+retrieveReservations(aDate: Date)
+retrieveReservation(aMR: MeetingRoom)
+add(aReservation: ReservationInfomation)
+cancel(index: Integer)
+validateCheck()
+requestReservationForm()
ReservationInfomation
<<DAO>>
+search(adate: date)
+UpdateState(index: Integer, State: ReservationState)
+Create(aReservation: ReservationInfomation)
Reservation
<<table>>
<<PK>>+Index: INT
+Date: DATE
+StartTime: TIME
+EndTime: TIME
+Requester: EmployeeID
+MeetingSubject: VARCHAR[50]
+Description: MEMO
<<post>>
Enkisoft, Ltd 42 Ver. 1.0
5.1.6 회의실 정보를 관리한다.
MeetingRoom
<<DAO>>
+get(index: Integer): MeetingRoom
+add(aMR: MeetingRoom): boolean
+remove(index: Integer): boolean
MeetingRoomManagement
<<Business Object>>
+retrieveMR(): MeetingRoom
+add(aMR: MeetingRoom)
+remove(index: Integer)
RetrieveMeetingRoomForm
<<ASPX>>
+btnAdd: Button
+btnDate: Button
+btnReserve
+btnDate_Click()
+btnReserve_Click(aMR: MeetingRoom, aDate: Date, aTime: Time)
AddMeetingRoomForm
<<ASPX>>
+txtName: TextBox
+txtLocation: TextBox
+txtMachine: TextBox
+picView : Image
+btnAdd: Button
+btnAdd_Click()
RetrieveReservationForm
<<ASPX>>
+ConfirmCancel()
redirect
MeetingRoom
<<table>>
<<PK>>+Index: INT
+Location: VARCHAR[50]
+Capability: INT
+Machine: VARCHAR[50]
+View : BLOB
MeetingRoom_DataGrid
<<DataGrid>>
+lblId: Label
+lblName: Label
+lblCapability: Label
+lblMachine: Label
+btnRemove: Button
+btnRemove_Clcik()
+MeetingRoomList
IMeetingRoom
Enkisoft, Ltd 43 Ver. 1.0
5.2 Implementation Model
5.2.1 Implementation
Reservation.dll
<<.NETAssembly>>
MeetingRoom.dll
<<.NETAssembly>>
INofityIUserAuth
IReservation
IMeetingRoom
NotifySubsystemPMS
WebClient.dll<<.NETAssembly>>
Enkisoft, Ltd 44 Ver. 1.0
5.3 Deployment Model
5.3.1 Deployment
WebBrowser Application Server Database ServerLAN LAN
Notify Server
LAN
LAN
Enkisoft, Ltd 45 Ver. 1.0
5.3.2 Deployment Instatnce
IE55:WebBrow ser Reservation:Application Server
PMS:Application Server
NotifySystem:Notify Server
MSSQL:Database ServerE1
E!
E1
T1
Enkisoft, Ltd 46 Ver. 1.0
5.4 Data Model
5.4.1 Data Model
Reservation
<<table>>
<<PK>>+Index: INT
+Date: DATE
+StartTime: TIME
+EndTime: TIME
+Requester: EmployeeID
+MeetingSubject: VARCHAR[50]
+Description: MEMO
MeetingRoom
<<table>>
<<PK>>+Index: INT
+Location: VARCHAR[50]
+Capability: INT
+Machine: VARCHAR[50]
+View : BLOB
+Room
*1
Enkisoft, Ltd 47 Ver. 1.0
5.5 Use Case Realization (Design-Level)
5.5.1 사용자 인증을 한다.
: 사원 : UserAuthManagement : UserAuthForm
: 인사 관리 시스템
btnSumit_Click(아이디, 패스워드)
UserAuth(아이디, 패스워드)
레벨 := 사용자 인증(아이디,패스워드)
사용자 인증()
Enkisoft, Ltd 48 Ver. 1.0
5.5.2 회의실을 예약한다.
: 사원
: ReservationManagement : ReservationInfomation : ReserveMeetingRoomForm : RetrieveMeetingRoomForm
btnDate_Click()
retrieveReservations(aDate)
search(adate)
화면출력
btnReserve_Click(aMR, aDate, aTime)
requestReservationForm()
회의실 예약 폼 출력()
btnSubmit_Click()
add(aReservation)
validateCheck()
[is Complete] : Create(aReservation)
Enkisoft, Ltd 49 Ver. 1.0
5.5.3 회의실 예약을 조회한다.
: 사원
: RetrieveReservationForm : ReservationManagement : ReservationInfomation
: Reservation_DataGrid
retrieveReservations(aDate)search(adate)
회의실 별로 정렬()
화면 출력
Enkisoft, Ltd 50 Ver. 1.0
5.5.4 회의실 예약을 취소한다.
: RetrieveReservationForm
: 사원 : ReservationManagement : ReservationInfomation
retrieveReservations()
retrieveReservations(aDate)
search(adate)
ConfirmCancel()
Confirm()
cancel(index)
UpdateState(예약정보, 취소)
Enkisoft, Ltd 51 Ver. 1.0
5.5.5 회의실 예약 요청을 처리한다.
: 관리자
: WaitingStateReservationForm : ReservationManagement : ReservationInfomation : NotifySubsystem
requestReservation(Waiting)
retrieveReservations(Waiting)
search(waiting)
[Agreement] : btnAggrement_Click()
aggrement(aReservaiton)
UpdateState(aReservation, Aggrement)
Notify(requester, AggrementMessage)
[diapproval] : btnDisapproval_Click()
disapproval(aReservation)
UpdateState(aReservation, Aggrement)
Notify(Requester, DisapprovalMessage)
Enkisoft, Ltd 52 Ver. 1.0
5.5.6 회의실 정보를 관리한다.
5.5.6.1 회의실 정보를 조회한다.
: 관리자
: RetrieveMeetingRoomForm : MeetingRoomManagement : MeetingRoom
: MeetingRoom_DataGrid
회의실 정보 조회 요청()
retrieveMR()
get(index)
display()
화면에 출력한다
Enkisoft, Ltd 53 Ver. 1.0
5.5.6.2 회의실 정보를 추가한다.
: 관리자
: AddMeetingRoomForm : MeetingRoomManagement : MeetingRoom : RetrieveMeetingRoomForm
btnAdd_Click()
추가(회의실정보)
add(aMR)
Enkisoft, Ltd 54 Ver. 1.0
5.5.6.3 회의실 정보를 삭제한다.
: 관리자 : MeetingRoomManagement : MeetingRoom : RetrieveMeetingRoomForm
RequestRemoveMeetingRoom()
remove(index)
remove(index)