软件工程工具图(软件开发过程中可能用到的工具图)

软件工程工具图(软件开发过程中可能用到的工具图)

 

一、问题定义

1、 思维导图

分类思维衍生推导。思维导图是一个很厉害的发明,他将我们的思考过程具象化了,完美展示了由点到面不断发散的过程。但是它最大的价值,反而不是最终呈现出来的这个图,而是促进了思考的过程。并且需要注意的是,一定要把一条分支走到尽头,再回过头来走其它的分支,把思想榨干。 

适用场景:在一个事情刚开始的萌芽期,不知如何下手;或者陷入一个困境的时候。利用思维导图来活跃大脑,进行发散思维。这时候如果结合头脑风暴,效果更佳。

缺点:它是一种树状的信息分层可视化展视,结构比较固定,不适合分支间互相交互比较复杂的信息展示。

绘制工具: xmind、processon、有道笔记。

   

2、 UC图【问题定义阶段(规划阶段)】

(Use Creat图)它是BSP(business system planning)法中常用的子系统划分工具。绘制工具:

3、甘特图

 甘特图(Gantt chart)又称为横道图、条状图(Bar chart)。以图示的方式通过活动列表和时间刻度形象地表示出任何特定项目的活动顺序与持续时间。基本是一条线条图,横轴表示时间,纵轴表示活动(项目),线条表示在整个期间上计划和实际的活动完成情况。它直观地表明任务计划在什么时候进行,及实际进展与计划要求的对比。 绘制工具:Microsoft Office Project 

 

二、可行性分析

4、 系统流程图【可行性分析】

是描述系统物理模型的一种传统工具。它是表达数据在系统各部件之间流动的情况,而不是对数据加工处理的控制过程,它是物理数据流图而不是程序流程图。系统流程图形象的呈现了软件的功能,即使不懂软件的人也可以轻松的看懂,可以说它是软件设计师与用户之间沟通、交流的有效工具。 绘制工具: processon(Flowchart 流程图)

     系统流程图2

三、需求分析

5、 UML用例图

用例图是指由参与者(Actor)、用例(Use Case),边界以及它们之间的关系构成的用于描述系统功能的视图。是系统的蓝图。教程 绘制工具: processon 

 

6、 流程图【需求分析】

流程图有时也称作输入-输出图。该图直观地描述一个工作过程的具体步骤,各种操作一目了然,不会产生“歧义性”,便于理解,算法出错时容易发现。流程图对准确了解事情是如何进行的,以及决定应如何改进过程极有帮助。大到系统级别、小到某个操作背后的运转逻辑都可以使用流程图来画,我个人认为这应该是被最多人认识的图,没有之一。

适用场景:正如上面所说这个适用场景比较广,日常工作中小到算法逻辑,大到战略层面的执行落地都需要它。主要用它来将背后的流程可视化,辅助做决策去(如改进等)。

缺点:所占篇幅较大,由于允许使用流程线,过于灵活,不受约束,使用者可使流程任意转向,从而造成程序阅读和修改上的困难,不利于结构化程序的设计。

     

7、IPO图【需求分析】

IPO图是输入加工输出(INPUT PROCESS OUTPUT)图的简称。图描述了输入数据、处理数据、输出数据之间的关系。IPO图是对每个模块进行详细设计的工具。在系统的模块结构图形成过程中,产生了大量的模块,在进行详细设

计时开发者应为每一个模块写一份说明。可根据系统流程图中基本元素看,包括输入,处理,输出。

    

8、 DFD图【需求分析】

DFD图是从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。

适用场景:在将思维导图得出的东西进行整合、梳理形成一个粗粒度的流程。这个其实类似与DDD中的上下文映射图,是在需求分析过程中做宏观设计的一种方式。

缺点:反映系统“做什么”,不反映“如何做”,粒度算是中等,需要其它更细粒度的图来对细节做支撑。教程

  

 

9、 E-R图【需求分析】

E-R图为实体-联系图,提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。
构成E-R图的基本要素是实体型、属性和联系。绘制工具: processon

  

10、STD图【需求分析】

状态转换图,刻画系统响应外部事件的过程。为系统的行为建模。

    

11、层次方框图【需求分析】

用来展示数据的层次结构。绘制工具: processon

    

12、warnier图【需求分析】

和层次方框图类似。Warnier图也用树形结构描绘信息,但是这种图形工具比层次方框图提供了更丰富的描绘手段。

13、Jackson图【需求分析】

 Jackson方法是一种面向数据结构的设计方法。教程

四、概要设计

14、 HIPO图 【概要设计】

HIPO图=层次图+IPO图*N。HIPO图一般由一张总的层次化模块结构图和若干张具体模块内部展开的IPO 图组成。

15、 模块结构图【概要设计】

这是结构化开发中最常用的描述一个系统体系结构的工具图之一。

16、 UML类图

类图(Class diagram)是显示了模型的静态结构,特别是模型中存在的类、类的内部结构以及它们与其他类的关系等。教程 绘制工具: processon 

   

 

五、详细设计

17、 程序流程图 【详细设计】

同4流程图。 流程图工具在该阶段的应用。所描述角度不同。

18、 UML时序图

(Sequence Diagram),又名序列图、循序图,是一种UML交互图。它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作。教程 绘制工具: processon 

  

19、  UML协作图

时序图和协作图是可以相互转化的。第二个是协作图。

   

20、 UML状态图

状态图(Statechart Diagram)是描述一个实体基于事件反应的动态行为,显示了该实体如何根据当前所处的状态对不同的事件做出反应。教程 绘制工具: processon 

   

21、  UML活动图

活动图(activity diagram,动态图)是阐明了业务用例实现的工作流程,是由活动节点和转换流程构成的图,它显示了控制权通过一次计算行为的各步骤流程。 教程 绘制工具: processon 

 


22、 UML构件图

类是最基础的“模块化”元素,它封装了属性和成员的方法,就像是物理世界中的“分子”。但是,对于复杂的软件系统而言,往往拥有成百上千的各种类。因此,类的粒度太小了,引入更粗的粒度的概念—“构件”。

23、 UML部署图

部署图描述了一个系统运行时的硬件节点,在这些节点上运行的软件构件将在何处物理运行以及它们将如何彼此通信的静态视图。

24、N-S图【详细设计】

也被称为盒图或NS图(Nassi Shneiderman图)。是结构化编程中的一种可视化建模。不喜欢这个。教程 

å¨è¿éæå¥å¾çæè¿° 

25、 PAD图

问题分析图(Problem Analysis Dram,PAD)是软件工程中的分析利器,它以二维展开的图形描述方式,展现程序的逻辑结构(或者数据结构)。惊艳。教程

绘制工具:VISIO、PADFlowChart

  PAD(é®é¢åæå¾)çç»å¶å使ç¨PAD(é®é¢åæå¾)çç»å¶å使ç¨

 

六、代码实现

暂无

七、测试

26、判定表

判定表(Decision table)是另一种表达逻辑判断的工具。与结构化语言和判断树相比,判断表的优点是能把所有条件组合充分地表达出来;其缺点是判定表的建立过程较烦杂,且表达方式不如前两种简便。判定表在用于知识表达中,有许多其他方式所达不到的作用。

 判定表2

 

八、维护

27、 结构图

软件结构图是为了反映软件系统中组件之间相互关系和约束的体系结构设计图,称为软件体系结构图更为合适,一般通过分层次或分时间段等方式说明体系结构的各个组成部分的组合关系。

在结构化设计方法中,软件结构图主要分为变换型软件结构图和事务型软件结构图两种。
软件结构包括构成系统的设计元素的描述、设计元素之间的交互、设计元素的组合模式以及在这些模式中的约束。一个系统由一组构件以及它们之间的交互关系组成,这种系统本身又可以成为一个更大的系统的组成元素。

绘制工具: wiki里的Gliffy Diagram

å¨è¿éæå¥å¾çæè¿° å¨è¿éæå¥å¾çæè¿°

 

九、 小结

软工涉及的可视化图表语言很多,因为实际操作很能有增减变种出现。且工具图在开发的各阶段都会不同程度的使用参见文档

 

学习文档:

https://blog.csdn.net/qq_15037231/article/details/60467793  
https://blog.csdn.net/zhengleiguo/article/details/37509861 
https://blog.csdn.net/t131452n/article/details/41381393 
https://blog.csdn.net/d52370/article/details/102844494 

https://baike.baidu.com/item/hipo%E5%9B%BE/1649908?fr=aladdin 
https://www.pianshen.com/article/84001161445/
https://jingyan.baidu.com/article/d2b1d102cd46895c7e37d401.html
https://blog.csdn.net/ggibenben1314/article/details/8563916
https://www.cnblogs.com/wsg25/p/9592915.html
https://www.cnblogs.com/Zachary-Fan/p/developdiagram.html

  • 8
    点赞
  • 80
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值