2026๋…„ 3์›” 16์ผ
Architecture

๐Ÿ“Š TeamScope โ€” JiraยทGitLab ๋ฐ์ดํ„ฐ๋ฅผ ์ ์ˆ˜ํ™”ํ•ด ํŒ€ ๊ด€๋ฆฌ๋ฅผ ์ •๋Ÿ‰์ ์œผ๋กœ ๊ด€๋ฆฌํ•˜๋Š” ๋ฆฌ๋” ๋Œ€์‹œ๋ณด๋“œ ์„ค๊ณ„๊ธฐ

Jira API์™€ GitLab API ๋ฐ์ดํ„ฐ๋ฅผ Plasma DB์— ํ†ตํ•ฉํ•˜๊ณ  ์Šค์ฝ”์–ด๋งํ•ด, ํŒ€ ๋ฆฌ๋”๊ฐ€ ๋ณ‘๋ชฉ๊ณผ ์ง€์› ํฌ์ธํŠธ๋ฅผ ๋น ๋ฅด๊ฒŒ ํŒŒ์•…ํ•˜๋Š” ์„ฑ๊ณผ ๋Œ€์‹œ๋ณด๋“œ ์„ค๊ณ„ ๊ณผ์ •์„ ๋‹ค๋ฃน๋‹ˆ๋‹ค.

Management
Jira
GitLab
Dashboard
Scoring
Data Visualization
Next.js
TypeScript
Plasma DB
๐Ÿ“Š TeamScope โ€” JiraยทGitLab ๋ฐ์ดํ„ฐ๋ฅผ ์ ์ˆ˜ํ™”ํ•ด ํŒ€ ๊ด€๋ฆฌ๋ฅผ ์ •๋Ÿ‰์ ์œผ๋กœ ๊ด€๋ฆฌํ•˜๋Š” ๋ฆฌ๋” ๋Œ€์‹œ๋ณด๋“œ ์„ค๊ณ„๊ธฐ

๐Ÿ“… ๊ธ€ ๊ฐœ์š”

ํŒ€ ๋ฆฌ๋”์—๊ฒŒ ๊ฐ€์žฅ ์–ด๋ ค์šด ์ผ ์ค‘ ํ•˜๋‚˜๋Š”, ํŒ€ ์ƒํƒœ๋ฅผ ํ•ญ์ƒ ์ •ํ™•ํ•˜๊ฒŒ ์ฝ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ˆ„๊ฐ€ ๋ฐ”์œ์ง€, ๋ˆ„๊ฐ€ ์ผ์ • ๋ฆฌ์Šคํฌ๋ฅผ ์•ˆ๊ณ  ์žˆ๋Š”์ง€, ๋ˆ„๊ฐ€ ์ฝ”๋“œ ํ’ˆ์งˆ์— ํฌ๊ฒŒ ๊ธฐ์—ฌํ•˜๊ณ  ์žˆ๋Š”์ง€, ๋ˆ„๊ฐ€ ๋„์›€์ด ํ•„์š”ํ•œ์ง€. ์ด๋Ÿฐ ์ •๋ณด๋Š” ๋ณดํ†ต ํšŒ์˜, ๊ฐ๊ฐ, ๊ธฐ์–ต, ๋ฉ”์‹ ์ € ๋Œ€ํ™”์— ํฉ์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฌธ์ œ๋Š” ์ด๋ ‡๊ฒŒ ํฉ์–ด์ง„ ์‹ ํ˜ธ๋งŒ์œผ๋กœ ํŒ€์„ ์šด์˜ํ•˜๋ฉด, ๋ณ‘๋ชฉ์„ ๋ฐœ๊ฒฌํ•˜๋Š” ์‹œ์ ์ด ๋Šฆ์–ด์ง€๊ณ  ๋Œ€์‘๋„ ๋Š˜ ๋’ค๋”ฐ๋ผ๊ฐ„๋‹ค๋Š” ์ ์ž…๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ์ €๋Š” ํŒ€ ์šด์˜์„ ๊ฐ์ด ์•„๋‹ˆ๋ผ ๋ฐ์ดํ„ฐ ๊ธฐ๋ฐ˜ ๊ด€๋ฆฌ ์ฒด๊ณ„๋กœ ๋ฐ”๊พธ๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค.

  • Jira API๋กœ๋Š” ๊ฐœ์ธ๋ณ„ ํ‹ฐ์ผ“ ์ง„ํ–‰ ์ƒํ™ฉ, ์ผ์ •, Gantt, ์›Œํฌ๋กœ๊ทธ, ๊ณต์ˆ˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ง‘ํ•˜๊ณ 
  • GitLab API๋กœ๋Š” MR, ๋ฆฌ๋ทฐ ์ฝ”๋ฉ˜ํŠธ, ํ”ผ๋“œ๋ฐฑ ๋ฐ˜์˜๋ฅ , ๋ฆฌ๋“œํƒ€์ž„, CI ํ†ต๊ณผ์œจ ๊ฐ™์€ ์ฝ”๋“œ ํ’ˆ์งˆ ์ง€ํ‘œ๋ฅผ ๋ชจ์œผ๊ณ 
  • Plasma DB์—์„œ ์ด๋ฅผ ์ •๊ทœํ™”ํ•œ ๋’ค
  • ๋ฆฌ๋”๊ฐ€ ํ•œ ํ™”๋ฉด์—์„œ ๋ฐ”๋กœ ํ•ด์„ํ•  ์ˆ˜ ์žˆ๋Š” ์ ์ˆ˜์™€ ๋Œ€์‹œ๋ณด๋“œ๋กœ ๋ณ€ํ™˜ํ–ˆ์Šต๋‹ˆ๋‹ค

ํ•ต์‹ฌ ๋ฉ”์‹œ์ง€

์ด ๊ธ€์˜ ๋ชฉ์ ์€ "์˜ˆ์œ ๋Œ€์‹œ๋ณด๋“œ"๋ฅผ ์†Œ๊ฐœํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ,
ํŒ€ ๋ฆฌ๋”๊ฐ€ Jira + GitLab + Plasma DB ๊ธฐ๋ฐ˜์œผ๋กœ ํŒ€ ์šด์˜์„ ์ •๋Ÿ‰ํ™”ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

TeamScope ๋ฉ”์ธ ํŒ€ ์„ฑ๊ณผ ๋Œ€์‹œ๋ณด๋“œ - ๊ธฐ๊ฐ„ ํ•„ํ„ฐ, ๊ฐœ๋ฐœ์ž ํ•„ํ„ฐ, KPI ์นด๋“œ, ํŒ€ ์ ์ˆ˜ ์ถ”์„ธ์™€ ์—ญ๋Ÿ‰ ๋ ˆ์ด๋”๋ฅผ ํ•œ ํ™”๋ฉด์—์„œ ๋ณด์—ฌ์ฃผ๋Š” ๊ตฌ์„ฑ

๐Ÿ’ก ์ด ๊ธ€์—์„œ ๋‹ค๋ฃฐ ๋‚ด์šฉ

  • ์™œ ํŒ€ ๊ด€๋ฆฌ์— ์ •๋Ÿ‰ํ™” ์ฒด๊ณ„๊ฐ€ ํ•„์š”ํ•œ๊ฐ€
  • Jira API, GitLab API, Plasma DB๋ฅผ ์—ฐ๊ฒฐํ•œ ๋ฐ์ดํ„ฐ ํŒŒ์ดํ”„๋ผ์ธ ์„ค๊ณ„
  • Jira ์ˆ˜ํ–‰ ์ ์ˆ˜์™€ GitLab ์ฝ”๋“œ ํ’ˆ์งˆ ์ ์ˆ˜ ์‚ฐ์‹
  • ๋ฆฌ๋”๊ฐ€ ๋ณ‘๋ชฉ๊ณผ ์ง€์› ํฌ์ธํŠธ๋ฅผ ๋น ๋ฅด๊ฒŒ ์ฐพ๊ฒŒ ๋งŒ๋“œ๋Š” ํ™”๋ฉด ๊ตฌ์„ฑ
  • ์ ์ˆ˜๋ฅผ ๊ฐ์‹œ๊ฐ€ ์•„๋‹Œ ์ฝ”์นญ ๋„๊ตฌ๋กœ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•œ ์„ค๊ณ„ ์›์น™

๐Ÿงฉ ์™œ ํŒ€ ๊ด€๋ฆฌ์— ์ •๋Ÿ‰ํ™” ์ฒด๊ณ„๊ฐ€ ํ•„์š”ํ–ˆ๋Š”๊ฐ€

ํŒ€ ์šด์˜์—์„œ ์ง„์งœ ์–ด๋ ค์šด ์ง€์ ์€ "์ผ์ด ๋งŽ๋‹ค"๊ฐ€ ์•„๋‹ˆ๋ผ ์ƒํƒœ๋ฅผ ๋ช…ํ™•ํžˆ ์„ค๋ช…ํ•˜๊ธฐ ์–ด๋ ต๋‹ค๋Š” ๋ฐ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์–ด๋–ค ํŒ€์›์€ ํ‹ฐ์ผ“ ์ฒ˜๋ฆฌ๋Ÿ‰์€ ๋†’์ง€๋งŒ ๋ฆฌ๋ทฐ ์ฐธ์—ฌ๊ฐ€ ๋‚ฎ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์–ด๋–ค ํŒ€์›์€ MR ํ’ˆ์งˆ์€ ์ข‹์ง€๋งŒ ์ผ์ • ์ค€์ˆ˜์œจ์ด ๋ถˆ์•ˆ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์–ด๋–ค ํŒ€์›์€ ๊ณต์ˆ˜ ์˜ˆ์ธก์ด ์ž์ฃผ ๋น—๋‚˜๊ฐ€์ง€๋งŒ, ์‚ฌ์‹ค์€ ๊ณผ๋„ํ•œ ์—…๋ฌด๋ฅผ ๋– ์•ˆ๊ณ  ์žˆ์„ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๋Ÿฐ ์ƒํ™ฉ์„ ๋‹จ์ˆœํžˆ "์ž˜ํ•˜๊ณ  ์žˆ๋‹ค / ์•„์‰ฝ๋‹ค" ์ˆ˜์ค€์œผ๋กœ ๋ณด๋ฉด ๋ฆฌ๋”์˜ ๋Œ€์‘๋„ ๋ชจํ˜ธํ•ด์ง‘๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ํ•„์š”ํ•œ ๊ฒƒ์€ ํ™œ๋™ ๋กœ๊ทธ๋ฅผ ๋งŽ์ด ๋ชจ์œผ๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, ์—…๋ฌด ์ˆ˜ํ–‰๋ ฅ + ํ˜‘์—… ๊ธฐ์—ฌ๋„ + ์ฝ”๋“œ ํ’ˆ์งˆ + ์ผ์ • ์•ˆ์ •์„ฑ์„ ๊ฐ™์€ ๊ด€์ ์—์„œ ์ฝ์„ ์ˆ˜ ์žˆ๊ฒŒ ๋งŒ๋“œ๋Š” ์ผ์ž…๋‹ˆ๋‹ค.

์ •๋Ÿ‰ํ™”๊ฐ€ ํ•„์š”ํ•œ ์ด์œ 

๋ฆฌ๋”๋Š” "๋ˆ„๊ฐ€ ์ž˜ํ•˜๊ณ  ์žˆ๋Š”๊ฐ€?"๋ณด๋‹ค
"์–ด๋””์— ๋ณ‘๋ชฉ์ด ์žˆ๊ณ , ๋ˆ„๊ตฌ์—๊ฒŒ ์–ด๋–ค ์ง€์›์ด ํ•„์š”ํ•œ๊ฐ€?" ๋ฅผ ๋” ๋นจ๋ฆฌ ์•Œ์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ €๋Š” ์ด ๋ฌธ์ œ๋ฅผ ํ’€๊ธฐ ์œ„ํ•ด ๋‹ค์Œ ๊ธฐ์ค€์„ ์„ธ์› ์Šต๋‹ˆ๋‹ค.

  1. ๋ฆฌ๋”๊ฐ€ ํŒ€ ์ „์ฒด ์ƒํƒœ๋ฅผ 10์ดˆ ์•ˆ์— ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค.
  2. ํŒ€ ์ „์ฒด์—์„œ ๊ฐœ์ธ ๋‹จ์œ„ ์ฝ”์นญ ํฌ์ธํŠธ๋กœ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ drill-down ๋˜์–ด์•ผ ํ•œ๋‹ค.
  3. ์ผ์ •/๊ณต์ˆ˜/Jira ์ง€ํ‘œ์™€ MR/๋ฆฌ๋ทฐ/GitLab ์ง€ํ‘œ๊ฐ€ ๋ถ„๋ฆฌ๋˜์ง€ ์•Š๊ณ  ํ•จ๊ป˜ ํ•ด์„๋˜์–ด์•ผ ํ•œ๋‹ค.
  4. ์ ์ˆ˜๋Š” ์ค„์„ธ์šฐ๊ธฐ๊ฐ€ ์•„๋‹ˆ๋ผ, ๋ณ‘๋ชฉ ์กฐ๊ธฐ ๋ฐœ๊ฒฌ๊ณผ ์ง€์› ์šฐ์„ ์ˆœ์œ„ ๊ฒฐ์ •์„ ๋•๋Š” ๋ณด์กฐ ์ง€ํ‘œ์—ฌ์•ผ ํ•œ๋‹ค.

๐Ÿ—๏ธ ์ด ๋Œ€์‹œ๋ณด๋“œ๋ฅผ ์„ค๊ณ„ํ•œ ๋ฐฉ๋ฒ•

๋ฆฌ๋”๊ฐ€ ๋ณด๊ณ  ์‹ถ์€ ๊ฒƒ์€ ๋‹จ์ˆœ ๋กœ๊ทธ๊ฐ€ ์•„๋‹ˆ๋ผ "์ง€๊ธˆ ์ด ํŒ€์ด ์•ˆ์ •์ ์œผ๋กœ ์ผํ•˜๊ณ  ์žˆ๋Š”๊ฐ€?" ์— ๋Œ€ํ•œ ์••์ถ•๋œ ๋‹ต์ž…๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘๋ถ€ํ„ฐ ์‹œ๊ฐํ™”๊นŒ์ง€์˜ ๊ตฌ์กฐ๋ฅผ ์•„๋ž˜์ฒ˜๋Ÿผ ๋‚˜๋ˆด์Šต๋‹ˆ๋‹ค.

TeamScope ์•„ํ‚คํ…์ฒ˜ ํ๋ฆ„๋„ - Jira API์™€ GitLab API ๋ฐ์ดํ„ฐ๋ฅผ Plasma DB์— ํ†ตํ•ฉํ•˜๊ณ  ์Šค์ฝ”์–ด๋ง ์—”์ง„์„ ๊ฑฐ์ณ ๋Œ€์‹œ๋ณด๋“œ UI๋กœ ์ œ๊ณตํ•˜๋Š” ๊ตฌ์กฐ
๊ณ„์ธต ์—ญํ•  ๋ฆฌ๋”๊ฐ€ ์–ป๋Š” ๊ฐ€์น˜
Jira API ์ˆ˜์ง‘ ๊ณ„์ธต ํ‹ฐ์ผ“, ์ผ์ •, Gantt, ์›Œํฌ๋กœ๊ทธ, ๊ณต์ˆ˜ ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ "์ผ์ด ๊ณ„ํš๋Œ€๋กœ ์ง„ํ–‰๋˜๊ณ  ์žˆ๋Š”๊ฐ€?"๋ฅผ ํŒ๋‹จ
GitLab API ์ˆ˜์ง‘ ๊ณ„์ธต MR, ์ฝ”๋ฉ˜ํŠธ, ๋ฆฌ๋ทฐ ์ฐธ์—ฌ, ๋ฆฌ๋“œํƒ€์ž„, CI ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ "์ฝ”๋“œ์™€ ํ˜‘์—…์ด ๊ฑด๊ฐ•ํ•˜๊ฒŒ ๋Œ์•„๊ฐ€๊ณ  ์žˆ๋Š”๊ฐ€?"๋ฅผ ํŒ๋‹จ
Plasma DB ํ†ตํ•ฉ ๊ณ„์ธต ๊ฐœ๋ฐœ์ž/ํ”„๋กœ์ ํŠธ/๊ธฐ๊ฐ„ ๊ธฐ์ค€ ์ •๊ทœํ™” ๋ฐ ์žฌ์ง‘๊ณ„ ์„œ๋กœ ๋‹ค๋ฅธ ์›์ฒœ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ™์€ ๊ธฐ์ค€์œผ๋กœ ๋น„๊ต ๊ฐ€๋Šฅ
Scoring Engine ๋ณต์žกํ•œ ๋กœ๊ทธ๋ฅผ ์ ์ˆ˜, ๋“ฑ๊ธ‰, ์ถ”์„ธ๋กœ ๋ณ€ํ™˜ ๋ฆฌ๋”๊ฐ€ ๋น ๋ฅด๊ฒŒ ํ•ด์„ ๊ฐ€๋Šฅํ•œ ํ˜•ํƒœ๋กœ ์š”์•ฝ
Dashboard UI ํ•„ํ„ฐ๋ง, drill-down, ํ™”๋ฉด๋ณ„ ๋น„๊ต/ํƒ์ƒ‰ ๋ณ‘๋ชฉ ๋ฐœ๊ฒฌ, ์ฝ”์นญ ํฌ์ธํŠธ ์‹๋ณ„, ์ธ๋ ฅ ์šด์˜ ์˜์‚ฌ๊ฒฐ์ • ์ง€์›

ํ•ต์‹ฌ์€ ๊ฐ ์‹œ์Šคํ…œ์˜ ์—ญํ• ์„ ๋ช…ํ™•ํžˆ ๋‚˜๋ˆˆ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

  • Jira๋Š” "์ผ์„ ์–ผ๋งˆ๋‚˜ ๊ณ„ํš๋Œ€๋กœ ์ˆ˜ํ–‰ํ–ˆ๋Š”๊ฐ€"
  • GitLab์€ "์ฝ”๋“œ๋ฅผ ์–ผ๋งˆ๋‚˜ ๊ฑด๊ฐ•ํ•˜๊ฒŒ ๋งŒ๋“ค๊ณ  ํ˜‘์—…ํ–ˆ๋Š”๊ฐ€"
  • Plasma DB๋Š” ๋‘˜์„ ๊ฐœ์ธ/ํ”„๋กœ์ ํŠธ/๊ธฐ๊ฐ„ ๋‹จ์œ„๋กœ ์ด์–ด๋ถ™์ด๋Š” ํ—ˆ๋ธŒ
  • Scoring Engine์€ ๋ฆฌ๋”๊ฐ€ ๋น ๋ฅด๊ฒŒ ์ฝ์„ ์ˆ˜ ์žˆ๋„๋ก ๋ณต์žก๋„๋ฅผ ์ค„์ด๋Š” ํ•ด์„ ๊ณ„์ธต
  • Dashboard๋Š” ์ตœ์ข…์ ์œผ๋กœ ๋ฆฌ๋”์˜ ์˜์‚ฌ๊ฒฐ์ •์„ ๋น ๋ฅด๊ฒŒ ๋•๋Š” ์ธํ„ฐํŽ˜์ด์Šค

์„ค๊ณ„ ํฌ์ธํŠธ ํ•œ ์ค„ ์š”์•ฝ

๋Œ€์‹œ๋ณด๋“œ๋Š” ํ™”๋ฉด๋ถ€ํ„ฐ ๋งŒ๋“  ๊ฒƒ์ด ์•„๋‹ˆ๋ผ,
๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ ๊ณ„์ธต โ†’ ํ†ตํ•ฉ ์ €์žฅ ๊ณ„์ธต โ†’ ์ ์ˆ˜ํ™” ๊ณ„์ธต โ†’ ํ•ด์„ UI ๊ณ„์ธต ์ˆœ์„œ๋กœ ์„ค๊ณ„ํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด ๊ตฌ์กฐ๋ฅผ ์žก์•„๋‘๋ฉด ๋ฐ์ดํ„ฐ ์†Œ์Šค๊ฐ€ ๋Š˜์–ด๋‚˜๋”๋ผ๋„ ์ „์ฒด ์ฒด๊ณ„๊ฐ€ ํ”๋“ค๋ฆฌ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๊ฒฐ๊ตญ ๋Œ€์‹œ๋ณด๋“œ๋Š” UI๊ฐ€ ์•„๋‹ˆ๋ผ, ์šด์˜ ๋ชจ๋ธ์„ ์‹œ๊ฐํ™”ํ•œ ๊ฒฐ๊ณผ๋ฌผ์ด ๋ฉ๋‹ˆ๋‹ค.

๐Ÿ”Œ Jira API๋กœ ์ˆ˜์ง‘ํ•œ ๋ฐ์ดํ„ฐ์™€ ๋ฆฌ๋”์‹ญ ํ™œ์šฉ ๋ฐฉ์‹

Jira ์ชฝ์—์„œ๋Š” "์—…๋ฌด ์ˆ˜ํ–‰ ๊ด€์ " ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ง‘ํ–ˆ์Šต๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์„œ ์ค‘์š”ํ•œ ๊ฒƒ์€ ๋‹จ์ˆœํžˆ ์ด์Šˆ ๊ฐœ์ˆ˜๋ฅผ ์„ธ๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, ์ผ์ •์„ ๊ณ„ํš๋Œ€๋กœ ๋Œ๊ณ  ๊ฐ€๊ณ  ์žˆ๋Š”์ง€, ๊ณต์ˆ˜ ์˜ˆ์ธก์ด ํ˜„์‹ค์ ์ธ์ง€, ์—…๋ฌด ๊ธฐ๋ก์ด ํˆฌ๋ช…ํ•˜๊ฒŒ ๋‚จ๋Š”์ง€๊นŒ์ง€ ํ•จ๊ป˜ ๋ณด๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

TeamScope ์ผ์ • Gantt ์ฐจํŠธ์™€ ๊ณต์ˆ˜ ํ˜„ํ™ฉ ํ™”๋ฉด - ํŒ€์›๋ณ„ ์ผ์ • ๋ฐฐ์น˜์™€ ๊ณต์ˆ˜ ์ƒํƒœ๋ฅผ ๋™์‹œ์— ๋ณด์—ฌ์ฃผ์–ด ๋ฆฌ์Šคํฌ๋ฅผ ํŒŒ์•…ํ•˜๋Š” ๋Œ€์‹œ๋ณด๋“œ

Jira API ๊ธฐ์ค€์œผ๋กœ๋Š” ์•„๋ž˜ ๋ฐ์ดํ„ฐ๋ฅผ ํ•ต์‹ฌ ์ง€ํ‘œ๋กœ ์‚ผ์•˜์Šต๋‹ˆ๋‹ค.

์ง€ํ‘œ ์˜๋ฏธ ๋ฆฌ๋”์‹ญ ํ™œ์šฉ ํฌ์ธํŠธ
๊ฐœ์ธ๋ณ„ ํ‹ฐ์ผ“ ์ˆ˜ ๋งก์€ ์—…๋ฌด๋Ÿ‰ ํŠน์ • ์ธ์›์—๊ฒŒ ์—…๋ฌด๊ฐ€ ์ ๋ฆฌ๋Š”์ง€ ํ™•์ธ
ํ‹ฐ์ผ“ ์™„๋ฃŒ์œจ ํ• ๋‹น ๋Œ€๋น„ ์™„๋ฃŒ ๋น„์œจ ์ผ์ • ์†Œํ™”๋ ฅ๊ณผ ์‹คํ–‰๋ ฅ ํ™•์ธ
Gantt ๊ธฐ์ค€ ์ผ์ • ์ค€์ˆ˜์œจ ๊ธฐ์ค€์„  ๋Œ€๋น„ ์™„๋ฃŒ ์ƒํƒœ ์ผ์ • ์ง€์—ฐ ์œ„ํ—˜ ์กฐ๊ธฐ ๊ฐ์ง€
๊ณ„ํš ๊ณต์ˆ˜ vs ์‹ค์ œ ๊ณต์ˆ˜ ์˜ˆ์ธก ์ •ํ™•๋„ ๊ณผ์†Œ/๊ณผ๋Œ€ ์ถ”์ •, ๊ตฌ์กฐ์  ๋ณ‘๋ชฉ ํŒŒ์•…
์›Œํฌ๋กœ๊ทธ ์„ฑ์‹ค๋„ ๊ธฐ๋ก ๋นˆ๋„์™€ ์ผ๊ด€์„ฑ ์ž‘์—… ํˆฌ๋ช…์„ฑ๊ณผ ํ˜‘์—… ์‹ ๋ขฐ๋„ ํ™•์ธ

์ด ๋ฐ์ดํ„ฐ๋Š” ๋ฆฌ๋”์—๊ฒŒ ์•„๋ž˜ ์งˆ๋ฌธ์— ๋‹ตํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค๋‹ˆ๋‹ค.

  • ๋ˆ„๊ฐ€ ์ง€๊ธˆ ๊ณผ๋ถ€ํ•˜ ์ƒํƒœ์ธ๊ฐ€?
  • ์ผ์ •์ด ๋ฐ€๋ฆฌ๋Š” ์›์ธ์ด ์‹คํ–‰๋ ฅ ๋ถ€์กฑ์ธ์ง€, ํ• ๋‹น ์ž์ฒด๊ฐ€ ๋ฌด๋ฆฌ์˜€๋Š”์ง€?
  • ํŠน์ • ์—…๋ฌด๊ฐ€ ๊ณ„์† ๊ณต์ˆ˜ ์˜ˆ์ธก์„ ๋ฒ—์–ด๋‚˜๋Š” ๊ตฌ์กฐ์  ์ด์œ ๊ฐ€ ์žˆ๋Š”์ง€?
  • ๊ธฐ๋ก์ด ๋น„์–ด ์žˆ์–ด ์‹ค์ œ ์ง„ํ–‰ ์ƒํƒœ๋ฅผ ๋ฆฌ๋”๊ฐ€ ์˜คํ•ดํ•˜๊ณ  ์žˆ์ง€๋Š” ์•Š์€์ง€?

Jira ๋ฐ์ดํ„ฐ๊ฐ€ ์ฃผ๋Š” ๋ฆฌ๋”์‹ญ ์ธ์‚ฌ์ดํŠธ

"๋ˆ„๊ฐ€ ๋ฐ”์œ๊ฐ€?"๋ณด๋‹ค
"์™œ ์ผ์ •์ด ํ”๋“ค๋ฆฌ๋Š”๊ฐ€?" ๋ฅผ ์„ค๋ช…ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ๊ด€๋ฆฌ๊ฐ€ ์‰ฌ์›Œ์ง‘๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด ์ผ์ • ์ค€์ˆ˜์œจ๊ณผ ๊ณต์ˆ˜ ์ •ํ™•๋„๊ฐ€ ๋™์‹œ์— ๋‚ฎ๋‹ค๋ฉด, ๊ทธ๊ฑด ๋‹จ์ˆœํ•œ ๊ฐœ์ธ ๋ฌธ์ œ๋ณด๋‹ค ์—…๋ฌด ์ชผ๊ฐœ๊ธฐ ๋ฐฉ์‹์ด๋‚˜ ์šฐ์„ ์ˆœ์œ„ ๋ฐฐ๋ถ„ ๊ตฌ์กฐ๋ฅผ ๋‹ค์‹œ ๋ด์•ผ ํ•œ๋‹ค๋Š” ์‹ ํ˜ธ์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ €๋Š” ์ด ์ง€์ ์„ ๋ฆฌ๋”๊ฐ€ ๋น ๋ฅด๊ฒŒ ๋ฐœ๊ฒฌํ•  ์ˆ˜ ์žˆ๋„๋ก Gantt์™€ ๊ณต์ˆ˜ ์ƒํƒœ๋ฅผ ํ•œ ํ™”๋ฉด์— ๋ฌถ์—ˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ’ฌ GitLab API๋กœ ์ˆ˜์ง‘ํ•œ ๋ฐ์ดํ„ฐ์™€ ์ฝ”๋“œ ํ’ˆ์งˆ ํ‰๊ฐ€ ๋ฐฉ์‹

Jira๊ฐ€ "์ผ์˜ ์ง„ํ–‰"์„ ๋ณด์—ฌ์ค€๋‹ค๋ฉด, GitLab์€ "ํ˜‘์—…๊ณผ ์ฝ”๋“œ ํ’ˆ์งˆ"์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

์‹ค์ œ ํŒ€ ์šด์˜์—์„œ๋Š” ํ‹ฐ์ผ“์ด ๋งŽ์ด ๋๋‚ฌ๋‹ค๊ณ  ํ•ด์„œ ํ•ญ์ƒ ๊ฑด๊ฐ•ํ•œ ์ƒํƒœ๋Š” ์•„๋‹™๋‹ˆ๋‹ค.

๋ฆฌ๋ทฐ์— ์ž˜ ์ฐธ์—ฌํ•˜์ง€ ์•Š๊ฑฐ๋‚˜, ํ”ผ๋“œ๋ฐฑ์„ ๋ฐ˜์˜ํ•˜์ง€ ์•Š๊ฑฐ๋‚˜, ๋จธ์ง€ ๋ฆฌ๋“œํƒ€์ž„์ด ๊ณผ๋„ํ•˜๊ฒŒ ๊ธธ๋‹ค๋ฉด ์ƒ์‚ฐ์„ฑ์ด ๋†’์•„ ๋ณด์—ฌ๋„ ํŒ€ ์ „์ฒด ํšจ์œจ์€ ์˜คํžˆ๋ ค ๋–จ์–ด์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

TeamScope MR ํ˜„ํ™ฉ ํ™”๋ฉด - GitLab ๋จธ์ง€ ๋ฆฌํ€˜์ŠคํŠธ ์ƒํƒœ, ์ฝ”๋ฉ˜ํŠธ ์ˆ˜, ์ƒ์„ฑ์ผ, ๋จธ์ง€์ผ, ๋ฆฌ๋“œํƒ€์ž„์„ ๋ณด์—ฌ์ฃผ๋Š” ์ฝ”๋“œ ํ’ˆ์งˆ ๋Œ€์‹œ๋ณด๋“œ

GitLab API ๊ธฐ์ค€์œผ๋กœ๋Š” ์•„๋ž˜ ํ•ญ๋ชฉ์„ ํ•ต์‹ฌ์ ์œผ๋กœ ๋ฐ˜์˜ํ–ˆ์Šต๋‹ˆ๋‹ค.

์ง€ํ‘œ ์˜๋ฏธ ๋ฆฌ๋”์‹ญ ํ™œ์šฉ ํฌ์ธํŠธ
MR ์ƒ์„ฑ์„ฑ ๊ธฐ๊ฐ„ ๋‚ด ๋จธ์ง€๋œ MR ์ˆ˜ ์‚ฐ์ถœ๋ฌผ ์†๋„ ํ™•์ธ
๋ฆฌ๋ทฐ ์ฐธ์—ฌ๋„ ํƒ€์ธ MR์— ๋‚จ๊ธด ์ฝ”๋ฉ˜ํŠธ ์ˆ˜ ํŒ€ ๊ธฐ์—ฌ๋„์™€ ํ˜‘์—… ๋ฐ€๋„ ํ™•์ธ
ํ”ผ๋“œ๋ฐฑ ๋ฐ˜์˜๋ฅ  ๋ฐ›์€ ์ฝ”๋ฉ˜ํŠธ ์ค‘ ํ•ด๊ฒฐ ๋น„์œจ ์ˆ˜์šฉ์„ฑ๊ณผ ๊ฐœ์„  ์†๋„ ํ™•์ธ
MR ๋ฆฌ๋“œํƒ€์ž„ ์ƒ์„ฑ๋ถ€ํ„ฐ ๋จธ์ง€๊นŒ์ง€ ๊ฑธ๋ฆฐ ์‹œ๊ฐ„ ๋ณ‘๋ชฉ, ๋Œ€๊ธฐ, ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜ ์ง€์—ฐ ํ™•์ธ
CI/CD ํ†ต๊ณผ์œจ ํŒŒ์ดํ”„๋ผ์ธ ์„ฑ๊ณต ๋น„์œจ ์•ˆ์ •์„ฑ, ๋ฐฐํฌ ๊ฑด๊ฐ•๋„ ํŒ๋‹จ

์—ฌ๊ธฐ์„œ ์ค‘์š”ํ•œ ๊ฒƒ์€ MR ์ˆ˜ ์ž์ฒด๋ณด๋‹ค ์ง€ํ‘œ ๊ฐ„์˜ ๊ด€๊ณ„๋ฅผ ํ•จ๊ป˜ ๋ณด๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

  • MR ์ƒ์„ฑ์„ฑ์€ ๋†’์€๋ฐ ํ”ผ๋“œ๋ฐฑ ๋ฐ˜์˜๋ฅ ์ด ๋‚ฎ๋‹ค๋ฉด, ์†๋„๋Š” ๋‚˜์ง€๋งŒ ํ’ˆ์งˆ ๋ฆฌ์Šคํฌ๊ฐ€ ์žˆ๋‹ค๋Š” ๋œป์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋ฆฌ๋ทฐ ์ฐธ์—ฌ๋„๋Š” ๋‚ฎ์€๋ฐ ์ž์‹ ์˜ MR๋งŒ ๋น ๋ฅด๊ฒŒ ๋จธ์ง€๋œ๋‹ค๋ฉด, ํŒ€ ํ˜‘์—…์˜ ๊ท ํ˜•์ด ๊นจ์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • CI ํ†ต๊ณผ์œจ์ด ๋ฐ˜๋ณต์ ์œผ๋กœ ๋‚ฎ๋‹ค๋ฉด ๊ฐœ์ธ ์ด์Šˆ๊ฐ€ ์•„๋‹ˆ๋ผ ํ…Œ์ŠคํŠธ/๋ฐฐํฌ ํŒŒ์ดํ”„๋ผ์ธ ์ž์ฒด๋ฅผ ์žฌ์ •๋น„ํ•ด์•ผ ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

GitLab ๋ฐ์ดํ„ฐ๊ฐ€ ์ฃผ๋Š” ๋ฆฌ๋”์‹ญ ์ธ์‚ฌ์ดํŠธ

"๋ˆ„๊ฐ€ ๋งŽ์ด ๋งŒ๋“ค์—ˆ๋Š”๊ฐ€?"๋ณด๋‹ค
"ํŒ€์˜ ์ฝ”๋“œ ํ˜‘์—… ๊ตฌ์กฐ๊ฐ€ ๊ฑด๊ฐ•ํ•œ๊ฐ€?" ๋ฅผ ์ฝ๋Š” ๋ฐ ๋” ํฐ ์˜๋ฏธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฆ‰ GitLab ๋ฐ์ดํ„ฐ๋Š” ์‚ฌ๋žŒ์„ ํ‰๊ฐ€ํ•˜๊ธฐ๋ณด๋‹ค, ํŒ€์˜ ์ฝ”๋“œ ํ˜‘์—… ๊ตฌ์กฐ๊ฐ€ ๊ฑด๊ฐ•ํ•œ์ง€๋ฅผ ์ฝ๊ฒŒ ํ•ด์ฃผ๋Š” ์‹ ํ˜ธ๋กœ ๋ณด๋Š” ๊ฒƒ์ด ๋งž์Šต๋‹ˆ๋‹ค.

๐Ÿ—ƒ๏ธ Plasma DB๋ฅผ ์ค‘์‹ฌ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒด๊ณ„ํ™”ํ•œ ์ด์œ 

Jira์™€ GitLab์˜ ์›์ฒœ ๋ฐ์ดํ„ฐ๋Š” ๊ตฌ์กฐ๋„ ๋‹ค๋ฅด๊ณ  ์‹œ๊ฐ„์ถ•๋„ ๋‹ค๋ฆ…๋‹ˆ๋‹ค.

๊ทธ๋Œ€๋กœ ๋ถ™์—ฌ์„œ๋Š” ๋น„๊ต๊ฐ€ ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

  • Jira๋Š” ์ด์Šˆ, ์ƒํƒœ ์ „์ด, ์˜ˆ์ •์ผ, ์›Œํฌ๋กœ๊ทธ์ฒ˜๋Ÿผ "์—…๋ฌด ๊ด€๋ฆฌ" ์ค‘์‹ฌ ๊ตฌ์กฐ
  • GitLab์€ MR, ์ปค๋ฐ‹, ์ฝ”๋ฉ˜ํŠธ, ํŒŒ์ดํ”„๋ผ์ธ์ฒ˜๋Ÿผ "์ฝ”๋“œ ๋ณ€๊ฒฝ" ์ค‘์‹ฌ ๊ตฌ์กฐ

๊ทธ๋ž˜์„œ ์ค‘๊ฐ„์— Plasma DB ๊ฐ™์€ ํ†ตํ•ฉ ์ €์žฅ ๊ณ„์ธต์ด ๋ฐ˜๋“œ์‹œ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

์ด ๊ณ„์ธต์€ ๋‹จ์ˆœ ์ €์žฅ์†Œ๊ฐ€ ์•„๋‹ˆ๋ผ, ๋ฆฌ๋”๊ฐ€ ํ•ด์„ ๊ฐ€๋Šฅํ•œ ๋‹จ์œ„๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์žฌ์ •๋ ฌํ•˜๋Š” ํ—ˆ๋ธŒ์ž…๋‹ˆ๋‹ค.

์ œ๊ฐ€ ์žก์€ ๊ธฐ๋ณธ ๊ธฐ์ค€์€ ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  1. ๊ฐœ๋ฐœ์ž ๊ธฐ์ค€ ์ •๊ทœํ™” Jira ์‚ฌ์šฉ์ž๋ช…, GitLab ์‚ฌ์šฉ์ž๋ช…, ๋‚ด๋ถ€ ๋ฉค๋ฒ„ ์ •๋ณด๋ฅผ ํ•˜๋‚˜์˜ ํŒ€์› ์—”ํ‹ฐํ‹ฐ๋กœ ๋งคํ•‘ํ•ฉ๋‹ˆ๋‹ค.
  2. ํ”„๋กœ์ ํŠธ ๊ธฐ์ค€ ์ •๊ทœํ™” ์—ฌ๋Ÿฌ Jira/GitLab ํ”„๋กœ์ ํŠธ๋ฅผ ๊ฐ™์€ ํŒ€์˜ ์šด์˜ ๋‹จ์œ„๋กœ ๋ฌถ์–ด ํ•„ํ„ฐ๋งํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.
  3. ๊ธฐ๊ฐ„ ๊ธฐ์ค€ ์žฌ์ง‘๊ณ„ ์›”๋ณ„, ๋ถ„๊ธฐ๋ณ„, ์—ฐ๋„๋ณ„, ์ปค์Šคํ…€ ๋ฒ”์œ„๋กœ ๊ฐ™์€ ๋ฐ์ดํ„ฐ์…‹์„ ์žฌํ•ด์„ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋งŒ๋“ญ๋‹ˆ๋‹ค.
  4. ์ ์ˆ˜ ๊ณ„์‚ฐ์šฉ ์ง‘๊ณ„ ๋ ˆ์ด์–ด ์›์ฒœ ์ด๋ฒคํŠธ ๋กœ๊ทธ๋ฅผ ๊ทธ๋Œ€๋กœ ๋ณด์—ฌ์ฃผ๋Š” ๋Œ€์‹ , ์ ์ˆ˜ ์‚ฐ์‹์— ํ•„์š”ํ•œ ํ˜•ํƒœ๋กœ ๋ฏธ๋ฆฌ ์ง‘๊ณ„ํ•ฉ๋‹ˆ๋‹ค.

์ด๋ ‡๊ฒŒ ๋˜๋ฉด ๋ฆฌ๋”๋Š” ํ•„ํ„ฐ๋งŒ ๋ฐ”๊ฟ”๋„ ์•„๋ž˜์™€ ๊ฐ™์€ ์งˆ๋ฌธ์— ๋ฐ”๋กœ ๋‹ตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์ด๋ฒˆ ๋‹ฌ ํŒ€ ์ „์ฒด ์ƒํƒœ๋Š” ์–ด๋–ค๊ฐ€?
  • ํŠน์ • ํ”„๋กœ์ ํŠธ๋งŒ ๋ณด๋ฉด ๋ˆ„๊ฐ€ ๋ณ‘๋ชฉ์ธ๊ฐ€?
  • ํ•œ ๋ช…์˜ ๊ฐœ๋ฐœ์ž๋ฅผ ์›”๋ณ„๋กœ ๋ณด๋ฉด ์–ด๋–ค ์ง€ํ‘œ๊ฐ€ ๊พธ์ค€ํžˆ ํ”๋“ค๋ฆฌ๋Š”๊ฐ€?

Plasma DB์˜ ์—ญํ• 

๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๊ฒƒ์ด ๋ชฉ์ ์ด ์•„๋‹ˆ๋ผ,
๋ฆฌ๋”๊ฐ€ ํ•ด์„ํ•  ์ˆ˜ ์žˆ๋Š” ๋‹จ์œ„๋กœ ๋‹ค์‹œ ๋ฌถ๋Š” ๊ฒƒ์ด ํ•ต์‹ฌ์ž…๋‹ˆ๋‹ค.

์ฆ‰ Plasma DB๋Š” "๋ฐ์ดํ„ฐ๋ฅผ ๋ชจ์•„๋‘๋Š” ๊ณณ"์ด ์•„๋‹ˆ๋ผ, ๋ฆฌ๋”๊ฐ€ ์ƒ๊ฐํ•˜๋Š” ๋‹จ์œ„๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์žฌ๊ตฌ์„ฑํ•˜๋Š” ์šด์˜์šฉ ํ•ด์„ ๊ณ„์ธต์ž…๋‹ˆ๋‹ค.

๐Ÿ“ ์ ์ˆ˜ํ™” ๋ชจ๋ธ ์„ค๊ณ„

์ ์ˆ˜ํ™”๋Š” ์ด ๋Œ€์‹œ๋ณด๋“œ์˜ ํ•ต์‹ฌ์ด์ง€๋งŒ, ๊ฐ€์žฅ ์กฐ์‹ฌํ•ด์„œ ์„ค๊ณ„ํ•ด์•ผ ํ•˜๋Š” ๋ถ€๋ถ„์ด๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค.

์ ์ˆ˜๊ฐ€ ์ž˜๋ชป ์„ค๊ณ„๋˜๋ฉด ํŒ€์›์„ ๋‹จ์ˆœ ์ค„์„ธ์šฐ๊ธฐ ํ•˜๋Š” ์‹œ์Šคํ…œ์ฒ˜๋Ÿผ ๋ณด์ด๊ธฐ ์‰ฝ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

์ œ๊ฐ€ ๋‘” ์›์น™์€ ๋ช…ํ™•ํ•ฉ๋‹ˆ๋‹ค.

์ ์ˆ˜๋Š” ํ‰๊ฐ€๋ฅผ ์œ„ํ•œ ํ‰๊ฐ€๊ฐ€ ์•„๋‹ˆ๋ผ, ๋ณ‘๋ชฉ ์กฐ๊ธฐ ๋ฐœ๊ฒฌ๊ณผ ์ฝ”์นญ ๋Œ€ํ™”์˜ ์‹œ์ž‘์ ์ด์–ด์•ผ ํ•œ๋‹ค.

์ ์ˆ˜ ๊ตฌ์กฐ๋Š” ํฌ๊ฒŒ ๋‘ ์ถ•์ž…๋‹ˆ๋‹ค.

  • Jira ์ ์ˆ˜: ์ผ์„ ๊ณ„ํš๋Œ€๋กœ ์ˆ˜ํ–‰ํ•˜๊ณ  ์žˆ๋Š”๊ฐ€
  • GitLab ์ ์ˆ˜: ์ฝ”๋“œ๋ฅผ ๊ฑด๊ฐ•ํ•˜๊ฒŒ ๋งŒ๋“ค๊ณ  ํ˜‘์—…ํ•˜๊ณ  ์žˆ๋Š”๊ฐ€

1. Jira ์—…๋ฌด ์ˆ˜ํ–‰ ์ ์ˆ˜

ํ•ญ๋ชฉ ๋ฐฐ์  ํ•ด์„ ํฌ์ธํŠธ
ํ‹ฐ์ผ“ ์™„๋ฃŒ์œจ 25์  ๋งก์€ ์—…๋ฌด๋ฅผ ์‹ค์ œ๋กœ ์†Œํ™”ํ•˜๊ณ  ์žˆ๋Š”๊ฐ€
์ผ์ • ์ค€์ˆ˜์œจ 25์  ๊ณ„ํš ๋Œ€๋น„ ์ผ์ • ์•ˆ์ •์„ฑ์ด ์žˆ๋Š”๊ฐ€
๊ณต์ˆ˜ ์ •ํ™•๋„ 25์  ์˜ˆ์ธก์ด ํ˜„์‹ค์ ์ธ๊ฐ€
์ž‘์—…์ผ์ง€ ์„ฑ์‹ค๋„ 25์  ์ง„ํ–‰ ์ƒํƒœ๊ฐ€ ํˆฌ๋ช…ํ•˜๊ฒŒ ๊ณต์œ ๋˜๋Š”๊ฐ€

2. GitLab ์ฝ”๋“œ ํ’ˆ์งˆ ์ ์ˆ˜

ํ•ญ๋ชฉ ๋ฐฐ์  ํ•ด์„ ํฌ์ธํŠธ
MR ์ƒ์‚ฐ์„ฑ 20์  ์‚ฐ์ถœ๋ฌผ์ด ๊พธ์ค€ํ•œ๊ฐ€
์ฝ”๋“œ ๋ฆฌ๋ทฐ ์ฐธ์—ฌ๋„ 25์  ํƒ€์ธ์„ ๋•๊ณ  ํŒ€ ํ’ˆ์งˆ์— ๊ธฐ์—ฌํ•˜๋Š”๊ฐ€
ํ”ผ๋“œ๋ฐฑ ๋ฐ˜์˜๋ฅ  20์  ํ”ผ๋“œ๋ฐฑ์„ ์ˆ˜์šฉํ•˜๊ณ  ๊ฐœ์„ ํ•˜๋Š”๊ฐ€
MR ๋ฆฌ๋“œํƒ€์ž„ 20์  ๋ณ€๊ฒฝ ํ๋ฆ„์ด ์ง€์ฒด๋˜์ง€ ์•Š๋Š”๊ฐ€
CI ํ†ต๊ณผ์œจ 15์  ์•ˆ์ •์ ์œผ๋กœ ๋ณ€๊ฒฝ์„ ๋งˆ๋ฌด๋ฆฌํ•˜๋Š”๊ฐ€

3. ์ข…ํ•ฉ ์ ์ˆ˜

์ข…ํ•ฉ ์ ์ˆ˜ = (Jira ์ ์ˆ˜ x 50%) + (GitLab ์ ์ˆ˜ x 50%)

์—ฌ๊ธฐ์„œ ์ค‘์š”ํ•œ ๊ฒƒ์€ ๊ฐ€์ค‘์น˜๋ฅผ ๊ณ ์ •ํ•˜์ง€ ์•Š์•˜๋‹ค๋Š” ์ ์ž…๋‹ˆ๋‹ค.

ํŒ€ ์ƒํ™ฉ์— ๋”ฐ๋ผ Jira 50 / GitLab 50์ด ์ตœ์„ ์ด ์•„๋‹ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์‹ ๊ทœ ํ”„๋กœ์ ํŠธ ์ดˆ๊ธฐ: ์ผ์ • ์ค€์ˆ˜๋ณด๋‹ค ์‹คํ–‰ ์†๋„๋ฅผ ๋” ๋ณผ ์ˆ˜ ์žˆ์Œ
  • ํ’ˆ์งˆ ์•ˆ์ •ํ™” ๋‹จ๊ณ„: GitLab ๋ฆฌ๋ทฐ/CI ๋น„์ค‘์„ ๋” ๋†’์ผ ์ˆ˜ ์žˆ์Œ
  • ์šด์˜ ์•ˆ์ •ํ™” ํŒ€: ๊ณต์ˆ˜ ์ •ํ™•๋„์™€ ๋ฆฌ๋“œํƒ€์ž„์„ ๋” ์ค‘์š”ํ•˜๊ฒŒ ๋ณผ ์ˆ˜ ์žˆ์Œ

์ ์ˆ˜ํ™” ์ฒ ํ•™

์ ์ˆ˜๋Š” ์‚ฌ๋žŒ์„ ์ค„์„ธ์šฐ๊ธฐ ์œ„ํ•œ ๊ฒฐ๊ณผํ‘œ๊ฐ€ ์•„๋‹ˆ๋ผ,
๋ณ‘๋ชฉ์„ ๋ฐœ๊ฒฌํ•˜๊ณ  ์ฝ”์นญ ์šฐ์„ ์ˆœ์œ„๋ฅผ ์žก๊ธฐ ์œ„ํ•œ ์šด์˜ ๋ณด์กฐ ์ง€ํ‘œ์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ๊ฐ€์ค‘์น˜๋ฅผ ์„ค์ • ํ™”๋ฉด์—์„œ ์ง์ ‘ ์กฐ์ •ํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค๊ณ„ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋ฆฌ๋”๋งˆ๋‹ค, ์กฐ์ง๋งˆ๋‹ค, ์‹œ๊ธฐ๋งˆ๋‹ค ์ค‘์š”๋„๊ฐ€ ๋‹ฌ๋ผ์ง€๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

TeamScope ์Šค์ฝ”์–ด๋ง ๊ฐ€์ค‘์น˜ ์„ค์ • ํ™”๋ฉด - Jira์™€ GitLab ๋น„์ค‘ ๋ฐ ์„ธ๋ถ€ ์ง€ํ‘œ ๊ฐ€์ค‘์น˜๋ฅผ ์กฐ์ ˆํ•˜๋Š” ์šด์˜ ์„ค์ • ๋Œ€์‹œ๋ณด๋“œ

๐Ÿ“Š ๋Œ€์‹œ๋ณด๋“œ ํ™”๋ฉด์œผ๋กœ ์–ด๋–ป๊ฒŒ ๊ด€๋ฆฌ๊ฐ€ ์‰ฌ์›Œ์กŒ๋Š”๊ฐ€

์ ์ˆ˜ ๋ชจ๋ธ์ด ์žˆ์–ด๋„, ๋ฆฌ๋”๊ฐ€ ์ฝ๊ธฐ ์–ด๋ ต๋‹ค๋ฉด ์˜๋ฏธ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ํ™”๋ฉด์€ "ํŒ€ ์ „์ฒด๋ฅผ ๋ณธ ๋’ค, ํ•„์š”ํ•œ ๊ฐœ์ธ์„ ๊นŠ๊ฒŒ ๋ณด๋Š” ๊ตฌ์กฐ" ์— ๋งž์ถฐ ์„ค๊ณ„ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋ฉ”์ธ ํŒ€ ๋Œ€์‹œ๋ณด๋“œ

๋ฉ”์ธ ํ™”๋ฉด์—์„œ๋Š” ์•„๋ž˜ ์งˆ๋ฌธ์— ๋จผ์ € ๋‹ตํ•ฉ๋‹ˆ๋‹ค.

  • ์ด๋ฒˆ ๊ธฐ๊ฐ„์˜ ํŒ€ ํ‰๊ท  ์ ์ˆ˜๋Š” ์–ด๋–ค๊ฐ€?
  • Jira์™€ GitLab ์ค‘ ์–ด๋А ์ถ•์ด ์ƒ๋Œ€์ ์œผ๋กœ ์•ฝํ•œ๊ฐ€?
  • ํŠน์ • ํŒ€์› ํ˜น์€ ํ”„๋กœ์ ํŠธ๋ฅผ ์„ ํƒํ–ˆ์„ ๋•Œ ์ถ”์„ธ๊ฐ€ ์–ด๋–ป๊ฒŒ ๋‹ฌ๋ผ์ง€๋Š”๊ฐ€?

๋ฉ”์ธ ๋Œ€์‹œ๋ณด๋“œ์˜ ์—ญํ• 

๋ฆฌ๋”๊ฐ€ ํšŒ์˜ ์ „์— 10์ดˆ ์•ˆ์—
"์ง€๊ธˆ ํŒ€ ์ƒํƒœ๊ฐ€ ์–ด๋–ค๊ฐ€?" ๋ฅผ ์ฝ๊ฒŒ ๋งŒ๋“œ๋Š” ํ™”๋ฉด์ž…๋‹ˆ๋‹ค.

ํ•„ํ„ฐ์™€ KPI ์นด๋“œ, ํŒ€ ์ ์ˆ˜ ์ถ”์„ธ, ๋ ˆ์ด๋” ์ฐจํŠธ๋ฅผ ํ•œ ์ž๋ฆฌ์— ๋ชจ์•„๋‘” ์ด์œ ๋Š” ๋ฆฌ๋”๊ฐ€ ํšŒ์˜ ์ „์— ํŒ€ ์ƒํƒœ๋ฅผ ๋น ๋ฅด๊ฒŒ ์ฝ๋„๋ก ๋•๊ธฐ ์œ„ํ•ด์„œ์ž…๋‹ˆ๋‹ค.

๊ฐœ๋ฐœ์ž ์ƒ์„ธ Drill-down

TeamScope ๊ฐœ๋ฐœ์ž ์ƒ์„ธ ํ™”๋ฉด - Jira ์ ์ˆ˜, GitLab ์ ์ˆ˜, ๋ ˆ์ด๋” ์ฐจํŠธ, ๊ฒŒ์ด์ง€๋ฅผ ํ†ตํ•ด ๊ฐœ์ธ ๋‹จ์œ„ ์„ฑ๊ณผ์™€ ์ง€์› ํฌ์ธํŠธ๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ๊ตฌ์„ฑ

ํŒ€ ์ „์ฒด ์ง€ํ‘œ์—์„œ ์ด์ƒ ์‹ ํ˜ธ๊ฐ€ ๋ณด์ด๋ฉด, ๋ฐ”๋กœ ๊ฐœ์ธ ์ƒ์„ธ ํ™”๋ฉด์œผ๋กœ ๋‚ด๋ ค๊ฐ‘๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์„œ๋Š” ๋‹จ์ˆœ ์ด์ ์ด ์•„๋‹ˆ๋ผ ์–ด๋–ค ํ•ญ๋ชฉ์ด ํ”๋“ค๋ฆฌ๋Š”์ง€๊ฐ€ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.

  • ์ผ์ •์€ ๊ดœ์ฐฎ์€๋ฐ ๋ฆฌ๋ทฐ ์ฐธ์—ฌ๊ฐ€ ๋‚ฎ์€์ง€
  • ์ƒ์‚ฐ์„ฑ์€ ๋†’์€๋ฐ ํ”ผ๋“œ๋ฐฑ ๋ฐ˜์˜๋ฅ ์ด ๋‚ฎ์€์ง€
  • ํ‹ฐ์ผ“ ์™„๋ฃŒ์œจ์€ ๋†’์ง€๋งŒ ๊ณต์ˆ˜ ์ •ํ™•๋„๊ฐ€ ๋‚ฎ์€์ง€

๊ฐœ๋ฐœ์ž ์ƒ์„ธ ํ™”๋ฉด์˜ ์—ญํ• 

์ด์ ์„ ๋ณด๋Š” ํ™”๋ฉด์ด ์•„๋‹ˆ๋ผ,
์ฝ”์นญ ํฌ์ธํŠธ๋ฅผ ๊ตฌ์ฒดํ™”ํ•˜๋Š” ํ™”๋ฉด์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ด๋ ‡๊ฒŒ ๋ด์•ผ ๋ฆฌ๋”๊ฐ€ "์„ฑ๊ณผ๊ฐ€ ๋‚ฎ๋‹ค"๊ฐ€ ์•„๋‹ˆ๋ผ "์–ด๋–ค ์ง€์›์ด ํ•„์š”ํ•œ๊ฐ€" ๋กœ ๋Œ€ํ™”๋ฅผ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ‹ฐ์ผ“, MR, ๊ณต์ˆ˜ ๋ถ„์„, ์„ค์ • ํ™”๋ฉด

TeamScope ํ‹ฐ์ผ“ ํ˜„ํ™ฉ ํ™”๋ฉด - Jira ์ด์Šˆ ๋ฒˆํ˜ธ, ์ œ๋ชฉ, ์ƒํƒœ, ์‹œ์ž‘์ผ๊ณผ ์™„๋ฃŒ์ผ์„ ๋ณด์—ฌ์ฃผ์–ด ์›์ฒœ ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”์ ํ•  ์ˆ˜ ์žˆ๋Š” ํ™”๋ฉด
TeamScope ๊ณต์ˆ˜ ๋ถ„์„ ์ฐจํŠธ - ์›”๋ณ„ ๊ณ„ํš ๋Œ€๋น„ ์‹ค์ œ ๊ณต์ˆ˜ ๋น„๊ต๋ฅผ ํ†ตํ•ด ์˜ˆ์ธก ์ •ํ™•๋„์™€ ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉ ํŒจํ„ด์„ ๋ถ„์„ํ•˜๋Š” ํ™”๋ฉด
TeamScope ํ”„๋กœ์ ํŠธ ๊ด€๋ฆฌ ํ™”๋ฉด - ์—ฌ๋Ÿฌ Jira์™€ GitLab ํ”„๋กœ์ ํŠธ๋ฅผ ์—ฐ๊ฒฐํ•ด ํ†ตํ•ฉ ๊ด€๋ฆฌ๋ฅผ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๋Š” ์„ค์ • ํ™”๋ฉด

์ด ๋ณด์กฐ ํ™”๋ฉด๋“ค์€ "์™œ ์ด ์ ์ˆ˜๊ฐ€ ๋‚˜์™”๋Š”๊ฐ€?" ๋ฅผ ์„ค๋ช…ํ•˜๋Š” ๊ทผ๊ฑฐ ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.

์ ์ˆ˜ ์นด๋“œ๋งŒ ์žˆ์œผ๋ฉด ๋ฆฌ๋”๋Š” ํ•ด์„ํ•˜๊ธฐ ์–ด๋ ต์ง€๋งŒ, ์›์ฒœ ๋ฐ์ดํ„ฐ์™€ ๋ถ„์„ ํ™”๋ฉด์ด ํ•จ๊ป˜ ์žˆ์œผ๋ฉด ์„ค๋ช… ๊ฐ€๋Šฅํ•œ ๊ด€๋ฆฌ ์ฒด๊ณ„๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.

๐Ÿ‘ค ๋ฆฌ๋”๊ฐ€ ์ด ํ™”๋ฉด์œผ๋กœ ํ•  ์ˆ˜ ์žˆ๋Š” ์˜์‚ฌ๊ฒฐ์ •

์ด ๋Œ€์‹œ๋ณด๋“œ์˜ ๋ชฉ์ ์€ ๋ฆฌ๋”๊ฐ€ ๋” ๋งŽ์€ ์ˆซ์ž๋ฅผ ๋ณด๋Š” ๊ฒƒ์ด ์•„๋‹™๋‹ˆ๋‹ค.

๋” ๋นจ๋ฆฌ, ๋” ์ •ํ™•ํ•˜๊ฒŒ, ๋” ๋ถ€๋“œ๋Ÿฝ๊ฒŒ ์˜์‚ฌ๊ฒฐ์ •ํ•˜๋„๋ก ๋งŒ๋“œ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค๋ฉด ์ด๋Ÿฐ ํŒ๋‹จ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

  • ๊ณผ๋ถ€ํ•˜ ์‹๋ณ„: ์ผ์ • ์ค€์ˆ˜์œจ๊ณผ ๊ณต์ˆ˜ ์ •ํ™•๋„๊ฐ€ ๋™์‹œ์— ํ”๋“ค๋ฆฌ๋Š” ํŒ€์›์„ ์ฐพ์•„ ์—…๋ฌด ์žฌ๋ฐฐ์น˜
  • ํ˜‘์—… ๊ฐœ์„ : ์ƒ์‚ฐ์„ฑ์€ ๋†’์ง€๋งŒ ๋ฆฌ๋ทฐ ์ฐธ์—ฌ๋„๊ฐ€ ๋‚ฎ์€ ํŒ€์›์„ ๋ฐœ๊ฒฌํ•ด ํŒ€ ๊ธฐ์—ฌ ๋ฐฉ์‹ ์กฐ์ •
  • ํ’ˆ์งˆ ๋ฆฌ์Šคํฌ ๊ฐ์ง€: MR ์ˆ˜๋Š” ๋งŽ์ง€๋งŒ ํ”ผ๋“œ๋ฐฑ ๋ฐ˜์˜๋ฅ ๊ณผ CI ํ†ต๊ณผ์œจ์ด ๋‚ฎ์€ ํ๋ฆ„ ์กฐ๊ธฐ ๋ฐœ๊ฒฌ
  • ์ฝ”์นญ ํฌ์ธํŠธ ๋ถ„๋ฆฌ: ๊ฐœ์ธ ์—ญ๋Ÿ‰ ๋ฌธ์ œ์™€ ๊ตฌ์กฐ์  ๋ณ‘๋ชฉ์„ ๊ตฌ๋ถ„ํ•ด ๋Œ€์‘
  • ์šฐ์„ ์ˆœ์œ„ ์žฌ์„ค์ •: ํŠน์ • ํ”„๋กœ์ ํŠธ๋งŒ ํ•„ํ„ฐ๋งํ•ด ์‹ค์ œ ๋ฆฌ์Šคํฌ๊ฐ€ ํฐ ์˜์—ญ๋ถ€ํ„ฐ ์กฐ์น˜

๋ฆฌ๋”๊ฐ€ ์–ป๊ฒŒ ๋˜๋Š” ๋ณ€ํ™”

"๋ˆ„๊ฐ€ ๋ฌธ์ œ์ธ๊ฐ€?"๋ฅผ ์ฐพ๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ,
"์–ด๋””๋ฅผ ๋จผ์ € ์กฐ์ •ํ•˜๋ฉด ํŒ€์ด ๋” ์ข‹์•„์ง€๋Š”๊ฐ€?" ๋ฅผ ๋น ๋ฅด๊ฒŒ ํŒ๋‹จํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

ํ•ต์‹ฌ์€ ๋ฆฌ๋”๊ฐ€ ๋ˆ„๊ตฐ๊ฐ€๋ฅผ "๋‚ฎ์€ ์ ์ˆ˜์˜ ์‚ฌ๋žŒ"์œผ๋กœ ๋ณด๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, "ํ˜„์žฌ ์–ด๋–ค ์ง€์›๊ณผ ์กฐ์ •์ด ํ•„์š”ํ•œ ์‚ฌ๋žŒ" ์œผ๋กœ ๋ณผ ์ˆ˜ ์žˆ๊ฒŒ ๋งŒ๋“œ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๐ŸŽฏ ๊ฒฐ๊ตญ ์ด ๋Œ€์‹œ๋ณด๋“œ๊ฐ€ ๋งŒ๋“  ๋ณ€ํ™”

์ด ๋Œ€์‹œ๋ณด๋“œ๋ฅผ ๋งŒ๋“ค๊ณ ์ž ํ–ˆ๋˜ ์ด์œ ๋Š” ๋ช…ํ™•ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋ฆฌ๋”๊ฐ€ ๋งค๋ฒˆ ์—ฌ๋Ÿฌ ์‹œ์Šคํ…œ์„ ์˜ค๊ฐ€๋ฉฐ ์ƒํƒœ๋ฅผ ์ถ”์ธกํ•˜์ง€ ์•Š์•„๋„ ๋˜๊ฒŒ ๋งŒ๋“ค๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค.

Jira API์™€ GitLab API์—์„œ ๋“ค์–ด์˜ค๋Š” ์›์ฒœ ๋ฐ์ดํ„ฐ๋ฅผ Plasma DB์—์„œ ์ฒด๊ณ„ํ™”ํ•˜๊ณ , ๊ทธ๊ฒƒ์„ ์ ์ˆ˜ํ™”์™€ ์‹œ๊ฐํ™”๋กœ ๋ณ€ํ™˜ํ•˜๋ฉด ํŒ€ ์šด์˜์€ ํ›จ์”ฌ ๋ช…ํ™•ํ•ด์ง‘๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ๊ทธ ๋ช…ํ™•ํ•จ์€ ๋‹จ์ˆœ ํŽธ์˜์„ฑ ์ด์ƒ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

  • ๋ณ‘๋ชฉ์„ ๋” ๋นจ๋ฆฌ ๋ฐœ๊ฒฌํ•˜๊ฒŒ ํ•˜๊ณ 
  • ์ง€์›์ด ํ•„์š”ํ•œ ํŒ€์›์„ ๋” ์ •ํ™•ํžˆ ๋ณด๊ฒŒ ํ•˜๊ณ 
  • ํ”„๋กœ์ ํŠธ๋ณ„ ๋ฆฌ์Šคํฌ๋ฅผ ๋” ๋นจ๋ฆฌ ์„ค๋ช…ํ•˜๊ฒŒ ํ•˜๊ณ 
  • ๋ฆฌ๋”์˜ ๊ด€๋ฆฌ ๋ถ€๋‹ด์„ ํ›จ์”ฌ ์ค„์—ฌ์ค๋‹ˆ๋‹ค

๋งˆ์ง€๋ง‰ ํ•œ ์ค„ ์ •๋ฆฌ

์ด ๋Œ€์‹œ๋ณด๋“œ๋Š” ์„ฑ๊ณผ๋ฅผ ์‹ฌํŒํ•˜๋Š” ์‹œ์Šคํ…œ์ด ์•„๋‹ˆ๋ผ,
๋ฆฌ๋”๊ฐ€ ๋” ์‰ฝ๊ณ  ๊ฐ„ํŽธํ•˜๊ฒŒ ํŒ€์„ ๊ด€๋ฆฌํ•˜๋„๋ก ๋•๋Š” ์šด์˜ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค.

๊ฒฐ๊ตญ ์ด ๋Œ€์‹œ๋ณด๋“œ๋Š” ์„ฑ๊ณผ๋ฅผ ํ‰๊ฐ€ํ•˜๋Š” ํŒ์ด ์•„๋‹ˆ๋ผ, ๋ฆฌ๋”๊ฐ€ ๋” ์‰ฝ๊ณ  ๊ฐ„ํŽธํ•˜๊ฒŒ ํŒ€์„ ๊ด€๋ฆฌํ•˜๊ณ , ๋” ์ข‹์€ ๋Œ€ํ™”๋ฅผ ์‹œ์ž‘ํ•˜๊ฒŒ ๋งŒ๋“œ๋Š” ์šด์˜ ๋„๊ตฌ๋กœ ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ”— ํ•จ๊ป˜ ๋ณด๋ฉด ์ข‹์€ ๊ธ€