In many software development projects, people tend to repeat same mistakes due to lack of shared knowledge from past experiences. Generally, it is very difficult to manually find ...
Distributed applications provide numerous advantages related to software performance, reliability, interoperability, and extensibility. This paper focuses on distributed Java prog...
Small companies in the software product business risk rework and market failure due to shortcomings in integrating a strategic perspective into management of product development. ...
In practice, a pure top-down and refinement-based development process is not applicable. A more iterative and incremental approach is usually applied with respect to changing req...
In order to improve software maintenance processes, we need to be able to first characterize and assess them. This task needs to be performed in depth and with objectivity since t...
Lionel C. Briand, Victor R. Basili, Yong-Mi Kim, D...