소프트웨어공학개론 - konkukdslab.konkuk.ac.kr/class/2012/12se/class_a/team/ref. 1/t4... ·...
TRANSCRIPT
소프트웨어공학개론 Digital Watch System
SA+SD
TEAM 4 version_3
팀원
김재엽 201111344
김 신 201111342
박주광 201211350
황정아 201111397
Contents
1.System Context Diagram
2.Event List
3.DFD Level 0
4.DFD Level 1
5.DFD Level 2
6.DFD Level 3
7.DFD Level 4
8.DFD Level 5
9.DFD Level 6
10.DFD
11.SD
System Context Diagram
Input Screen
Digital
Watch
Control
A Button Input
B Button Input
C Button Input
D Button Input Display
A Button
B Button
C Button
D Button
Digital
Watch
Control
0
DFD Level 0
A Button Input
Digital
Clock
Tick
Screen
Display
B Button Input
C Button Input
D Button Input
Process Specification
Reference No. 0
Name Digital watch Control
Input Button (Char)
Tick
Output Display (Structure)
Description 버튼을 입력 받아서 모드에 맞게 Display
를 Screen에 출력한다.
Data Dictionary
Input/Output Event Description Format/Type
A button A button True/False, Interrupt
B button B button True/False, Interrupt
C button C button True/False, Interrupt
D button D button True/False, Interrupt
Display DateTime, LapTime, Button,
Mode Information
Structure(Button, Mode, D
ateTime, Laptime)
Tick Digital clock에서 주기적으
로 주는 Tick.
Periodic
DFD Level 1
Button
Acceptor
1
A Button Input
B Button Input
C Button Input
D Button Input
Mode
Manager
2
Display
Manager
3
Display
Mode Display
Tick
Button
Digital Watch Control
Tick
Process Specification
Reference No. 1
Name Button Acceptor
Input Button (Char)
Output Button (Char)
Description 버튼을 입력 받아 버튼을 출력한다.
Process Specification
Reference No. 2
Name Mode manager
Input Button (Char)
Tick
Output Display Mode (Structure)
Description 버튼에 따라 Display Mode를 출력한다.
Process Specification
Reference No. 3
Name Display manager
Input Display Mode (Structure)
Tick
Output Display (Structure)
Description 디스플레이 모드를 입력 받으면 그에 맞는
디스플레이를 출력한다.
Data Dictionary - Modified
Input/Out
put Event
Description Format/Type
Button Button Char
Mode Mode 정보가 들어있는 구조체 .
Backlight 관련 변수는 따로 만들
어서 조정.
Backlight_time은 백라이트가 켜지
고 나서의 시간을 측정하는 변수.
2초가 지나면 is_backlight를 false
로 바꿈
Structure
{mode Top_mode
mode Middle_mode
mode Bottom_mode
bool is_backlight
int backlight_time
}
Display Mode 모든 정보와 출력 모드. 출력 모드
는 Top, Middle, Bottom 모드의 모
든 정보를 의미.
Structure
(Button, Datetime, Laptime,
Mode)
Data Dictionary - Modified
Input/Output Event Description Format/Type
Top_mode 최상위 모드.
TK, SW 모드에 해당함.
enum TOP_MODE{
TIMEKEEPING, STOPWATCH}
Middle_mode 최상의 모드의 중간모드. - TK 모드 : COMMON, TIME_SETTING
- SW 모드 : RUNNING, LAPTIME, START,
STOP, PAUSE, RESUME
enum MIDDLE_MODE{ COMMON, TIME_SETTING, RUNNING,
LAPTIME, START, STOP, PAUSE, RESUME}
Bottom_mode 최상위 모드의 하위모드이거나 중
간모드의 하위모드에 해당. - BACKLIGHT : 최상위 모드의 하위모드
- SECONT, HOUR, MINUTE, DAY, YEAR,
MONTH : TK->TIME_SETTING의 하위모드
- STOPWATCH_XXX : SW 모드의 하위 모드의
트리거
- NIL : 아무 모드 아님.
enum BOTTOM_MODE{ SECOND, HOUR, MINUTE, DAY, YEAR,
MONTH, STOPWATCH_LAPTIME,
STOPWATCH_RESET,
STOPWATCH_PAUSE, STOPWATCH_RUN,
STOPWATCH_STOP,
STOPWATCH_RESUME, BACKLIGHT, NIL
}
DFD Level 2
Button
Control
1.5
A Button Input
B Button Input
C Button Input
D Button Input
A Button
B Button
C Button
D Button
Button
Button Acceptor
A Button
Interface
1.1
B Button
Interface
1.2
C Button
Interface
1.3
D Button
Interface
1.4
DFD Level 2
Mode
Selector
2.1
Time
Control
2.3
Mode
Control
2.2
Display
Mode
Mode Manager
Tick
Datetime
Laptime
Tick
DFD Level 2 Display Manager
Display
Mode Display
Mode
Controller
3.1
Display
TimeKeeping
Mode
3.2
Display
Stopwatch
Mode
3.3
Display
Display
Enable
Disable
Enable
Disable Tick
Tick
Process Specification
Reference No. 1.1
Name A Button Interface
Input A Button (Char)
Output A Button (Char)
Description A 버튼을 입력 받으면 A 버튼을 출력한다.
Process Specification
Reference No. 1.2
Name B Button Interface
Input B Button (Char)
Output B Button (Char)
Description B 버튼을 입력 받으면 B 버튼을 출력한다.
Process Specification
Reference No. 1.3
Name C Button Interface
Input C Button (Char)
Output C Button (Char)
Description C 버튼을 입력 받으면 C 버튼을 출력한다.
Process Specification
Reference No. 1.4
Name D Button Interface
Input D Button (Char)
Output D Button (Char)
Description D 버튼을 입력 받으면 D 버튼을 출력한다.
Process Specification
Reference No. 1.5
Name Button Control
Input Button (Char)
Output Button (Char)
Description Button을 입력 받아 Button을 출력한다.
Process Specification
Reference No. 2.1
Name Mode Selector
Input Button (Char)
Tick
Output Button & Mode (Structure)
Description Button을 입력 받으면 그에 따른 모드를
선택하고 현재 Button과 바뀐 Mode를 출
력한다
Process Specification
Reference No. 2.2
Name Mode Control
Input Button_Mode (Structure)
Output DateTime (Structure)
LapTime(Structure)
Description 버튼, 모드를 받아 최상위 모드에서 모드
를 결정하고 DateTime, LapTime을 출력한
다.
Process Specification
Reference No. 2.3
Name Time Control
Input DateTime (Structure)
LapTime(Structure)
Output Display Mode (Structure)
Description DateTime, LapTime을 입력 받으면 최상위
모드에서 필요한 시간 정보를 뽑아 디스플
레이 모드를 출력을 한다.
Process Specification
Reference No. 3.1
Name Display Mode Controller
Input Display Mode (Structure)
Tick
Output Enable/Disable (True/False)
Description Display Mode를 입력 받으면 최상위 모드
에 맞는 Display가 출력될 수 있도록 enab
le/disable을 출력한다.
Process Specification
Reference No. 3.2
Name Display TimeKeeping Mode
Input Enable/Disable (True/False)
Output Display (Structure)
Description Enable을 입력 받은 경우 TK mode에 맞
게 디스플레이를 출력한다.
Disable을 입력 받은 경우 출력하지 않는
다.
Process Specification
Reference No. 3.3
Name Display Stopwatch Mode
Input Enable/Disable (True/False)
Tick
Output Display (Structure)
Description Enable을 입력 받은 경우 SW mode에 맞
게 디스플레이를 출력한다.
Disable을 입력 받은 경우 출력하지 않는
다.
Data Dictionary
Input/Out
put Event
Description Format/Type
DateTime 현재 시간과 모드, 버튼 정보 Structure
(Mode_Button mode_button
int year
int month
int day
int week
int hour
int minute
int second)
LapTime 측정할 때 이용되는 시간과 모
드, 버튼 정보
Structure (Mode_Button mode_button
double lap_data struct timeval start struct timeval end struct timeval lap
double now_time)
DFD Level 3 State Transition Diagram for Controller 3.1 (Display Mode Controller)
Display Timekeeping Mode
Display Stopwatch Mode
/ Enable “Display Timekeeping Mode”
Tick[Timekeeping Mode]
/ Disable “Display Timekeeping Mode”
Enable “Display Stopwatch Mode”
Tick[Stopwatch Mode]
/ Disable “Display Stopwatch Mode”
Enable “Display Timekeeping Mode”
Tick[Backlight&& backlight_time > 2]
/ Disable “Backlight”
backlight_time = 0
Tick[Backlight && backlight_time > 2]
/ Disable “Backlight Mode”
backlight_time = 0
Tick[Backlight && backlight_time <= 2]
/ Enable “Backlight”
backlight_time + 1
Tick[Backlight&& backlight_time <= 2]
/ Enable “Backlight Mode”
backlight_time + 1
DFD Level 3
Button
Controller
1.5.1
A Button
B Button
C Button
D Button
Trigger
Trigger
Trigger
Trigger
Button Control
Button
Button
Button
Button
A Button
1.5.2
D Button
1.5.5
B Button
1.5.3
C Button
1.5.4
DFD Level 3
Mode
Controller
2.1.1
Enable
Enable
Disable
Disable
Mode Selector
Button
Mode &
Button
Mode &
Button
Time
Keeping
Mode
2.1.2
Stopwatch
Mode
2.1.3 Tick
DFD Level 3 Mode Control
Mode &
Button
Timekeeping
Control
2.2.1
Stopwatch
Control
2.2.2
DateTime
Laptime
DFD Level 3 Time Control
DateTime Display
Mode
Display
Mode
Current
time
2.3.1
Stopwatch
2.3.2
Tick
LapTime
Tick
DateTime
DFD Level 3 Display Timekeeping Mode
Display
Mode Timekeeping
Display
3.2.1
Display
Tick
DFD Level 3 Display Stopwatch Mode
Display
Mode Stopwatch
Display
3.3.1
Display
Tick
Process Specification
Reference No. 1.5.1
Name Button Controller
Input Button (Char)
Output Trigger (True/False)
Description Button을 입력 받아 해당 Button에 Trigge
r를 출력한다.
Process Specification
Reference No. 1.5.2
Name A Button
Input Trigger (True/False)
Output Button (Char)
Description Trigger를 입력 받으면 A 버튼을 출력한다.
Process Specification
Reference No. 1.5.3
Name B Button
Input Trigger (True/False)
Output Button (Char)
Description Trigger를 입력 받으면 B 버튼을 출력한다.
Process Specification
Reference No. 1.5.4
Name C Button
Input Trigger (True/False)
Output Button (Char)
Description Trigger를 입력 받으면 C 버튼을 출력한다.
Process Specification
Reference No. 1.5.5
Name D Button
Input Trigger (True/False)
Output Button (Char)
Description Trigger를 입력 받으면 D 버튼을 출력한다
.
Process Specification
Reference No. 2.1.1
Name Mode Controller
Input Button (Char)
Tick
Output Enable/Disable
Description Button을 입력 받으면 해당 모드에 Enable
/Disable로 출력해 모드를 전환한다.
Process Specification - Modified
Reference No. 2.1.2
Name Time Keeping Mode
Input Enable/Disable (True/False)
Output Mode_Button (Structure)
Description Input이 Enable인 경우 Top_mode는 TIME
KEEPING, Middle_mode 는 COMMON, B
ottom_mode 는 NIL 로 바뀐 Mode와 But
ton이 출력된다.
Disable인 경우 출력하지 않는다.
Process Specification - Modified
Reference No. 2.1.3
Name Stopwatch Mode
Input Enable/Disable (True/False)
Output Mode_Button (Structure)
Description Input이 Enable인 경우 Top_mode는 STO
PWATCH, Middle_mode는 STOP, Bottom_
mode는 STOPWATCH_STOP로 바뀐 Mod
e 와 button 출력된다.
Disable인 경우 출력하지 않는다.
Process Specification
Reference No. 2.2.1
Name Time Keeping Control
Input Mode_Button (Structure)
Output DateTime (Structure)
Description Mode와 Button을 입력 받으면 TK mode,
SW mode control에서 필요한 Datetime
을 출력한다.
Process Specification
Reference No. 2.2.2
Name Stopwatch Control
Input Mode_Button (Structure)
Output Lap time(Structure)
Description Mode_Button을 입력 받으면 SW mode c
ontrol에서 필요한 Lap time을 출력한다.
Process Specification
Reference No. 2.3.1
Name Current Time
Input DateTime (Structure)
Tick
Output Display Mode(Structure)
Description DateTime을 입력 받으면 DateTime 안에
있는 모드에 맞게 디스플레이 모드를 출력
한다.
Process Specification
Reference No. 2.3.2
Name Stopwatch
Input DateTime (Structure)
Laptime (Structure)
Tick
Output Display Mode (Structure)
Description DateTime, Laptime을 입력 받으면 SW 모
드에서 필요한 Display Mode를 출력한다.
Process Specification
Reference No. 3.2.1
Name TimeKeeping Display
Input Display Mode (Structure)
Tick
Output Display (Structure)
Description Display Mode를 입력 받아 TK 모드에서의
Display를 출력한다.
Process Specification
Reference No. 3.3.1
Name Stopwatch Display
Input Display Mode (Structure)
Tick
Output Display
Description Display Mode를 입력 받으면 SW MODE
에서의 display를 출력한다.
DFD Level 4 State Transition Diagram for Controller 1.5.1 (Button Controller)
A Button
B Button
D Button
C Button
if[D]
/ Trigger “D Button” if[C && !D]
/ Trigger “C Button”
if[B && !C && !D]
/ Trigger “B Button”
if[A && !B && !C && !D]
/ Trigger “A Button”
initialization
DFD Level 4 State Transition Diagram for Controller 2.1.1 (Mode Controller)
Timekeeping
Mode
Stopwatch
Mode
/ Enable “Timekeeping Mode”
Tick[C]
/ Disable “Timekeeping Mode”
Enable “Stopwatch Mode”
Tick[C]
/ Disable “Stopwatch Mode”
Enable “Timekeeping Mode”
DFD Level 4 Timekeeping Control
Mode &
Button
Timekeeping
Controller
2.2.1.1
Common
Mode
2.2.1.2
Time
Setting
Mode
2.2.1.3
Enable
Disable
Enable
Disable
DateTime
DateTime
Tick
Stopwatch Control
Mode &
Button
Stopwatch
Mode
Controller
2.2.2.1
Enable
Start 2.2.2.2
Laptime
Tick
Laptime
Laptime
Pause
2.2.2.3
Resum
e
2.2.2.4
Reset
2.2.2.5
Laptim
e
2.2.2.6
Runnin
g
2.2.2.8
Stop
2.2.2.9
Enable
Disable
Disable
Trigger
Trigger
Trigger
Trigger
Trigger Laptime
Laptime
Laptime
Laptime Rerunn
ing
2.2.2.7
Laptime
Trigger
DFD Level 4
Process Specification - Modified
Reference No. 2.2.1.1
Name TimeKeeping Controller
Input Mode_Button (Structure)
Tick
Output Enable/Disable (True/False)
Description Mode_Button을 입력 받으면 TK mode에
서 Button에 따라 각각의 모드에 Enable/
Disable을 출력한다.
만약 Common mode 에서 C 버튼을 입
력하면 Common mode를 disable하고 Ti
me setting mode를 enable 한다. 반대도
똑같이 작용한다.
Process Specification
Reference No. 2.2.1.2
Name Common Mode
Input Enable/Disable (True/False)
Output DateTime (Structure)
Description Enable을 입력 받을 경우 Common Mode
에서 DateTime를 출력한다.
Disable인 경우 DateTime는 출력되지 않
는다.
Process Specification
Reference No. 2.2.1.3
Name TimeSetting Mode
Input Enable/Disable (True/False)
Output DateTime (Structure)
Description Enable을 입력 받을 경우 TimeSetting Mo
de에서 DateTime를 출력한다.
Disable인 경우 DateTime는 출력되지 않
는다.
Process Specification
Reference No. 2.2.2.1
Name Stopwatch Mode Controller
Input Mode_Button (Structure)
Tick
Output Trigger (True/False)
Enable/Disable (True/False)
Description Mode_Button을 입력 받아 middle mode
에 따라 trigger 혹은 Enable/Disable을 출
력한다.
Process Specification
Reference No. 2.2.2.2
Name Start
Input Trigger (True/False)
Output Lap time (Structure)
Description Trigger 를 입 력 받 으 면 초 기 화 된
stopwatch을 run start하면서 돌아가기 시
작하는 lap time을 출력한다.
Process Specification
Reference No. 2.2.2.3
Name Pause
Input Trigger (True/False)
Output Lap time (Structure)
Description Trigger을 입력 받으면 정지된 lap time을
출력한다.
Process Specification
Reference No. 2.2.2.4
Name Resume
Input Trigger (True/False)
Output Lap time (Structure)
Description Trigger를 입력 받으면 초기화 하지 않은
lap time을 재 측정하면서 돌아가는 lap
time을 출력한다.
Process Specification
Reference No. 2.2.2.5
Name Reset
Input Trigger (True/False)
Output Lap time (Structure)
Description Trigger를 입력 받으면 초기화된 lap time
을 출력한다.
Process Specification
Reference No. 2.2.2.6
Name Lap Time
Input Trigger (True/False)
Output Lap time (Structure)
Description Trigger를 입력 받으면 돌아가다 A버튼을
눌렀을 때 측정한 lap time을 출력한다.
Process Specification
Reference No. 2.2.2.7
Name Rerunning
Input Trigger (True/False)
Output Lap time (Structure)
Description Trigger를 입력 받으면 현재 돌아가는 lap
time을 출력한다.
Process Specification
Reference No. 2.2.2.8
Name Running
Input Enable/Disable (True/False)
Output Lap time (Structure)
Description Enable를 입력 받으면 현재 돌아가는 Lap
time을 출력한다.
Process Specification
Reference No. 2.2.2.9
Name Stop
Input Enable/Disable (True/False)
Output Lap time (Structure)
Description Enable를 입력 받으면 측정을 중지시키고
그 때의 Lap time을 출력한다.
DFD Level 5 State Transition Diagram for Controller 2.2.1.1 (Timekeeping Controller)
Common Mode
Time Setting Mode
/ Enable “Common Mode”
Tick[A]
/ Disable “Common Mode”
Enable “Time Setting Mode”
Tick[A]
/ Disable “Time Setting Mode”
Enable “Common Mode”
DFD Level 5 State Transition Diagram for Controller 2.2.2.1 (Stopwatch Controller)
Stop
Start
Running
Reset
Laptime
Rerunning
Resume
Pause
/ Enable “Stop”
/ Disable “Running”
Enable “Running”
Tick[B && middle_mode == STOP]
/Trigger “Start”
Tick[B && middle_mode == RUNNING && bottom_mode == STOPWATCH_RUN]
/Trigger “Pause”
/Enable ”Running”
Tick[B && middle_mode == RUNNING && bottom_mode == STOPWATCH_PAUSE ] /Trigger “Resume”
/Enable ”Running”
Tick[A && middle_mode == RUNNING && (bottom_mode == STOPWATCH_RUN ||bottom_mode == STOPWATCH_LAPTIME)]
/Trigger “Laptime”
/Enable “Running”
Tick[B && middle_mode == RUNNING && bottom_mode == STOPWATCH_LAPTIME]
/Trigger “Rerunning”
/Enable “Running”
Tick[A && middle_mode == RUNNING && bottom_mode == STOPWATCH_PAUSE]
/Trigger “Reset”
/Disable “Stop”
Enable “Stop”
DFD Level 5 - Modified
Time Setting Mode
Mode &
Button
Time
Setting
Mode
Controller
2.2.1.3.1
Second
_Plus
2.2.1.3.
2
Minute_
Plus
2.2.1.3.
4
Hour_pl
us
2.2.1.3.
3
Year_Pl
us
2.2.1.3.
5
Month_
Plus
2.2.1.3.
6
Day_Pl
us
2.2.1.3.
7
DateTime
DateTime
DateTime
DateTime
DateTime
DateTime
Enable
Disable
Enable
Disable
Enable
Disable
Enable
Disable
Enable
Disable
Enable
Disable
Tick
Process Specification
Reference No. 2.2.1.3.1
Name Time Setting Mode Controller
Input Mode_Button (Structure)
Tick
Output Enable/Disable (True/False)
Description Mode, Button을 입력 받아 TK 모드에서
Time Setting Mode인 경우 버튼, Mode에
맞게 Enable/Disable을 출력한다.
Controller에 입력이 들어온 경우 처음에
는 Second Data Process에 Enable을 보낸
다.
Process Specification - Modified
Reference No. 2.2.1.3.2
Name Second_Plus
Input Enable/Disable (True/False)
Output DateTime (Structure)
Description Enable을 입력 받은 경우 Second에 대한
Event를 출력한다.
Process Specification - Modified
Reference No. 2.2.1.3.3
Name Hour_Plus
Input Enable/Disable (True/False)
Output DateTime (Structure)
Description Enable을 입력 받은 경우 Hour에 대한 Ev
ent를 출력한다.
Process Specification - Modified
Reference No. 2.2.1.3.4
Name Minute_Plus
Input Enable/Disable (True/False)
Output DateTime (Structure)
Description Enable을 입력 받은 경우 Minute에 대한
Event를 출력한다.
Process Specification - Modified
Reference No. 2.2.1.3.5
Name Year_Plus
Input Enable/Disable (True/False)
Output DateTime (Structure)
Description Enable을 입력 받은 경우 Year에 대한 Eve
nt를 출력한다.
Process Specification - Modified
Reference No. 2.2.1.3.6
Name Month_Plus
Input Enable/Disable (True/False)
Output DateTime (Structure)
Description Enable을 입력 받은 경우 Month에 대한 E
vent를 출력한다.
Process Specification - Modified
Reference No. 2.2.1.3.7
Name Day_Plus
Input Enable/Disable (True/False)
Output DateTime (Structure)
Description Enable을 입력 받은 경우 Day에 대한 Eve
nt를 출력한다.
DFD Level 6 - Modified State Transition Diagram for Controller 2.2.1.3.1(Time Setting Mode Controller)
Second_Plus
Hour_Plus
/ Enable “Second”
Tick[C]
/ Disable “Second”
Enable “Hour”
Tick[C]
/ Disable “Hour”
Enable “Minute”
Tick[C]
/ Disable “Minute”
Enable “Year”
Tick[C]
/ Disable “Year”
Enable “Month”
Tick[C]
/ Disable “Month”
Enable “Day”
Tick[C]
/ Disable “Day”
Enable “Second”
Minute_Plus
Year_Plus
Month_Plus
Tick[B]
/ Trigger “Second_Plus”
Tick[B]
/ Trigger “Hour_Plus”
Tick[B]
/ Trigger “Minute_Plus”
Tick[B]
/ Trigger “Year_Plus”
Tick[B]
/ Trigger “Month_Plus”
Day_Plus Tick[B]
/ Trigger “Day_Plus”
Initialization
A Button
B Button
C Button
D Button
Button
Control
1.5
Button Mode
Controller
2.1.1
A Button Input
B Button Input
C Button Input
D Button Input
Time
Keeping
Mode
2.1.2
Stop
Watching
Mode
2.1.3
Mode &
Button
Enable/Disable
Enable/Disable
Timekeeping
Controller
2.2.1.1
Stopwatch
Mode
Controller
2.2.2.1
Common
Mode
2.2.1.2
Res
ume
2.2.
2.4
start
2.2.
2.2
Lap
Tim
e
2.2.
2.6
Enable/Disable
Trigger
Trigger
Enable/Disable
Enable/Disable
Current
time 2.3.1
DateTime
Lap Time
Stopwatc
h
2.3.2
Trigger
Display
Mode
Display
Mode
Time
Setting
Mode
Controller
2.2.1.3.1 Mode & Button
Secon
d
_Plus 2.2.1.3
.2
Minute
_Plus 2.2.1.3
.4
Hour
_Plus 2.2.1.3
.3
Year
_Plus 2.2.1.3
.5
Month
_Plus 2.2.1.3
.6
Day
_Plus 2.2.1.3
.7
Enable/Disable
Enable/Disable
Enable/Disable
Enable/Disable
Enable/Disable
Enable/Disable
DateTime
INPUT
CONTROL
DFD - Modified
DateTime
DateTime
DateTime
DateTime
DateTime
Pau
se
2.2.
2.3
Res
et
2.2.
2.5
Reru
nnin
g
2.2.
2.7
Run
ning
2.2.
2.8
Stop
2.2.
2.9
Lap Time
Lap Time
Lap Time
Lap Time
Lap Time
Lap Time
Lap Time
OUTPUT
Display Mode
display
Display
Mode
Controller
3.1
Display
TimeKee
ping
Mode
3.2
Display
Stopwatc
h
Mode
3.3
Enable
Disable
Disable
Enable
display
DFD - 부분확대
Structured Charts - Notation
Basic Notation [Yourdon 1989] Variations
Modules
Library modules
Module call
Data Flow
Control Flow
Data module
Asynchronous
Module call
Iteration
Decision
Structured Charts – Digital Watch System (basic)
Basic Notation [Yourdon 1989] Variations
Modules
Library modules
Module call
Data Flow
Control Flow
Data module
Asynchronous
Module call
Iteration
Decision
Main
D Button C Button B Button A Button
Button
Controller
Mode
Controller
Timekeepig
Mode
Stopwatching
Mode
Button
Enable
Disable Enable
Disable
Mode
Button
Structured Charts – Digital Watch System (basic)
Timekeeping
Controller
Common
Mode
Mode
Button
Enable
Disable
Time Setting
Mode
Controller
Second
_Plus
Minute
_Plus
Hour
_Plus
Day
_Plus
Month
_Plus
Year
_Plus
Current Time
Enable
Disable
DateTime
Display Mode
DateTime
Structured Charts – Digital Watch System (basic)
Stopwatch
Controller
Reset Rerunning
Mode
Button
Trigger Enable
Disable Trigger
Lap Time
Container
Lap Time
Stop Running Pause Resume Start Laptime
Trigger Trigger Trigger Trigger Enable
Disable
Display Mode
Structured Charts – Digital Watch System (basic)
Display
Controller
Display
Timekeeping
Mode
Display
Stopwatch
Mode
Enable
Disable
Display
Display
Mode
Display
Enable
Disable
Display
Mode
Structured Charts – Digital Watch System (advanced)
Basic Notation [Yourdon 1989] Variations
Modules
Library modules
Module call
Data Flow
Control Flow
Data module
Asynchronous
Module call
Iteration
Decision
Main
D Button C Button B Button A Button
Button
Controller
Mode
Controller
Timekeepig
Mode
Stopwatching
Mode
Button
Enable
Disable
Enable
Disable
Mode
Button
Structured Charts – Digital Watch System (advanced)
Timekeeping
Controller
Common
Mode
Mode
Button
Enable
Disable
Time Setting
Mode
Controller
Second
_Plus
Minute
_Plus
Hour
_Plus
Day
_Plus
Month
_Plus
Year
_Plus
Current Time
Enable
Disable
DateTime
Display Mode
DateTime
Enable
Disable
Structured Charts – Digital Watch System (advanced)
Stopwatch
Controller
Reset Rerunning
Mode
Button
Trigger Enable
Disable Trigger
Lap Time
Container
Lap Time
Stop Running Pause Resume Start Laptime
Trigger Trigger Trigger Trigger Enable
Disable
Display Mode
Structured Charts – Digital Watch System (advanced)
Display
Controller
Display
Timekeeping
Mode
Display
Stopwatch
Mode
Enable
Disable
Display
Display
Mode
Display
Enable
Disable
Display
Mode
Q & A
감사합니다