阅读以下关于软件架构的叙述,回答问题1、问题2和问题3。
软件架构是指大型、复杂软件的系统结构的设计、规格说明和实施。它以规范的形式装配若干结构元素,从而描述出系统的主要功能和性能要求,同时表述其它非功能性需求(如可靠性、可扩展性、可移植性和可用性等)。软件架构为软件系统提供了一个结构、行为和属性的高级抽象模式,可以使用一个公式来表达;软件架构={构成系统的元素,指导元素集成的形式,关系和约束}。
“4+1”视图模型用五个视图组成的模型来描述软件架构。该模型包含五个主要的视图:
逻辑视图(Logical View),描述了设计的对象模型,支持系统的功能需求。
进程视图(Process View),描述了设计的并发和同步特征,支持系统的运行特性。
物理视图(Physical view),描述了软件到硬件的映射,反映了分布式特性,支持系统的拓扑、安装和通信需求。
开发视图(Development view),描述了在开发环境中软件的静态组织结构,支持软件开发的内部需求。
场景(Scenario),用来说明重要的系统活动,是其它四个视图在用例(Use Case)驱动下的综合。
[问题1](7分)
软件架构在软件需求与设计之间架起一座桥梁,也是风险承担者进行交流的手段,允许不同的风险承担者找出他们所关心的软件架构问题。假设采用面向对象的设计方法,各个视图涉及的组件(元素)包括:任务、类、模块、节点、步骤等,风险承担者包括最终用户、系统设计师、程序员、经理、项目管理师等。请在下表中的(1)到(7)处填入恰当的内容(空白处不用填)。
[问题2](10分)
对于大型项目,通常采用迭代的方法来进行架构设计。架构先被原型化、测试、评估分析,然后在一系列的迭代过程中被细化。这种方法能够使需求细化、成熟化,并能够被更好地理解。请用400字以内文字,简述软件架构基于场景驱动的迭代式设计过程。
[问题3](8分)
开发视图是实现软件详细设计和编码的重要蓝图。请用300字以内文字,说明开发视图需要满足软件内部的哪些需求以及开发视图直接影响到项目管理的哪些方面。