Saturday, March 05, 2005

The Need for Domain Knowledge

Software development not only requires knowledge about its own domain, but also about the domain for which software is being developed. Sometimes a new domain requires learning a specific technique or a new programming language or application of a new kind of project management technique. Therefore, acquiring the experience and skills needed in projects takes a long time. Even when the organization has been working on a particular domain extensively, the deep application-specific knowledge required to successfully build complex software is thinly spread over many software development engineers. Although individual development engineers understand different components of the application domain, building large and complex software like the Space Shuttle software for NASA requires integration of different pieces of domain knowledge. Most of the system engineers working in these complex domain software development units say, “writing code is not the problem, understanding the problem is the problem”.

There is no shortcut to learning. Domain knowledge that no one in the organization possesses must be acquired either by training or by hiring knowledgeable employees. Knowledge Management can, however, help organize the acquisition of new knowledge and it can help identify expertise as well as capture, package and share knowledge that already exists in the organization.

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...