자유게시판

제목 소프트웨어를 개발한다는것은 뭘까 .. -음주 작문임 .ㅎㅎ
글쓴이 최용운 작성시각 2009/08/01 00:12:55
댓글 : 3 추천 : 0 스크랩 : 0 조회수 : 14456   RSS
 소프트웨어를 설명하기위해서 건축이나 예술에 많이 비유한다. 

그러나 .. 언제나 뭔가 약간은 다르다. 

꾸준히 생각한결과 소프트웨어는 건축이나 예술과 확연히 다른 특징이 있다는것을 알았다. 

건축이나 예술은 끝이 있다. 그 끝나는 시점이 일반에 공개되는 시점이고, 실제로 소용이 일어나는 시점이다. 

그러나 소프트웨어는 다르다. 소프트웨어도 물론 끝은 있지만, 그끝은 그 소프트웨어가 더이상 존재의미가 없어지는 시점이다. 

그림을 그린다고 하자 . . . 화가는 어떤 그림을 그릴지 . .어떤 느낌을 표현할지 . .그 느낌을 표현하기 위해서 어떤 기법이 필요한지를 

고민한다.  그리고 .. 그리기 시작한다. . 그리면서도 그림이 완성될때까지 몇번이고 덧칠한다. .. 그러다가 결국은 하나의 그림이 탄생하고 

사람들에게 공개된다. .그 다음의 수정은 없다. 그대로 계속 가는것이다. 

건축회사는 건물을 짓기전에 어떤 건물을 지을지 사용자 요구사항을 받고,  최적화된 설계를하고 . .여러가지 위험요소를 고려하여 

건물을 짓는다. 한층한층 올리면서 .. 올라가는 단계를 점검하고 , 문제점이 없는지 지속적으로 파악하고 . ..결국은 완성된다. 

하나의 건물이 완성되면 더이상의 수정은 없다. 

그렇게 완성된 시점이 그 건물의 소용이 시작되는지점이다. 

자 .. 소프트웨어는 어떤가 . ... 

고객의 요구사항을 받아들이고, 어떻게 그것을 구현할지를 결정하고 . .변경이 발생할 지점을 예측하여 설계한다. 

그리고 구현한다... 그 구현이라는 시점부터 수많은 변경 요구가 들어오고, 기술적으로 불가능 하다는것을 알게되고, 

등등으로 인해 시간이 당겨지거나 지연되고 ... 어쨋든 완성품이 나온다. 

완성품이라는 의미는 사용자에게 공개된다는 뜻이다. 

여기서부터 예술이나 건축과는 그 생명주기를 달리한다.  일반에게 공개되면, 이전보다 더 많은 요구사항이 들어온다 

뭐가 불편하다 .. 이것만 있으면 정말 완벽할텐데 ... 이기능은 필요없다. ..기능은 좋은데 UI 가 불편하다 . 

그래서 그 사항을 수용하고 변경을 가하여 버전을 올린다. 

이 반복은 소프트웨어의 소용이 완전이 없어질때까지 계속된다. 

마지막 즈음에는 최초 생각했던것과 전혀 다르거나, 수백배나 더 정교해지거나 한 모습이 된다. 

오히려 나는 소프트웨어가 .. 생물을 닮았다고 생각한다. 

죽을때까지 변화하는 ... 그것은 사람의 요구를 ..사람의 욕망을 담고 있기 때문일 것이다.
 다음글 syntax highlighter (2)
 이전글 휴가갑니다. (3)

댓글

ci세상 / 2009/08/01 01:37:35 / 추천 0
전~~ 개발한다는것은 오늘을 살아가기 위한 ~~ 돈을 버는 수단중 일부라고 생각합니다.
클라이언트에게서 돈을 받기 위해서는 눈치껏 요령껏 잘 비유를 맞춰주면서 하는것이 맞는것 같습니다.^^

왜? 저도 이글에 대하여 공감이 가냐 하면요 제 자신에 대하여 문제점이 있는데도 냉정하게 들여다 볼 수가
없다는 안타까움이 있었습니다.
개발자들이 시간이 지나면서 가장 오류를 범하는 부분이 바로 독단과 위선이라고 생각하는데요
이런 자신과의 딜레마에 빠져들때 가장 먼저 생각하는것이 "탈출"이라는 단어였습니다.
사람은 누구나 다 탈출비법을 알고 있다고 생각합니다. 단지 새로운 길을 지나다가 똥을 밟을까봐
두려워서 못갈뿐이지요.. 그래서 전 과감히 자신에게 얘기합니다. 똥을 밟아보아라 그럼 그냄새가
얼마나 역겹고 더러운지 느껴보고 현실에 대하여 냉정하게 비판해 보아라~~ 이렇게 말이지요^^

제가 요즘 CI를 접하면서 배우는것중에 하나가~~ 개념과 시스템이 클라이언트를 움직일 수 있다라는
확신을 가지게 되었습니다. 미쳤다고들 합니다~~ 그것이 뭐가 필요하냐고들 합니다. 하지만 이것을
하면 더 좋아진다고 계속 설득을 합니다. 부딪혀보고 느껴보아라..~~ 탈출을 주도하라가 지금의 심정입니다.^^
변종원(웅파) / 2009/08/01 07:41:57 / 추천 0
감성적으로는 아트라고 생각을 하고 있고 (c&p라도 결과물은 항상 똑같지 않기때문에)
이성적으로는 좋아하는 직업. ^^

ci세상 / 제 경우 ci를 선택한 큰 이유중 하나가 "php도 프레임워크가 있네?" 라는 클라이언트의 반응을
어느정도 예상해서죠. 프레임워크, mvc패턴 어쩌고 하면 몰라도 대부분 좋은건줄 압니다.
ci세상 / 2009/08/01 13:06:15 / 추천 0
전 대부분 뭔지 이해시켜드리기 힘들었는데요 ㅎㅎ