declarative programming(Rule-based programming in which each rule is independent and the order in which rules are declared or executed is not significant)
iterative development(The development of a solution by building, testing, and deploying a core set of basic features first, then adding features in successive versions)