project systems applications time employees open management practices content process customers product source requirements projects specific design developer programmers cost operating solution option company java application programming good customer programs testing name work support type person number instance needs education needed computer user important data create development business tests code language program domain developers