1. A system for protecting confidential knowledge in a software system design which includes a plurality of artifacts, said system comprising: a memory; at least one processor, coupled to said memory, and a tangible, computer-readable storage medium, embodying in a non-transitory manner instructions which, when loaded into said memory, configure said at least one processor to be operative to: calculate a correlation between the confidential knowledge and the software system design by calculating a knowledge exposure rate KER and an artifact involving rate AIR of the confidential knowledge, where KER=x/l, AIR=x/m, l is a magnitude of a set of meaningful words in the confidential knowledge, m is a magnitude of a set of meaningful words in the artifacts, and x is a magnitude of an intersection of the set of meaningful words in the confidential knowledge and the set of meaningful words in the artifacts; acquire inter-dependencies between the artifacts in the software system design; and determine protection mechanisms relating to a selection of software developers for the respective artifacts according to said correlation and said inter-dependencies.