Friday, January 24, 2014

Software Engineering -- Intro

The wikipedia article on software engineering presents a number of almost contradictory views on software engineering, which is understandable as is a relatively new (Read: Younger than 3 decades) discipline.
In many ways, I'd have to most agree with the Dijkstra quote on the page; that software engineering is "How to program if you cannot," with one caveat: The ability to program or not doesn't always accurately measure value on a team of developers creating software. One of the best examples of this, and completely unrelated to actual Software creation, is the salesperson. While they're almost completely divorced from the software itself, without being able to market and/or sell a piece of software, almost no companies or groups of developers would be successful in generating interest for the software they've worked to create.

An interesting comparison with other engineering disciplines is the ability to measure resource use and value creation. Many of the Agile paradigms recognize this, claiming time and planning for that time to be the most important commodity, and structure themselves around being unable to successfully t=plan much longer periods of time. In actual practice, though, traditional business models seem to favor non-Agile models precisely for that reason, sometimes causing a split between developers and the company they immediately interact with.

No comments:

Post a Comment