Subscribe via RSS

90% of Software Engineering is Social Engineering

Filed Under Human Factors

Can You Hear Me Now?

The last 50 years has been filled with technological breakthroughs, but we have quietly ignored our superhuman efforts to refine communication. The evolution of how we communicate from RUP to Agile/SCRUM has led us down a path of learning how to be pragmatic communicators; yet we still view ourselves as average developers before recognizing we are attempting to become master communicators.

The biggest and ugliest problem facing the advancement of software development is that we place it within the physical engineering model.

Perhaps it is force of habit or that the engineering analogies fit logically in our brains, but the largest mental hurdle that we [software developers] have to admit is that 90% of software engineering is actually social engineering.

The concepts of Planning Poker, Daily Scrums, and Continuous Integration are inventions of the software community to further communication between teams and clients. I find it intriguing that we choose to not view these as leaps in communication innovation but as just another estimation game, a scheduled meeting, and the constant building of software.

Software process will evolve, but we first need to recognize what the “essence” of our craft actually is. Some developers still believe that they are rearranging unintelligent bits and bytes into intelligent shapes. Unfortunately, anyone can be taught to code.

The best inventions yet to be delivered by the software community will be in the arena of communication; however it will only occur to those who except that the true essence of software engineering is actually social engineering.

RSS Icon

  Don't miss a drop! Subscribe now via RSS or email.

Comments

7 Responses to “90% of Software Engineering is Social Engineering”

  1. Jeremy N on October 12th, 2007 6:30 pm

    I feel you have hit the nail on the head with this one Max. I feel by far the majority of issues with projects (well… more then just projects, but for this comment) can be traced back to one word, communication.

    How many times have developers sat around talking to each other about how bad [X] is when maybe we could have tried finding out the reason(s) why they are believing in there “answer.”

    Maybe one less night a week searching the web for the newest cutting edge technology and joining some sort of social group that pushes our comfort level and communication skills would lead to better software?

  2. Steve E on October 17th, 2007 12:12 pm

    While I agree with you on the premise of ‘better communication yielding better software’, I would disagree on one point.

    The best communication skills in the world can’t help in the delivery of an inaccurate message. I would argue that the methods of Planning Poker, Scrum, etc. aid in the accuracy of the items we are communicating. I still see this as an engineering discipline rather than a social one.

  3. Max Pool on October 17th, 2007 2:34 pm

    “…the methods of Planning Poker, Scrum, etc. aid in the accuracy of the items we are communicating”

    That is exactly what I find intriguing, we are being masters of communication by learning how to be more precise and streamlined.

    No argument that some people will still view our discipline as engineering first, but once you are ultra-aware of how much time is focused towards communication it starts to make you ask questions as I have.

  4. 90% of Software Engineering is Social Engineering… « Блог Серёжи Борзова on October 21st, 2007 12:44 am

    […] Прочитайте. Оно ведь на самом деле так и есть… […]

  5. Kenji Hiranabe on June 20th, 2008 5:54 pm

    Agile movement emphasizes “social engineering” part of software development.

    I think “software engineering”(SWEBoK), “project mangament”(PMBoK), and “social engineering” are the three major factor of “software development” and Agile cross-cuts or connects the three.

  6. Mike on October 31st, 2008 5:36 pm

    Agile is a gimmick and doesnt work.

  7. Francesco on December 19th, 2008 9:02 am

    The Scientific Community that is active in Software Engineering is considering the possibility to put people in the center of the development process.

    http://www.cs.tut.fi/sosea08/

Max Pool - © 2024 - {codesqueeze}. Sycorr Banking Solutions