The functional requirements of modern systems are mostly software requirements. At the System of Systems (SoS)/Enterprise level, defining software/systems is done at a higher level of abstraction and requires different techniques. In the UAF, capabilities are defined for the enterprise, with systems and software allocated to realize the capabilities. This paper will examine the aspects of modeling software in the UAF, and how it can help guide enterprise and system and software architecture.