一个软件项目在需求确定后,就可以开始系统的架构设计了。架构设计不同于编写代码,需要遵循严格的语法和编程规范。它没有规范可遵循,存在即合理,适合系统开发和运行的架构就是最合理的系统架构。
系统的架构设计是在业务需求已经清晰的前提下进行的,假定在系统需求分析阶段已经确定了系统的功能和业务范围,也明确了系统运营需求。在上述需求还没有确定的情况下,不适宜开展系统的架构设计,需要回到需求分析阶段完善上述需求后再开展系统的架构设计。
系统架构就是一些模型图,模型图是人们用来理解系统和沟通的工具。这些模型图需要提供给系统相关干系人来理解系统,系统相关干系人有项目经理、产品经理、开发人员、系统运营维护人员、客户、项目投资人等。这些干系人有不同的知识背景,对同一架构模型图也会有不同的认知和理解:如果把开发架构模型图给产品经理或客户看,他们定然看不懂也不能理解;同样的道理,如果只把逻辑架构图给开发人员看,就不能正确地指导开发人员构建开发环境。
因此架构设计师在进行系统架构设计时,需要从系统的不同维度进行设计,以满足系统相关干系人理解系统架构的需求。架构设计模型主要有逻辑架构、开发架构、数据架构、物理架构和运行架构五种模型图。一般来说需要设计的系统架构模型有逻辑架构、开发架构和物理架构三种架构模型图。数据架构模型一般放在数据库中进行设计,运行架构和物理架构基本相近,只是在物理架构中加了数据的流向,因此一些系统设计使用物理架构代替了运行架构。
设计逻辑架构模型
逻辑架构模型主要是确定系统的功能范围和系统划分。在设计逻辑架构模型时,可以抓住两个关键点:一个关键点是对系统进行逻辑划分,将一个大系统划分为多个子系统;另外一个关键点是明确各子系统之间的协作和调用关系。
绘制逻辑架构的模型图有系统流程图和系统结构图:系统流程图描述了系统各子系统、相关文件和数据之间的关系,记录了整个系统的体系结构;系统结构图也称为层次图,它以层次方式描述了系统从顶层到最底层的功能分解。
下图分别是人脉系统的系统流程图和系统结构图。
上面的人脉系统流程图和人脉系统结构图就是依据人脉系统需求规格说明书给出的功能和业务范围绘制的。
设计开发架构模型
开发架构模型图是给开发人员看的,开发架构模型指导开发人员如何来架构系统的开发环境。开发环境包括系统开发框架的选型、开发工具和编程语言、模块划分等内容。下图是人脉系统开发架构模型图。
开发架构模型图给出了技术体系是B/S结构,开发框架选择SSM,开发语言是JavaEE。系统采用三层结构,分别是表示层、WEB应用层和数据层。表现层是JSP页面,在浏览器中运行,表现层是MVC的View。WEB应用层的控制层是MVC的Controller,业务逻辑层是MVC的Service,实体层是MVC的POJO。数据层由MyBaits数据库开发框架组成。
设计物理架构模型
物理架构模型是给系统部署人员和运营维护人员看的,主要给出系统的部署环境模型,包括网络环境、硬件环境和软件环境。下图是系统部署网络环境模型图。
从上面网络环境模型图中可以看出,系统部署只需要一台主机,要求支持>
系统的架构设计主要涉及到三种模型图,分别是逻辑架构模型、开发架构模型和物理架构模型。逻辑架构模型一般采用系统流程图和系统结构图建模;开发架构模型没有标准的模型图,可以使用PPT或Visio绘图工具进行绘制;物理架构模型主要是由网路环境、硬件和软件环境组成。
1、MicrosoftOfficeVisioOfficeVisio是office软件系列中的负责绘制流程图和示意图的软件,是一款便于IT和商务人员就复杂信息、系统和流程进行可视化处理、分析和交流的软件。
2、ProcessOn是一款网页版的在线作图工具,优点是无需下载安装、破解这些破事,同时支持在线协作,可以多人同时对一个文件协作编辑,而且上手比较容易,它提供很多流程图模版,可以方便的画出流程图、思维导图、原型图、UML图。
3、OmniGraffleOmniGraffle可以用来绘制图表,流程图,组织结构图以及插图,也可以用来组织头脑中思考的信息,组织头脑风暴的结果,绘制心智图,作为样式管理器,或设计网页或PDF文档的原型。只能于运行在MacOSX和iPad平台之上。
4、亿图是一款基于矢量的绘图工具,包含大量的事例库和模板库。可以很方便的绘制各种专业的业务流程图、组织结构图、商业图表、程序流程图、数据流程图、工程管理图、软件设计图、网络拓扑图等等。
5、AxureRPAxureRP是美国AxureSoftwareSolution公司旗舰产品,是一个专业的快速原型设计工具,让负责定义需求和规格、设计功能和界面的专家能够快速创建应用软件或Web网站的线框图、流程图、原型和规格说明文档。
数据流图,程序结构图和系统结构图的区别和联系如下:
1、数据流图(Data Flow Diagram),简称DFD,它从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。它是描绘信息流和数据从输入移动到输出的过程中所经受的变换。
2、系统流程图(System Flowchart)是描绘系统物理模型的传统工具。它的基本思想是用图形符号以黑盒子形式描绘系统里面的每个部件(程序、文件、数据库、表格、人工过程等),表达信息在各个部件之间流动的情况,而不是表示对信息进行加工处理的控制过程。
3、数据流程图:反应数据走向 ,它不考虑时序关系,是业务分析用的,用作详细设计。图中的有向线段表示了数据流。
4、程序流程图:程序逻辑 描述程序中控制流的情况,即程序中处理的执行顺序和执行序列所依赖的条件,图中的有向线段表示的是控制流,从一个处理走到下一个处理。
5、系统结构图:反映的是系统中模块的调用关系和层次关系,谁调用谁,有一个先后次序(时序)关系。图中的有向线段表示调用时程序的控制从调用模块移到被调用模块,并隐含了当调用结束时控制将交回给调用模块。
问题一:软件系统架构图 用visio画 怎么新建? 5分 朋友,采用visio画软件系统架构图一般是选择其中的包图,非常简单。
问题二:怎样在Word里画组织机构体系图 OFFCIE2007中的一个功能 在 插入 中有一个 artArt
如果你是用的office2003建议你有VISIO中佬一个,复制过来
WORD2003只能是自己用方框和线条拼凑。不好做
问题三:软件体系结构图怎么画 uml图吗。。。。
问题四:word怎么画结构图 1首先,想好结构布局图,然后选择工具栏上的插入选择"形状,选择直线
2在文本需要的地方画一条合适的直线,然后将这条直线复制多个,如复制三个,共四个,
3接着选择一根直线,利用键盘上的上下左右方向按钮对直线位置调整,摆放整齐
4然后再选择选择工具栏上的插入选择形状,选择流程图里的方形
5在文本合适的地方画上一个大小合适的长方形图然后再复制三个
6接着选择四边形图一个一个利用键盘上的上下左右方向按钮对直线位置调整,摆放整齐( *** 作如上面步骤基本雷同)
7然后选择文本档,添加文字或编辑文字内容即可
问题五:系统架构图怎么画的 系统架构常用软件:
1 MindManager 画思维导图
2 Microsoft Office Visio 内有uml建模工具, 上图也可以用此软件画出来
3 Axure RP Pro 可以用来画产品原型
各软件怎么用还是要实践中去熟悉
问题六:系统架构图如何画有什么原则和步骤| 现在系统架构图,我看到千奇百怪都有。其实可以大体分为网络系统,软件系统,和硬件系统。
估计你主要是说软件系统,那么主要的模块画出来,模块的调用关系画出来,模块的层次画出来。主要的输入输出画出来,就行了。
问题七:rational rose 如何画体系结构图 点击开始=>程序=>Rational Software=>Rational Rose打开Rational Rose软件。
右键新建一个用例图绘图区域。
在中间的工具栏里有一个像人一样的图标,这是用来画参与者的。点击这个图标,在绘图区域画出参与者并命名为“学生”。也可以双击参与者,在显示的d窗里输入属性名称。
用相同的方法画出“教师”和“用户”的参与者。学生和教师分别与用户具有泛化关系,可以使用工具栏里的空心箭头来连接。
接下来,使用工具栏的椭圆来画第一个用例“登陆系统”。
然后,再画“密码验证”、“输入帐号名”两个用例。使用工具栏的实心箭头连接用户和登陆系统,表示用户有权限登录系统。
“密码验证”和“输入账号”分别与“登陆系统”有依赖关系,可以使用虚线箭头来连接。
双击虚线箭头,在d出窗口设置属性为include,表示“密码验证”和“输入账号”包含在“登陆系统”里。
到此为止,一个简单的用例图就完成了。
问题八:系统架构图是用什么画的 visio,或是UML都可以。
word里面的图也可以。主要是能表达出来相应的内容。
问题九:系统架构图怎么画 系统架构图属于系统设计阶段,系统架构图只是这个阶段一个产物,要正确的、合理的画系统架构图需要全面的理解用户需求以及业务流程,当理解了这些东西后,剩下的就是如何进行表达了,一般而言,可以参照RUP的用例驱动来进行逻辑架构,开发架构等设计工作,你的系统架构图可以反应在各个视图里面,我估计你所说的系统架构图是属于逻辑架构里面,比如分多少层,每层分多少模块等。
至于,绘制的工具,有很多很多。可以选择微软的visio,或者EA,rose,power designer等UML建模工具,当然,你甚至可以用PPT,Word来绘制。
当然,系统架构不是一日之功,需长期努力,跟经验和技术都有很大关系。
今天兴致来了,回复了这么多,不知满意不。
问题十:软件体系结构图怎么画啊? 5分 软件体系结构参考图如下:
软件架构是一种无法以简单的一维方式进行说明的复杂实体。-Paul Clements 《软件架构编档》正如上面提到的,不同的受众,比如用户、客户、开发人员、测试人员、运维人员,需要从各自工作的角度去理解和使用架构。所以回答这个问题,需要首先了解这幅架构图画出来是给谁看,你想从那个维度去入手。确定了这个问题之后,再来了解架构视图有哪些维度和组成要素:1 架构视图最经典的当属4+1视图:
逻辑视图开发视图过程视图物理视图场景视图4+1视图提出后,业界也有其它的观点提出,诸如SEI(模块视图、组建和连接件视图、分配视图)、西门子4种视图(概念、模块、代码、执行视图)、以及RM-ODP(企业视图、信息视图、计算视图、工程师图)等。常见的视图除了上述4+1视图外还包括:数据视图、安全视图、实现视图等。2 了解架构视图的四要素
图示化主要元素和元素之间的关系具有明确的图例、定义和说明元素每个元素具备明确的接口和行为规范设计原理和设计决策的信息3 简单说一下几个视图针对的角色和维度:逻辑视图一般针对客户、用户、触务人员、开发组织,主要从系统的功能元素、以及它们的接口、职责、交互维度入手。主要元素包括系统、子系统、功能模块、子功能模块、接口等。开发视图一般针对开发和测试相关人员,主要描述系统如何开发实现;主要元素包括描述系统的分层、分区、框架、系统通用服务、业务通用服务、类和接口、系统平台和大基础框架。用途是知道开发设计和实现。物理视图一般针对系统运维人员、集成人员,它是系统逻辑组件到物理节点的映射,节点与节点间的物理网络配置等,主要关注非功能性需求,诸如性能(吞吐量)、可伸缩性、可靠性,可用性等,从而得出相关的物理部署结构图。
1数据流图(DataFlowDiagram);
坚持更DFD,它从数据的传递和加工角度,以图形方式来表达系统的逻辑功能,数据在系统内部的逻辑流向和逻辑交换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示放大。它是描绘信息流和数据从输入移动到输出的过程中所经受的变换。
数据流图的基本元素:
2系统流程图(SystemFlowchart);
描绘系统物理模型的传统工具。他的基本思想是用图形符号以黑盒子的形式描绘系统理念的每个部件包括程序,文件,数据库,表格,人工过程等,表达信息在给个部件之间流动的情况,而不是表示对信息进行加工处理的控制过程。
例图:
3程序流程图;
4程序的系统结构图。
数据流程图:反应输就走向,它不考虑时序关系,主要用于业务分析,用作详细设计。途中的有向线段表示了数据流。
系统流程图:反应主体框架。
程序流程图:程序逻辑描述程序中控制流的情况,即程序中处理的执行顺序和执行序列所以来的条件,途中的有向线段表示的是控制流从一个处理走到下一个处理。
程序的系统结构图:反应的是系统中模块的调用关系和层次关系,谁调用谁有一个先后次序关系。途中的有向线段表示调用时程序的控制从调用模块一道被调用模块,并隐含了当调用结束时控制将交回给调用模块。
流程图的三种基本结构是顺序结构、选择结构、循环结构,流程图(Flowchart):使用图形表示算法的思路是一种极好的方法,因为千言万语不如一张图。流程图在汇编语言和早期的BASIC语言环境中得到应用。相关的还有一种PAD图,对PASCAL或C语言都极适用。
以特定的图形符号加上说明,表示算法的图,称为流程图或框图。流程图是流经一个系统的信息流、观点流或部件流的图形代表。在企业中,流程图主要用来说明某一过程。这种过程既可以是生产线上的工艺流程,也可以是完成一项任务必需的管理过程。
例如,一张流程图能够成为解释某个零件的制造工序,甚至组织决策制定程序的方式之一。这些过程的各个阶段均用图形块表示,不同图形块之间以箭头相连,代表它们在系统内的流动方向。
下一步何去何从,要取决于上一步的结果,典型做法是用“是”或“否”的逻辑分支加以判断。流程图是揭示和掌握封闭系统运动状况的有效方式。作为诊断工具,它能够辅助决策制定,让管理者清楚地知道,问题可能出在什么地方,从而确定出可供选择的行动方案。
流程图有时也称作输入-输出图。该图直观地描述一个工作过程的具体步骤。流程图对准确了解事情是如何进行的,以及决定应如何改进过程极有帮助。这一方法可以用于整个企业,以便直观地跟踪和图解企业的运作方式。
流程图使用一些标准符号代表某些类型的动作,如决策用菱形框表示,具体活动用方框表示。但比这些符号规定更重要的,是必须清楚地描述工作过程的顺序。流程图也可用于设计改进工作过程,具体做法是先画出事情应该怎么做,再将其与实际情况进行比较。
以上就是关于如何进行系统的架构设计全部的内容,包括:如何进行系统的架构设计、用什么工具画软件架构设计图、数据流图,程序结构图和系统结构图的区别和联系等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)