decomposition computer science advantages