软件需求分析


任务


解决目标系统“做什么”问题

深入描写叙述软件的功能和性能

确定软件涉及到的约束和软件接口

定义软件的其它有效需求

特点


一致性、完整性、限时性、有效性、可验证性

需求分析的过程


问题识别


建立分析所须要的通信途径

分析与综合


从信息流和信息结构出发,逐步细化全部的软件功能。找出联系,接口特性和设计上的约束。分析他们是否满足功能要求,是否合理

编制需求分析阶段的文档


软件需求说明书

数据要求说明书

初步的用户手冊

改动完好与确定软件开发实施计划

评审


系统定义的目标是否与用户的要求一致

系统需求分析阶段提供的文档资料是否齐全

文档中的全部描写叙述是否完整,清晰,准确反映用户的需求

与全部其它系统成分的重要接口是否都已经描写叙述

软件需求分析的方法


SA:面向数据流的结构化分析方法

JSD:面向数据结构的Jackson方法

DSSD;结构化数据系统开发方法

OOA:面向对象的分析方法

软件需求分析的原则


分解、化简和抽象

抽象


在開始建立分析模型前先理解问题
开发模型
记录需求的起源和原因
使用需求视图
给予需求优先级
删除排除性

分解


纵向分解和横向分解

数据流图(DFD)


特性


抽象性,概括性,层次性

主要图形元素



数据流与数据加工的关系





检查和改动DFD的原则


仅仅能有四种图形元素
每一个加工至少有一个输入数据流和一个输出数据流
数据流图的主图必须包含四种基本元素,缺一不可
须要添加编号
子图要与主图相应
每一个元素必须有名字。不同意有控制流

数据流图的作用


系统分析员能够用它自定向下分析系统信息流程
可在图上画出须要计算机处理的部分
依据数据存储。进一步做数据分析。想数据库设计过度
依据数据流方向,定出存取方式
相应一个处理过程,用相应的语言、判定表等工具表达处理方法

DFD的优缺点


整体概念强。每一层强调“干什么。须要什么。给出什么”
能够反映数据的流向和处理过程
自定向下分析,easy急躁发现系统各部分的逻辑错误。easy改正
easy与计算机处理相对比
不直观。须要概括、抽象、修正
没有计算机,人工绘制太麻烦,工作量大

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

软工视频总结Part Three的更多相关文章

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

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

  2. [2017BUAA软工助教]第0次个人作业

    学习别人的经验和体会 零.前言 我认为人生就是一次次地从<存在>到<光明>. 一.软件工程师的成长 0.这是一个博客索引 同学们在上这门课的时候基本都是大三,觉得在大学里,到教 ...

  3. 2017年秋软工-领跑衫获奖感言&我最感谢的人

    啥都不说,先上幅图.获得领跑衫,开心. 一.回忆 这是我第二次来上恩师杨的软件工程,第一次是2016年春,那时候我还是本科三年级的学生.忘了第一次为啥去蹭课,印象中是我的榜样亮哥把我给忽悠过去的?我也 ...

  4. [2019BUAA软工助教]第0次个人作业

    [2019BUAA软工助教]第0次个人作业 一.前言 我认为人生就是一次次地从<存在>到<光明>. 二.软件工程师的成长 博客索引 同学们在上这门课的时候基本都是大三,觉得在大 ...

  5. 福大软工 · 第十二次作业 - Beta答辩总结

    第三视角Beta答辩总结 博客链接以及团队信息 组长博客链接 成员信息(按拼音排序) 姓名 学号 备注 张扬 031602345 组长 陈加伟 031602204 郭俊彦 031602213 洪泽波 ...

  6. [2018福大至诚软工助教]alpha阶段小结

    [2018福大至诚软工助教]alpha阶段小结 一.得分 1. 冲刺(7次 Scrum) 150分 1)第1篇(25分) 项目 评分标准 各个成员在 Alpha 阶段认领的任务 (6分)视详细程度给分 ...

  7. 2018软工实践K班总结

    再回首一学期的软工实践,首先还是要感谢两位助教童鞋帮我承担了作业发布.打分以及与学生的问题沟通等.从这次的软工实践80人+开始,之后的实践课变为必修,故如何能更有效地组织大班实践环节是一个需要持续探讨 ...

  8. 2017软工实践K班总结

    回首一学期的软工实践,从暑假开始陆续布置作业,经历个人.结对与团队等大小作业.也经历了不少同学被吓跑.第一周就退选的情况,能坚持下来的都是胜利者,至少你们有一颗愿意挑战的心.首先感谢助教谢涛付出的巨大 ...

  9. 福大软工 · 第十一次作业 - Alpha 事后诸葛亮(团队)

    福大软工·第十一次作业-Alpha事后诸葛亮 组长博客链接 本次作业博客链接 项目Postmortem 模板 设想和目标 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描 ...

随机推荐

  1. centos 下 KVM虚拟机的创建、管理与迁移

    kvm虚拟机管理 一.环境 role         hostname    ip                  OS kvm_server   target      192.168.32.40 ...

  2. linux下配置虚拟域名

    linux下配置虚拟域名 1.hosts文件位置! /etc/hosts 2.增加一行 127.0.0.1 xxxxx 3.修改apache中的vhosts vi /etc/httpd/extra/h ...

  3. Burnside&Polya总结

    这里就算是一个小总结吧- 附参考的网址: http://blog.sina.com.cn/s/blog_6a46cc3f0100s2qf.html http://www.cnblogs.com/han ...

  4. 基于nginx的最基础的TCP代理,经过测试可通!

    测试操作系统为win7,nginx版本为1.9.4. 在本机上编写java程序一个socket服务类SocketServer,监听端口为8889, (增加了一个SocketServerThread线程 ...

  5. Spark SQL概念学习系列之用户自定义函数

    不多说,直接上干货! 用户自定义函数 注册udf 我们可以使用Spark 支持的编程语言编写好函数,然后通过Spark SQL 内建的方法传递进来,非常便捷地注册我们自己的UDF 在Scala 和Py ...

  6. python中set集合的使用

    集合(set):把不同的元素组成一起形成集合,是python基本的数据类型. python 的集合类型和 其他语言类似, 是一个无序不重复元素集 基本功能包括关系测试和消除重复元素.集合对象还支持un ...

  7. Git+VS2015修改提交代码以及解决冲突

    第一步:前提我们已经讲代码从git上clone(可以看我的GIt篇)下来,创建自己的开发分支.我们在自己本地的分支上开发. 看到右下角有一个develop那是我自己建立的开发的分支,现在点击devel ...

  8. JQurey大纲

  9. Python更换pip源,更换conda源

    更换pip源: 1.在windows文件管理器中,输入 %APPDATA% 2.在该目录下新建pip文件夹,然后到pip文件夹里面去新建个pip.ini文件 3.在新建的pip.ini文件中输入以下内 ...

  10. innerHTML 与 outerHTML区别

    示例代码: <div id="test"> <p>这是innerHTML</p> <p>这是innerHTML</p> ...