디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

AI와 No Silver Bullet에 관하여

ㅆㅇㅆ(124.216) 2025.02.09 00:42:14
조회 511 추천 11 댓글 9
														








34bfc83cabc236a14e81d2b628f17569ff7593

사람들은 코딩 유튜버나 강사들이 흔히 자기들이 할 말 다해놓고 


'No Silver Bullet' 이라는 관용어구를 쓰는 것을 볼 것이다.


자신의 의견을 모두 피력한 뒤, 'No Silver Bullet'이라는 말을 덧붙여, 그 이후의 반론이나 비판을 원천 차단하려는 태도를 보인다.


이는 곧, '어차피 만능 해결책은 없으니 더 이상 논쟁할 필요도 없고, 내 주장에 대한 책임도 지지 않겠다'라는 식의 책임 회피 전략으로


No Silver Bullet이라는 말을 쓰는 경우도 있는데,


이 말은 어디서 나온 것일까


Frederick P. Brooks, Jr. -튜링상 수상자의 논문에서 나온 말이다.


이 논문에서 말하는 말은 간단하다


'소프트웨어 공학에서 만병통치약(Silver Bullet)은 없다'는 것이다.



3dbfc568efc23f8650bbd58b36827d692b15

그럼 왜 하필 은 탄환인가?


논문에서는 민담(folklore)에서 늑대인간만큼 무서운 것이 없는데, 그 이유를 늑대인간은 익숙한 존재에서 낯선 공포로 변하기 때문에 무섭고

그들을 처치하기 위해선 은 탄환(Sliver Bullet)이 필요하다고 이야기한다.


브룩스는 여기서 소프트웨어 프로젝트도 보통은 무해하지만, 일정이 지연되고 예산이 초과되면 결함품으로 변모할 수 있는 무서운 괴물이 될 수 있다고 한다.


그리고 이 논문에서는 소프트웨어 제작을 쉽게 해줄, 은 탄환이 있을 것인가?에 대해서 이야기하나


브룩스는 단호하게 1986년부터 10년간은 소프트웨어에서 생산성을 10배이상 향상 시킬 발전은 나타나지 않을 것이다라고 말한다.


그리고 소프트 웨어 개발은 본질적으로 저렇게 10배이상 빠른 발전이 불가능하다고 말한다.


2025년 우리는 이 논문을 어떻게 받아들여야할까?




2fbaca68f5dc3f8650bbd58b3684736bad



이 논문에서는 소프트웨어 개발 생산성이 10배 이상 늘어나기 힘든 2가지 어려움을 이야기한다.


본질적(Essence) 어려움과 우발적(Accidents) 어려움.


본질적 어려움은 소프트웨어 자체의 특성때문에 발생하는 어려움으로 


근본적으로 제거할 수 없는 복잡성으로 4가지를 제시한다.


-복잡성(Complexity): 시스템은 그 자체로 엄청난 복잡성을 내포하고 있고, 수십만줄에 이르는 코드로 이루어진 시스템은 인간의 이해 능력을 넘어서는 복잡성을 지니고, 유지보수를 어렵게 한다. 거기에 기능간의 상호작용, 예외처리, 상태 조합을 생각하면 복잡성은 기하급수적으로 증가한다.


-적합성(Conformity): 소프트웨어는 현실세계의 복잡한 요구사항과 제약 조건에 맞춰 개발되는데, 결국 다양한 외부 환경(하드웨어,운영체제,네트워크 등등)에 '적합'해야하며 이러한 외부 요소들은 상호 의존적이며 변화한다.


-가변성(Changeability):소프트웨어는 하드웨어나 다른 공학 제품에 비해서 수정 및 변경이 용이한데, 역설적으로 이러한 가변성이 어려움을 만든다. 사용자의 요구사항은 끝없이 변화하고, 기술발전에 따라 소프트웨어도 지속적인 변화를 계속해야하기때문이다.


-비가시성(Invisibility): 소프트웨어는 눈에 보이지 않는 추상적인 존재이고, 건축이나 도면처럼 물리적 모델을 통한 직관적 이해가 어렵기때문에 발생하는 문제이다.



2fbaca75abc236a14e81d2b628f1776b7656d6

본질적 문제의 원인을 가장 잘 설명한 논문의 원문을 가져왔다



소프트웨어의 복잡성은 부수적인 것이 아니라, 본질적인 속성이다.

따라서, 소프트웨어 실체를 설명하면서 복잡성을 제외하는 것은 종종 그 본질마저 제외하는 결과를 낳는다.

지난 3세기 동안, 수학과 물리 과학은 복잡한 현상의 단순화된 모델을 구축하고, 그 모델로부터 속성을 도출하여 실험으로 검증하는 방식으로 큰 발전을 이루었다

이러한 패러다임이 성공할 수 있었던 이유는 모델에서 간과된 복잡성이 현상의 본질적인 속성이 아니었기 때문이다.

복잡성이 본질일 때는 이러한 방식이 통하지 않는다.


---



2fbaca74abc236a14e81d2b628f17269c6a7

우발적 어려움은 소프트웨어 개발 과정에서 도구,기술,방법론등의 미비로 발생하는 어려움인데


당시 1986년에서는


이러한 우발적 어려움을 제거할 은총알 후보들을 이야기하는데



1) high-level language


2) OOP 설계 - 복잡한 문제를 작은 객체 단위로 나누고, 객체가 독립적으로 동작하도록 설계


3) 점진적 개발



등 을 제안하면서 이러한 부수적 어려움을 줄일 수 있다 했다.




34bfc83cb69c28a8699fe8b115ef0468ca54961f



실제 현재 고소준 언어가 주류를 차지하고, OOP는 코드 스타일의 주류가 됐고, 자동화 도구는 반복 작업을 줄였지만 여전히 창의적 문제 해결은 인간이 해야만 하고,


점진적 개발은 애자일이라는 이름으로 발전해서 돌아왔으나, 기술이 발전했어도 우리에겐 여전히 복잡성이 남아있고 소프트웨어 공학은 여전히 어렵다.


우발적 복잡성은 기술발전으로 해결할 수 있지만, 본질적 복잡성은 여전히 남아있는 것이다.


그렇기에 소프트 웨어 개발은 생산성이 극적으로 향상 될 수 없고, 2025년 이 시점에서도 유효하다라고 볼 수 있겠지만,


사람들은 말할 것이다


AI의 시대에서도 그럴까요?


34bfc83cb19c28a8699fe8b115ef046cb62aa9a373


사실 당시에 브룩스도 은탄환 후보로 AI를 언급하기도 했다.


여기서 브룩스의 논문에서는 당시의 AI에 대한 인식을 볼 수있고, 브룩스는 미래의 은탄환 후보에 AI에 대해서 비판적 태도를 취한다


이 논문에서는 Parnas의정의를 인용하여 AI를 2가지 관점으로 나눈다.


AI-1 (인간 지능 대체): "이전에는 인간 지능을 적용해야만 풀 수 있었던 문제를 컴퓨터를 사용하여 해결하는 것" - 인

간의 인지 능력을 컴퓨터로 구현하려는 시도에 초점을 맞춘 정의

예를 들어, 인간만이 할 수 있다고 여겨졌던 문제 해결, 의사 결정, 학습 능력 등을 컴퓨터가 수행하는 것을 AI-1으로 보는 것


AI-2 (휴리스틱 프로그래밍): "휴리스틱 또는 규칙 기반 프로그래밍으로 알려진 특정 프로그래밍 기술 집합을 사용하는 것" -

전문가의 지식과 경험을 규칙이나 휴리스틱 형태로 코딩하여 문제를 해결하는 방식

여기서는 전문가 시스템이 대표적인 예시이며,

특정 분야의 전문가가 사용하는 문제 해결 전략을 모방하는 것을 목표로 한다.


브룩스는 여기서 2가지 모두에 회의적인 입장을 취한다.


AI-1 -> AI-1의 정의는 너무 주관적적이고 유동적이라고 비판한다.

실제로 2025년 우리가 AGI라고 주장하는 물체의 정의가 학자마다 계속 변하는 것도 그 일례일 것이다.


AI-2 -> 이 시스템이 특정 분야의 전문가를 모방한다고해도 결국 본질적인 복잡성을 다 줄일 수 없다는 것이다.


현재 2025년은 사실 A1과 A2 전부를 아우르는 모델이지만, 여전히 브룩스의 추측은 유효하다.



2aadc468efc23f8650bbd58b368777659d


여전히 AI는 소프트웨어 전부를 만들 수 없고, 일정량의 텍스트를 넘어가면 구조적인 문제를 일으킨다. 


현재 대부분의 유명 개발자들이 말했듯,


현재 AI는 개발자의 생산성을 높이는 도구로 사용될 수 있지만, 여전히 인간 개발자를 완전히 대체할 수 없다.


소프트웨어 프로젝트의 성공은 여전히 명확한 요구사항 정의, 아키텍쳐 설계등 인간의 역량에 의존하기때문이다.


아직까지는 AI는 인간의 요구사항을 명확히 완전히 이해하여 원하는 것을 출력할 수가 없다.


그리고 AI 프로그래밍 또한 그 내용물이 블랙 박스로, 완전한 원리의 이해가 아닌 파라미터 조정을 하는 블랙박스적인 특성을 가지고 있어


AI 자체의 출력물에 복잡성을 더해주고 있다.


2025년 현재, AI 기술은 놀라운 발전을 거듭하고 있지만, "No Silver Bullet" 논문은 여전히 유효하다.


AI는 소프트웨어 개발 생산성을 높이는 강력한 도구이지만, 


소프트웨어의 본질적인 복잡성을 해결하는 "만병통치약"은 될 수 없다.


"No Silver Bullet" 논문은 우리에게 환상을 버리고 현실을 직시하며, 


끊임없는 노력과 점진적인 개선을 통해 소프트웨어 공학의 길을 묵묵히 걸어가라고 가르쳐준다.


2025년, "No Silver Bullet" 메시지는 더욱 다가온다.


2025년 


No Silver Bullet. 


여전히 유효!






추천 비추천

11

고정닉 2

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 논란을 반복해서 진정성이 의심되는 스타는? 운영자 25/05/12 - -
2853169 코더초년생들이 간과하는 코딩실력만큼 중한 것 [2] ㅇㅇ갤로그로 이동합니다. 05.09 92 0
2853167 해킹 공부 왜케 재밌냐 류도그담당(114.202) 05.09 56 0
2853165 요즘 씨플플 입지 러스트한테 뺏기고있나보더라 [5] ㅆㅇㅆ찡갤로그로 이동합니다. 05.09 90 0
2853163 자바만 붙잡고 취업안된다하면 어카노 진짜ㅋㅋ ㅇㅇ갤로그로 이동합니다. 05.09 77 0
2853162 이것이 자바다로 공부하고 스프링만 김영한 강의 들어도 되나? [2] 프갤러(61.254) 05.09 222 0
2853161 눈물이 흘러 [4] 프갤러(183.101) 05.09 47 0
2853159 와 씨발 필리핀에서 지갑털림 ㅇㅅㅇ [6] 강유현갤로그로 이동합니다. 05.09 120 0
2853158 파워샀는데 6만원 좀비싼거같은데 프갤러(121.139) 05.09 27 0
2853157 배추병자 사라졌당 나님의 승리⭐+ ♥2002:냥덩오디세이♥갤로그로 이동합니다. 05.09 56 0
2853155 스프링 배치 대표적인 오개념이 ㅇㅇ(211.235) 05.09 63 0
2853154 그 제가 유료챗지피티로 파이썬 자동화를 이것저것 만들었는데요 복잡한거 [1] 프갤러(116.45) 05.09 55 0
2853153 국비지원으로 부트캠프 힌다고 하면 무슨생각듦? 프갤러(220.85) 05.09 101 0
2853152 파일리스 인젝션 공부중 [2] 류도그담당(114.202) 05.09 74 0
2853150 정처기는 필수다 프갤러(211.38) 05.09 60 0
2853149 혹시 코드 8자 제한 걸려있어도 역류기 정상작동 잘 되나요?? [1] ㅇㅇ(211.194) 05.09 49 0
2853143 3시간준다. 후다 새끼들은 갤 나가라 [2] ㅆㅇㅆ찡갤로그로 이동합니다. 05.09 65 1
2853142 월급까지 2주 남음 [3] 주아갤로그로 이동합니다. 05.09 77 0
2853141 si는 인간을 갈아서 코드로 만든다 [5] 주아갤로그로 이동합니다. 05.09 105 0
2853140 나님 팔굽혀펴기즁❤+ ♥2002:냥덩오디세이♥갤로그로 이동합니다. 05.09 47 0
2853139 요즘 하는 거라곤 문서작업과 고객사 씨름밖에 없음 [7] 주아갤로그로 이동합니다. 05.09 68 0
2853138 필리핀에서도 김치를 먹는 남자 ㅇㅅㅇ [5] 강유현갤로그로 이동합니다. 05.09 63 0
2853137 개시발 일 존나 많네 [9] 주아갤로그로 이동합니다. 05.09 108 0
2853136 winter is coming.... [1] jonny갤로그로 이동합니다. 05.09 51 0
2853134 전산이랑 개발자말고 갈 수 있는 컴공 진로 또 없냐? [2] ㅇㅇ갤로그로 이동합니다. 05.09 146 0
2853132 gif를 프레임단위로 쪼개고 프레임수만큼 구글이미지검색하는 프로그램은 [6] 프갤러(211.185) 05.09 82 0
2853130 학점 2.5면 거의 비전공 취급임? [2] 프갤러(118.235) 05.09 85 0
2853128 생명공학 대학원이면 동물실험은 무조건 하는건가? [2] 프갤러(121.175) 05.09 45 0
2853127 지금 생각해보면 클라이언트가 싸가지 없던게 아닌 것 같다 [2] 프갤러(14.52) 05.09 70 0
2853126 찢재명 친중매국단 현상금⭐ ♥2002:냥덩오디세이♥갤로그로 이동합니다. 05.09 46 0
2853124 내가 정처기 필요했덤 때가 딱 하나 있었음 ㅇㅅㅇ [2] 강유현갤로그로 이동합니다. 05.09 91 0
2853123 걍 나처럼 창업 가도 달리자 ㅆㅇㅆ찡갤로그로 이동합니다. 05.09 45 0
2853122 나님 천국이에양❤+ ♥2002:냥덩오디세이♥갤로그로 이동합니다. 05.09 38 0
2853121 비전공자는 정처기 필요한듯 [2] 류도그담당(114.202) 05.09 97 0
2853119 실베보는데 이 글 보고 빵터졌다 [1] 류도그담당(114.202) 05.09 61 0
2853118 시발 ㅋㅋ 프리 계약해지하려고 보니까 민법에서 손해배상 규정하네 ㅇㅅㅇ [5] 강유현갤로그로 이동합니다. 05.09 91 0
2853117 정처기를 따면 정부수주 사업에 이점이많고 [2] ㅆㅇㅆ찡갤로그로 이동합니다. 05.09 112 0
2853116 정처기 제일 좆같은게 실기임 [2] 류도그담당(114.202) 05.09 305 0
2853115 인생망이라고 생각하지만 그냥 살아보자 프갤러(183.101) 05.09 31 0
2853114 주제를 논할대가리가 안되면 댓달지 말길 [2] ㅆㅇㅆ찡갤로그로 이동합니다. 05.09 70 0
2853113 프로그래밍은 트레이드 오프를 이해하고 [9] ㅆㅇㅆ찡갤로그로 이동합니다. 05.09 82 0
2853112 프리들아 위약금 조항 없으면 개발자도 계약파기.가능임 ㅇㅅㅇ? [4] 강유현갤로그로 이동합니다. 05.09 62 0
2853111 정처기 왜 따려하는지 노이해 [7] ㅆㅇㅆ찡갤로그로 이동합니다. 05.09 107 0
2853109 나도 취업 힘들긴했는데 학점 2점으로 취업해서살고있음 ㅇㅇ(223.38) 05.09 133 0
2853107 통일하면 지금 청년세대 평생 돈 버는거 세금으로 다 삥 뜯김 ♥2002:냥덩오디세이♥갤로그로 이동합니다. 05.09 46 0
2853106 부트캠프 3일찬데 현타 존나 온다 [2] 프갤러(221.138) 05.09 276 0
2853105 이런거보면 구현해보고 싶어짐 개추!갤로그로 이동합니다. 05.09 54 0
2853102 ❤✨☀⭐나님 시작합니당⭐☀✨❤ ♥2002:냥덩오디세이♥갤로그로 이동합니다. 05.09 36 0
2853101 스프링배치는 대부분 api형태로 구현함? [3] 밀우갤로그로 이동합니다. 05.09 64 0
2853100 마무리 도리스아(175.196) 05.09 41 0
2853099 은박지가 버틸려나 도리스아(175.196) 05.09 44 0
뉴스 허성태, LG전자 다니던 과거 사진에 ‘깜놀’…“술김에 오디션” 디시트렌드 05.12
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2