软工学习进行了一个多月,但是真正静下心来学习也只是一周左右吧,这段时间里给自己印象最深刻的就是作图了, 机房收费系统我们是先进行的编码,后学习软件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. The Tao Of Programming翻译

    The Tao Of Programming里面有许多道家思想,我也喜欢道家学说, 萌生了用文言文翻译的想法,不足之处还请方家指正. 翻译后的文档放在gitcafe上了,欢迎大家fork修正.

  2. 由于内部错误,服务器无法处理该请求。有关该错误的详细信息,请打开服务器上的 IncludeExceptionDetailInFaults (从 ServiceBehaviorAttribute 或从 <serviceDebug> 配置行为)以便将异常信息发送回客户端,或打开对每个 Microsoft .NET Framework SDK 文档的跟踪并检查服务器跟踪日志。

    客户端调用WCF的时候报上面的错误,WCF只能序列化基础的数据类型,不能直接序列化SqlParameter类型,需要使用自定义类,然后在WCF服务端转换的方式解决: 自定义类代码如下: using S ...

  3. ardunio

    fritzing,  arduino简易电路图制作软件

  4. 除去Scala的糖衣(13) -- Default Parameter Value

    欢迎关注我的新博客地址:http://cuipengfei.me/ 好久没有写博客了,上一次更新竟然是一月份. 说工作忙都是借口,咋有空看美剧呢. 这半年荒废掉博客说到底就是懒,惯性的懒惰.写博客这事 ...

  5. 时钟.html

    <!DOCTYPE html><html charset="utf-8"> <head> <title>时钟</title&g ...

  6. INSERT INTO 语句用于向表格中插入新的行。

    语法 INSERT INTO 表名称 VALUES (值1, 值2,....) 我们也可以指定所要插入数据的列: INSERT INTO table_name (列1, 列2,...) VALUES ...

  7. 从myspace数据库看分布式系统数据结构变迁[转]

    MySpace已经成为全球众口皆碑的社区网站之王.尽管一流和营销和管理经验自然是每个IT企业取得成功的首要因素,但是我们却抛弃这一点,而主要着眼于探讨在数次面临系统扩张的紧急关头MySpace是如何从 ...

  8. 数据驱动ddt+excel数据读取

    我们可以将测试数据用excel存储,再用ddt去传入,不过我们需要安装对应的库,因为python是无法操作excel的 1.安装第三方库xlrd 2.创建一个excel表格,将需要测试的数据保存 3. ...

  9. Matplotlib植入PyQt5 + QT5的UI呈现

    实现matplotlib图形通过PyQt5+Qt5在GUI中呈现步骤: 第一步,通过matplotlib.backends.backend_qt5agg类来连接PyQt5: import matplo ...

  10. Android5.0新特性-Material Design

    概述 2014年,Google携Android5.X重装归来.全新的UI设计和更加优化的性能,令开发人员眼前一亮 安装和配置Android5.0开发环境 开发Android还得靠AS.下载地址 htt ...