지적 유희를 즐기는 소프트웨어 개발자를 위한 공학 에세이

“조엘 온 소프트웨어”, “실용주의 프로그래머”에 이은 또 하나의 필독서

 

"경험에서 우러나오는 훌륭한 수필"

이 책은 수십년에 걸쳐 경력을 쌓은 사람이 쓴, 짧으면서도 읽기 쉽고 생각을 불러일으키는 수필 선집이다. 소프트웨어에서 변하는 내용이 있는 반면에, 변하지 않는 내용도 있다. 읽고 생각하고 동료와 토론을 벌여서 일을 제대로 하기 위해 무엇을 하고 바꿔야 할지 수필이 주는 교훈을 곱씹어보자. - T. Harris(아마존 독자)

"시대를 초월한 관찰"

밥 글래스 책은 소프트웨어 문제를 다루는 진짜 "숨겨진 고전"이며, 다시 인쇄할 가치가 있다. 이 책은 다른 고전적인 프로그래밍 서적과 마찬가지로(브룩스의 'The Mythical Man-Month', 요돈의 'Death March',와인버거의 'Understanding the Professional Programmer'가 떠오른다) 초판 발행 이후 여러 해가 지났어도 여전히 유효한 내용으로 남아있다. 대다수 개발자가 맹목적으로 순수 기술 서적만 읽고 있을지 모르겠지만, 이 책은 진짜로 사고를 넓히는 내용을 담고 있다. 당신이 기술서적만 읽고 있다면, 당신 스스로와 경력을 위해 시야를 넓히도록 이 책을 읽기 바란다. 이미 일반적으로 흥미를 주는 책을 읽어보았다면, 이 책 역시 빠뜨리지 말기 바란다. - 슈퍼몽키(아마존 독자) "이 책은 매일 매일 곁에 두고 참고하도록 책상 위에 놓아둘 책이 아닐지도 모르겠다. 하지만 소프트웨어 개발 초창기부터 시작하는 매력적인 여행 안내서로서 읽어볼 책 목록에 넣어야 한다." - On Ruby 블로그 운영자

"이 책 내용과 같은 옛날 수필을 읽는 일은 즐겁다. 우리가 오늘날 토론하고 논쟁하고 글로 표현하는 문제점 (정말 똑같은 문제점)이 수십 년 전에도 토론하고 논쟁하고 글로 표현했다니 말이다. 다양한 방법으로 넓은 의미에서 소프트웨어 업계는 똑같은 교훈을 두고 두고 반복해서 배운다." - Simplex Complex 블로그 운영자

좋은 그림에는 여백이 있고, 좋은 직장에는 여유(?)가 있으며, 좋은 책에는 여운이 있다. 바쁘게 돌아가는 소프트웨어 개발 업계에서‘늘 그래왔다’는 변명이란 이름으로 반복되는 오류를 한 번쯤 제거하고 싶었던 적이 있었다면 밥의 글에 귀 기울여 보자. 50년 실무 개발 경력자가 소프트웨어 개발 업계에 던지는 날카로운 비평과 시대를 뛰어넘는 논쟁의 세계로 여러분을 초대한다.

짧지만 긴 여운이 있는 60여 편의 에세이를 통해 글쓴이의 풍부한 경험과 지식을 만끽하고 더불어 앞으로 펼쳐나갈 소프트웨어 개발 세계의 미래를 함께 생각해보는 좋은 기회가 되길 바란다.

번역서에는 원서에 나오는 용어 중에서 일반 책에는 잘 나오지 않는 특이한 용어를 딱딱하지 않고 재미있게 풀어서 설명한 특별부록도 담겨있다.

<베타리더 서평>

베타리더 최재훈(http://kaistizen.net)

소프트웨어 컨플릭트의 베타리더를 제의 받았을 때, 어찌나 기쁘던지. '소프트웨어 공학의 사실과 오해'로 잘 알려진 로버트 L. 글래스의 작품이라는 점만으로도 가슴이 두근두근거렸습니다. 로버트 L. 글래스는 수십 권의 저서를 쓴 베테랑 컨설턴트이며, 소프트웨어 산업계의 구루입니다. 하지만 그의 저서 중 한 권만이 번역서로 소개되어 있을 뿐입니다. 저는 이를 매우 안타깝게 생각했었습니다. 그래서 더욱 이번 번역 작업이 가치있다고 생각합니다. 소프트웨어 컨플릭트는 소프트웨어 분야의 전문가부터 초보자에 이르기까지 모두에게 즐거운 경험을 제공하리라 생각합니다. 저자의 통찰력이 유머 감각과 한데 어울려져 더욱 매력적인 작품이 되었습니다. 여러분도 저와 마찬가지로 지적 즐거움을 느껴보시길 바랍니다.

베타리더 이광수, Microsoft MVP, 패왕넷(http://www.paewang.net)

논쟁이란 쉽지 않은 일이다. 상대방을 납득시키기에도, 합의안을 이끌어내기에도 벅찬 게 논쟁이다. 현안에 대한 통찰력과 자신의 의견을 든든히 뒷받침해줄 참고자료가 풍부하면 풍부할수록 더욱 치열한 논쟁이 벌어진다. 멀리 볼 거 없이 주위에서 벌어지는 일만 보더라도 끊임없이 논쟁거리만 늘어나지, 명확한 해결은 나지 않는다. 소프트웨어 공학 분야도 마찬가지이다. 오랜 시간 동안 다양한 주제의 논쟁이 있었지만, 매듭지어진 건 없고 저마다 자신의 신념에 따를 뿐이다. 그래서 때로는 소모적인 언쟁으로 치부되기도 한다.

그런데 재미있는 건, 이러한 상황을 누구보다 잘 아는 로버트 L. 글래스는 아직까지도 지치지 않았다는 점이다. 오히려 이제 막 논쟁을 본격적으로 뛰어들려는 사람처럼 보인다. 그것도 새로운 주제가 아닌 오랜 시간 동안 진행되어온 논쟁거리들을 가지고 나타났다. 그렇다고, 이 책이 진부했을까? 전혀 그렇지 않았다. 오히려 속이 시원했다. 그간 통념적으로 생각되어 왔던 미신들을 여지없이 까발리고 나서는 설득력 있는 의견을 제시하며 각 글들을 마무리하고 있기 때문에 그간 한 구석에 자리잡고 있던 찌꺼기들이 벗겨져 나감을 느꼈다. 때문에 여러분들이 이 책에 잠시라도 관심을 보인다면, 다시금 논쟁에 참여하고 싶어질지도 모를 만큼 짜릿한 책이라고 소개해주겠다.

베타리더 이선우

소프트웨어 컨플릭트 2.0은 수필 형식의 글입니다. 각각의 글쓰는 방식이 지니는 매력이 있지만, 수필, 특히 이런 류의 수필은 전산과 관련된 사람들의 특권이라 할 수 있습니다. 다른 나라, 다른 세계의 이야기가 아니라 우리 선배들이 겪고, 앞으로 우리의 후배들이 겪을, 그리고 무엇보다 중요한 우리가 현재 살아가는 이야기이기에 생생한 재미를 느낄 수 있습니다. 하지만 단순히 재미에서 그치지 않는 것은, 이 수필을 통해서 스스로의 경험을 살펴보고 생각해 볼 수 있는 계기를 마련해주는데 있다고 봅니다. 눈 앞에 해결해야 할 일들만 해도 끝이 없어 보이기에, 스스로도 5년여에 걸친 전산관련 실무자로서 일을 하며 그 과정을 돌아보는 건 생각만큼 쉽지 않았습니다. 사실은 그렇게 해야한다는 사실 자체를 잊고 지내는 때가 많았다고 하는 게 맞는 표현일 겁니다.

베타리딩을 위해 원서와 번역서를 번갈아 보며, 가장 크게 얻을 수 있었던 건 이러한 사색의 시간이었습니다. 마치 할아버지의 옛날 이야기를 듣는 것처럼 편안한 분위기에서 로버트 L. 글래스의 이야기를 들으며, 그 위에 제 경험들이 교차되었던 것이죠. '왜 그 때는 그런 일들이 일어 났을까', '그건 그래서 였구나', '무엇이 문제일까', '무엇이 필요한가'. 근심과 격려를, 기쁨과 슬픔을, 위기와 기회를, 또 때로는 고통과 희망을 이야기하는, 마치 한편의 재미있고 긴 옛날 이야기를, 추운 겨울날 따뜻한 벽난로 옆에서 담요를 덮은 채 김이 모락모락 피어오르는 코코아를 마시며 듣는 느낌이라면 비슷할까요.

전산을 업으로 선택한 많은 분들이 처음에 시작은 순수하게 '재미'있기에 시작했다가, 반복되는 죽음의 행진 프로젝트로 인해 처음의 뜨거웠던 열정이 차츰 식고, 결국은 예전만큼 '순수히' 즐겁기에 계속하는 분들이 줄어들고 있습니다. 수필에서 묻는 물음처럼 혹시 여러분은 어떠신가요? 이 질문을 글에서 읽었을 때 슬픈이 뭍어나오는 건 혼자만의 느낌이 아니겠지요. 우리가 놓친 것은 무엇일까요. 내일의 출근이 기다려져 밤에 잠자리에 들었을 때, 머릿속은 내일 할 일을 하나씩 떠올리며 두근거리고 설레이는, 어서 빨리 내일이 왔으면 하고 느껴본 적은 언제가 마지막이었을까요.

선물과도 같은 현재가 아니던가요. 그런 매일 매일의 삶이 즐겁지 않다면, 필시 불행한 겁니다. 혹은 영화에서 매트릭스의 일부임을 인지하지 못하는 것처럼, 불행하다는 사실을 미처 느끼지 못하고 지내는 것일수도 있구요. 수필을 읽고 생각하는 동안, 어느새 가슴 한켠에 즐거움에 대한 희망의 씨앗이 자리잡고 있음을 느낄 수 있을 겁니다. 더 많은 분들이 함께 했으면 좋겠습니다. 그것도 로버트처럼 친절하고 통찰력있는 좋은 선배의 안내를 받으면서, 그리고 여행의 끝이 점점 다가옴을 아쉬워하면서 말입니다.

베타리더 이헌규(http://hkjinlee.tistory.com)

사람에 따라 편차는 있습니다만 대체적으로 소프트웨어 기술의 반감기는 길어야 5년을 넘지 못한다고들 합니다. 그렇기에 발간된 지 15년이 넘은 이 책의 유효성에 대해 적지 않은 의구심을 품었던 것이 사실입니다. (다만 ‘소프트웨어 공학의 사실과 오해’라는 저자의 이전 저작을 접해보았기에, 기대를 크게 배신하지는 않겠다는 정도의 믿음은 있었음을 밝혀둡니다.) 하지만, 책을 읽으면 읽을 수록 그런 걱정이 부질없는 것이었다는 결론을 내리게 되더군요. 비록 언급되는 데이터와 사례는 과거의 것일지언정, 이로부터 이끌어내는 결론은 지금 시점에서도 전혀 빛이 바래지 않았기 때문입니다. 이는 무엇보다도, 2부 ‘인지적 견해: 소프트웨어 설계를 보는 다른 시각’과 같은 글에서는 통찰력있는 이론가로서, 3부 ‘권장사항: 소프트웨어 도구 모음의 최소 권장 기준’과 같은 글에서는 노련한 실무자로서의 생각을 술회할 수 있는 저자의 저력 때문일 것입니다. 특정한 요소기술에 집중하면서 숲을 보지 못하는 우를 범하기보다, 소프트웨어의 현재와 미래를 고민하고자 하는 분들께 ‘아하, 그렇지!’라는 지적 깨달음을 전해줄 수 있는 저작이라고 생각합니다.

베타리더 권오혁

개인적으로 밥 글래스의 Software Conflict 2.0 책을 먼저 읽어보고 번역 과정에 참여할 수 있어서 매우 기쁩니다. 이 책은 소프트웨어 공학 서적은 딱딱하고 재미없다는 저의 선입견을 깨뜨려준 책입니다. 소프트웨어 공학에서 논쟁 거리가 되는 여러 가지 주제에 대해 수필 형식으로 자신의 의견을 피력하고 있는데 각 수필마다 저자의 통찰력과 내공이 묻어납니다. 저자가 너무 글을 재미있고 맛깔나게 써서 그 글 솜씨가 부럽기까지 합니다. (원문을 실감나게 우리말로 옮긴 역자들의 번역 솜씨 또한 부럽습니다.)

딱딱한 주제도 있지만 읽다 보면 가려운 곳을 긁어주거나 맞장구를 칠 만한 내용도 많이 있습니다. 저는 개인적으로 소프트웨어의 품질, 유지 보수와 단일 지점 제어를 설명한 수필이 가장 인상적이었습니다. 다른 지인들에게도 읽기를 권하고 싶을 정도로 소프트웨어 공학 관련 기본 지식을 한층 높여줄 만한 책이므로, 여러분들도 밥 글래스와 함께 재미있는 소프트웨어 공학의 세계에 빠져들기를 바랍니다. 저도 책이 나오면 다시 한번 읽어봐야겠습니다.

베타리더 권일경

개발 내공도 깊지 않고, 전산학에 대한 체계적인 지식도 없는 상태에서 개발 실무서가 아닌, 소프트웨어 개발 분야의 거장이 쓴 수필을 읽게 되어 고생을 좀 했습니다. 추천 서문에서 필자(로버트 L. 글래스)의 글쓰기 태도에 대한 경고 아닌 경고를 읽으면서 ‘거 참, 호들갑스럽기는’하는 느낌과 ‘과연 얼마나 대단한 글일까?’하는 상반된 기대감도 있었습니다. 우선, 필자가 밝힌 것처럼, 이 책 자체가 예전에 나왔던 글들을 조금 손봐서 다시 출간하는 것이라 각론에서 제시하는 많은 근거들이 제게는 생소한 내용들이었습니다만, 구석 구석 따라붙는 역자(박재호님, 이해영님) 분들의 해박한 역자주에 놀라움을 넘어서 기가 질려버렸습니다.

제가 생각하기에 이 책의 저자는 후배 연구/개발자들에게 ‘작은 문제들에 집착하지 말고 큰 그림을 보고 대범하게 나아가라’는 메시지를 주고 싶어하지 않나 생각합니다. 현재 유행하는 것들이 무엇이든, 혹은 현재 그 가치가 무시되고 있는 것들이 있다 하더라도 시류에 휩쓸리지 말고, ‘풀어야 할 대상으로서의 문제’라는 큰 명제를 항상 머릿속에 간직하면서 합리적으로 하나 하나 짚어간다면 내 앞을 가로막고 있는 문제를 풀릴 것입니다. 오랜 경험과 꾸준한 고민을 통한 대가의 시각에 살짝 올라 타 본 것은 매우 즐거운 경험이었습니다.

베타리더 박응주(http://colus.egloos.com)

지금까지 회고판을 세 권 정도 읽었는데 하나는 20주년 기념판, 다른 하나는 25주년 기념판, 그리고 이 책입니다. 이런 종류의 책을 읽은 후의 느낌은 한편으로 기쁘고 한편으로 슬픕니다. 제 고민과 시각이 그들의 고민과 시각과 그리 다르지 않아 제가 웬지 똑똑하게 느껴져서 기쁩니다. 몇 십년 전과 지금의 상황이 그리 다르지 않아 무척 슬픕니다. 인류가 소프트웨어 개발이라는 새로운 환경에 적응하려면 아직 몇 세대를 더 기다려야하는 걸까요? 저는 이 책을 읽으면서 고민을 이야기할 수 있는 친구를 만난 기분이었습니다. 의견에 맞장구도 치고 신세 한탄도 하고 조언도 들었습니다. 이 책이 독자 여러분께도 좋은 친구가 되었으면 좋겠습니다. 개발자만이 아니라 업계 모든 사람의 친구가 되었으면 좋겠습니다.

베타리더 임현수(http://fribirdz.net)

‘소프트웨어 분야의 논쟁’이라고 하면 뭐가 떠오르세요? vi와 이멕스, C 와 자바, 2벌식과 3벌식, 포탈 블로그와 설치형 블로그, 웹 2.0 거품... 우리 전산분야에선 이러한 논쟁들이 끊임없이 생겨나고, 반복됩니다.

소프트웨어 논쟁 1.0이 나온 15년이 지난 지금 개정판(소프트웨어 논쟁 2.0)이 나왔습니다. 15년간 대체 어떤 일이 있었을까요? 얼마나 많은 변화가 있었을까요? 글쎄요. 사실 별거 없습니다. 역사는 항상 반복된다는데, 이 논리는 전산학 분야에도 그대로 적용됩니다.

하지만, "변한게 없다고? 그럼 예전 책을 찾아 읽으면 되겠네" 라며 애써 1판을 찾아내서 읽을 필요는 없겠죠. (게다가 번역서도 없답니다!) 시대는 흘렀고, 개정판에는 새로운 내용들이 추가되었다고 합니다. (사실 저도 1판은 안읽어봐서 모릅니다.)

중요한 것은 이겁니다. 15년 전이나 지금이나 별로 변한게 없다면, 지금이나 15년 후나 별로 변할게 없다는거죠. 물론 조금 변하긴 하겠지만, 본질은 그대로 일 것입니다. 이것이 우리가 소프트웨어 논쟁 2.0을 읽어야 하는 이유입니다. 몇십년 전부터 지금까지 불거져온, 그리고 아직도 해결되지 않은 논쟁거리들을 살펴봄으로써 10년, 15년 후의 미래를 대비할 수 있기 때문입니다.

이 책은 전산에 대한 짧고, 쉽게 읽을 수 있는 에세이들, 특히 우리의 풀리지 않는 고민거리, 소프트웨어 공학에 대한 에세이들이 모여 있습니다. 하지만, 읽고 난 후에도 가벼운 마음으로 뒤돌아 서게 되진 않을 겁니다. 에세이 하나하나마다 생각할 거리를 잔뜩 던져주거든요.

에세이들이 짧고, 해답 보다는 어떤 논쟁이 왜 발생했고, 어떠한 주장들이 생겨났는지를 위주로 쓰여져 있기 때문에 답답하거나, "그래서 뭐 어쩌라고? 어떻게 해야 한다는거야?" 라는 생각이 들 수도 있습니다. 하지만, 해답과 결론을 독자 개개인이 생각해본다면, 그만큼 성장할 수 있지 않을까요?

로버트 L. 글래스(Robert L. Glass)

지금까지 50여 년 동안 전산 분야에서 파란만장한 경험을 쌓아왔으며, 1954년에서 1957년 사이 항공우주 업계, 노스 아메리칸 사에서 3년 동안 일한 경험을 시작으로 밥은 소프트웨어 부문에서 진정한 선구자 중 한 명으로 거듭났다.

노스 아메리칸 사에서 근무한 경험이 계기가 되어 에어로젯-제네랄과 보잉과 같은 우주항공 회사에서 계속 일하게 되었으며, 그 이후 시애틀 대학교의 소프트웨어 공학 대학원에서 교편을 잡았고 소프트웨어 공학 연구소에서 1년을 보냈다. 초창기 밥은 워싱턴 대학교에서 도구에 초점을 맞춘 연구를 몇 년 정도(1970년 - 1972년) 진행했다.

밥은 25권이 넘는 다양한 서적과 90편이 넘는 전문 논문을 작성하는 방법으로 전산 학계가 내놓은 발견을 평가하고 이를 실무에 실질적인 가치가 있도록 만드는 전환 작업에 초점을 맞추기 위한 여러 가지 시도를 해왔다. 로버트 L 글래스는 친자 두 명과 양자 두 명의 아버지이며, 정보 시스템 관련 학계에서 활약하는 아이리스 베세이와 결혼했다.

박재호(jrogue@gmail.com)

포항공과대학교 컴퓨터공학과 학부와 포항공과대학교 컴퓨터공학과 대학원(소프트웨어 공학 전공)을 졸업했다. 검색 엔진과 지식 관리 시스템 개발을 시작으로 시력 측정 장치 개발에 이어 최근에는 HDTV 관련 제품을 개발하고 있다. 종종 틈을 내어 블로그 ‘컴퓨터 vs 책’(http://jhrogue.blogspot.com)에 컴퓨터와 책에 얽힌 여러 가지 흥미로운 글을 올리고 있다. 옮긴 책으로 "조엘 온 소프트웨어"", "The Art of Project Management: 마음을 움직이는 프로젝트 관리", "Rapid Development: 프로젝트 쾌속 개발 전략" 등이 있다.

이해영(hae_lee@hanmail.net)

포항공과대학교 컴퓨터공학과 학부와 퍼듀대학교 전자계산학과 대학원을 졸업했다. 오랫동안 소프트웨어 개발에 종사하다가, 2007년 현재 미국에서 소프트웨어 지역화 전문가로 일하고 있다. 옮긴 책으로 "조엘 온 소프트웨어", "The Art of Project Management: 마음을 움직이는 프로젝트 관리", "Rapid Development: 프로젝트 쾌속 개발 전략" 등이 있다

옮긴이 서문

역사는 반복된다_박재호

2006년도 저물어 가는 이 시점에서 15년이나 더 된 책을 다시 펴낼 이유가 있을까? 더 빨리 더 최신의 정보를 습득하기에도 정신이 없는 상황에서 구닥다리 옛날 이야기를 읽으면 시간 낭비가 아닐까? 얼핏 드는 생각이지만 상당히 그럴싸하다. 하지만 여기에는 함정이 있다.

칼 마르크스는 중요한 역사적 사건은 두 번 반복된다는 헤겔의 말에 첫번째 일어나는 사건이 비극이라면 두번째 일어나는 사건은 희극이라고 덧붙였다. 이 책 본문에 나오는 4GL에 대한 맹신과 같은 어리석은 일이 요즘은 일어나지 않는다고 함부로 속단할 수 있을까? 그런 의미에서 희극 한 편을 소개하겠다.

2년 전 무렵에 이름만 들으면 누구나 알 수 있는 유명한 한 회사에서 컨설팅을 의뢰 받았다. 납기일 준수와 재사용성을 높이기 위해 임베디드 분야에 사용하는 소프트웨어를 체계화 시켜서 공장(factory)에서 사용하는 BOM(Bill of Material)처럼 관리하는 방법에 대한 내용이었다. 자초지종을 들어보니 이를 위해 객체지향 방법론을 도입하고 누구나 이름만 들어도 아는 R사에서 개발한 R이라는 도구(따지고 보면 자동 프로그램을 가능하게 만든다고 선전한 4GL을 계승하는 현대판 도구다)를 도입하려고 한다는 내부 전략을 파악했다. 하지만 21세기식 은총알을 사용한 늑대 인간 사냥에는 전혀 관심이 없었기에 정색을 하면서 납기일 준수와 재사용 부품 제작은 이런 식으로 간단하게 해결할 수 없는 문제라고 잘라서 말했다.

저자인 로버트 L 글래스(밥)가 요즘도 이런 종류의 대화가 공공연히 이뤄진다는 사실을 알았으면 과연 어떤 말을 할까? 사람 좋은 웃음과 더불어 “아니 이 사람아, 내가 입버릇처럼 말했지만 은총알은 세상 어디에도 없다구!”라고 어깨를 툭 쳤을지도 모르겠다.

소프트웨어 컨플리트 2.0은 어떻게 보면 사람을 대단히 불편하게 만드는 책이다. 분명히 배경은 과거이지만 이야기는 현재 진행형으로 생생하게 전개된다. 손오공이 부처님 손바닥을 벗어나지 못하듯이 15년 전에서 몇 발자국 벗어나지 못한 현재 상황을 바라보면서 심지어는 절망을 느낄지도 모른다. 하지만 불편함을 조금만 참고 선배의 발자취를 따라가다보면 이 세상 고민은 혼자 다 짊어지고 있다는 부담에서 벗어나도록 이끌어주는, 뜻이 통하는 말동무를 찾았다는 기쁨이 싹터오르기 시작하면서 한가닥 희망이 보일 것이다.

천부적인 재주꾼인 밥이 이끄는 재미있는 이야기에 푹 빠져보자. 수동적인 자세에서 벗어나 주변 사람들과 이 책을 함께 읽고 치열하게 논쟁도 벌이면서 말이다.

즐거운 지적 유희_이해영

저자가 서문에서 밝히듯이, 이 책은 원래 1990년에 출판되었다가 2006년에 재판된 책이다. 그래서 확실히 시대에 뒤떨어지는 내용이 없지 않다. 그럼에도 불구하고 아주 재미있는 책이다. 읽는 이의 사고를 자극하기 때문이다.

툭 터놓고 얘기해서 지금 진행 중인 프로젝트에 가시적으로 도움을 준다거나, 내일 작성할 코드 품질을 높여준다거나, 이렇듯 구체적인 지침이나 즉각적인 효과를 구한다면 다른 책을 찾아보기 바란다. 좋은 책이 많다.

이 수필집은 지적 유희를 즐기는 소프트웨어 관련자들에게 적합한 책이다. 일상 업무에 파묻혀서 돌아보지 못했던 주제, 한번쯤 떠올려는 봤으나 깊이 파고들지 못한 주제, 동료들과 좋은 토론거리가 될 주제를 다룬 글이다. 또한 읽고 생각하는 만큼 사고 폭을 넓혀주는 글이다.

독자 여러분들이 저자가 펼쳐놓은 지적 유희의 세계에 흠뻑 빠져들기 바란다.

  • 옮긴이 서문
  • 한국 독자를 위한 서문
  • 저자 소개
  • 공헌한 사람들
  • 추천 서문
  • 서문
  •  
  • 1부_논쟁의 전장
    • 이론이 먼저냐, 실제가 먼저냐?
    • ‘위험하며 오도(誤導)하다’- 파나스 논문을 통해 본 소프트웨어 연구 상황
    • ‘은총알은 없다’- 프레드 브룩스를 통해 본 소프트웨어 연구 실정
    • 가장 뛰어나고 명석한 두뇌들이 내놓은 보고서
    • 회고: 논쟁의 전장
  •  
  • 2부_기술 진영에서
    • 인지적 견해: 소프트웨어 설계를 보는 다른 시각
    • 소프트웨어 오류에 대한 단상
    • 소프트웨어 오류 제거에 대한 실험적 관점
    • 다양한 테스트 종류
    • 소프트웨어 품질과 소프트웨어 유지보수 사이의 관계
    • 소프트웨어 유지보수는 해결책이지 골칫거리가 아니다
    • 단일지점 제어
    • 사용자 편의 - 유행어인가, 도약인가
    • 회고 : 기술 진영에서
  •  
  • 3부_최신 무기 정보
    • 방법론
      • 재사용: 소프트웨어 부품 - 노스텔지어와 데쟈뷰
      • 자동 프로그래밍: 칵테일 파티 미신?
      • 프로토타이핑에 대한 단상
      • 표준과 표준준수: 정말 소프트웨어 품질을 높이는 데 도움이 되나?
    • 도구
      • 권장 사항: 소프트웨어 도구 모음의 최소 권장 기준
      • 잔소리: 소프트웨어 분야에서 최신의 ‘비약적 발전’ 살펴보기
      • CASE와 4GL: 이익은 얼마인가?
      • 컴파일러 개발, 무엇이 문제인가?
    • 언어
      • 고차원 언어: 어느 정도가 적당한가?
      • 4GL의 미래를 준비해야 할까?
      • 코볼, 도대체 무엇이 문제인가?
      • 회고: 최신 무기 정보
  •  
  • 4부_지휘 본부에서
    • 관리
      • 소프트웨어 세계에서 업적 달성하기
      • 소프트웨어 생산성을 바라보는 새로운 방법
      • 생산성과 G 이론
      • 베리 뵘이 제시하는 소프트웨어 프로젝트 관리 원칙, ‘W’ 이론
      • 소프트웨어 생산성 향상: 누가 무엇을 하고 있는가?
      • 소프트웨어 측정 기준: 피뢰침과 팽배한 긴장
      • 품질 관리: 허울 벗기
      • 소프트웨어 제품에서¬ '품질'을 관리할 수 있을까?
      • 실패한 소프트웨어 프로젝트에 관한 전설
    • 마케팅
      • 당신이라면 루드비히 2세에게서 중고차를 사겠는가?
      • 컨설팅
      • 컨설팅의 진정한 비밀
      • 미래학자의 과거 들춰보기
      • 사용자 지원: 눈 맞추기만으로는 부족하다
      • 회고: 지휘 본부에서
  •  
  • 5부_연구실에서
    • 연구
      • 구조적 연구라고?
      • 해결된/해결되지 않은 문헌 연구 문제
      • 작은 논쟁 하나: 참고 문헌의 장단점
    • 기술 이전
      • 내년에 뜰까? 기술 성숙도 연구에 관한 고찰
      • 허점이 많은 소프트웨어 기술 이전 생산성 높이는 길은 험난하다
      • 기술 이전에 관한 미신
    • 교육
      • 소프트웨어 교육: 새로운 정보 제공처
      • 전산학과 교수에게 보내는 공개 편지
      • 회고: 연구실에서
  •  
  • 6부_전장 사후 분석
    • 전산학이 진짜 과학이 되며, 소프트웨어 공학이 진짜 공학이 되려면
    • '문제 해결'에 대한 당연한/기발한 생각
    • 소프트웨어 실패: 왜 실패할까?
    • 응용 분야의 중요성
    • 사라진 즐거움을 찾아주시겠습니까?
    • 뜨거운 열정을 지닌 소프트웨어 개발자에게 바치는 헌정시
    • 회고: 전장 사후 분석
  •  
  • 에필로그
  • 부록
  • 베타리더 한마디
  • 특별부록
  • 찾아보기

[정오표 (재출간판)]

  • 5쪽, 2번째 줄

    하지만 현식적으로 이론이 이를 뒷바침 ---> 뒷받침

  • 230쪽 밑에서 6번째 줄

    결과를 업계를 ---> 결과를 업계에

  • 232쪽 9번째 줄

    회계부에 사람은 재정 문제를 풀어야 한다. ---> 회계부에 속한 사람은 재정 문제를 풀어야 한다.

 

[1쇄 정오표]

  • p19 의 첫 문단

    위 문구는 ... 내놓은 보고서는 ... 시작한다.

    '위 문구가 들어있는' 식으로 표현되어야 되어야 하는데 '위 문구는' 이 되면서 문맥이 이상해졌네요. - tzara

    ==> '위 문구는'을 빼는게 더 좋겠습니다. 다음 2쇄에 반영하도록 하겠습니다. 고맙습니다. -위키북스-

    1980년대 후반 미 국방과학부 특별 위원회가...내놓은 보고서는...위와 같은...문구로 시작한다.

  • p5 의 네번째 문단

    하지만 1950년대 중반에 이르러 전산분야와 소프트웨어 분야는 전문 영역로 각광받기 시작했다.

    전문영역로 -> 전문영역으로

  • p29 의 네번째 문단

    비약적인 발전을 이뤄냈다고만들어냈다고 주장하는 사람들은 ...

    이뤄냈다고만들어냈다고 -> 이뤄냈다고

  • p94 의 첫번째 문단

    전산분야 전무가들과 자료처리 분야 전문가들의..

    전무가 -> 전문가

  • p287 13 라인

    관리 측면에서 풀어야 문제를 놓고..

    풀어야 -> 풀어야 할

  • p300

    패왕넷(http://www.paewang.net)

    't' 와 ')' 폰트 오류 입니다

  • p301 마지막 라인

    문제를 풀릴 것입니다.

    문제가 풀릴 것입니다

  • p308 세번째 라인

    ...프로그램을 작성하기 위한 설계 도면으로 활용하기에는...

    프로그램을 작성하기 위한 설계 도면 -> 프로그램 작성을 위한 설계도면

관련 글