요구사항 #387
Updated by Redmine Admin 4 months ago
<ul> <li> <p>클라우드 지라 상태 룰셋 데이터 정의</p> 설계</p> <p> </p> <ul> <li>상태 <li> <p>상태 룰 셋 관련 정의 방법 방법</p> <ol> <ol> <li>클라우드 지라 상태 갱신을 수행 시 상태 카테고리 데이터를 DB에 INSERT 시킨다. <ol> 시킨다.</li> <li>INSERT된 데이터는 카테고리 별 데이터 처리하고 Priority 컬럼을 둔다.</li> </ol> </li> <li>혹은 미리 정의된(하드코딩 ㅋ) 룰셋 DB를 만든다. <ol> <li>이게 편할 거 같긴 함.</li> <li>근데 만약… 룰셋 외에 데이터만 있다면?</li> </ol> </li> <li>해당 룰셋을 상태 갱신 시 조회하여 priority기준으로 1대 1 매핑 처리를 한다.</li> </ol> </li> </ul> </li> <li> <p>룰셋 DB 샘플</p> <h3><strong>Open</strong></h3> <table> <thead> <tr> <th>Status</th> <th>Count</th> <th>Category</th> <th>Priority</th> </tr> </thead> <tbody> <tr> <td>Open</td> <td>30</td> <td>Open</td> <td>1</td> </tr> <tr> <td>Work in progress</td> <td>7</td> <td>Open</td> <td>2</td> </tr> <tr> <td>Awaiting approval</td> <td>7</td> <td>Open</td> <td>3</td> </tr> <tr> <td>Awaiting implementation</td> <td>6</td> <td>Open</td> <td>4</td> </tr> <tr> <td>In Negotiation</td> <td>1</td> <td>Open</td> <td>5</td> </tr> <tr> <td>In review</td> <td>2</td> <td>Open</td> <td>6</td> </tr> </tbody> </table> <h3><strong>In Progress</strong></h3> <table> <thead> <tr> <th>Status</th> <th>Count</th> <th>Category</th> <th>Priority</th> </tr> </thead> <tbody> <tr> <td>In Progress</td> <td>30</td> <td>In Progress</td> <td>1</td> </tr> <tr> <td>Waiting for approval</td> <td>10</td> <td>In Progress</td> <td>2</td> </tr> <tr> <td>Waiting for customer</td> <td>6</td> <td>In Progress</td> <td>3</td> </tr> <tr> <td>Waiting for support</td> <td>6</td> <td>In Progress</td> <td>4</td> </tr> <tr> <td>Backlog</td> <td>6</td> <td>In Progress</td> <td>5</td> </tr> <tr> <td>Draft</td> <td>2</td> <td>In Progress</td> <td>6</td> </tr> </tbody> </table> <h3><strong>Completed</strong></h3> <table> <thead> <tr> <th>Status</th> <th>Count</th> <th>Category</th> <th>Priority</th> </tr> </thead> <tbody> <tr> <td>Closed</td> <td>24</td> <td>Completed</td> <td>1</td> </tr> <tr> <td>Resolved</td> <td>27</td> <td>Completed</td> <td>2</td> </tr> <tr> <td>Done</td> <td>21</td> <td>Completed</td> <td>3</td> </tr> <tr> <td>Completed</td> <td>3</td> <td>Completed</td> <td>4</td> </tr> <tr> <td>Published</td> <td>1</td> <td>Completed</td> <td>5</td> </tr> <tr> <td>Review</td> <td>4</td> <td>Completed</td> <td>6</td> </tr> </tbody> </table> <h3><strong>Other</strong></h3> <table> <thead> <tr> <th>Status</th> <th>Count</th> <th>Category</th> <th>Priority</th> </tr> </thead> <tbody> <tr> <td>Feedback</td> <td>1</td> <td>Other</td> <td>1</td> </tr> <tr> <td>Build Broken</td> <td>12</td> <td>Other</td> <td>2</td> </tr> <tr> <td>Building</td> <td>12</td> <td>Other</td> <td>3</td> </tr> <tr> <td>Canceled</td> <td>7</td> <td>Other</td> <td>4</td> </tr> <tr> <td>Declined</td> <td>8</td> <td>Other</td> <td>5</td> </tr> <tr> <td>Pending</td> <td>9</td> <td>Other</td> <td>6</td> </tr> <tr> <td>Reopened</td> <td>9</td> <td>Other</td> <td>7</td> </tr> <tr> <td>To Do</td> <td>15</td> <td>Other</td> <td>8</td> </tr> <tr> <td>Failed</td> <td>4</td> <td>Other</td> <td>9</td> </tr> <tr> <td>Implementing</td> <td>4</td> <td>Other</td> <td>10</td> </tr> <tr> <td>Lost</td> <td>1</td> <td>Other</td> <td>11</td> </tr> <tr> <td>Opportunity</td> <td>1</td> <td>Other</td> <td>12</td> </tr> <tr> <td>Planning</td> <td>3</td> <td>Other</td> <td>13</td> </tr> <tr> <td>Under investigation</td> <td>3</td> <td>Other</td> <td>14</td> </tr> <tr> <td>Under review</td> <td>2</td> <td>Other</td> <td>15</td> </tr> <tr> <td>Won</td> <td>1</td> <td>Other</td> <td>16</td> </tr> <tr> <td>미해결</td> <td>1</td> <td>Other</td> <td>17</td> </tr> <tr> <td>다시 열림</td> <td>1</td> <td>Other</td> <td>18</td> </tr> <tr> <td>종료</td> <td>1</td> <td>Other</td> <td>19</td> </tr> <tr> <td>해결됨</td> <td>1</td> <td>Other</td> <td>20</td> </tr> <tr> <td>게시됨</td> <td>1</td> <td>Other</td> <td>21</td> </tr> <tr> <td>테스트 상태</td> <td>3</td> <td>Other</td> <td>22</td> </tr> <tr> <td>테스트 상태 2</td> <td>2</td> <td>Other</td> <td>23</td> </tr> </tbody> </table> </li> </ul> <p>※ 1번일 시 갱신 시 마다 룰셋 재정의와 이미 설정된 데이터가 변경되는 것에 대해서는 괜찮은지?</p> <ol> <li>룰셋 API를 따로 만드는 편이 좋다고 판단</li> <li>만약 룰셋에 없는 데이터에 대한 방어코드 필요</li> </ol> <ul> <li> <p>룰셋 기반 프리셋 로직</p> <p>※ 상태 갱신 로직과 무관한게 진행 필요하다 판단(프리셋 API라 가정)</p> <ol> <li>ALM 프로젝트별 이슈 유형별 이슈 상태 목록이 조회</li> <li>ALM 상태 목록 - 상태 목록 카테고리(컬럼 필요) 기준 그룹화 필요</li> <li>상태 카테고리별 ALM 상태 목록(N개라 가정) 우선순위 룰셋 테이블에서 각 상태의 우선순위를 나열 후 가장 높은 우선순위의 상태를 ARMS 상태(카테고리가 매핑된 프리셋 상태)와 연결</li> <li>ALM 상태 카테고리(<code>undefined</code>, <code>new</code>, <code>indeterminate</code>, <code>done</code>)별 ALM 상태 목록별로 실행되도록 처리 - 아마 undefined는 활용하지 않을 거라 판단.</li> </ol> </li> </ul> <p><!-- notionvc: a08b66fd-3bfb-47f7-8ed3-f208c253954a --><!-- notionvc: 676c6b16-6e73-4b0e-a17d-fe65cbdd9d88 --></p>