A study of the potential impact of software practitioners' experience on computer programs for integrated knowledge-based management systems
Robert Leslie Robless, James Fearing Dinwiddie · Medical Entomology and Zoology · 1989
This study determined principles by which software developers abide when developing integrated knowledge based management systems, so that a model for software engineering analysis could be developed. The study emphasized the difference between integrated systems, which are synergistic, and coupled systems, which consist of discrete parts that communicate with each other. The integration of databases with knowledge bases hinges on the ability of computer system developers to integrate procedural language, database, and knowledge-based technologies using existing software paradigms and practices. The study investigated the hypothesis that integration is hampered because the respective software engineering theories and disciplines are incompatible. Software developers tend to bias their efforts in favor of their training and experience; this bias results in systems that are more loosely coupled than integrated. To test the hypothesis, a structured interview was developed to ascertain respondents' experience and ability to solve prototypical problems in the three technologies of interest. Metrics that were obtained included total time to solution, paradigm identity of the problem, software practice used to solve the problem, and the correctness of the solution. A three-way factorial analysis by ANOVA was conducted on the time of solution metric, and fractional distributions were obtained for the remaining three. In general, the results showed that main effects were significant by experience, and interaction effects by problem type and experience. Apparently, the correct paradigms were not significant by experience while the correct practices were; and, paradigm and practice consistency tended to produce more correct solutions. These results indicated that software developers bias their solutions. The results imply that developing a model for software engineering analysis requires the definition of guidelines for structured analysis, resource allocation, and software engineering education.