-
Notifications
You must be signed in to change notification settings - Fork 0
/
13434881.html
58 lines (46 loc) · 7.21 KB
/
13434881.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<!DOCTYPE html>
<html>
<head>
<title>FIRE WIKI : 용어 정리</title>
<link rel="stylesheet" href="styles/site.css" type="text/css" />
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body class="theme-default aui-theme-default">
<div id="page">
<div id="main" class="aui-page-panel">
<div id="main-header">
<div id="breadcrumb-section">
<ol id="breadcrumbs">
<li class="first">
<span><a href="index.html">FIRE WIKI</a></span>
</li>
<li>
<span><a href="262207.html">FIRE 위키 홈</a></span>
</li>
<li>
<span><a href="17268778.html">자료</a></span>
</li>
</ol>
</div>
<h1 id="title-heading" class="pagetitle">
<span id="title-text">
FIRE WIKI : 용어 정리
</span>
</h1>
</div>
<div id="content" class="view">
<div class="page-metadata">
Created by <span class='author'> 고주형</span>, last modified on 5월 27, 2022
</div>
<div id="main-content" class="wiki-content group">
<h1 id="id-용어정리-Keywords">Keywords</h1><ul><li><p>XP</p></li><li><p>Pair Programming</p></li><li><p>TDD</p></li><li><p>Scrum</p></li></ul><p /><h2 id="id-용어정리-XP">XP</h2><p>유래</p><ul><li><p>전통적인 방식의 Practice를 Extreme하게 적용하는 것</p></li></ul><blockquote><p>XP is a light weight methodology for small to medium sized teams developing software in the face of vague or rapidly changing requirements <br/> - Kent Beck</p></blockquote><p>목적</p><p>고객에게 최고의 가치를 가장 빨리!</p><p /><p>특징</p><ul><li><p>Specific planning approach</p></li><li><p>On-Site Customer</p></li><li><p>Continusous Testing</p></li><li><p>가볍다 </p><ul><li><p>프로세스를 최소한으로 가져가서 프로그래머에게 부담을 적게 준다</p></li></ul></li><li><p>Discipline</p><ul><li><p>따라야할 practice들이 있다</p></li></ul></li><li><p>SW 개발</p><ul><li><p>항상 SW가 실행가능하길 원한다</p></li></ul></li></ul><p>Practices 종류</p><ul><li><p>Simple Design</p></li><li><p>Pair Promgramming</p></li><li><p>Constant Testing</p></li><li><p>Continous Testing</p></li><li><p>Refactoring</p><ul><li><p>xp에서는 변화할 미래를 생각해서 개발하는 것 보다 지금 당장 개발해야 하는 것에 집중</p></li><li><p>따라서 차라리 리팩토링을 통해 코드 품질 높이려 함.</p></li></ul></li><li><p>Coding Standard</p></li><li><p>Small Release</p></li></ul><p>타겟</p><ul><li><p>막연함 속에서 일하거나 요구사항이 빠르게 변하는 소~중 사이즈 개발팀에 적합</p></li></ul><h2 id="id-용어정리-PairProgramming">Pair Programming</h2><p>두명이 같이서 코딩하는 것</p><p>필요한 것</p><ul><li><p>Testing</p><ul><li><p>Unit Testing</p></li><li><p>Functional Testing</p></li></ul></li></ul><p>유의점</p><ul><li><p>문제가 지나치게 단순할 경우(익숙할 경우) 이득 거의 x</p></li><li><p>프로그래머 수준이 너무 높은 경우 차라리 각자 작업하는 것이 낳음</p></li><li><p>관계가 평등해야 함</p></li><li><p>‘일반적으로’ 효율과 생산성 측면에서 이득이 있다고 할 수 x → (Kim Man Lui and Keith C.C. Chan(2006). Pair programming productivity: Novice–novice vs. expert –expert. Int. J. Human-Computer Studies, 64, 915– 926.)</p><ul><li><p>단, 여기에서도 복잡한 과제와 학습을 위한 경우엔 뚜렷이 긍정적인 효과가 있다고 봄.</p></li></ul></li></ul><h2 id="id-용어정리-TDD">TDD</h2><p>Test Driven Programming</p><p> = Test First Programming</p><p>목적</p><ul><li><p>Clean Code that works</p></li></ul><p>어려운 점</p><ul><li><p>시간이 부족해서 계속 미루다가… 끝</p></li><li><p>Code 자체가 Testable하지 않음</p></li></ul><p>해결법</p><ul><li><p>Testable Code를 작성한다</p><ul><li><p>Separation of Concern</p></li><li><p>SRP</p></li></ul></li></ul><p>특징</p><ul><li><p>미래의 고통을 지금으로 가져온다</p></li><li><p>내 코드 퀄리티에 대한 책임감 증가</p><ul><li><p>그냥 짜고 QA한테 주고 끝!이 아니게 됨</p></li></ul></li></ul><p>장점</p><ul><li><p>요구사항이 명확해진다</p></li><li><p>문서로써의 사용</p><ul><li><p>Specification by example </p></li></ul></li></ul><h2 id="id-용어정리-Scrum">Scrum</h2><p /><h2 id="id-용어정리-Compare">Compare</h2><h3 id="id-용어정리-ScrumvsXP">Scrum vs XP</h3><p>공통점</p><ul><li><p>개발 프로세스를 Sprint로 쪼갬</p></li><li><p>개발 전 Planning Meeting함</p></li><li><p>그 미팅에서 유저 스토리 핀포인트</p></li><li><p>스프린트 미팅 전 Planning Meeting</p></li><li><p>목적이 비슷함</p><ul><li><p>Delivering a high quality product as fast as possible</p></li></ul></li></ul><p> 차이점</p><ul><li><p /></li></ul><div class="table-wrap"><table data-layout="default" data-local-id="4e537d15-0413-456b-993d-ee5c03730c35" class="confluenceTable"><colgroup><col style="width: 226.67px;"/><col style="width: 226.67px;"/><col style="width: 226.67px;"/></colgroup><tbody><tr><td class="confluenceTd"><p /></td><td class="confluenceTd"><p><strong>Scrum</strong></p></td><td class="confluenceTd"><p><strong>XP</strong></p></td></tr><tr><td class="confluenceTd"><p>Focus</p></td><td class="confluenceTd"><p>Management, Productivity, <br/>Working Product</p></td><td class="confluenceTd"><p>Programming, Testing,<br/>릴리즈보다는 작동하는 bug없는 시스템</p></td></tr><tr><td class="confluenceTd"><p>Sprint</p></td><td class="confluenceTd"><p>2-4 week, 기간이 Flexible</p></td><td class="confluenceTd"><p>1-2 week</p></td></tr><tr><td class="confluenceTd"><p>Change</p></td><td class="confluenceTd"><p>No changes during a sprint</p></td><td class="confluenceTd"><p>Flexible changes during the sprint</p></td></tr><tr><td class="confluenceTd"><p /></td><td class="confluenceTd"><p>개발자가 할 일을 자기가 정함</p></td><td class="confluenceTd"><p>팀은 우선순위와 요구사항이 반영된 Strict한 규율을 따름</p></td></tr></tbody></table></div>
</div>
</div> </div>
<div id="footer" role="contentinfo">
<section class="footer-body">
<p>Document generated by Confluence on 12월 15, 2022 23:05</p>
<div id="footer-logo"><a href="http://www.atlassian.com/">Atlassian</a></div>
</section>
</div>
</div> </body>
</html>