软工学习进行了一个多月,但是真正静下心来学习也只是一周左右吧,这段时间里给自己印象最深刻的就是作图了, 机房收费系统我们是先进行的编码,后学习软件project对它来了一次回想性的文档编写。

刚開始当然不知道这些图都是干啥用的,早在项目開始前就问师傅里面的图都用啥工具来画的。师傅给了一个叫做《亿图》的软件,各种模板都给提供了,异常兴奋。于是天马星空的開始了自己的作图旅程,结果到最后才发现,自己全然脱离了视频中的介绍,差点儿没有依照作图规范来,终于70%的图都变成了废品。

没办法,还是从基础上来了解一番吧:

数据流图:

从本质上理解它就是系统中数据流动的形式。并不涉及物理结构。即使貌似是物理事体的源节点与目的节点。也是跟系统本身没有关系的。就像下图中的学生一样:
                                                          
须要注意的是。除了与文件挂钩的数据流,每一个都要有一个明白的名称,我想是由于文件名本身就能够代表一种数据表现形式吧。
在加工比較复杂的情况下一般採取分层做数据流图的形式。就像一个抽象归类过程一样。面对一个庞大复杂的组织网络,当不须要了解他的详细内部操作时,用一个可以概括这类加工内容全部共性的名词来代表全部的加工。这样有利于分析时从全局角度出发。当然并非分层次越多越好,随着层次的添加,处理机制将更加严格。从命名规范,父图与子图的平衡等都会有严格的界定,要知道,有时简单的事务并不须要将其复杂化。

数据字典(DD):

数据字典,顾名思义,就是对有关数据名词的定义与解释说明。它能够是对数据流,数据项,文件等内容的定义。
既然是定义。则必然先将名称放到开头,然后介绍内部组成成分与结构,最后加一些描写叙述性的形容词来做备注。

数据字典的使用与数据类图的使用时相辅相成的,数据流图清晰显示了数据流动与处理的过程,但这些名词是不easy被人们所理解的。加以数据字典就相当于对其增加了凝视一般。

判定表&判定树

判定表比較适用于数目流程较多,判定复杂的流程其中。它将推断条件与操作至于二维表格其中,符合条件的用“对号”来表示,界面清晰易懂。便于查找。

判定树以树杈结构的方式将选择与推断结构一图形化形式表现出来,较为清晰,但不适合过多的选择与结构化流程。

                   
                       

实体联系图(E-R)&层次方框图

软件project生命周期中少不了对对系统的分析,这时不光须要了解系统所涉及的实体与联系。这时实体联系图提供了较大的方便。除了这些还得结合软件系统所处的周边环境。像某个组织的结构等等,仅仅有联系了这些。才干充分发挥软件系统的功用。

                                                            
                                     

系统模块图(sc)

计入软件设计阶段,对每一个模块进行明白的界限划分,不仅对开发周期的预计,更对程序开发过程中的分工起到了关键性的作用。

                                                        
                                
                                                
从设计子模块中我们发现系统模块图的设计规则比較繁多,这也从还有一个角度说明系统的模块不好划分。仅仅有运用这些规范化的设计模式才干帮助我们明白划分出子模块。
                                     

程序流程图

习惯于敲代码的我们队程序流程图必定不陌生。说道程序流程,必定想到三大结构选择。循环,推断:
                        

甘特图

甘特图是我们眼下使用较少的图种了,在机房收费的第一遍文档编写过程中,仅仅碰到了一次,它能够清晰的分析我们计划其中完毕的事项与未完毕事项。

    
                       
自己也以前參照网上的作图方法用Excel表格临摹了一幅:
                                               

总结:

软件project教会了我们在不同的软件开发周期站在不同的立场上去思考,每篇文档写作目的是为了什么,终于给谁看的。仅仅有这样才干了解一个软件的开发过程。最重要的还是机灵的学会用图去帮助思考,帮助解决这个问题。





软件project--作图的更多相关文章

  1. 备战“软考”之软件project

    说到"软件project"就有一种非常纠结的感觉!为什么呢?由于刚进入软考复习阶段,大家都把它放到了"比較"次要的地位,由于已经学过两遍,再加上它没有非常难理解 ...

  2. 软件project师的属性与发展

    工作近十年了.[软件project师] 一直是我职业 title 的中心词,仅仅是前面的修饰语在不断变化,从0基础.中级.高级到资深. 事实上 [软件project师] 是一个非常泛化的定义.工作现实 ...

  3. 《软件project》课程报告 —国土资源执法监察管理信息系统建模

    ***********************************************声明*************************************************** ...

  4. 项目之软件project(我专业四年都未曾知道这四个字的含义,几句话便懂了)

    潘鹏在CSDN上原创.如其它站点转载请注意排版和写明出处: 软件project的本质 一级标题 控制 质量 二级标题  成本  扩展  高内聚低耦合 效率 控制: 成本:企业要求的是以最快的速度完毕可 ...

  5. 面向对象的软件project——面向对象分析

    为了解决软件危机.一些IT前辈国产软件project这个词汇,软件project它被引入到整个软件开发过程的维护. 软件project从程序的设计角度能够分为两类.一类是面向结构的软件project. ...

  6. 软件project(六)——需求分析

           需求分析是软件开发期的第一个阶段,是关系到软件开发成败的关键步骤.需求分析的任务就是明白系统必须完毕那些工作,以下是对需求分析这一章做的简要总结. 导图: 解释说明:        我将 ...

  7. (UML总结三)UML与软件project

    学习完UML.我们要把它和之前的软件project结合起来.软件project是从总体的角度说了软件开发的步骤.保证了所开发软件的质量.而UML作为一种统一建模语言.是用来设计软件蓝图的可视化建模语言 ...

  8. 什么是软件project?

    Normal 0 7.8 pt 0 2 false false false MicrosoftInternetExplorer4 /* Style Definitions */ table.MsoNo ...

  9. 软件project(一)——宏观总结

    曾经看视频,看过去就忘.不想再这样子下去了,所以总结了好久.想让自己忘不了.这个过程花费时间有点长,可是假设让自己忘不了.一切都值了. 以下先来一张导图来总结一下<软件project>这门 ...

  10. 【软件project】——软工视频总结

    软件project是一门研究用project化方法构建和维护有效的.有用的和高质量的软件的学科.它涉及程序设计语言.数据库.软件开发工具.系统平台.标准.设计模式等方面. 软工,基本的六阶段:制定计划 ...

随机推荐

  1. oozie中事件触发input-events和done-flag

    样例如下: <coordinator-app name="test_job" frequency="${coord:days(1)}" start=&qu ...

  2. nginx的root alias 指令

    location /img/ { alias /var/www/image/; } #若按照上述配置的话,则访问/img/目录里面的文件时,ningx会自动去/var/www/image/目录找文件 ...

  3. 如何解决PHP里大量数据循环时内存耗尽的问题

    最近在开发一个PHP程序时遇到了下面的错误: PHP Fatal error: Allowed memory size of 268 435 456 bytes exhausted 错误信息显示允许的 ...

  4. python文件编码说明 coding=utf-8

    python 支持3种编码声明,一般常用能见到下面两种 1.# -*- coding: utf-8 -*- 这种写法是为了兼容Emacs的编码声明 2.短一点,但Emacs不能用# coding=ut ...

  5. yum 安装 influxdb/telegraf

    环境:centos 7 参考官网教程:http://docs.influxdata.com/telegraf/v1.9/introduction/installation/ 添加 yum 源: vim ...

  6. 无偏估计(Unbiased Estimator)

    无偏估计是参数的样本估计量的期望值等于参数的真实值. 一个简单的例子(https://www.zhihu.com/question/22983179/answer/23470969): 比如我要对某个 ...

  7. 代码生成利器:IDEA 强大的 Live Templates

    Java 开发过程经常需要编写有固定格式的代码,例如说声明一个私有变量, logger 或者 bean 等等.对于这种小范围的代码生成,我们可以利用 IDEA 提供的 Live Templates 功 ...

  8. 【BZOJ】1009: [HNOI2008]GT考试(dp+矩阵乘法+kmp+神题)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1009 好神的题orzzzzzzzzzz 首先我是连递推方程都想不出的人...一直想用组合来搞..看来 ...

  9. Centos下使用压缩包安装MySQL5.7

    今天在自己的centos服务器上安装mysql,碰到的问题相当的多,装个mysql远比在windows复杂的多.这里通过查找的一些博文(包括前几篇)来记录安装mysql时的各种问题.可能步骤不完整,当 ...

  10. hdu 1022:Train Problem I(数据结构,栈,递归,dfs)

    Train Problem I Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)T ...