One of the most important aspects of the Unified Process and what I emphasize when managing complex software development projects is to focus on an ‘architecture-centric‘ approach to building a system.
The best way to accomplish this from my perspective is to ensure a prioritization of user stories/use cases based on not only business value but architectural significance. It’s also important to remember that building architecturally significant components can still demonstrate business value at the completion of an iteration. A simple UI showing how data can be entered, stored and retrieved (even if it’s not editable) shows a business stakeholder that the ‘tiers’ and ‘layers’ that exist behind the scenes are adding value. One way to ensure a balance between business needs and architectural requirements is to establish a troika of the Product Owner, Architect and Project Manager to review and assess the Release Plan and its prioritization.