@soddong/agentic-domain-methodology 0.11.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.tbls.yml +64 -0
- package/CHANGELOG.md +97 -0
- package/README.md +501 -0
- package/dist/database.d.ts +8 -0
- package/dist/database.d.ts.map +1 -0
- package/dist/database.js +76 -0
- package/dist/database.js.map +1 -0
- package/dist/fixtures.d.ts +13 -0
- package/dist/fixtures.d.ts.map +1 -0
- package/dist/fixtures.js +413 -0
- package/dist/fixtures.js.map +1 -0
- package/dist/index.d.ts +31 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +19 -0
- package/dist/index.js.map +1 -0
- package/dist/repositories.d.ts +54 -0
- package/dist/repositories.d.ts.map +1 -0
- package/dist/repositories.js +652 -0
- package/dist/repositories.js.map +1 -0
- package/dist/seed-apply.d.ts +20 -0
- package/dist/seed-apply.d.ts.map +1 -0
- package/dist/seed-apply.js +728 -0
- package/dist/seed-apply.js.map +1 -0
- package/dist/service.d.ts +107 -0
- package/dist/service.d.ts.map +1 -0
- package/dist/service.js +225 -0
- package/dist/service.js.map +1 -0
- package/dist/types.d.ts +356 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/validators.d.ts +17 -0
- package/dist/validators.d.ts.map +1 -0
- package/dist/validators.js +297 -0
- package/dist/validators.js.map +1 -0
- package/docs/build.md +47 -0
- package/docs/configuration.md +33 -0
- package/docs/delivery.md +52 -0
- package/docs/operations.md +55 -0
- package/docs/publishing.md +84 -0
- package/docs/schema/generated/README.md +39 -0
- package/docs/schema/generated/methodology_activities.md +121 -0
- package/docs/schema/generated/methodology_activities.svg +143 -0
- package/docs/schema/generated/methodology_activity_artifact_requirements.md +129 -0
- package/docs/schema/generated/methodology_activity_artifact_requirements.svg +52 -0
- package/docs/schema/generated/methodology_activity_criteria.md +112 -0
- package/docs/schema/generated/methodology_activity_criteria.svg +52 -0
- package/docs/schema/generated/methodology_baseline_requirements.md +103 -0
- package/docs/schema/generated/methodology_baseline_requirements.svg +27 -0
- package/docs/schema/generated/methodology_code_groups.md +70 -0
- package/docs/schema/generated/methodology_code_groups.svg +49 -0
- package/docs/schema/generated/methodology_codes.md +88 -0
- package/docs/schema/generated/methodology_codes.svg +49 -0
- package/docs/schema/generated/methodology_common_blueprint_policies.md +104 -0
- package/docs/schema/generated/methodology_common_blueprint_policies.svg +72 -0
- package/docs/schema/generated/methodology_common_blueprint_policy_nodes.md +118 -0
- package/docs/schema/generated/methodology_common_blueprint_policy_nodes.svg +59 -0
- package/docs/schema/generated/methodology_handoff_requirements.md +130 -0
- package/docs/schema/generated/methodology_handoff_requirements.svg +27 -0
- package/docs/schema/generated/methodology_lifecycles.md +105 -0
- package/docs/schema/generated/methodology_lifecycles.svg +71 -0
- package/docs/schema/generated/methodology_methodologies.md +92 -0
- package/docs/schema/generated/methodology_methodologies.svg +92 -0
- package/docs/schema/generated/methodology_phase_processes.md +106 -0
- package/docs/schema/generated/methodology_phase_processes.svg +77 -0
- package/docs/schema/generated/methodology_phases.md +107 -0
- package/docs/schema/generated/methodology_phases.svg +77 -0
- package/docs/schema/generated/methodology_processes.md +98 -0
- package/docs/schema/generated/methodology_processes.svg +118 -0
- package/docs/schema/generated/methodology_schema_migrations.md +52 -0
- package/docs/schema/generated/methodology_schema_migrations.svg +27 -0
- package/docs/schema/generated/methodology_stage_activities.md +106 -0
- package/docs/schema/generated/methodology_stage_activities.svg +77 -0
- package/docs/schema/generated/methodology_stage_artifact_requirements.md +109 -0
- package/docs/schema/generated/methodology_stage_artifact_requirements.svg +52 -0
- package/docs/schema/generated/methodology_stage_criteria.md +112 -0
- package/docs/schema/generated/methodology_stage_criteria.svg +52 -0
- package/docs/schema/generated/methodology_stages.md +117 -0
- package/docs/schema/generated/methodology_stages.svg +121 -0
- package/docs/schema/generated/methodology_steps.md +105 -0
- package/docs/schema/generated/methodology_steps.svg +52 -0
- package/docs/schema/generated/methodology_trace_policies.md +121 -0
- package/docs/schema/generated/methodology_trace_policies.svg +27 -0
- package/docs/schema/generated/schema.json +4253 -0
- package/docs/schema/generated/schema.mmd +296 -0
- package/docs/schema/generated/schema.svg +446 -0
- package/docs/schema/migrations.md +24 -0
- package/docs/usage.md +39 -0
- package/package.json +29 -0
- package/src/database/migrations/0001_methodology_base.sql +1190 -0
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
# methodology_methodologies
|
|
2
|
+
|
|
3
|
+
## Description
|
|
4
|
+
|
|
5
|
+
방법론 정의의 최상위 versioned definition을 관리한다.
|
|
6
|
+
|
|
7
|
+
<details>
|
|
8
|
+
<summary><strong>Table Definition</strong></summary>
|
|
9
|
+
|
|
10
|
+
```sql
|
|
11
|
+
CREATE TABLE methodology_methodologies (
|
|
12
|
+
-- 방법론 식별자
|
|
13
|
+
methodology_id CHAR(36) PRIMARY KEY
|
|
14
|
+
CHECK (length(methodology_id) = 36),
|
|
15
|
+
|
|
16
|
+
-- 방법론 코드
|
|
17
|
+
methodology_code VARCHAR(128) NOT NULL,
|
|
18
|
+
|
|
19
|
+
-- 방법론명
|
|
20
|
+
methodology_name VARCHAR(256) NOT NULL,
|
|
21
|
+
|
|
22
|
+
-- 방법론 정의 데이터 버전
|
|
23
|
+
methodology_version VARCHAR(64) NOT NULL,
|
|
24
|
+
|
|
25
|
+
-- 방법론 상태 코드
|
|
26
|
+
methodology_status_code VARCHAR(32) NOT NULL DEFAULT 'draft'
|
|
27
|
+
CHECK (methodology_status_code IN ('draft', 'active', 'deprecated', 'archived')),
|
|
28
|
+
|
|
29
|
+
-- 방법론 설명
|
|
30
|
+
description TEXT,
|
|
31
|
+
|
|
32
|
+
-- 활성 여부. 1은 활성, 0은 비활성
|
|
33
|
+
is_active INTEGER NOT NULL DEFAULT 1
|
|
34
|
+
CHECK (is_active IN (0, 1)),
|
|
35
|
+
|
|
36
|
+
-- 생성 시각
|
|
37
|
+
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
38
|
+
|
|
39
|
+
-- 수정 시각
|
|
40
|
+
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
41
|
+
|
|
42
|
+
-- 확장 메타데이터
|
|
43
|
+
metadata_json JSON
|
|
44
|
+
CHECK (metadata_json IS NULL OR json_valid(metadata_json)),
|
|
45
|
+
|
|
46
|
+
UNIQUE (methodology_code, methodology_version)
|
|
47
|
+
)
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
</details>
|
|
51
|
+
|
|
52
|
+
## Columns
|
|
53
|
+
|
|
54
|
+
| Name | Type | Default | Nullable | Children |
|
|
55
|
+
| ----------------------- | ------------ | ----------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
56
|
+
| methodology_id | CHAR(36) | | true | [methodology_common_blueprint_policies](methodology_common_blueprint_policies.md) [methodology_lifecycles](methodology_lifecycles.md) [methodology_processes](methodology_processes.md) |
|
|
57
|
+
| methodology_code | VARCHAR(128) | | false | |
|
|
58
|
+
| methodology_name | VARCHAR(256) | | false | |
|
|
59
|
+
| methodology_version | VARCHAR(64) | | false | |
|
|
60
|
+
| methodology_status_code | VARCHAR(32) | 'draft' | false | |
|
|
61
|
+
| description | TEXT | | true | |
|
|
62
|
+
| is_active | INTEGER | 1 | false | |
|
|
63
|
+
| created_at | DATETIME | CURRENT_TIMESTAMP | false | |
|
|
64
|
+
| updated_at | DATETIME | CURRENT_TIMESTAMP | false | |
|
|
65
|
+
| metadata_json | JSON | | true | |
|
|
66
|
+
|
|
67
|
+
## Constraints
|
|
68
|
+
|
|
69
|
+
| Name | Type | Definition |
|
|
70
|
+
| -------------------------------------------- | ----------- | -------------------------------------------------------------------------------- |
|
|
71
|
+
| methodology_id | PRIMARY KEY | PRIMARY KEY (methodology_id) |
|
|
72
|
+
| sqlite_autoindex_methodology_methodologies_2 | UNIQUE | UNIQUE (methodology_code, methodology_version) |
|
|
73
|
+
| sqlite_autoindex_methodology_methodologies_1 | PRIMARY KEY | PRIMARY KEY (methodology_id) |
|
|
74
|
+
| - | CHECK | CHECK (length(methodology_id) = 36) |
|
|
75
|
+
| - | CHECK | CHECK (methodology_status_code IN ('draft', 'active', 'deprecated', 'archived')) |
|
|
76
|
+
| - | CHECK | CHECK (is_active IN (0, 1)) |
|
|
77
|
+
| - | CHECK | CHECK (metadata_json IS NULL OR json_valid(metadata_json)) |
|
|
78
|
+
|
|
79
|
+
## Indexes
|
|
80
|
+
|
|
81
|
+
| Name | Definition |
|
|
82
|
+
| -------------------------------------------- | ---------------------------------------------- |
|
|
83
|
+
| sqlite_autoindex_methodology_methodologies_2 | UNIQUE (methodology_code, methodology_version) |
|
|
84
|
+
| sqlite_autoindex_methodology_methodologies_1 | PRIMARY KEY (methodology_id) |
|
|
85
|
+
|
|
86
|
+
## Relations
|
|
87
|
+
|
|
88
|
+

|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
> Generated by [tbls](https://github.com/k1LoW/tbls)
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
|
3
|
+
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
4
|
+
<!-- Generated by graphviz version 12.1.2 (20240928.0832)
|
|
5
|
+
-->
|
|
6
|
+
<!-- Title: methodology_methodologies Pages: 1 -->
|
|
7
|
+
<svg width="1205pt" height="421pt"
|
|
8
|
+
viewBox="0.00 0.00 1205.12 420.76" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
9
|
+
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 416.76)">
|
|
10
|
+
<title>methodology_methodologies</title>
|
|
11
|
+
<polygon fill="white" stroke="none" points="-4,4 -4,-416.76 1201.12,-416.76 1201.12,4 -4,4"/>
|
|
12
|
+
<!-- methodology_methodologies -->
|
|
13
|
+
<g id="node1" class="node">
|
|
14
|
+
<title>methodology_methodologies</title>
|
|
15
|
+
<polygon fill="#efefef" stroke="none" points="506.08,-90.56 506.08,-136.56 823.53,-136.56 823.53,-90.56 506.08,-90.56"/>
|
|
16
|
+
<polygon fill="none" stroke="black" points="506.08,-90.56 506.08,-136.56 823.53,-136.56 823.53,-90.56 506.08,-90.56"/>
|
|
17
|
+
<text text-anchor="start" x="525.19" y="-114.36" font-family="Arial Bold" font-size="18.00">methodology_methodologies</text>
|
|
18
|
+
<text text-anchor="start" x="735.17" y="-114.36" font-family="Arial" font-size="14.00"> </text>
|
|
19
|
+
<text text-anchor="start" x="766.28" y="-114.36" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
|
|
20
|
+
<text text-anchor="start" x="513.08" y="-99.96" font-family="Arial" font-size="14.00" fill="#333333">방법론 정의의 최상위 versioned definition을 관리한다.</text>
|
|
21
|
+
<polygon fill="none" stroke="black" points="506.08,-59.76 506.08,-90.56 823.53,-90.56 823.53,-59.76 506.08,-59.76"/>
|
|
22
|
+
<text text-anchor="start" x="513.08" y="-71.96" font-family="Arial" font-size="14.00">methodology_id </text>
|
|
23
|
+
<text text-anchor="start" x="615.82" y="-71.96" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
|
|
24
|
+
<polygon fill="none" stroke="black" stroke-width="3" points="504.58,-58.26 504.58,-138.06 825.03,-138.06 825.03,-58.26 504.58,-58.26"/>
|
|
25
|
+
</g>
|
|
26
|
+
<!-- methodology_common_blueprint_policies -->
|
|
27
|
+
<g id="node2" class="node">
|
|
28
|
+
<title>methodology_common_blueprint_policies</title>
|
|
29
|
+
<polygon fill="#efefef" stroke="none" points="43.2,-328.76 43.2,-364.36 432.41,-364.36 432.41,-328.76 43.2,-328.76"/>
|
|
30
|
+
<polygon fill="none" stroke="black" points="43.2,-328.76 43.2,-364.36 432.41,-364.36 432.41,-328.76 43.2,-328.76"/>
|
|
31
|
+
<text text-anchor="start" x="50.2" y="-342.16" font-family="Arial Bold" font-size="18.00">methodology_common_blueprint_policies</text>
|
|
32
|
+
<text text-anchor="start" x="356.16" y="-342.16" font-family="Arial" font-size="14.00"> </text>
|
|
33
|
+
<text text-anchor="start" x="387.27" y="-342.16" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
|
|
34
|
+
<polygon fill="none" stroke="black" points="43.2,-297.96 43.2,-328.76 432.41,-328.76 432.41,-297.96 43.2,-297.96"/>
|
|
35
|
+
<text text-anchor="start" x="50.2" y="-310.16" font-family="Arial" font-size="14.00">common_blueprint_policy_id </text>
|
|
36
|
+
<text text-anchor="start" x="231.52" y="-310.16" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
|
|
37
|
+
<polygon fill="none" stroke="black" points="43.2,-267.16 43.2,-297.96 432.41,-297.96 432.41,-267.16 43.2,-267.16"/>
|
|
38
|
+
<text text-anchor="start" x="50.2" y="-279.36" font-family="Arial" font-size="14.00">methodology_id </text>
|
|
39
|
+
<text text-anchor="start" x="152.94" y="-279.36" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
|
|
40
|
+
</g>
|
|
41
|
+
<!-- methodology_common_blueprint_policies->methodology_methodologies -->
|
|
42
|
+
<g id="edge1" class="edge">
|
|
43
|
+
<title>methodology_common_blueprint_policies:methodology_id->methodology_methodologies:methodology_id</title>
|
|
44
|
+
<path fill="none" stroke="black" d="M443.38,-281.72C522.08,-267.45 411.17,-75.16 505.08,-75.16"/>
|
|
45
|
+
<polygon fill="black" stroke="black" points="443.71,-281.69 433.37,-278.04 438.39,-282.14 434.08,-282.5 434.08,-282.5 434.08,-282.5 438.39,-282.14 434.12,-287.01 443.71,-281.69"/>
|
|
46
|
+
</g>
|
|
47
|
+
<!-- methodology_lifecycles -->
|
|
48
|
+
<g id="node3" class="node">
|
|
49
|
+
<title>methodology_lifecycles</title>
|
|
50
|
+
<polygon fill="#efefef" stroke="none" points="536.7,-323.56 536.7,-369.56 792.91,-369.56 792.91,-323.56 536.7,-323.56"/>
|
|
51
|
+
<polygon fill="none" stroke="black" points="536.7,-323.56 536.7,-369.56 792.91,-369.56 792.91,-323.56 536.7,-323.56"/>
|
|
52
|
+
<text text-anchor="start" x="543.7" y="-347.36" font-family="Arial Bold" font-size="18.00">methodology_lifecycles</text>
|
|
53
|
+
<text text-anchor="start" x="716.65" y="-347.36" font-family="Arial" font-size="14.00"> </text>
|
|
54
|
+
<text text-anchor="start" x="747.77" y="-347.36" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
|
|
55
|
+
<text text-anchor="start" x="575.34" y="-332.96" font-family="Arial" font-size="14.00" fill="#333333">방법론 생명주기 모델을 관리한다.</text>
|
|
56
|
+
<polygon fill="none" stroke="black" points="536.7,-292.76 536.7,-323.56 792.91,-323.56 792.91,-292.76 536.7,-292.76"/>
|
|
57
|
+
<text text-anchor="start" x="543.7" y="-304.96" font-family="Arial" font-size="14.00">lifecycle_id </text>
|
|
58
|
+
<text text-anchor="start" x="616.07" y="-304.96" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
|
|
59
|
+
<polygon fill="none" stroke="black" points="536.7,-261.96 536.7,-292.76 792.91,-292.76 792.91,-261.96 536.7,-261.96"/>
|
|
60
|
+
<text text-anchor="start" x="543.7" y="-274.16" font-family="Arial" font-size="14.00">methodology_id </text>
|
|
61
|
+
<text text-anchor="start" x="646.44" y="-274.16" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
|
|
62
|
+
</g>
|
|
63
|
+
<!-- methodology_lifecycles->methodology_methodologies -->
|
|
64
|
+
<g id="edge2" class="edge">
|
|
65
|
+
<title>methodology_lifecycles:methodology_id->methodology_methodologies:methodology_id</title>
|
|
66
|
+
<path fill="none" stroke="black" d="M665.41,-250.9C675.78,-170.61 816.49,-260.06 869.73,-182.76 900.74,-137.73 908.29,-98.5 869.73,-59.76 805.48,4.8 664.81,32.32 664.81,-58.76"/>
|
|
67
|
+
<polygon fill="black" stroke="black" points="665.43,-250.64 660.33,-260.35 665.11,-255.96 664.85,-260.29 664.85,-260.29 664.85,-260.29 665.11,-255.96 669.32,-260.89 665.43,-250.64"/>
|
|
68
|
+
</g>
|
|
69
|
+
<!-- methodology_processes -->
|
|
70
|
+
<g id="node4" class="node">
|
|
71
|
+
<title>methodology_processes</title>
|
|
72
|
+
<polygon fill="#efefef" stroke="none" points="897.69,-323.56 897.69,-369.56 1153.92,-369.56 1153.92,-323.56 897.69,-323.56"/>
|
|
73
|
+
<polygon fill="none" stroke="black" points="897.69,-323.56 897.69,-369.56 1153.92,-369.56 1153.92,-323.56 897.69,-323.56"/>
|
|
74
|
+
<text text-anchor="start" x="904.69" y="-347.36" font-family="Arial Bold" font-size="18.00">methodology_processes</text>
|
|
75
|
+
<text text-anchor="start" x="1077.66" y="-347.36" font-family="Arial" font-size="14.00"> </text>
|
|
76
|
+
<text text-anchor="start" x="1108.78" y="-347.36" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
|
|
77
|
+
<text text-anchor="start" x="928.56" y="-332.96" font-family="Arial" font-size="14.00" fill="#333333">재사용 가능한 수행 절차를 관리한다.</text>
|
|
78
|
+
<polygon fill="none" stroke="black" points="897.69,-292.76 897.69,-323.56 1153.92,-323.56 1153.92,-292.76 897.69,-292.76"/>
|
|
79
|
+
<text text-anchor="start" x="904.69" y="-304.96" font-family="Arial" font-size="14.00">process_id </text>
|
|
80
|
+
<text text-anchor="start" x="976.29" y="-304.96" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
|
|
81
|
+
<polygon fill="none" stroke="black" points="897.69,-261.96 897.69,-292.76 1153.92,-292.76 1153.92,-261.96 897.69,-261.96"/>
|
|
82
|
+
<text text-anchor="start" x="904.69" y="-274.16" font-family="Arial" font-size="14.00">methodology_id </text>
|
|
83
|
+
<text text-anchor="start" x="1007.43" y="-274.16" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
|
|
84
|
+
</g>
|
|
85
|
+
<!-- methodology_processes->methodology_methodologies -->
|
|
86
|
+
<g id="edge3" class="edge">
|
|
87
|
+
<title>methodology_processes:methodology_id->methodology_methodologies:methodology_id</title>
|
|
88
|
+
<path fill="none" stroke="black" d="M886.47,-276.45C810.22,-261.87 916.22,-75.16 824.53,-75.16"/>
|
|
89
|
+
<polygon fill="black" stroke="black" points="886.4,-276.45 895.97,-281.81 891.71,-276.92 896.03,-277.3 896.03,-277.3 896.03,-277.3 891.71,-276.92 896.76,-272.84 886.4,-276.45"/>
|
|
90
|
+
</g>
|
|
91
|
+
</g>
|
|
92
|
+
</svg>
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
# methodology_phase_processes
|
|
2
|
+
|
|
3
|
+
## Description
|
|
4
|
+
|
|
5
|
+
phase에서 어떤 process를 어떤 순서로 사용할지 관리한다.
|
|
6
|
+
|
|
7
|
+
<details>
|
|
8
|
+
<summary><strong>Table Definition</strong></summary>
|
|
9
|
+
|
|
10
|
+
```sql
|
|
11
|
+
CREATE TABLE methodology_phase_processes (
|
|
12
|
+
-- phase process 배치 식별자
|
|
13
|
+
phase_process_id CHAR(36) PRIMARY KEY
|
|
14
|
+
CHECK (length(phase_process_id) = 36),
|
|
15
|
+
|
|
16
|
+
-- 대상 phase 식별자
|
|
17
|
+
phase_id CHAR(36) NOT NULL
|
|
18
|
+
CHECK (length(phase_id) = 36),
|
|
19
|
+
|
|
20
|
+
-- 배치할 process 식별자
|
|
21
|
+
process_id CHAR(36) NOT NULL
|
|
22
|
+
CHECK (length(process_id) = 36),
|
|
23
|
+
|
|
24
|
+
-- phase 내 process 순서
|
|
25
|
+
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
26
|
+
|
|
27
|
+
-- 필수 수행 여부
|
|
28
|
+
is_required INTEGER NOT NULL DEFAULT 1
|
|
29
|
+
CHECK (is_required IN (0, 1)),
|
|
30
|
+
|
|
31
|
+
-- tailoring 허용 여부
|
|
32
|
+
tailoring_allowed INTEGER NOT NULL DEFAULT 0
|
|
33
|
+
CHECK (tailoring_allowed IN (0, 1)),
|
|
34
|
+
|
|
35
|
+
-- 생성 시각
|
|
36
|
+
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
37
|
+
|
|
38
|
+
-- 수정 시각
|
|
39
|
+
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
40
|
+
|
|
41
|
+
-- 확장 메타데이터
|
|
42
|
+
metadata_json JSON
|
|
43
|
+
CHECK (metadata_json IS NULL OR json_valid(metadata_json)),
|
|
44
|
+
|
|
45
|
+
FOREIGN KEY (phase_id)
|
|
46
|
+
REFERENCES methodology_phases (phase_id)
|
|
47
|
+
ON DELETE CASCADE,
|
|
48
|
+
|
|
49
|
+
FOREIGN KEY (process_id)
|
|
50
|
+
REFERENCES methodology_processes (process_id)
|
|
51
|
+
ON DELETE CASCADE,
|
|
52
|
+
|
|
53
|
+
UNIQUE (phase_id, process_id),
|
|
54
|
+
UNIQUE (phase_id, sort_order)
|
|
55
|
+
)
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
</details>
|
|
59
|
+
|
|
60
|
+
## Columns
|
|
61
|
+
|
|
62
|
+
| Name | Type | Default | Nullable | Parents |
|
|
63
|
+
| ----------------- | -------- | ----------------- | -------- | ------------------------------------------------- |
|
|
64
|
+
| phase_process_id | CHAR(36) | | true | |
|
|
65
|
+
| phase_id | CHAR(36) | | false | [methodology_phases](methodology_phases.md) |
|
|
66
|
+
| process_id | CHAR(36) | | false | [methodology_processes](methodology_processes.md) |
|
|
67
|
+
| sort_order | INTEGER | 0 | false | |
|
|
68
|
+
| is_required | INTEGER | 1 | false | |
|
|
69
|
+
| tailoring_allowed | INTEGER | 0 | false | |
|
|
70
|
+
| created_at | DATETIME | CURRENT_TIMESTAMP | false | |
|
|
71
|
+
| updated_at | DATETIME | CURRENT_TIMESTAMP | false | |
|
|
72
|
+
| metadata_json | JSON | | true | |
|
|
73
|
+
|
|
74
|
+
## Constraints
|
|
75
|
+
|
|
76
|
+
| Name | Type | Definition |
|
|
77
|
+
| ---------------------------------------------- | ----------- | ----------------------------------------------------------------------------------------------------------------------- |
|
|
78
|
+
| phase_process_id | PRIMARY KEY | PRIMARY KEY (phase_process_id) |
|
|
79
|
+
| - (Foreign key ID: 0) | FOREIGN KEY | FOREIGN KEY (process_id) REFERENCES methodology_processes (process_id) ON UPDATE NO ACTION ON DELETE CASCADE MATCH NONE |
|
|
80
|
+
| - (Foreign key ID: 1) | FOREIGN KEY | FOREIGN KEY (phase_id) REFERENCES methodology_phases (phase_id) ON UPDATE NO ACTION ON DELETE CASCADE MATCH NONE |
|
|
81
|
+
| sqlite_autoindex_methodology_phase_processes_3 | UNIQUE | UNIQUE (phase_id, sort_order) |
|
|
82
|
+
| sqlite_autoindex_methodology_phase_processes_2 | UNIQUE | UNIQUE (phase_id, process_id) |
|
|
83
|
+
| sqlite_autoindex_methodology_phase_processes_1 | PRIMARY KEY | PRIMARY KEY (phase_process_id) |
|
|
84
|
+
| - | CHECK | CHECK (length(phase_process_id) = 36) |
|
|
85
|
+
| - | CHECK | CHECK (length(phase_id) = 36) |
|
|
86
|
+
| - | CHECK | CHECK (length(process_id) = 36) |
|
|
87
|
+
| - | CHECK | CHECK (is_required IN (0, 1)) |
|
|
88
|
+
| - | CHECK | CHECK (tailoring_allowed IN (0, 1)) |
|
|
89
|
+
| - | CHECK | CHECK (metadata_json IS NULL OR json_valid(metadata_json)) |
|
|
90
|
+
|
|
91
|
+
## Indexes
|
|
92
|
+
|
|
93
|
+
| Name | Definition |
|
|
94
|
+
| ---------------------------------------------- | ------------------------------------------------------------------------------------------------------- |
|
|
95
|
+
| idx_methodology_phase_processes_process | CREATE INDEX idx_methodology_phase_processes_process<br /> ON methodology_phase_processes (process_id) |
|
|
96
|
+
| sqlite_autoindex_methodology_phase_processes_3 | UNIQUE (phase_id, sort_order) |
|
|
97
|
+
| sqlite_autoindex_methodology_phase_processes_2 | UNIQUE (phase_id, process_id) |
|
|
98
|
+
| sqlite_autoindex_methodology_phase_processes_1 | PRIMARY KEY (phase_process_id) |
|
|
99
|
+
|
|
100
|
+
## Relations
|
|
101
|
+
|
|
102
|
+

|
|
103
|
+
|
|
104
|
+
---
|
|
105
|
+
|
|
106
|
+
> Generated by [tbls](https://github.com/k1LoW/tbls)
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
|
3
|
+
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
4
|
+
<!-- Generated by graphviz version 12.1.2 (20240928.0832)
|
|
5
|
+
-->
|
|
6
|
+
<!-- Title: methodology_phase_processes Pages: 1 -->
|
|
7
|
+
<svg width="690pt" height="469pt"
|
|
8
|
+
viewBox="0.00 0.00 690.13 468.80" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
9
|
+
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 464.8)">
|
|
10
|
+
<title>methodology_phase_processes</title>
|
|
11
|
+
<polygon fill="white" stroke="none" points="-4,4 -4,-464.8 686.13,-464.8 686.13,4 -4,4"/>
|
|
12
|
+
<!-- methodology_phase_processes -->
|
|
13
|
+
<g id="node1" class="node">
|
|
14
|
+
<title>methodology_phase_processes</title>
|
|
15
|
+
<polygon fill="#efefef" stroke="none" points="166.6,-368.6 166.6,-414.6 505.03,-414.6 505.03,-368.6 166.6,-368.6"/>
|
|
16
|
+
<polygon fill="none" stroke="black" points="166.6,-368.6 166.6,-414.6 505.03,-414.6 505.03,-368.6 166.6,-368.6"/>
|
|
17
|
+
<text text-anchor="start" x="189.71" y="-392.4" font-family="Arial Bold" font-size="18.00">methodology_phase_processes</text>
|
|
18
|
+
<text text-anchor="start" x="412.67" y="-392.4" font-family="Arial" font-size="14.00"> </text>
|
|
19
|
+
<text text-anchor="start" x="443.78" y="-392.4" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
|
|
20
|
+
<text text-anchor="start" x="173.6" y="-378" font-family="Arial" font-size="14.00" fill="#333333">phase에서 어떤 process를 어떤 순서로 사용할지 관리한다.</text>
|
|
21
|
+
<polygon fill="none" stroke="black" points="166.6,-337.8 166.6,-368.6 505.03,-368.6 505.03,-337.8 166.6,-337.8"/>
|
|
22
|
+
<text text-anchor="start" x="173.6" y="-350" font-family="Arial" font-size="14.00">phase_process_id </text>
|
|
23
|
+
<text text-anchor="start" x="291.12" y="-350" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
|
|
24
|
+
<polygon fill="none" stroke="black" points="166.6,-307 166.6,-337.8 505.03,-337.8 505.03,-307 166.6,-307"/>
|
|
25
|
+
<text text-anchor="start" x="173.6" y="-319.2" font-family="Arial" font-size="14.00">phase_id </text>
|
|
26
|
+
<text text-anchor="start" x="234.32" y="-319.2" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
|
|
27
|
+
<polygon fill="none" stroke="black" points="166.6,-276.2 166.6,-307 505.03,-307 505.03,-276.2 166.6,-276.2"/>
|
|
28
|
+
<text text-anchor="start" x="173.6" y="-288.4" font-family="Arial" font-size="14.00">process_id </text>
|
|
29
|
+
<text text-anchor="start" x="245.19" y="-288.4" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
|
|
30
|
+
<polygon fill="none" stroke="black" stroke-width="3" points="165.1,-274.7 165.1,-416.1 506.53,-416.1 506.53,-274.7 165.1,-274.7"/>
|
|
31
|
+
</g>
|
|
32
|
+
<!-- methodology_phases -->
|
|
33
|
+
<g id="node2" class="node">
|
|
34
|
+
<title>methodology_phases</title>
|
|
35
|
+
<polygon fill="#efefef" stroke="none" points="43.2,-104.8 43.2,-150.8 278.44,-150.8 278.44,-104.8 43.2,-104.8"/>
|
|
36
|
+
<polygon fill="none" stroke="black" points="43.2,-104.8 43.2,-150.8 278.44,-150.8 278.44,-104.8 43.2,-104.8"/>
|
|
37
|
+
<text text-anchor="start" x="50.2" y="-128.6" font-family="Arial Bold" font-size="18.00">methodology_phases</text>
|
|
38
|
+
<text text-anchor="start" x="202.18" y="-128.6" font-family="Arial" font-size="14.00"> </text>
|
|
39
|
+
<text text-anchor="start" x="233.3" y="-128.6" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
|
|
40
|
+
<text text-anchor="start" x="73.69" y="-114.2" font-family="Arial" font-size="14.00" fill="#333333">lifecycle 내 큰 구간을 관리한다.</text>
|
|
41
|
+
<polygon fill="none" stroke="black" points="43.2,-74 43.2,-104.8 278.44,-104.8 278.44,-74 43.2,-74"/>
|
|
42
|
+
<text text-anchor="start" x="50.2" y="-86.2" font-family="Arial" font-size="14.00">phase_id </text>
|
|
43
|
+
<text text-anchor="start" x="110.92" y="-86.2" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
|
|
44
|
+
<polygon fill="none" stroke="black" points="43.2,-43.2 43.2,-74 278.44,-74 278.44,-43.2 43.2,-43.2"/>
|
|
45
|
+
<text text-anchor="start" x="50.2" y="-55.4" font-family="Arial" font-size="14.00">lifecycle_id </text>
|
|
46
|
+
<text text-anchor="start" x="122.57" y="-55.4" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
|
|
47
|
+
</g>
|
|
48
|
+
<!-- methodology_phase_processes->methodology_phases -->
|
|
49
|
+
<g id="edge1" class="edge">
|
|
50
|
+
<title>methodology_phase_processes:phase_id->methodology_phases:phase_id</title>
|
|
51
|
+
<path fill="none" stroke="black" d="M155.56,-320.91C127.91,-311.5 144.52,-259.96 166.6,-230 197.58,-187.97 247.48,-236.05 278.44,-194 305.99,-156.56 325.93,-89.4 279.44,-89.4"/>
|
|
52
|
+
<polygon fill="black" stroke="black" points="155.38,-320.88 164.61,-326.8 160.66,-321.66 164.94,-322.3 164.94,-322.3 164.94,-322.3 160.66,-321.66 165.93,-317.9 155.38,-320.88"/>
|
|
53
|
+
</g>
|
|
54
|
+
<!-- methodology_processes -->
|
|
55
|
+
<g id="node3" class="node">
|
|
56
|
+
<title>methodology_processes</title>
|
|
57
|
+
<polygon fill="#efefef" stroke="none" points="382.71,-104.8 382.71,-150.8 638.93,-150.8 638.93,-104.8 382.71,-104.8"/>
|
|
58
|
+
<polygon fill="none" stroke="black" points="382.71,-104.8 382.71,-150.8 638.93,-150.8 638.93,-104.8 382.71,-104.8"/>
|
|
59
|
+
<text text-anchor="start" x="389.71" y="-128.6" font-family="Arial Bold" font-size="18.00">methodology_processes</text>
|
|
60
|
+
<text text-anchor="start" x="562.67" y="-128.6" font-family="Arial" font-size="14.00"> </text>
|
|
61
|
+
<text text-anchor="start" x="593.79" y="-128.6" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
|
|
62
|
+
<text text-anchor="start" x="413.58" y="-114.2" font-family="Arial" font-size="14.00" fill="#333333">재사용 가능한 수행 절차를 관리한다.</text>
|
|
63
|
+
<polygon fill="none" stroke="black" points="382.71,-74 382.71,-104.8 638.93,-104.8 638.93,-74 382.71,-74"/>
|
|
64
|
+
<text text-anchor="start" x="389.71" y="-86.2" font-family="Arial" font-size="14.00">process_id </text>
|
|
65
|
+
<text text-anchor="start" x="461.3" y="-86.2" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
|
|
66
|
+
<polygon fill="none" stroke="black" points="382.71,-43.2 382.71,-74 638.93,-74 638.93,-43.2 382.71,-43.2"/>
|
|
67
|
+
<text text-anchor="start" x="389.71" y="-55.4" font-family="Arial" font-size="14.00">methodology_id </text>
|
|
68
|
+
<text text-anchor="start" x="492.44" y="-55.4" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
|
|
69
|
+
</g>
|
|
70
|
+
<!-- methodology_phase_processes->methodology_processes -->
|
|
71
|
+
<g id="edge2" class="edge">
|
|
72
|
+
<title>methodology_phase_processes:process_id->methodology_processes:process_id</title>
|
|
73
|
+
<path fill="none" stroke="black" d="M515.75,-289.16C529.81,-280.18 519.15,-248.56 505.03,-230 470.72,-184.9 416.87,-239.22 382.71,-194 354.68,-156.91 335.21,-89.4 381.71,-89.4"/>
|
|
74
|
+
<polygon fill="black" stroke="black" points="516.06,-289.08 505.26,-287.15 510.88,-290.38 506.68,-291.44 506.68,-291.44 506.68,-291.44 510.88,-290.38 507.46,-295.88 516.06,-289.08"/>
|
|
75
|
+
</g>
|
|
76
|
+
</g>
|
|
77
|
+
</svg>
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
# methodology_phases
|
|
2
|
+
|
|
3
|
+
## Description
|
|
4
|
+
|
|
5
|
+
lifecycle 내 큰 구간을 관리한다.
|
|
6
|
+
|
|
7
|
+
<details>
|
|
8
|
+
<summary><strong>Table Definition</strong></summary>
|
|
9
|
+
|
|
10
|
+
```sql
|
|
11
|
+
CREATE TABLE methodology_phases (
|
|
12
|
+
-- phase 식별자
|
|
13
|
+
phase_id CHAR(36) PRIMARY KEY
|
|
14
|
+
CHECK (length(phase_id) = 36),
|
|
15
|
+
|
|
16
|
+
-- 소속 lifecycle 식별자
|
|
17
|
+
lifecycle_id CHAR(36) NOT NULL
|
|
18
|
+
CHECK (length(lifecycle_id) = 36),
|
|
19
|
+
|
|
20
|
+
-- phase 코드
|
|
21
|
+
phase_code VARCHAR(128) NOT NULL,
|
|
22
|
+
|
|
23
|
+
-- phase 이름
|
|
24
|
+
phase_name VARCHAR(256) NOT NULL,
|
|
25
|
+
|
|
26
|
+
-- phase 목적
|
|
27
|
+
phase_purpose TEXT,
|
|
28
|
+
|
|
29
|
+
-- 표시 정렬 순서
|
|
30
|
+
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
31
|
+
|
|
32
|
+
-- 필수 여부
|
|
33
|
+
is_required INTEGER NOT NULL DEFAULT 1
|
|
34
|
+
CHECK (is_required IN (0, 1)),
|
|
35
|
+
|
|
36
|
+
-- 활성 여부
|
|
37
|
+
is_active INTEGER NOT NULL DEFAULT 1
|
|
38
|
+
CHECK (is_active IN (0, 1)),
|
|
39
|
+
|
|
40
|
+
-- 생성 시각
|
|
41
|
+
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
42
|
+
|
|
43
|
+
-- 수정 시각
|
|
44
|
+
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
45
|
+
|
|
46
|
+
-- 확장 메타데이터
|
|
47
|
+
metadata_json JSON
|
|
48
|
+
CHECK (metadata_json IS NULL OR json_valid(metadata_json)),
|
|
49
|
+
|
|
50
|
+
FOREIGN KEY (lifecycle_id)
|
|
51
|
+
REFERENCES methodology_lifecycles (lifecycle_id)
|
|
52
|
+
ON DELETE CASCADE,
|
|
53
|
+
|
|
54
|
+
UNIQUE (lifecycle_id, phase_code),
|
|
55
|
+
UNIQUE (lifecycle_id, sort_order)
|
|
56
|
+
)
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
</details>
|
|
60
|
+
|
|
61
|
+
## Columns
|
|
62
|
+
|
|
63
|
+
| Name | Type | Default | Nullable | Children | Parents |
|
|
64
|
+
| ------------- | ------------ | ----------------- | -------- | ------------------------------------------------------------- | --------------------------------------------------- |
|
|
65
|
+
| phase_id | CHAR(36) | | true | [methodology_phase_processes](methodology_phase_processes.md) | |
|
|
66
|
+
| lifecycle_id | CHAR(36) | | false | | [methodology_lifecycles](methodology_lifecycles.md) |
|
|
67
|
+
| phase_code | VARCHAR(128) | | false | | |
|
|
68
|
+
| phase_name | VARCHAR(256) | | false | | |
|
|
69
|
+
| phase_purpose | TEXT | | true | | |
|
|
70
|
+
| sort_order | INTEGER | 0 | false | | |
|
|
71
|
+
| is_required | INTEGER | 1 | false | | |
|
|
72
|
+
| is_active | INTEGER | 1 | false | | |
|
|
73
|
+
| created_at | DATETIME | CURRENT_TIMESTAMP | false | | |
|
|
74
|
+
| updated_at | DATETIME | CURRENT_TIMESTAMP | false | | |
|
|
75
|
+
| metadata_json | JSON | | true | | |
|
|
76
|
+
|
|
77
|
+
## Constraints
|
|
78
|
+
|
|
79
|
+
| Name | Type | Definition |
|
|
80
|
+
| ------------------------------------- | ----------- | ---------------------------------------------------------------------------------------------------------------------------- |
|
|
81
|
+
| phase_id | PRIMARY KEY | PRIMARY KEY (phase_id) |
|
|
82
|
+
| - (Foreign key ID: 0) | FOREIGN KEY | FOREIGN KEY (lifecycle_id) REFERENCES methodology_lifecycles (lifecycle_id) ON UPDATE NO ACTION ON DELETE CASCADE MATCH NONE |
|
|
83
|
+
| sqlite_autoindex_methodology_phases_3 | UNIQUE | UNIQUE (lifecycle_id, sort_order) |
|
|
84
|
+
| sqlite_autoindex_methodology_phases_2 | UNIQUE | UNIQUE (lifecycle_id, phase_code) |
|
|
85
|
+
| sqlite_autoindex_methodology_phases_1 | PRIMARY KEY | PRIMARY KEY (phase_id) |
|
|
86
|
+
| - | CHECK | CHECK (length(phase_id) = 36) |
|
|
87
|
+
| - | CHECK | CHECK (length(lifecycle_id) = 36) |
|
|
88
|
+
| - | CHECK | CHECK (is_required IN (0, 1)) |
|
|
89
|
+
| - | CHECK | CHECK (is_active IN (0, 1)) |
|
|
90
|
+
| - | CHECK | CHECK (metadata_json IS NULL OR json_valid(metadata_json)) |
|
|
91
|
+
|
|
92
|
+
## Indexes
|
|
93
|
+
|
|
94
|
+
| Name | Definition |
|
|
95
|
+
| -------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
|
|
96
|
+
| idx_methodology_phases_lifecycle_order | CREATE INDEX idx_methodology_phases_lifecycle_order<br /> ON methodology_phases (lifecycle_id, sort_order) |
|
|
97
|
+
| sqlite_autoindex_methodology_phases_3 | UNIQUE (lifecycle_id, sort_order) |
|
|
98
|
+
| sqlite_autoindex_methodology_phases_2 | UNIQUE (lifecycle_id, phase_code) |
|
|
99
|
+
| sqlite_autoindex_methodology_phases_1 | PRIMARY KEY (phase_id) |
|
|
100
|
+
|
|
101
|
+
## Relations
|
|
102
|
+
|
|
103
|
+

|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
> Generated by [tbls](https://github.com/k1LoW/tbls)
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
|
3
|
+
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
4
|
+
<!-- Generated by graphviz version 12.1.2 (20240928.0832)
|
|
5
|
+
-->
|
|
6
|
+
<!-- Title: methodology_phases Pages: 1 -->
|
|
7
|
+
<svg width="449pt" height="699pt"
|
|
8
|
+
viewBox="0.00 0.00 449.20 698.80" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
9
|
+
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 694.8)">
|
|
10
|
+
<title>methodology_phases</title>
|
|
11
|
+
<polygon fill="white" stroke="none" points="-4,4 -4,-694.8 445.2,-694.8 445.2,4 -4,4"/>
|
|
12
|
+
<!-- methodology_phases -->
|
|
13
|
+
<g id="node1" class="node">
|
|
14
|
+
<title>methodology_phases</title>
|
|
15
|
+
<polygon fill="#efefef" stroke="none" points="94.8,-337.8 94.8,-383.8 330.03,-383.8 330.03,-337.8 94.8,-337.8"/>
|
|
16
|
+
<polygon fill="none" stroke="black" points="94.8,-337.8 94.8,-383.8 330.03,-383.8 330.03,-337.8 94.8,-337.8"/>
|
|
17
|
+
<text text-anchor="start" x="101.8" y="-361.6" font-family="Arial Bold" font-size="18.00">methodology_phases</text>
|
|
18
|
+
<text text-anchor="start" x="253.78" y="-361.6" font-family="Arial" font-size="14.00"> </text>
|
|
19
|
+
<text text-anchor="start" x="284.9" y="-361.6" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
|
|
20
|
+
<text text-anchor="start" x="125.29" y="-347.2" font-family="Arial" font-size="14.00" fill="#333333">lifecycle 내 큰 구간을 관리한다.</text>
|
|
21
|
+
<polygon fill="none" stroke="black" points="94.8,-307 94.8,-337.8 330.03,-337.8 330.03,-307 94.8,-307"/>
|
|
22
|
+
<text text-anchor="start" x="101.8" y="-319.2" font-family="Arial" font-size="14.00">phase_id </text>
|
|
23
|
+
<text text-anchor="start" x="162.52" y="-319.2" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
|
|
24
|
+
<polygon fill="none" stroke="black" points="94.8,-276.2 94.8,-307 330.03,-307 330.03,-276.2 94.8,-276.2"/>
|
|
25
|
+
<text text-anchor="start" x="101.8" y="-288.4" font-family="Arial" font-size="14.00">lifecycle_id </text>
|
|
26
|
+
<text text-anchor="start" x="174.16" y="-288.4" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
|
|
27
|
+
<polygon fill="none" stroke="black" stroke-width="3" points="93.3,-274.7 93.3,-385.3 331.53,-385.3 331.53,-274.7 93.3,-274.7"/>
|
|
28
|
+
</g>
|
|
29
|
+
<!-- methodology_lifecycles -->
|
|
30
|
+
<g id="node3" class="node">
|
|
31
|
+
<title>methodology_lifecycles</title>
|
|
32
|
+
<polygon fill="#efefef" stroke="none" points="84.31,-104.8 84.31,-150.8 340.52,-150.8 340.52,-104.8 84.31,-104.8"/>
|
|
33
|
+
<polygon fill="none" stroke="black" points="84.31,-104.8 84.31,-150.8 340.52,-150.8 340.52,-104.8 84.31,-104.8"/>
|
|
34
|
+
<text text-anchor="start" x="91.31" y="-128.6" font-family="Arial Bold" font-size="18.00">methodology_lifecycles</text>
|
|
35
|
+
<text text-anchor="start" x="264.26" y="-128.6" font-family="Arial" font-size="14.00"> </text>
|
|
36
|
+
<text text-anchor="start" x="295.38" y="-128.6" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
|
|
37
|
+
<text text-anchor="start" x="122.95" y="-114.2" font-family="Arial" font-size="14.00" fill="#333333">방법론 생명주기 모델을 관리한다.</text>
|
|
38
|
+
<polygon fill="none" stroke="black" points="84.31,-74 84.31,-104.8 340.52,-104.8 340.52,-74 84.31,-74"/>
|
|
39
|
+
<text text-anchor="start" x="91.31" y="-86.2" font-family="Arial" font-size="14.00">lifecycle_id </text>
|
|
40
|
+
<text text-anchor="start" x="163.68" y="-86.2" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
|
|
41
|
+
<polygon fill="none" stroke="black" points="84.31,-43.2 84.31,-74 340.52,-74 340.52,-43.2 84.31,-43.2"/>
|
|
42
|
+
<text text-anchor="start" x="91.31" y="-55.4" font-family="Arial" font-size="14.00">methodology_id </text>
|
|
43
|
+
<text text-anchor="start" x="194.05" y="-55.4" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
|
|
44
|
+
</g>
|
|
45
|
+
<!-- methodology_phases->methodology_lifecycles -->
|
|
46
|
+
<g id="edge2" class="edge">
|
|
47
|
+
<title>methodology_phases:lifecycle_id->methodology_lifecycles:lifecycle_id</title>
|
|
48
|
+
<path fill="none" stroke="black" d="M213.25,-265.11C222.66,-212.41 309.54,-249.68 340.52,-194 363.12,-153.37 388.01,-89.4 341.52,-89.4"/>
|
|
49
|
+
<polygon fill="black" stroke="black" points="213.26,-264.9 207.96,-274.5 212.83,-270.22 212.47,-274.53 212.47,-274.53 212.47,-274.53 212.83,-270.22 216.93,-275.24 213.26,-264.9"/>
|
|
50
|
+
</g>
|
|
51
|
+
<!-- methodology_phase_processes -->
|
|
52
|
+
<g id="node2" class="node">
|
|
53
|
+
<title>methodology_phase_processes</title>
|
|
54
|
+
<polygon fill="#efefef" stroke="none" points="43.2,-601.6 43.2,-647.6 381.63,-647.6 381.63,-601.6 43.2,-601.6"/>
|
|
55
|
+
<polygon fill="none" stroke="black" points="43.2,-601.6 43.2,-647.6 381.63,-647.6 381.63,-601.6 43.2,-601.6"/>
|
|
56
|
+
<text text-anchor="start" x="66.31" y="-625.4" font-family="Arial Bold" font-size="18.00">methodology_phase_processes</text>
|
|
57
|
+
<text text-anchor="start" x="289.27" y="-625.4" font-family="Arial" font-size="14.00"> </text>
|
|
58
|
+
<text text-anchor="start" x="320.38" y="-625.4" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
|
|
59
|
+
<text text-anchor="start" x="50.2" y="-611" font-family="Arial" font-size="14.00" fill="#333333">phase에서 어떤 process를 어떤 순서로 사용할지 관리한다.</text>
|
|
60
|
+
<polygon fill="none" stroke="black" points="43.2,-570.8 43.2,-601.6 381.63,-601.6 381.63,-570.8 43.2,-570.8"/>
|
|
61
|
+
<text text-anchor="start" x="50.2" y="-583" font-family="Arial" font-size="14.00">phase_process_id </text>
|
|
62
|
+
<text text-anchor="start" x="167.72" y="-583" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
|
|
63
|
+
<polygon fill="none" stroke="black" points="43.2,-540 43.2,-570.8 381.63,-570.8 381.63,-540 43.2,-540"/>
|
|
64
|
+
<text text-anchor="start" x="50.2" y="-552.2" font-family="Arial" font-size="14.00">phase_id </text>
|
|
65
|
+
<text text-anchor="start" x="110.92" y="-552.2" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
|
|
66
|
+
<polygon fill="none" stroke="black" points="43.2,-509.2 43.2,-540 381.63,-540 381.63,-509.2 43.2,-509.2"/>
|
|
67
|
+
<text text-anchor="start" x="50.2" y="-521.4" font-family="Arial" font-size="14.00">process_id </text>
|
|
68
|
+
<text text-anchor="start" x="121.79" y="-521.4" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
|
|
69
|
+
</g>
|
|
70
|
+
<!-- methodology_phase_processes->methodology_phases -->
|
|
71
|
+
<g id="edge1" class="edge">
|
|
72
|
+
<title>methodology_phase_processes:phase_id->methodology_phases:phase_id</title>
|
|
73
|
+
<path fill="none" stroke="black" d="M392.96,-554.6C485.11,-539.74 433.47,-322.4 331.03,-322.4"/>
|
|
74
|
+
<polygon fill="black" stroke="black" points="392.94,-554.6 382.62,-550.89 387.62,-555.01 383.3,-555.35 383.3,-555.35 383.3,-555.35 387.62,-555.01 383.31,-559.86 392.94,-554.6"/>
|
|
75
|
+
</g>
|
|
76
|
+
</g>
|
|
77
|
+
</svg>
|