A harbour tour of software development