软件系统模型(Software System Modeling)是软件开发重要环节,通过构件软件系统模型可以帮助开发人员理解系统、抽取业务过程和管理系统的复杂性,也方便各人员交流。软件系统建模是软件系统分析和系统实现的一座桥梁,系统开发人员按照系统模型开发出符合设计目标的软件系统,并基于该模型维护和改进。
请围绕“论软件系统建模实现及其应用”论题,依次从三个方面进行论述。
问题1
则是描述自己的项目和自己担任的工作。
问题2
功能分解法、数据流法/结构化分析建模法、信息工程建模法和面相对象建模法。
功能分析法以系统需要提供的功能为中心来组织系统。总的思想就是分而治之,根据功能需求定义结构,首先定义各种大的功能,再把大的功能分解为小的子功能,按功能来定义接口,稍微大一点的子功能还可以继续选择拆分。
基本方法是跟踪系统数据流,研究问题域中数据流是如何流动以及在各个环节如何处理的,从而发现数据流和加工。把问题域映射为数据流、加工以及数据存储等元素组成数据流图,用加工和数据字典对数据流处理过程及其描述。
在实体关系图发展而来,核心是识别实体及其关系。实体用于描述问题域的一个事物,它包含一些数据事物的属性,关系则是各个事物之间的一些联系。发展之后的方法把实体叫做对象,具有面向对象的一些特性。
从面向对象领域设计而来,它通过对象对问题域进行完整映射,包含了对象的属性和一些行为。用连接和结构把对象之间联系起来,比如分类组装。利用封装、继承和消息机制来解决面向对象建模的复杂度。
软件体系结构风格描述某一特定应用领域中系统组织方式的惯用模式。体系结构风格定义了一个系统家族,即一个体系结构定义一个词汇表和一组约束。词汇表包含一些构建和连接件类型,而这组约束指出是如何将这些构件和连接件结合起来。体系结构风格反映了领域中众多系统所共有的结构和语言特征,并指导如何将各个模块和子系统有效组织成一个完整系统。
请围绕“论软件架构风格”论题,从三个方面论述。
问题2
管道/过滤器、数据抽象和面向对象、基于事件的隐式调用、分层系统、仓库系统及知识库、C2风格、客户/服务器风格、三层C/S结构风格和浏览器/服务器风格。