http://insightbook.springnote.com/pages/1717332


지은이 : 켄 슈와버(Ken Schwaber), 마이크 비들(Mike Beedle) / 옮긴이 : 박일, 김기웅
정가 : 18,000원

260쪽 / 판형 : A5 / 1판
출간일 : 2008년 10월 6일
ISBN-13 : 978-89-91268-47-0


책소개
스크럼의 대부인 켄 슈와버가 쓴 <<스크럼>>은 소프트웨어 시스템 개발 프로젝트에서 기술과 프로세스를 관리/운영하는 실천 방법 중 높은 생산성을 검증받은 스크럼의 기본적인 이론들을 소개하고 있습니다. 특히, 어떻게 스크럼 팀을 조직하여 일일 스크럼 회의와 스크럼 프로젝트 계획을 하는지와 스크럼을 이용한 백로그 추적과 프로젝트 완료 등을 어떻게 해야 하는지 등에 관한 스크럼의 실천법이 저자들의 20년간의 다양한 경험 사례를 통해 이해할 수 있게 설명되어 있습니다.



“스크럼은 다르다”

애자일 소프트웨어 개발 방법론이 유연한 소프트웨어 시스템의 미래를 여는 열쇠라고 말한다면, 스크럼은 급변하는 비즈니스 환경에서 소프트웨어 개발과 관리를 가장 효과적으로 해내는 전위대라고 말할 수 있을 것입니다. 이 책에는 기존의 것들을 단순히 우려먹는 그렇고 그런 방법론이 아니라 수십 년 간의 경험을 통해 얻은 저자들의 철학과 이론, 그리고 실천법들이 다양하고 심층적인 사례와 함께 온전히 담겨 있습니다.



“스크럼은 불편하다”

스크럼은 외견상 간단하게 보이는 방법론이지만 우아한 기술과 헌신적인 실천을 요구합니다. 그러니 적용하자마자 잠재되어 있는 문제점들이 폭로되어 이러저러하게 조직의 쓴맛을 보게 됩니다. 그래서 스크럼은 불편합니다. 허나 성공하는 프로젝트를 만끽하려면 넘어야 할 산입니다. 신뢰와 헌신, 믿음과 용기, 개방과 공유라는 스크럼의 가치를 통해 그 ‘불편’을 돌파해 보십시오.



“스크럼은 통한다”

소프트웨어 개발은 항상 새로운 제품을 만드는 창조적인 행위입니다. 이러한 새로운 제품을 개발하는 과정에서 넓고 깊은 연구와 창발적인 활동은 두말하면 잔소리죠. 그러려면 새로운 지식을 창출하고 스스로 자기 조직화를 잘 할 수 있는 관점과 실천이 필요합니다. 스크럼은 소프트웨어 개발의 패러다임을 바꾸는 새로운 세계관을 보여줍니다. 이 책에서 스크럼의 세계관을 투영한 소프트웨어 개발의 다양한 관점을 - 시스템 역학적, 인류학적, 복잡계 과학적, 정신분석적, 패러다임 전환적 관점 등 - 확인하십시오. 왜 스크럼은 통하는지 바로 알아챌 것입니다.

그밖에 이 책을 통해 스크럼을 바로 사용할 수 있는데 그 덤으로 이런 것을 얻습니다.



1. 기존에 실행되고 있는 엔지니어링 실천방법과는 상관없이 소프트웨어 개발에 스크럼을 바로 적용시킬 수 있다.

2. 애자일 프로세스의 이론의 기본적 맥락을 이해할 수 있다.

3. 왜 애자일 프로세스를 사용해야 하는지 알 수 있다.

4. 애자일 프로세스를 어떻게 구현하고 관리하는지 알 수 있다.

5. 스크럼 래퍼를 통해서 익스트림 프로그래밍과 공명할 수 있다.


크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기

Posted by 홍반장

2009/02/12 16:14 2009/02/12 16:14
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/3994

WHILE 회돌이

http://coreapython.hosting.paran.com/tutor/index.htm

FOR 회돌이가 회돌이 구조의 유일한 유형은 아닙니다. FOR 회돌이는 수행하고 싶은 반복의 횟수를 미리 알아야 하기 때문에 즉, 미리 계산할 수 있을 경우에 딱 맞습니다. 그래서 무슨 일이 일어날 때까지 특정한 과업을 계속하고 싶지만 그 때가 언제가 될지 모른다면 무슨 일이 일어나는가? 예를 들어, 파일로부터 데이터를 읽어 처리하고 싶습니다. 그러나 얼마나 많은 데이터 항목이 파일에 들어 있는지 미리 알지 못합니다. 파일의 끝에 이를 때까지 그냥 계속해서 데이터를 처리하고 싶습니다. FOR 회돌이에서 가능하지만 어렵습니다.

이 문제를 해결하기 위하여 도다른 유형의 회돌이가 있습니다: WHILE 회돌이가 그것입니다.

파이썬으로 다음과 같이 보입니다:

>>> j = 1
>>> while j <= 12:
... print "%d x 12 = %d" % (j, j*12)
... j = j + 1

무슨 일이 일어나고 있는지 거닐어 봅시다.

먼저 j를 1로 초기화하고, while 회돌이의 제어 변수를 초기화하는 일은 아주 중요한 단계입니다. 이를 빼먹으면 에러가 자주 야기됩니다.
다음으로 while 서술문 자체를 실행합니다. 이는 불리언 표현식으로 평가됩니다.
결과가 True이면 다음에 따라오는 들여쓰기 블록을 실행합니다. 예제에서 j는 12 미만이므로 블록 안에 들어갑니다.
print 서술문을 실행하여 곱셈표의 첫 줄을 출력합니다.
다음 줄은 제어 변수 j를 증가시킵니다. 이 경우 가장 마지막에 들여쓰기된 줄로서, while 블록의 끝을 의미합니다.
다시 while 서술문으로 되돌아가 새로운 j 값을 가지고 4-6 단계를 반복합니다.
이 행위를 j가 13에 도달할 때까지 계속해서 반복합니다.
그 시점에서 while 테스트가 False를 돌려줍니다. 들여쓰기 블록을 건너뛰고 while 서술문과 들여쓰기가 같은 다음 줄로 갑니다.
이 경우 다른 줄이 없으므로 프로그램이 끝납니다.
지금까지 눈에 보이는 그대로 이해되셨으리라 믿습니다. 단 한가지 지적하고 싶다면 - 위의 while (그리고 for) 줄 끝에 쌍점(:)이 보이십니까? 그를 보고 파이썬은 다음에 일단의 코드(블록)이 온다는 것을 압니다. 잠시 후에 보시겠지만, 다른 언어들은 자신만의 방법으로 인터프리터에게 줄을 함께 무리짓도록 알려줍니다. 파이썬은 쌍점과 들여쓰기를 조합해 사용합니다.
크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기

Posted by 홍반장

2009/02/12 15:29 2009/02/12 15:29
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/3993

파이썬의 for 회돌이는 연속열을 반복합니다. 혹 잊으셨다면 파이썬에서 연속열은 문자열이나 리스트 또는 터플입니다. 그래서 그런 연속열에 작동하는 for 회돌이를 작성할 수 있습니다. for 회돌이를 사용하여 'word'라는 문자열에서 철자를 하나씩 인쇄해 봅시다.:

>>> for c in 'word': print c
...

기호가 한 줄에 하나씩 인쇄되는 것에 주목하세요. 또 회돌이 몸체가 단 한 줄로 구성되어 있어서 같은 줄, 쌍점(:) 다음에 추가할 수 있는 것에도 주목하세요. 쌍점은 파이썬에게 다음에는 코드 블록이 온다고 알려줍니다.

터플을 회돌이 할 수도 있습니다:

>>> for word in ('one','word', 'after', 'another'): print word
...

이 번에는 한 줄에 단어 하나씩을 얻습니다. 물론 그 모두를 한 줄에 인쇄할 수도 있습니다. print 서술문 뒤에 쉼표를 하나 두면 파이썬이 새줄문자를 인쇄하지 못하도록 막기 때문에 다음 print 서술문은 바로 앞 서술문이 떠났던 그 곳에서 다시 시작합니다.

>>> for word in ('one', 'word', 'after', 'another'): print word,
...

이제는 단어들이 한 줄에 보입니까?

(range()는 리스트를 만들어 내므로) 이미 리스트에 적용되는 for 회돌이를 보았지만 완벽을 기하기 위하여 명시적으로 해 보겠습니다:

>>> for item in ['one', 2, 'three']: print item
...

이와 같이 foreach 스타일의 회돌이를 사용할 때 한 가지 약점이 있습니다. 회돌이는 집단에 있던 원소들이 담긴 사본을 돌려주기 때문에, 그 집단의 내용물을 직접 수정할 수는 없습니다. 그래서 집단을 수정할 필요가 있다면 다음과 같이 집단의 지표가 관련된 좀 어색한 해결책을 사용해야 합니다:

myList = [1,2,3,4]
for index in range(len(myList)):
myList[index] += 1
print myList

myList의 각 항목이 1씩 늘어납니다. 지표 트릭을 사용하지 않았다면 복사된 항목만 증가시킬 뿐이지 원래 리스트는 바뀌지 않았을 것입니다.

이 예제에서 처음으로 파이썬 상호대화 프롬프트(>>>)를 사용하지 않았습니다. 그래서 이것을 연속열 심화연구 주제에서 기술한 대로 파일에 타자해 넣을 필요가 있습니다. >>> 프롬프트에서 타자해 보려면 빈 줄을 더 추가해서 파이썬에게 블록이 끝났음을 알려주어야 합니다. 예를 들어 myList = 뒤에서 말입니다. 실제로 블록이 시작되고 멈추는 곳을 배우는 아주 좋은 방법입니다; 코드를 타자해 넣고 줄이 더 필요한 곳을 올바로 추측했는지 알아보세요. 바로 들여쓰기가 바뀌는 곳이 그곳입니다!

회돌이에 대하여 다른 함정은 반복 중인 집단 안에서 항목을 지우면 안된다는 것입니다. 그렇지 않으면 회돌이는 혼란을 일으킵니다. 마치 그 위에 올라서서 나무의 가지를 쳐내는 예전 만화 주인공처럼 말입니다! 이런 상황을 다루는 가장 좋은 방법은 다른 종류의 회돌이를 사용하는 것입니다. 이런 회돌이는 다음 섹션에서 연구해 보겠습니다. 그렇지만 원소를 안전하게 제거하는 법을 이해하려면 분기라는 또다른 주제를 다룰 때까지 기다릴 필요가 있습니다. 그래서 이 주제는 그 즈음에 다다르면 설명드리겠습니다.
크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기

Posted by 홍반장

2009/02/12 15:25 2009/02/12 15:25
Response
No Trackback , 2 Comments
RSS :
http://tcbs17.cafe24.com/tc/rss/response/3992

FOR 회돌이

프로그래밍 언어에게 변수를 교체시켜서 반복할 때마다 값이 증가되도록 해 보겠습니다. 파이썬으로 다음과 같이 보입니다:

>>>for i in range(1,13):
... print "%d x 12 = %d" % (i, i*12)
...

고지 1: range(1,13)으로 13을 지정할 필요가 있는데 range() 함수는 앞 숫자에서부터 두 번째 숫자 미만까지 만들어내기 때문입니다. 처음보면 약간 괴이하게 보이지만 거기에는 이유가 있으며 곧 익숙해질 것입니다.

고지 2: 파이썬에서 for 연산자는 실제로 foreach 연산자입니다. 한 집단의 각 원소에 코드를 적용한다는 점에서 말입니다. 이 경우 집단은 range()가 생성한 숫자로 구성된 연속열입니다. 파이썬 프롬프트에서 print range(1,13)를 타자해서 무엇이 인쇄되는지 보면 증명할 수 있습니다.

고지 3: print 줄은 들여쓰기(indented) 되어 있습니다. 다시 말해 위의 for 줄보다 더 안으로 공간이 들어가 있습니다. 파이썬에게 print가 반복할 부분이라는 것을 알리는데 아주 중요한 요점입니다. 여러 줄이 안으로 들여쓰기 되어도 좋습니다. 파이썬은 집단의 매 원소마다 들여쓰기된 그 모든 줄을 반복할 것입니다. 또한, 얼마를 들여쓰기 하든 신경쓰지 않습니다. 일관성만 있으면 됩니다.

고지 4: 상호대화 인터프리터에서 리턴키를 두 번 눌러야 프로그램을 실행시킬 수 있습니다. 그 이유는 파이썬 인터프리터가 첫 리턴키만으로는 회돌이 코드 뒤에 추가해야 할 또다른 줄인지 아닌지 구별하지 못하기 때문입니다. 두 번째로 엔터키를 치면 파이썬은 코드가 끝났다고 간주하고 프로그램을 실행시킵니다.

그래서 어떻게 프로그램은 작동하는가? 단계별로 알아 봅시다.
무엇보다, 파이썬은 range 함수를 사용하여 1에서 12까지의 숫자 리스트를 만듭니다.

다음으로 파이썬은 i를 리스트의 첫 값과 똑 같이 만듭니다. 이 경우 1이군요. 다음으로 값 i = 1을 사용하여 들여쓰기된 코드를 실행합니다:

print "%d x 12 = %d" % (1, 1*12)

다음으로 파이썬은 다시 for 줄로 되돌아가 i에 리스트의 다음 값을 설정하는데, 이번에는 2이군요. 다시 들여쓰기된 코드를 실행합니다. 이번에는 i = 2를 사용합니다:

print "%d x 12 = %d" % (2, 2*12)

i에 리스트의 모든 값이 할당될 때까지 계속해서 이렇게 반복합니다. 그 지점에 이르면 들여쓰기 되지 않은 다음 명령어로 갑니다. 실제로 - 이 경우 더 이상 명령어가 없으므로 프로그램이 끝납니다.
크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기

Posted by 홍반장

2009/02/12 15:25 2009/02/12 15:25
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/3991

곱셈표

이제 다음 몇 장에 걸쳐서 개발할 프로그래밍 연습 문제를 소개하겠습니다. 새로 테크닉을 배워감에 따라서 그 해결책을 점차 개선해 보겠습니다.

삼중 따옴표 안에 싸 넣으면 긴 문자열을 타자할 수 있다는 사실을 기억하십니까? 삼중 따옴표를 사용하여 곱셈표를 구성해 봅시다:

>>> s = """
1 x 12 = %d
2 x 12 = %d
3 x 12 = %d
4 x 12 = %d
""" # 주의하라 - 문자열 안에 주석을 넣을 수 없다
>>> # 문자열의 일부가 되어 버린다!
>>> print s % (12, 2*12, 3*12, 4*12)
크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기

Posted by 홍반장

2009/02/12 15:07 2009/02/12 15:07
Response
No Trackback , 2 Comments
RSS :
http://tcbs17.cafe24.com/tc/rss/response/3990

변수를 이용하는 연속열

http://coreapython.hosting.paran.com/tutor/index.htm


미가공 재료 주제에서 변수의 개념을 소개하였습니다. 거기에서 변수란 미래에 참조하기 위하여 데이터에 표식을 붙여둔 라벨이라고 말씀 드렸습니다. 다양한 리스트와 주소록 예제에서 변수를 사용하는 예제도 몇 가지 보았습니다. 그렇지만 변수는 근본적으로 프로그래밍에서 중요합니다. 그래서 새로운 것을 더 배우기 전에 어떻게 변수를 사용하는지 짧게 요약해 보고 싶습니다.

이제 IDLE 또는 도스(또는 유닉스) 명령어 창의 파이썬 프롬프트(>>>)에서, 다음을 타자해 보세요:

>>> v = 7
>>> w = 18
>>> x = v + w # 변수를 계산에 이용한다
>>> print x

여기에서는 변수를 ( v, w, x ) 만들고 그 변수를 조작하고 있습니다. 마치 휴대용 계산기의 M 버튼을 이용하여 결과를 저장해 두었다가 나중에 사용하는 것과 비슷합니다.

형식화 문자열을 이용하여 그 결과를 인쇄하면 더 예쁘게 만들 수 있습니다:

>>> print "The sum of %d and %d is: %d" % (v,w,x)

형식화 문자열의 장점은 변수에도 저장할 수 있다는 것입니다:

>>> s = "The sum of %d and %d is: %d"
>>> print s % (v,w,x) # 다른 값으로 똑 같은 출력을 인쇄할 때 유용하다

이렇게 하면 print 서술문이 훨씬 더 짧아집니다. 특히 값이 많을 때 그렇습니다. 그렇지만 또한 그 만큼 난해해지기 때문에 어느 것을 선택할지는 스스로 판단하셔야 합니다. 저장된 포맷 값보다 아주 긴 줄이 더 읽기 편한지 아닌지 스스로 결정해야 합니다. 여기에서 한 것 같이 print 서술문 옆에 형식화 문자열을 두더라도 그렇게 나쁘지 않습니다. 마지막으로 도움이 될만한 것 하나는 사용 용도를 설명하도록 변수 이름을 짓는 것입니다. 예를 들어 형식화 문자열 s를 호출하는 대신 본인은 sumFormat으로 호출할 수도 있었습니다. 그래서 코드는 다음과 같이 보입니다:

>>> sumFormat = "The sum of %d and %d is: %d"
>>> print sumFormat % (v,w,x) # 값은 다르고 출력은 같을 때 유용하다

이제, 프로그램에서 여러 다양한 형식화 문자열이 있으면 어느 포맷을 인쇄할지 더 쉽게 알려줄 수 있습니다. 의미를 붙여 이름을 짓는 것이 언제나 좋은 생각이며 가능하면 본인도 의미있게 이름을 짓도록 노력하겠습니다. 아직까지는 변수가 많은 의미를 담을 만큼은 아닙니다!
크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기

Posted by 홍반장

2009/02/12 15:06 2009/02/12 15:06
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/3989

2009서울국제스포츠레저산업전
- http://www.spoex.com/



coex.co.kr

크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기

Posted by 홍반장

2009/02/12 14:01 2009/02/12 14:01
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/3988

인생은 무언가가 되어가는 생동감 넘치는 과정이다.
지난 해에 자신의 관심 분야에 무언가를 추가하지 않았다면,
여전히 과거의 사고방식을 지니고 똑같은 경험들로만 되풀이하고 있다면,
여전히 예측 가능한 반응들로 일관한다면
당신은 죽어있는 인생을 사는 것이다.

- 맥아더 장군



누구에게나 인생은 한번 뿐입니다.
작년과 동일한 일을, 같은 방식으로 오늘도 하기에는
흘려보내는 시간이 너무나 아깝습니다.
주어진 일만 소극적으로 해나기에는 너무나 소중한 시간들입니다.
한번뿐인 소중한 내 인생의 값은 내가 매기는 것입니다.
크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기

Posted by 홍반장

2009/02/12 09:27 2009/02/12 09:27
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/3987

오늘 결정해야 할 일

나의 미래는
지금 내가 무엇을 생각하고
무엇을 하고 있느냐에 따라 달라집니다.
나의 미래는 나의 미래가 결정짓는 게 아니라
나의 오늘이 결정짓습니다.


- 정호승의《내 인생에 힘이 되어준 한마디》중에서 -


* 결정의 핵심은 '방향'입니다.
방향은 곧 '목표'이고, '삶의 목적'이기도 합니다.
방향이 잘못되면 속도도 소용이 없습니다.
애써 멀리 간 만큼 다시 돌아와야 하고
허비된 시간도 되찾지 못합니다.
나의 방향이 과연 옳바른지
오늘 다시 결정해야 합니다.
크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기

Posted by 홍반장

2009/02/12 09:26 2009/02/12 09:26
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/3986

목요일 수영강습

간밤에 우유를 먹었더니~ 속이...

기상 후 팔굽혀펴기 30개 후 출발.

6시 15분에 입수.

킥판없이 발차기 자유형/배영/평영 각 1바퀴

평영 4 바퀴

누워서 평영 2 바퀴

평영킥|자유형팔 4바퀴

한바퀴 걷기

레인중간에서 턴 연습 - 접/배/평/자 각 3 번.

스타트 연습 10회 정도

마지막 스타트 크롤 25m

헬스장으로~

치닝 10회 2세트

윗몸일으키기 30회 2세트

레그 레이즈 10회 2세트

종아리 운동 15회 2세트

삼각근 운동 15회 2세트

오늘 89.80kg 나왔다.

쿠하하하
크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기

Posted by 홍반장

2009/02/12 09:10 2009/02/12 09:10
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/3985


블로그 이미지

- 홍반장

Archives

Recent Trackbacks

Calendar

«   2009/02   »
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
Statistics Graph

Site Stats

Total hits:
238102
Today:
1219
Yesterday:
1352