소프트웨어의 규모가 커지고 지식 사회로 전환됨에 따라, '사람'에 대한 중요성이 대두되고 있다. 소프트웨어 공학에서도 People, Process, Technology 모두 중요하다고 언급이 되지만, 실무에서는 People 측면에 대한 관심이 부족하다. 다른 학문 분야에서는 사람의 심리를 이해하기 위해 여러가지 방법들이 제시되었다. 본 논문에서는 다른 학문들에서는 어떻게 사람에 대한 심리를 연구하고 있는지에 대해서 네 가지 관점으로 정리하였다. 첫째로, 사람과 사람에 대한 심리학 적용에 대한 멘토링을 다룬다. 둘째로, 팀에 대한 것으로 MBTI를 이용한 조직구성에 대해서 논의한다. 셋째로, 대중에 대한 심리학 적용 사례인 프로파간다를 살펴보고 넷째로, 새로운 소셜 미디어에 관한 내용을 다룬다. 각 방법에서 소프트웨어 개발 분야로 이런 기법을 재해석하여 활용하기 위해 어떤 부분을 조심해야 하는지 살펴보도록 한다.
소프트웨어의 규모가 커지고 지식 사회로 전환됨에 따라, '사람'에 대한 중요성이 대두되고 있다. 소프트웨어 공학에서도 People, Process, Technology 모두 중요하다고 언급이 되지만, 실무에서는 People 측면에 대한 관심이 부족하다. 다른 학문 분야에서는 사람의 심리를 이해하기 위해 여러가지 방법들이 제시되었다. 본 논문에서는 다른 학문들에서는 어떻게 사람에 대한 심리를 연구하고 있는지에 대해서 네 가지 관점으로 정리하였다. 첫째로, 사람과 사람에 대한 심리학 적용에 대한 멘토링을 다룬다. 둘째로, 팀에 대한 것으로 MBTI를 이용한 조직구성에 대해서 논의한다. 셋째로, 대중에 대한 심리학 적용 사례인 프로파간다를 살펴보고 넷째로, 새로운 소셜 미디어에 관한 내용을 다룬다. 각 방법에서 소프트웨어 개발 분야로 이런 기법을 재해석하여 활용하기 위해 어떤 부분을 조심해야 하는지 살펴보도록 한다.
Since the industrial society has emerged into the knowledge society and the development of software has enlarged its scale, the importance of the 'people' has surfaced at its peak. Even though the People, the Process and the Technology are mentioned as the core in the field of software engineering, ...
Since the industrial society has emerged into the knowledge society and the development of software has enlarged its scale, the importance of the 'people' has surfaced at its peak. Even though the People, the Process and the Technology are mentioned as the core in the field of software engineering, the pragmatic aspect of it tends to lack adequate interest in the People. In other disciplines, several methods have been proposed in order to understand the psychology of the people. In this paper, we have organized the psychological researches that other fields have studied into four different perspectives. First, it covers how to apply a person-to-person psychological method referred to as mentoring. Second, we discuss about a team that utilizes the MBTI system in organizing their structure. Third, we look at a case of the propaganda; the psychological application for the masses. Finally, we cover on the new social media. We investigate on the possible considerations in applying the psychological techniques in the field of software development to utilize the advantages from each methods.
Since the industrial society has emerged into the knowledge society and the development of software has enlarged its scale, the importance of the 'people' has surfaced at its peak. Even though the People, the Process and the Technology are mentioned as the core in the field of software engineering, the pragmatic aspect of it tends to lack adequate interest in the People. In other disciplines, several methods have been proposed in order to understand the psychology of the people. In this paper, we have organized the psychological researches that other fields have studied into four different perspectives. First, it covers how to apply a person-to-person psychological method referred to as mentoring. Second, we discuss about a team that utilizes the MBTI system in organizing their structure. Third, we look at a case of the propaganda; the psychological application for the masses. Finally, we cover on the new social media. We investigate on the possible considerations in applying the psychological techniques in the field of software development to utilize the advantages from each methods.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
그러면 다른 학문 분야에서는 이러한 멘토링 제도를 통해 심리적인 측면에서 효과가 있었던 사례가 있는지 살펴보자. 한 예로, 대학과 기업 간에 산학협력을 하는데 있어 멘토링을 통해 기업에서 산업체 전문가를 멘토로 지정하여 대학생들을 멘토링을 해주었을 때, 멘토링의 효과에 대해 확인한 연구가 있다[9].
그럼 다른 분야에서는 사람 간의 문제가 생겼을 때 이러한 MBTI를 활용하여 개선이 된 사례가 있는지 살펴보자. 한 예로, 경영 혁신 프로젝트를 하는데 있어서 MBTI를 통해 팀원들의 성격유형을 파악하여 서로를 이해함으로써 팀웍 향상에 도움을 줄 수 있음을 입증하였다[11].
다른 학문에서는 이러한 문제들을 개선하기 위해서 멘토링과 같은 인재 육성 인간 관계 활동, MBTI 분석과 같은 성격 유형별 관리, 선전 기법 등과 같은 여러 가지 심리 기법이 활발하게 연구되고 있는데 본 논문에서는 이런 기법들이 다른 학문 분야에서는 어떻게 사용되고 있고 소프트웨어 업계에서 어떻게 사용하면 성공할 수가 있는 것일까에 대해서 검토 해 보았다.
지금까지 소프트웨어 공학의 발전에 있어서 People, Process, Technology 측면에서 People이 많이 연구되지 않은 상황을 살펴보고, 이러한 사람과 관련하여 다른 학문 분야에서 활발히 연구되고 있는 4가지 심리 방법(멘토링, MBTI를 활용한 성격유형별 관리, 프로파간다, Big data를 활용한 심리분석)에 대해 알아보았다. 또한 그 방법들이 다른 학문 분야에서 효과적으로 사용되고 있는 사례를 살펴보고 소프트웨어 업계에서는 어떻게 사용하면 성공할 수 있는지에 대해 연구해 보았다.
소프트웨어 이외의 다른 많은 분야에서 사용했던 심리적인 방법들에 대해서 알아보고, 이들이 소프트웨어 실무에 적용하기 위해서는 어떠한 점을 고려하여 적용하여야 하는지 살펴보도록 하겠다.
이 책에서는 ‘프로그래밍도 사람이 하는 것’이라는 당연하지만 현실에서는 제대로 인정받지 못하는 이 문제 인식을 바탕으로 쓰여진 책이다.
1975년 “The Mythical Man-Month”[5]라고 하는 프로그래밍 심리학 책이 출판되었다. 이 책은 저자인 Fred Brooks가 IBM에서 OS/360 개발 Project Manager를 하면서 경험했던 자신의 느낌을 에세이 형식으로 쓰여진 책이다. 이 책에서 Brooks의 법칙 "adding manpower to a late software project makes it later"이 언급 되었다.
제안 방법
2010년 벤쿠버 동계 올림픽 당시 ‘선수들도 그들의 엄마에게는 아직도 아들, 딸일 뿐이다’라는 슬로건으로 기업의 신뢰도를 높이는 방법으로 선전 기술을 사용하였다.
그리고 인간행동의 다양성은 개인이 인식(Perception)하고 판단(Judgement)하는 특징이 다르기 때문이라고 보았다. MBTI는 인식과 판단에 의한 융의 심리적 기능이론, 그리고 인식과 판단의 향방을 결정짓는 융의 태도이론을 바탕으로 하여 제작되었다. 또한 개인이 쉽게 응답할 수 있는 자기보고(self report) 문항을 통해 인식하고 판단할 때의 각자 선호하는 경향을 찾고, 이러한 선호 경향들이 하나하나 또는 여러 개가 합쳐져서 인간의 행동에 어떠한 영향을 미치는가를 파악하여 실생활에 응용할 수 있도록 제작된 심리검사이다.
독일 국영방송 ZDF에 따르면, 버락 오바마의 선거 전략 본부는 약 2억 5천만건의 유권자 프로파일 데이터를 Big Data 분석과 마이크로 타켓팅을 통해 개인화된 메시지로 유권자와 정교하게 대화를 할 수 있는 'Voter Activation Network' 시스템을 개발하였다. 이를 통해 선거를 개인화 수준으로 끌어 올렸고 유권자의 심리를 정확히 이해하는 시도를 하였다. 또한 친구의 설득 효과가더 좋다는 것과 관심주제는 개인이 신뢰할 수 있는 인물을 활용하는 것이 유리하다는 선전 전략도 같이 사용이 되었다.
지금까지 소프트웨어 공학의 발전에 있어서 People, Process, Technology 측면에서 People이 많이 연구되지 않은 상황을 살펴보고, 이러한 사람과 관련하여 다른 학문 분야에서 활발히 연구되고 있는 4가지 심리 방법(멘토링, MBTI를 활용한 성격유형별 관리, 프로파간다, Big data를 활용한 심리분석)에 대해 알아보았다. 또한 그 방법들이 다른 학문 분야에서 효과적으로 사용되고 있는 사례를 살펴보고 소프트웨어 업계에서는 어떻게 사용하면 성공할 수 있는지에 대해 연구해 보았다.
성능/효과
또한 군대 조직 내에서 MBTI 검사 및 결과에 대한 피드백이 대인갈등 인식 정도의 변화에 어떤 영향을 주는지 실험을 통해 확인한 연구 사례가 있다[12]. 이 연구에서는 MBTI 성격유형 검사를 실시하고 이를 통해 구성원의 성격유형에 대한 이해의 기회를 부여하였으며 추가로 개별 MBTI 결과에 대한 피드백을 실시하여 조직 구성원 간의 갈등이 해소됨을 입증하였다. 하지만 이러한 방법을 바로 적용할 때 아래와 같은 점들은 주의를 하여야 한다.
한 예로, 대학과 기업 간에 산학협력을 하는데 있어 멘토링을 통해 기업에서 산업체 전문가를 멘토로 지정하여 대학생들을 멘토링을 해주었을 때, 멘토링의 효과에 대해 확인한 연구가 있다[9]. 이 연구에서는 멘토링을 통해 산학협력 프로젝트를 진행하는데 있어서 기업과 학교의 만족도가 높아지고, 학생의 전공역량과 사회적응력이 높아짐을 입증하였다.
또한 교육대학원에서 연구된 사례로, 소수의 멘토와 다수의 멘티로 구성되어 소집단 팀을 조직하여 학습을 하는 팀별 조직학습이 이루어지는 집단에 대하여 협력학습멘토링을 시도하여 멘토링의 효과에 대해 확인한 연구가 있다[10]. 이 연구에서는 협력학습멘토링을 과정을 통해 전문적 능력이나 역량 개발과 정보 공유, 그리고 상호 심리적 지지와 안정감의 획득 등 다양한 측면에서의 학습 성과를 얻고 있는 것을 확인하였다.
두 모델 모두 Carnegie-Mellon 대학의 SEI(Software Engineering Institute) 연구소에서 만들어진 모델로 CMMI는 조직의 개발 프로세스를, P-CMM은 조직의 인적 역량을 평가를 강화하기 위한 모델이다. 출발 시점부터 P-CMM이 CMMI에 비해 5년 늦게 만들어졌으며, 2009년부터 2012년까지 인증 받은 횟수는 P-CMM Ver2 19건, CMMI-Dev v1.2 2700건으로 기업에서도 P-CMM에 대한 관심이 떨어진다는 것을 알 수 있다.
한 예로, 경영 혁신 프로젝트를 하는데 있어서 MBTI를 통해 팀원들의 성격유형을 파악하여 서로를 이해함으로써 팀웍 향상에 도움을 줄 수 있음을 입증하였다[11]. 팀원의 개별성에 대한 인정이 경영 혁신 프로젝트를 진행하는데 매우 중요함에도 이것이 간과됨으로서 서로에 대한 이해가 갈등으로 발전하고 상호 신뢰가 바탕이 되어야 하는 혁신 업무에 부정적인 영향을 미치고 있음을 확인하고, 이를 MBTI를 통해 효과적인 팀웍 분석과 상호 이해를 함으로써 프로젝트의 성과가 향상될 수 있음을 확인하였다.
후속연구
경제와 정치에서 사용되는 심리기법은 개발자의 두뇌 작업으로 이루어진 소프트웨어 개발자 조직에 적용할 수 있다. 개발자의 심리를 여러 도구를 이용하여 실시간으로 그들의 마음과 생각을 이해할 수 있다면, 개발자의 동기를 이끌어 내고 소통을 원활히 하며 소프트웨어 조직의 관리 문제를 해결 할 수 있는 유용한 방법으로 기대한다. 또한 솔직하지 못한 프로젝트 상태 보고 문제도 해결할 수 있는 좋은 아이디어를 제공할 것이다[1].
본문에서 언급되었던, 소프트웨어 분야에 각 방법들을 적용할 때 주의해야 할 점들을 조심하여 각 방법을 소프트웨어 산업에 맞게 재해석을 하여 활용한다면, 다른 학문 분야에서 이미 적용되어 효과를 보았던 방법인 만큼 소프트웨어 산업에서도 ‘사람’ 때문에 발생하는 문제들을 해결하여 소프트웨어 프로젝트의 성과가 향상될 것으로 판단된다.
소프트웨어 프로젝트도 다른 분야의 프로젝트와 마찬가지로, 프로젝트를 진행함에 있어 이해관계자가 많고 사람들 간의 이해와 신뢰가 바탕이 되어야 하는 분야이다. 위와 같은 몇 가지만 주의를 한다면, 사람들 간의 이해와 신뢰를 하기 위해 MBTI를 활용하여 이해관계자들 간의 성격을 파악하여 프로젝트를 진행한다면 팀웍이 향상되어 프로젝트의 성과가 향상될 것이다.
이와 유사하게 Brooks가 주장한 “늦고 있는 프로젝트에 추가로 인원을 투입시키면 개발을 더욱 지연시킬 뿐이다.
물론 이론적으로 분석할 모델이 존재하지 않는다는 한계는 존재한다. 하지만, 개발자의 행동과 심리를 이해하고 충분한 데이터를 수집한다면 좀 더 발전된 소프트웨어 개발 조직을 만들어 낼 수 있을 것이다.
질의응답
핵심어
질문
논문에서 추출한 답변
소프트웨어 공학에서는 프로젝트의 성공 요인을 어떤 측면에서 봐야 한다고 말하는가?
우리는 지금까지 소프트웨어 개발 프로젝트를 진행해오면서 사람들 간의 관계 때문에 프로젝트의 성공 실패가 나뉘는 경우를 종종 경험해 왔다. 소프트웨어 공학에서는 프로젝트의 성공 요인을‘People’, ‘Process’, ‘Technology’ 3가지 측면에서 바라봐야 한다. 그러나 실무에서는 ‘Technology’와‘Process’는 어떻게 개선시킬 수 있을까에 대해서 고민을 해보지만 유독 ‘People’의 측면은 어떻게 개선시킬지에 대해서 고민하기 보다는 단지 사람의 문제라고 생각하는 경우가 많다.
소프트웨어 공학이 출현된 이유는?
소프트웨어 공학은 1968년 NATO 소프트웨어 공학 학회에서 소프트웨어 위기(Software crisis)[2]를 심각하게 고려하기 위해서 출현되었다. 소프트웨어 위기의 원인으로 언급된 내용을 보면 다음과 같다.
Why Software Fails의 논문에서 사람에 대해서 이해할 수 있어야 좀 더 원활하게 해결될 수 있는 6가지 실패 원인은?
• Unrealistic or unarticulated project goals
• Inaccurate estimates of needed resources
• Poor reporting of the project’s status
• Poor communication among customers, developers, and users
• Sloppy development practices y Poor project management
※ AI-Helper는 부적절한 답변을 할 수 있습니다.