Tuesday, March 01, 2005

Knowledge Management in Software Engineering

The first argument in favor of managing knowledge in software engineering is that it is a human and knowledge intensive activity. Similar to other sectors, such as consulting, law, investment banking, and advertising, the main asset of an organization consists of its intellectual capital. Software development is a “design type process” where every person involved has to make a large number of decisions, each of them with several possible choices, as opposed to a “production”, or “manufacturing” process where, once a decision is made, many workers can carry out tasks without having to make further decisions. For example, a company must select what products to develop; a project manager must select the staff and must plan a project, which implies selecting a process and a set of methods and techniques to be used; a designer must select an efficient algorithm; a programmer has to decide on a function, or variables to use; and a tester must select a set of test cases. How do all these people make their decisions? On what are they based? Most of the time, decision makers rely on personal knowledge and experience, on their “gut feeling”. But as software development projects grow larger and the discipline moves from craftsmanship to engineering, it becomes a group activity where individuals need to communicate and coordinate. Individual knowledge has to be shared and leveraged at a project and organization level, and this is exactly what KM proposes. Knowledge management demystifies the individual hero and shifts the focus to collective creativity, exploiting the emerging behavioral idea – “none of us is as smart as all of us”. This complements software industry initiatives like the Capability Maturity Model, which tries to establish stable software processes that are independent of individual software engineers. Knowledge has to be collected, organized, stored, and easily retrieved when it needs to be applied.

No comments:

The latest #BigData #Analytics Daily! https://t.co/IvIGAevVLn Thanks to @mauriciogarciar @hivemaster @EnvironicsA #bigdata #analytics

The latest #BigData #Analytics Daily! https://t.co/IvIGAevVLn Thanks to @mauriciogarciar @hivemaster @EnvironicsA #bigdata #analytics Source...