1. A method for providing iterative development of a presentation being generated, comprising the steps of: creating a high level presentation; automatically generating a first concrete presentation from said high-level presentation; editing said first concrete presentation by performing two or more editing steps specified by user input on said first concrete presentation to produce an edited first concrete presentation; storing a sequential history of said two or more editing steps in an edit history; modifying at least one of components and relationships between components represented in the high level presentation based on user input; automatically newly generating a successive concrete presentation based on said modifying of the high level presentation wherein said successive concrete presentation differs from said edited first concrete presentation; and automatically applying said sequential edit history without user input to perform said two or more editing steps previously performed on said first concrete presentation on said successive concrete presentation to generate an edited successive concrete presentation.