Software project management for distributed computing : life-cycle methods for developing scalable and reliable tools /: life-cycle methods for developing scalable and reliable tools. ([2017])