dslab.konkuk.ac.krdslab.konkuk.ac.kr/class/2012/12se/class_b/tp4/t3/t3_sra.pdf · 2012. 11. 2. ·...

28
Ver. SE-T3-2012.SRA-3.4 Team 3 1 Software Requirement Analysis for Digital Watch System Project Team Team 3 Date 2012-11-1 Team Information 김성호 200911376([email protected]) 양승민 200911400([email protected]) 정세진 200911418([email protected]) 한종철 200911429([email protected])

Upload: others

Post on 14-Sep-2020

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 1

Software Requirement Analysis

for Digital Watch System

Project Team

Team 3

Date

2012-11-1

Team Information

김성호 200911376([email protected])

양승민 200911400([email protected])

정세진 200911418([email protected])

한종철 200911429([email protected])

Page 2: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 2

Table of Contents

1 Introduction ________________________________________________________________________________ 5

1.1 Purpose _____________________________________________________________________________________ 5

1.2 Scope _______________________________________________________________________________________ 5

1.2.1 개발팀 ______________________________________________________________________________________ 5

1.2.2 제한사항 ____________________________________________________________________________________ 5

1.2.3 제품의 활용도 ______________________________________________________________________________ 5

1.2.4 개발환경 ____________________________________________________________________________________ 5

1.3 Definition, acronyms, and abbreviations ___________________________________________________ 5

1.4 Reference ___________________________________________________________________________________ 6

1.5 Overview ___________________________________________________________________________________ 6

2 Overall Description _________________________________________________________________________ 6

2.1 Product Perspective ________________________________________________________________________ 6

2.2 Product functions __________________________________________________________________________ 6

2.3 User characteristics _________________________________________________________________________ 7

2.4 Constraints _________________________________________________________________________________ 7

2.5 Assumptions and dependencies ___________________________________________________________ 7

3 Structured Analysis _________________________________________________________________________ 7

3.1 System Context Diagram ___________________________________________________________________ 7

3.1.1 Basic System Context Diagram_____________________________________________________________ 7

3.1.2 Event List ___________________________________________________________________________________ 8

3.1.3 The System Context Diagram ______________________________________________________________ 8

3.2 Data Flow Diagram _________________________________________________________________________ 8

3.2.1 DFD level 0 _________________________________________________________________________________ 8

3.2.1.1 DFD _________________________________________________________________________________________ 8

3.2.1.2 Process Specification _______________________________________________________________________ 9

Page 3: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 3

3.2.1.2.1 Process 0 ___________________________________________________________________________________ 9

3.2.1.3 Data Dictionary _____________________________________________________________________________ 9

3.2.2 DFD Level 1 ______________________________________________________________________________ 10

3.2.2.1 DFD _______________________________________________________________________________________ 10

3.2.2.2 Process Specification _____________________________________________________________________ 10

3.2.2.2.1 Process 1 _________________________________________________________________________________ 10

3.2.2.2.2 Process 2 _________________________________________________________________________________ 10

3.2.2.3 Data Dictionary ___________________________________________________________________________ 10

3.2.3 DFD Level 2 ______________________________________________________________________________ 12

3.2.3.1 DFD _______________________________________________________________________________________ 12

3.2.3.2 Process Specification _____________________________________________________________________ 13

3.2.3.2.1 Process 1.1 _______________________________________________________________________________ 13

3.2.3.2.2 Process 1.2 _______________________________________________________________________________ 14

3.2.3.2.3 Process 1.3 _______________________________________________________________________________ 14

3.2.3.2.4 Process 1.4 _______________________________________________________________________________ 14

3.2.3.2.5 Process 1.5 _______________________________________________________________________________ 14

3.2.3.2.6 Process 2.1 _______________________________________________________________________________ 15

3.2.3.2.7 Process 2.2 _______________________________________________________________________________ 15

3.2.3.2.8 Process 2.3 _______________________________________________________________________________ 15

3.2.3.2.9 Process 2.4 _______________________________________________________________________________ 16

3.2.3.3 Data Dictionary ___________________________________________________________________________ 16

3.2.4 DFD Level 3 ______________________________________________________________________________ 19

3.2.4.1 DFD _______________________________________________________________________________________ 19

3.2.4.2 Process Specification _____________________________________________________________________ 19

3.2.4.2.1 Process 2.1.1 ______________________________________________________________________________ 19

3.2.4.2.2 Process 2.1.2 ______________________________________________________________________________ 20

Page 4: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 4

3.2.4.2.3 Process 2.1.3 ______________________________________________________________________________ 20

3.2.4.2.4 Process 2.1.4 ______________________________________________________________________________ 21

3.2.4.2.5 Process 2.1.5 ______________________________________________________________________________ 21

3.2.4.2.6 Process 2.1.6 ______________________________________________________________________________ 22

3.2.4.2.7 Process 2.1.7 ______________________________________________________________________________ 22

3.2.4.2.8 Process 2.1.8 ______________________________________________________________________________ 23

3.2.4.2.9 Process 2.1.9 ______________________________________________________________________________ 23

3.2.4.2.10 Process 2.1.10 ____________________________________________________________________________ 23

3.2.4.2.11 Process 2.1.11 ____________________________________________________________________________ 24

3.2.4.2.12 Process 2.1.12 ____________________________________________________________________________ 24

3.2.4.2.13 Process 2.3.1 ______________________________________________________________________________ 24

3.2.4.2.14 Process 2.3.2 ______________________________________________________________________________ 25

3.2.4.2.15 Process 2.3.3 ______________________________________________________________________________ 25

3.2.4.3 Data Dictionary ___________________________________________________________________________ 25

3.2.5 DFD Level 4 ______________________________________________________________________________ 27

3.2.5.1 State Transition Diagram for Display Controller 2.1.1 ___________________________________ 27

3.2.5.2 State Transition Diagram for Light Controller 2.3.1 ______________________________________ 28

3.2.6 Overall DFD_______________________________________________________________________________ 28

Page 5: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 5

1 Introduction

1.1 Purpose

Digital Watch 에서 올바르게 작동하는 Digital Watch System을 개발하기 위한

Structured Analysis Documents이다.

본 문서를 통해 Digital Watch System을 상세히 분석하여 개발 시 길잡이 역할을 한다.

1.2 Scope

1.2.1 개발팀

Class B Team 3

1.2.2 제한사항

HW(손목시계)와의 연동까지는 고려하지 않고, SW로만 구동할 수 있도록 한다.

1.2.3 제품의 활용도

개발이 완료된 후 실제 손목시계의 SW를 개발하기 위한 prototype으로 삼을 수

있다.

1.2.4 개발환경

IDE : Eclipse

Compiler : MinGW

1.3 Definition, acronyms, and abbreviations

SW : Software

HW : Hardware

DWS : Digital Watch System

M_STW : 현재 DWS가 보여주는 화면이 Stopwatch Mode 인가(True(1) or False(0))

M_TK : 현재 DWS가 보여주는 화면이 Timekeeping Mode 인가(True(1) or False(0))

M_TS : 현재 DWS가 보여주는 화면이 Timesetting Mode 인가(True(1) or False(0))

LIGHT_STATE : 현재 DWS에서 Backlight를 켜야 되는지 여부(True(1) or False(0))

R_STW : 현재 DWS의 Stopwatch가 측정을 하고 있는지 여부(True(1) or False(0))

LAP_ON : 현재 DWS의 Stopwatch에서 LAP time이 기록되어 있는지 여부(True(1) or

False(0))

TS_year : 현재 DWS의 Timesetting Mode에서 year을 가리키고 있는지 여부(True(1) or

False(0))

TS_month : 현재 DWS의 Timesetting Mode에서 month를 가리키고 있는지 여부(True(1)

Page 6: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 6

or False(0))

TS_day : 현재 DWS의 Timesetting Mode에서 day를 가리키고 있는지 여부(True(1) or

False(0))

TS_hour : 현재 DWS의 Timesetting Mode에서 hour를 가리키고 있는지 여부(True(1) or

False(0))

TS_minute : 현재 DWS의 Timesetting Mode에서 minute을 가리키고 있는지 여부

(True(1) or False(0))

TS_second; : 현재 DWS의 Timesetting Mode에서 second를 가리키고 있는지 여부

(True(1) or False(0))

1.4 Reference

IEEE Std. 830-1998

SASD Lecture Note

(http://dslab.konkuk.ac.kr/Class/2012/12SE/Lecture%20Note/Introduction%20to%20SAS

D.pdf)

Software Requirement Specification

(http://dslab.konkuk.ac.kr/Class/2012/12SE/Class_B/1.%20DS-2012.DWS.SRS-2.1_1.pdf)

1.5 Overview

Digital Watch에서 올바르게 작동하는 SW인 Digital Watch System을 개발하기 위한

Data Flow Diagram이다.

Digital Watch System은 Timekeeping Mode나 Stopwatch Mode를 화면(Console)에 보

여준다. Timekeeping Mode에서는 현재 시간을 보여주며, 시간의 Setting이 가능하다.

Stopwatch Mode에서는 시간 측정이 가능하며 Lap Time을 보여줄 수 있다.

2 Overall Description

2.1 Product Perspective

이 시스템은 실제 손목시계에 사용될 수 있는 SW가 될 수 있다. HW(버튼)에 의한 동

작을 처리하고, 처리한 결과는 HW(화면)에 출력한다. 실제 HW에 의한 동작은 SW 및

console화면으로 처리하여 기능의 동작 유무를 확인하도록 한다.

2.2 Product functions

2.2.1 Date-Time

화면에 일자와 시간을 표시한다.

오후 시간 표시는 pm indicator를 켜는 것으로 표현한다.

Page 7: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 7

2.2.2 Stopwatch

시간의 경과를 알려주고, 특정 순간의 시간을 알려준다.

1/100초 단위로 측정이 가능하다.

Lap time 기록이 가능하다.

2.2.3 Backlight

출력하는 문자의 색깔을 노란색으로 표시한다.

2.3 User characteristics

시각을 알아야 하거나 100분의 1초 단위의 시간 측정이 필요한 사람이 주로 사용한다.

2.4 Constraints

날짜의 표기법은 ‘월-일’이다.

초기 시간은 2012년 01월 01일 00시 00분 00초이다.

2012-1-1부터 2099년까지 표시가 가능하다.

2.5 Assumptions and dependencies

버튼입력은 키보드 입력으로 대신한다.

버튼이 여러 개 입력되었을 때 우선순위는 D>C>B>A 이다.

시간을 수정할 때 선택된 부분이 깜박이는 표현은 숫자 밑에 밑줄을 표시하는 것으로

대체한다.

Back Light는 실제 시계의 경우 LED를 켜는 것으로 구현되어야 하지만 출력되는 문자

의 색을 바꾸는 것으로 대체한다.

3 Structured Analysis

3.1 System Context Diagram

3.1.1 Basic System Context Diagram

Page 8: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 8

3.1.2 Event List

Input / Output Event Description

A Button Input When an A button is pressed, the character value, ‘a’

or ‘A’, is transferred to “DWS Control”.

B Button Input When a B button is pressed, the character value, ‘b’ or

‘B’, is transferred to “DWS Control”.

C Button Input When a C button is pressed, the character value, ‘c’ or

‘C’, is transferred to “DWS Control”.

D Button Input When a D button is pressed, the character value, ‘d’ or

‘D’, is transferred to “DWS Control”.

Display “DWS Control” executes commands and transfers

output information to the “Display”.

Light “DWS Control” informs the “Light” about the color of

the text.

Tick Tick is triggered at an interval of one centisecond.

3.1.3 The System Context Diagram

3.2 Data Flow Diagram

3.2.1 DFD level 0

3.2.1.1 DFD

Page 9: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 9

3.2.1.2 Process Specification

3.2.1.2.1 Process 0

Reference No. 0

Name DWS Control

Input A Button Input, B Button Input, C Button Input, D

Button Input, Tick

Output Display, Light

Process Description “DWS Control” process controls DWS to operate.

3.2.1.3 Data Dictionary

Data Name Description Format /

Type

A Button Input The character value, ‘a’ or ‘A’. Character,

Transient

B Button Input The character value, ‘b’ or ‘B’. Character,

Transient

C Button Input The character value, ‘c’ or ‘C’. Character,

Transient

D Button Input The character value, ‘d’ or ‘D’. Character,

Transient

Display Output information which will be shown on a

screen.

Array of

Character

Light The value of LIGHT_STATE. Integer

Page 10: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 10

3.2.2 DFD Level 1

3.2.2.1 DFD

3.2.2.2 Process Specification

3.2.2.2.1 Process 1

Reference No. 1

Name Button Identification

Input A Button Input, B Button Input, C Button Input, D

Button Input

Output Button Information

Process Description “Button Identification” process identifies an inputted

button, and then saves the corresponding integer value

to the “Button Information”.

3.2.2.2.2 Process 2

3.2.2.3 Data Dictionary

Reference No. 2

Name Display Control

Input Button, Time, Stopwatch, Mode Information, Tick

Output Time, Stopwatch, Mode Information, Display, Light

Process Description It processes inputted data and decides what to do.

Data Name Description Format /

Type

A Button Input The character value, ‘a’ or ‘A’. Character,

Transient

Page 11: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 11

B Button Input The character value, ‘b’ or ‘B’. Character,

Transient

C Button Input The character value, ‘c’ or ‘C’. Character,

Transient

D Button Input The character value, ‘d’ or ‘D’. Character,

Transient

Button

Information

If A, B, C, or D button is inputted, its variables

store an integer value about each button.

The integer values about each button are as in

the following. A:1, B:2, C:3, D:4.

If there isn’t any button input, its variables

store the integer value of 0.

Array of

Integer

Time

Information

“Time Information” contains data which

indicates the current time(Year, Month, Day,

Day of the weak, Hour, Minute, Second) shown

on a screen.

All data are an integer variable.

The initial values of data are as in the

following.

Year : 2012

Month : 01

Day : 01

Day of the weak : 0

(The meaning of values of ‘Day of the weak’ -

0(Sun.), 1(Mon.), 2(Tue.), 3(Wed.), 4(Thu.),

5(Fri.), 6(Sat.))

Hour : 00

Minute : 00

Second : 00

Here are ranges of the data value.

Year : 2012~2099

Month : 1~12

Day : 1~31

Day of the weak : 0~6

Hour : 0~23

Minute : 0~59

Second : 0~59

Structure,

Integer

Stopwatch “Stopwatch Information” contains data of Structure,

Page 12: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 12

3.2.3 DFD Level 2

3.2.3.1 DFD

Information stopwatch time(Minute, Second, Centisecond)

which is being measured and lap time(Minute

of lap time, Second of lap time, Centisecond of

lap time).

All data are an integer variable.

Time is measured in one centisecond by 99

minutes.

Here are ranges of data values.

Minute : 0~99

Second : 0~59

Centisecond : 0~99

Minute of lap time : 0~99

Second of lap time : 0~59

Centisecond of lap time : 0~99

The initial values of all data are 0.

Integer

Mode

Information

“Mode Information” contains information

about which modes to be displayed in DWS as

data, such as M_STW, M_TK, and M_TS.

At first, the value of M_TK is 1. The values of

M_STW and M_TS are 0.

It contains not only those, but also data that

represent which section is indicated in

Timesetting Mode, such as TS_year, TS_month,

TS_day, TS_hour, TS_minute, and TS_second.

Initially, the value of TS_second is assigned as

1.

The values of TS_year, TS_month, TS_day,

TS_hour, and TS_minute are assigned as 0.

In addition, it has data, such as R_STW,

LAP_ON, and LIGHT_STATE. All these values are

0 at first.

All data are an integer variable.

Structure,

Integer

Display Output information which will be shown on a

screen.

Array of

Character

Light The value of LIGHT_STATE. Integer

Page 13: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 13

3.2.3.2 Process Specification

3.2.3.2.1 Process 1.1

Reference No. 1.1

Name A Button Interface

Input A Button Input

Output A Button

Process Description If an A button is inputted, this process assigns a

character value of ‘a’ or ‘A’ into output variable “A

Button”.

Page 14: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 14

3.2.3.2.2 Process 1.2

3.2.3.2.3 Process 1.3

3.2.3.2.4 Process 1.4

3.2.3.2.5 Process 1.5

Reference No. 1.2

Name B Button Interface

Input B Button Input

Output B Button

Process Description If a B button is inputted, this process assigns a

character value of ‘b’ or ‘B’ into output variable “B

Button”.

Reference No. 1.3

Name C Button Interface

Input C Button Input

Output C Button

Process Description If a C button is inputted, this process assigns a

character value of ‘c’ or ‘C’ into output variable “C

Button”.

Reference No. 1.4

Name D Button Interface

Input D Button Input

Output D Button

Process Description If a D button is inputted, this process assigns a

character value of ‘d’ or ‘D’ into output variable “D

Button”.

Reference No. 1.5

Name Button Identification

Input A Button, B Button, C Button, D Button

Output Button Information 1, Button Information 2

Process Description “Button Identification” process identifies an inputted

button, and then saves the corresponding integer value

Page 15: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 15

3.2.3.2.6 Process 2.1

3.2.3.2.7 Process 2.2

3.2.3.2.8 Process 2.3

to the “Button Information 1” or “Button Information 2”.

The integer values about each button are as in the

following. A:1, B:2, C:3, D:4.

1(A), 2(B), and 3(C) are saved to “Button Information 1”.

4(D) is saved to “Button Information 2”.

If multiple buttons are inputted, only one value which

has the highest priority is saved to the “Button

Information 1” or “Button Information 2”. The order of

priority is as in the following. D>C>B>A

Reference No. 2.1

Name Display Control

Input Button information 1, Time, Stopwatch, Mode

Information, Tick

Output Time, Stopwatch, Mode Information, Display Command

Process Description It processes inputted data and transfers output

information to the “Display Command”.

Reference No. 2.2

Name Display Interface

Input Display Command

Output Display

Process Description “Display Interface” process shows the “Display

Command” on a screen.

Reference No. 2.3

Name Light Control

Input Button Information 2, Mode Information, Tick

Output Light Command

Process Description It processes inputted data and transfers information

about the color of the text to the “Light Command”.

Page 16: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 16

3.2.3.2.9 Process 2.4

3.2.3.3 Data Dictionary

Reference No. 2.4

Name Light Interface

Input Light Command

Output Light

Process Description “Light Interface“ process represents the color of the text

according to the “Light Command”.

Data Name Description Format / Type

A Button Input A Button is pressed. Digital Signal,

Transient

B Button Input B Button is pressed. Digital Signal,

Transient

C Button Input B Button is pressed. Digital Signal,

Transient

D Button Input D Button is pressed. Digital Signal,

Transient

A Button It is a character value which comes from

“A Button Interface”.(‘a’ or ‘A’)

Character

B Button It is a character value which comes from

“B Button Interface”.(‘b’ or ‘B’)

Character

C Button It is a character value which comes from

“C Button Interface”.(‘c’ or ‘C’)

Character

D Button It is a character value which comes from

“D Button Interface”.(‘d’ or ‘D’)

Character

Button

Information 1

If A, B, or C button is inputted, it stores

the integer value of 1, 2, or 3.

If there isn’t any button input, it stores

the integer value of 0.

Integer

Button

Information 2

If D button is inputted, it stores the

integer value of 4.

If there isn’t a button input, it stores the

integer value of 0.

Integer

Time “Time Information” contains data which Structure,

Page 17: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 17

Information indicates the current time(Year, Month,

Day, Day of the weak, Hour, Minute,

Second) shown on a screen.

All data are an integer variable.

The initial values of data are as in the

following.

Year : 2012

Month : 01

Day : 01

Day of the weak : 0

(The meaning of values of ‘Day of the

weak’ - 0(Sun.), 1(Mon.), 2(Tue.), 3(Wed.),

4(Thu.), 5(Fri.), 6(Sat.))

Hour : 00

Minute : 00

Second : 00

Here are ranges of the data value.

Year : 2012~2099

Month : 1~12

Day : 1~31

Day of the weak : 0~6

Hour : 0~23

Minute : 0~59

Second : 0~59

Integer

Stopwatch

Information

“Stopwatch Information” contains data of

stopwatch time(Minute, Second,

Centisecond) which is being measured

and lap time(Minute of lap time, Second

of lap time, Centisecond of lap time).

All data are an integer variable.

Time is measured in one centisecond by

99 minutes.

Here are ranges of data values.

Minute : 0~99

Second : 0~59

Centisecond : 0~99

Minute of lap time : 0~99

Second of lap time : 0~59

Centisecond of lap time : 0~99

Structure,

Integer

Page 18: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 18

The initial values of all data are 0.

Mode

Information

“Mode Information” contains information

about which modes to be displayed in

DWS as data, such as M_STW, M_TK, and

M_TS.

At first, the value of M_TK is 1. The values

of M_STW and M_TS are 0.

It contains not only those, but also data

that represent which section is indicated

in Timesetting Mode, such as TS_year,

TS_month, TS_day, TS_hour, TS_minute,

and TS_second.

Initially, the value of TS_second is

assigned as 1.

The values of TS_year, TS_month, TS_day,

TS_hour, and TS_minute are assigned as 0.

In addition, it has data, such as R_STW,

LAP_ON, and LIGHT_STATE. All these

values are 0 at first.

All data are an integer variable.

Structure,

Integer

Display

Command

Output information which will be shown

on a screen.

Array of

Character

Display Output information finally appears on a

screen

Digital Signal

Light

Command

The value of LIGHT_STATE. Integer

Light The color of the text. (White / Yellow) Digital Signal

Page 19: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 19

3.2.4 DFD Level 3

3.2.4.1 DFD

3.2.4.2 Process Specification

3.2.4.2.1 Process 2.1.1

Reference No. 2.1.1

Page 20: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 20

3.2.4.2.2 Process 2.1.2

3.2.4.2.3 Process 2.1.3

Name Display Controller

Input Button information 1, Time, Stopwatch, Mode

Information, Tick

Output Trigger, Enable, Disable

Process Description It processes inputted data and runs relevant processes

whenever it gets a Tick.

Reference No. 2.1.2

Name Increase Current Time

Input Time Information, Enable

Output Time Information

Process Description After getting the “Time Information”, this process

increases one Second and saves data to the “Time

Information” per 100 times Tick.

If the value of data, like Year, Month, Day, Day of the

weak, Hour, Minute, and Second, exceeds a maximum,

it is initialized and upper data value increases.

Ex) Second changes into 0 when it exceeds 59, and

then Minute increases 1.

When Month is 1, 3, 5, 7, 8, 10, or 12, the maximum

value of Day is 31.

When Month is 4, 6, 9, or 11, the maximum value of

Day is 30.

When Year is a leap year, the maximum value of Day is

29(When Month is 2).

When Year is not a leap year, the maximum value of

Day is 28(When Month is 2).

Reference No. 2.1.3

Name Display Current Time

Input Time, Mode information, Enable, Disable

Output Mode Information, Display Command

Process Description The data which indicates the current time in the “Time

Information” is transferred to the “Display Command”.

Initially, if M_TS in the “Mode Information” is 1(When

Page 21: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 21

3.2.4.2.4 Process 2.1.4

3.2.4.2.5 Process 2.1.5

the mode of DWS is changed from Timesetting to

Timekeeping), the value of TS_second in the “Mode

Information” is assigned as 1, and then the values of

TS_year, TS_month, TS_day, TS_hour, and TS_minute in

the “Mode Information” are assigned as 0.

After that, in the “Mode Information”, M_TK is assigned

as 1. M_STW and M_TS are assigned as 0.

Reference No. 2.1.4

Name Display Setting

Input Time, Mode Information, Enable, Disable

Output Mode Information, Display Command

Process Description The data which indicates the current time in the “Time

Information” is transferred to the “Display Command”.

Also, it transfers output information that a selected

section is underlined at a console to the “Display

Command”.

It can know about the section by examining which data

value is assigned as 1 in the “Mode Information”.

(among TS_year, TS_month, TS_day, TS_hour, TS_minute,

and TS_second)

In the “Mode Information”, M_TS is assigned as 1.

M_STW and M_TK are assigned as 0.

Reference No. 2.1.5

Name Switch Section

Input Mode Information, Trigger

Output Mode Information

Process Description “Switch Section” process commands to change a

selected section.

The selected section(one of Year, Month, Day, Hour,

Minute, Second) means that it is indicated in

Timesetting Mode.

The section is selected sequentially as follows.

Second → Hour → Minute → Year → Month → Day

Page 22: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 22

3.2.4.2.6 Process 2.1.6

3.2.4.2.7 Process 2.1.7

→ Second

In the “Mode Information”, the value of the selected

section is assigned as 1.

The values of the other sections are assigned as 0.

Ex)

TS_year = 0

TS_month = 0

TS_day = 0

TS_hour = 0

TS_minute = 0

TS_second = 1

TS_year = 0

TS_month = 0

TS_day = 0

TS_hour = 1

TS_minute = 0

TS_second = 0

Reference No. 2.1.6

Name Increase Value

Input Time, Mode Information, Trigger

Output Time Information,

Process Description “Increase Value” process causes a selected data value in

the “Time Information” to increase by one.

It can know about the selected data by examining

which data value is assigned as 1 in the “Mode

Information”. (among TS_year, TS_month, TS_day,

TS_hour, TS_minute, and TS_second)

If the value exceeds a maximum, it changes to a

minimum.

Ex) 59 -> 00

Reference No. 2.1.7

Name Display Stopwatch

Page 23: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 23

3.2.4.2.8 Process 2.1.8

3.2.4.2.9 Process 2.1.9

3.2.4.2.10 Process 2.1.10

Input Time, Stopwatch, Mode Information, Enable, Disable

Output Mode Information, Display Command

Process Description If LAP_ON in the “Mode Information” is 0, the data of

stopwatch time being measured in the “Stopwatch

Information” are transferred to the “Display Command”.

If LAP_ON in the “Mode Information” is 1, the data of

lap time in the “Stopwatch Information” are transferred

to the “Display Command”.

The data of both Hour and Minute in the “Time

Information” are transferred together.

In the “Mode Information”, M_STW is assigned as 1.

M_TK and M_TS are assigned as 0.

Reference No. 2.1.8

Name Run Stopwatch

Input Stopwatch, Mode Information, Enable, Disable

Output Stopwatch, Mode Information

Process Description This process makes Centisecond data value of

stopwatch time in the “Stopwatch Information” increase

one.

If the value of data, such as Minute, Second, and

Centisecond, exceeds a maximum, it is initialized and

the upper value increases.

Ex) Centisecond changes into 0 when it exceeds 99, and

then Second increases 1.

R_STW in the “Mode Information” is assigned as 1.

Reference No. 2.1.9

Name Stop Stopwatch

Input Mode Information, Trigger

Output Mode Information

Process Description R_STW in the “Mode Information” is assigned as 0.

Reference No. 2.1.10

Page 24: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 24

3.2.4.2.11 Process 2.1.11

3.2.4.2.12 Process 2.1.12

3.2.4.2.13 Process 2.3.1

Name Record Lap Time

Input Stopwatch, Mode Information, Trigger

Output Stopwatch, Mode Information

Process Description The data of stopwatch time being measured in the

“Stopwatch Information” are copied to the data of lap

time in the “Stopwatch Information”.

(Minute of lap time ← Minute,

Second of lap time ← Second,

Centisecond of lap time ← Centisecond)

LAP_ON in the “Mode Information” is assigned as 1.

Reference No. 2.1.11

Name Stopwatch Reset

Input Stopwatch Information, Trigger

Output Stopwatch Information

Process Description The all values of stopwatch time being measured in the

“Stopwatch Information” are assigned as 0.

Reference No. 2.1.12

Name Lap Time Reset

Input Stopwatch, Mode Information, Trigger

Output Stopwatch, Mode Information

Process Description The all values of lap time in the “Stopwatch

Information” are assigned as 0.

Also, LAP_ON in the “Mode Information” is assigned as

0.

Reference No. 2.3.1

Name Light Controller

Input Button Information 2, Mode Information, Tick

Output Trigger

Process Description It triggers relevant processes according to inputted

data.

Page 25: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 25

3.2.4.2.14 Process 2.3.2

3.2.4.2.15 Process 2.3.3

3.2.4.3 Data Dictionary

Reference No. 2.3.2

Name Turn On The Light

Input Trigger, Mode Information

Output Mode Information, Light Command

Process Description The value of LIGHT_STATE in the “Mode Information” is

assigned as 1.

Reference No. 2.3.3

Name Turn Off The Light

Input Trigger, Mode Information

Output Mode Information, Light Command

Process Description The value of LIGHT_STATE in the “Mode Information” is

assigned as 0.

Data Name Description Format /

Type

Button

Information 1

If A, B, or C button is inputted, it stores the

integer value of 1, 2, or 3.

If there isn’t any button input, it stores the

integer value of 0.

Integer

Time

Information

“Time Information” contains data which

indicates the current time(Year, Month, Day,

Day of the weak, Hour, Minute, Second)

shown on a screen.

All data are an integer variable.

The initial values of data are as in the

following.

Year : 2012

Month : 01

Day : 01

Day of the weak : 0

(The meaning of values of ‘Day of the weak’ -

0(Sun.), 1(Mon.), 2(Tue.), 3(Wed.), 4(Thu.),

5(Fri.), 6(Sat.))

Structure,

Integer

Page 26: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 26

Hour : 00

Minute : 00

Second : 00

Here are ranges of the data value.

Year : 2012~2099

Month : 1~12

Day : 1~31

Day of the weak : 0~6

Hour : 0~23

Minute : 0~59

Second : 0~59

Stopwatch

Information

“Stopwatch Information” contains data of

stopwatch time(Minute, Second, Centisecond)

which is being measured and lap

time(Minute of lap time, Second of lap time,

Centisecond of lap time).

All data are an integer variable.

Time is measured in one centisecond by 99

minutes.

Here are ranges of data values.

Minute : 0~99

Second : 0~59

Centisecond : 0~99

Minute of lap time : 0~99

Second of lap time : 0~59

Centisecond of lap time : 0~99

The initial values of all data are 0.

Structure,

Integer

Mode

Information

“Mode Information” contains information

about which modes to be displayed in DWS

as data, such as M_STW, M_TK, and M_TS.

At first, the value of M_TK is 1. The values of

M_STW and M_TS are 0.

It contains not only those, but also data that

represent which section is indicated in

Timesetting Mode, such as TS_year,

TS_month, TS_day, TS_hour, TS_minute, and

TS_second.

Initially, the value of TS_second is assigned as

1.

Structure,

Integer

Page 27: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 27

3.2.5 DFD Level 4

3.2.5.1 State Transition Diagram for Display Controller 2.1.1

The values of TS_year, TS_month, TS_day,

TS_hour, and TS_minute are assigned as 0.

In addition, it has data, such as R_STW,

LAP_ON, and LIGHT_STATE. All these values

are 0 at first.

All data are an integer variable.

Display

Command

Output information which will be shown on a

screen.

Array of

Character

Button

Information 2

If D button is inputted, it stores the integer

value of 4.

If there isn’t a button input, it stores the

integer value of 0.

Integer

Light

Command

The value of LIGHT_STATE. Integer

Page 28: dslab.konkuk.ac.krdslab.konkuk.ac.kr/Class/2012/12SE/Class_B/TP4/T3/T3_SRA.pdf · 2012. 11. 2. · Author: dalee Created Date: 11/2/2012 1:07:14 AM

Ver. SE-T3-2012.SRA-3.4

Team 3 28

3.2.5.2 State Transition Diagram for Light Controller 2.3.1

3.2.6 Overall DFD