结构化分析(SA)
1.什么叫模型?我觉得它的关键字:抽象 重要特征 降低复杂度。
2.软件设计的方法
分类:面向功能~,面向对象的设计。
面向数据流的方法是在结构化分析中提到的。 哦~
3.面向数据流的结构化分析
特点:自顶而下(整体到局部),逐层分解。
它涉及数据流图(DFD)
#DFD是什么?描述数据 各逻辑功能模块之间的流动和处理过程。
#DFD的构成及符号:数据流(名词或名词短语),加工处理(动词短语,多有编号),数据存储(多为名词),外部实体(非系统成员,多为名词短语)。

#DFD的层次性
数据流图分为顶层数据流图、中层数据流图和底层数据流图。
顶层DFD:关联图,表示外部实体与系统的关系,有输入与输,编号为0,它的缺点是不能反映数据的先后顺序。注意!数据存储不能放在顶层。
0层DFD:将顶层DFD的系统分解为若干个子系统,编号为1,2......n。
底层DFD:针对0层DFD中的每一个子系统进行分解得到细化的加工,最底层的DFD中的加工称为“基本加工”,编号1层:1.1,1.2......,2层:1.1.1,1.1,2......;1.2.1,1.2.2......;......
范围图是系统最抽象的数据流代表,它将整个系统表示为一个单一的气泡,也被称作0级DFD。(哦哦~清楚了)
详细讲解可见:http://blog.chinaunix.net/uid-21411227-id-1826829.html
http://www.educity.cn/zk/rjgc/200608311656531370.htm
#DFD有数据平衡原则,即无论在任何层次上,总的输入和输出是不会变化的。
#画流程图的步骤
1)理解问题描述。
2)分析问题描述,提取数据流图的4种成分。
3)画顶层数据流图,即系统的基本模型。
4)把基本模型细化,画各级明细数据流图。
5)数据平衡原则:检查分层细化时是否保持信息的连续性,即当把一个处理分解为一系列处理时,分解前和分解后的输入输出数据流必须相同。
我应注意的地方:数据流不能在外部实体之间流动!
加工通过数据存储进行通讯,应避免从一个加工过程直接流到另一个加工过程。
#能看懂步骤,但是实践还存在问题。
结构化分析(SA)的更多相关文章
- QL Server 2008 所有账号丢失sysadmin权限,sa账号亦没有开启,该如何解决??
1. 用Run as a administrator打开命令提示符里输入NET STOP MSSQLSERVER, 即停止MSSQLSERVER运行. 2. 在命令提示符里输入 NET START M ...
- 没有了SA密码,无法Windows集成身份登录,DBA怎么办?
一同事反馈SQL无法正常登录了,以前都是通过windows集成身份验证登录进去的(sa密码早忘记了),今天就改了服务器的机器名,现在无论如何都登录不进去. SQL登录时如果采用windows集成身份验 ...
- SqlServer windowss身份登陆和sa身份登陆
今天重新装了系统,但是计算机名变了,于是修改了计算机名,然后装了SQLSEVER,安装完成后登录,发现无论用WINDOWS身份还是SQLSERVER身份都登录不了 1.先说说sqlserver身份登录 ...
- 【JBOSS】User not found SA
启动JBOSS 发现报User not found: SA 错误, 找了老半天才找到处理方法,异常日志如下: java.sql.SQLException: User not found: SA at ...
- Cannot set a credential for principal 'sa'. (Microsoft SQL Server,错误: 15535)
在SQL SERVER 2008上上禁用sa登录时,遇到下面错误:"Cannot set a credential for principal 'sa'. (Microsoft SQL Se ...
- ASP.NET连接数据库时,提示“用户 'sa' 登录失败原因: 未与信任 SQL Server 连接相关联
用ASP.NET连接数据库时,提示"用户 'sa' 登录失败.原因: 未与信任 SQL Server 连接相关联.".解决方法:首先检查是不是web.config文件内的用户名密码 ...
- Sa yo na ra
总想记点些什么. 都快忘了当初是为什么来到这里呢... 2014年10月,友人给我介绍了一门编程竞赛ACM,并给我演示了一下A+B.于是我知道了ACM的含义. 2014年12月,开始水入门题. 201 ...
- SQL_Server_2008修改sa密码的方法
转载自:http://blog.csdn.net/templar1000/article/details/20211191 1. 先用Window身份验证方式登陆进去,选择数据库实例,右键选择属性—— ...
- 高级Linux SA需要会做的事情
高级Linux SA需要会做的事情:linux---------系统安装(光盘或自动化安装)linux---------系统常用工具安装(sudo,ntp,yum,rsync,lrzsz syssta ...
随机推荐
- python流程控制语句-if语句
一个if语句 if语句用来检验一个条件, 如果 条件为真,我们运行一块语句(称为 if-块 ),也就是只有一个if判断,当为真的时候就运行一块语句,否则就不运行 下面代码中的if语句控制者缩进的pri ...
- Android应用启动、退出分析
http://www.jianshu.com/p/72059201b10a §AMS和应用进程 §应用启动流程 §应用退出流程 §启动.退出消息 AMS和应用进程 应用进程 <- 系统管理 &l ...
- Visual studio 2010 OpenGL配置
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/niuxiunan/article/details/24557935 题记:今天同学问我关于OpenG ...
- php 安装xdebug进行调试(phpstorm)
一.下载xdebug xdebug官网:https://xdebug.org/download.php 在选择下载哪个版本的xdebug的时候需要注意了,下面有两种方法,让你准确的下载自己环境对应的x ...
- 2018-2019-2 网络对抗技术 20165318 Exp4 恶意代码分析
2018-2019-2 网络对抗技术 20165318 Exp4 恶意代码分析 原理与实践说明 实践目标 实践内容概述 基础问题回答 实践过程记录 1.使用schtasks指令监控系统 2.使用sys ...
- 阿里巴巴android开发手册总结
每天学习一点点 编程PDF电子书免费下载: http://www.shitanlife.com/code 1 2. 3. 4. 5. 6. 7. 8. 9 每天学习一点点 编程PDF电子书免费 ...
- php 怎么在foreach中循环数组的时候添加元素的属性
foreach($arr as $key => &$vo){ //注意,由于上面遍历的时候写了地址传值符&, //所以下面可以直接给$vo 赋值;如果不写&符号,下面这样 ...
- MYSQL中的int(11)到底代表什么意思?
对于int类型的一些基础知识其实上图已经说的很明白了,在这里想讨论下常用的int(11)代表什么意思,很长时间以来我都以为这代表着限制int的长度为11位,直到有天看到篇文章才明白,11代表的并不是长 ...
- day22 Pythonpython random随机模块:略!!!本文os模块
OS模块 用于提供系统级别的操作: os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname") 改变当前脚本工作目录:相 ...
- B轮公司技术问题列表(转)
1.异构系统的接口对接我们有自己的一套统一接口,但是需要与其它公司的接口做对接,但是各个公司的接口各不相同,有什么好的方式能够方便与各公司的接口做对接的同时我们这边也能尽量少或者不需要改动代码就能实现 ...