컴퓨터시대의 머피 법칙

2015.10.05 20:43 입력 2015.10.05 20:46 수정
조환규 | 부산대 교수·컴퓨터공학

장황한 해설보다 한마디 속담이 빠르고 더 선명한 설명이 되기도 한다. 직관과 위트가 생명인 속담은 문화와 함께 나타나고 사라진다. 일의 선후가 바뀐 상황을 비꼬는 “망건 쓰고 세수한다”를 요즘 젊은이들이 이해하긴 힘들 것이다. 망건을 만져보기는커녕 본 적도 없는 세대들이기 때문이다.

“친구 따라 강남 간다”를 친구 잘 사귀면 재미있는 곳에 갈 수 있다는 식으로 알고 있는 아이들이 흔하다. 한편 게임 좋아하는 요즘 청소년들이라면 누구나 아는 “앞마당 먹은 이윤열” 격언을 알고 있을 50~60대는 거의 없을 것이다. 내가 하면 로맨스, 남이 하면 불륜, 즉 “내로남불”은 대한민국 정치판이 만들어낸 최고의 신(新)사자성어가 아닐까 싶다. 서양에도 많은 속담이 있지만 물질문명의 빠른 발달로 재미있는 현대식 속담이 새로 만들어지고 있다. 그중에서도 가장 성공한 것은 머피의 법칙(Murphy’s Law)이다. 1950년부터 체계적으로 정리되기 시작한 머피의 법칙은 21세기 현대인들을 위한 압축된 문화이며 삶의 지혜가 담긴 귀중한 속담이기도 하다.

[과학오디세이] 컴퓨터시대의 머피 법칙

공학 관련 머피의 법칙 중 칸의 공리(axiom)는 언제나 재미있다. “이것저것 해봐도 안되면 사용설명서를 읽어라”가 그것이다. 기다리던 기계가 도착하면 사람들은 선전물에서 본 것같이 동작되는지 바로 확인하려고 몸도 마음도 급해진다. 이 법칙은 가장 기본적인 설명서를 무시하는 현대인의 조급성을 정확히 꼬집고 있다. “그래도 안되면 전원 플러그를 꽂아보라”는 칸 법칙의 확장형이다. 웃지 못할 이런 상황을 한두 번은 경험했을 것이다.

컴퓨터 관련 머피의 법칙 중에 제일 유명한 것은 브룩(Brook)의 법칙으로 다음과 같다. “소프트웨어 프로젝트에 사람을 추가 투입하면 개발은 더 늦어진다.” 흔히 소프트웨어 개발을 벽돌 찍는 일 정도로 생각해서 추가 인력을 투입하면 얼마든지 공정을 앞당길 수 있다고 믿는 사람들이 많다. 그런데 소프트웨어 개발은 참여자 사이의 소통이 필수적이기 때문에 후발 개발자를 위한 추가 소통작업이 전체 진행을 더 느리게 만든다. 그리고 그 느려지는 정도는 추가된 인원의 제곱에 비례한다. 그래서 “안되면 되게 하라”는 1970년대 식 생각으로 IT시대를 정복할 수 없다. 위대한 전산학자인 다익스트라의 조언, “당신도 이해 못하고 있는 일을 컴퓨터에게 시키지 말라”는 컴퓨터 관련 머피 법칙 중 백미다. 비슷한 것으로 IBM 원리가 있다. “일은 컴퓨터가, 생각은 사람이.” 어떤 자료라도 넣어주기만 하면 컴퓨터가 알아서 결과를 뽑아줄 것이라고 소망하는 것은 불행의 시작이다. 아무리 빅데이터 기술이 발달하고 인공지능이 발달해도 마찬가지다. 결과에 대한 모형조차 없는 문제를 초고성능 컴퓨터에서 아무리 계산을 한들 그 결과는 해석이 불가능한 잡음에 불과하다. 신뢰성에 대한 길브(Gilb)의 두 법칙도 흥미롭다. “컴퓨터도 믿을 수 없지만, 인간은 더욱 믿을 수 없다.” “인간의 신뢰성에 기초한 시스템은 결코 믿을 게 못된다.” 소프트웨어, 컴퓨터의 오류는 본질적으로 인간의 오류다. 무생물인 컴퓨터나 프로그램에는 실수 자체가 불가능하다. 골럽의 법칙은 더 가혹하다. 소프트웨어 개발에서 “허술한 계획은 예상의 3배 시간이 걸리지만, 꼼꼼한 계획은 2배밖에 더 걸리지 않는다.”

레오 배리저의 공리도 쉽게 공감된다. “컴퓨터에 저장한 경우라도 그 저장된 위치는 또 다른 곳에 저장해야만 한다.” 요즘같이 저장장치가 싸고 흔한 경우에 저장한 장치를 착각해 엉뚱한 포맷으로 대참사를 겪어본 사람들은 누구나 공감할 것이다. 그래서 뭘 어디에 저장해두었는지를 컴퓨터가 아닌 다른 종이 장부에 적어둘 필요가 있다. 시스템 개발실 벽이 포스트잇으로 도배된 것에는 이런 이유가 있다.

한국식 머피의 법칙도 있다. “소프트웨어 데모가 성공할 확률은 그것을 쳐다보는 사람의 수와 참관 고위직의 직급과 반비례한다.” 공개 시연 때 청중이 많거나, 아주 높으신 분이 온다면 실패 가능성은 급격히 올라가므로 우리는 세제곱으로 긴장해야 한다. 시도 때도 없이 올라오는 업데이트 요청을 이보다 더 잘 설명하는 머피의 법칙도 없을 것이다. “소프트웨어 패치는 이전의 에러를 새로운 에러로 교체하는 작업이다.”

추천기사

바로가기 링크 설명

화제의 추천 정보

    오늘의 인기 정보

      추천 이슈

      이 시각 포토 정보

      내 뉴스플리에 저장