软件需求分析


任务


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

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

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

定义软件的其它有效需求

特点


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

需求分析的过程


问题识别


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

分析与综合


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

编制需求分析阶段的文档


软件需求说明书

数据要求说明书

初步的用户手冊

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

评审


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

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

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

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

软件需求分析的方法


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. Spring Batch(4): Job详解

    Spring Batch(4): Job详解 2016-03-26 18:46 870人阅读 评论(1) 收藏 举报  分类: Spring(6)  版权声明:本文为博主原创文章,未经博主允许不得转载 ...

  2. Android开发之控制手机音频

    本实例通过MediaPlayer播放一首音乐并通过AudioManager控制手机音频.关于AudioManager的具体解释可參照:Android开发之AudioManager(音频管理器)具体解释 ...

  3. Effective JavaScript Item 22 使用arguments来创建接受可变參数列表的函数

    本系列作为Effective JavaScript的读书笔记. 在Item 21中,介绍了结合apply方法实现的可变參数列表函数average,它实际上仅仅声明了一个数组作为參数,可是利用apply ...

  4. poj--3678--Katu Puzzle(2-sat 建模)

    Katu Puzzle Time Limit: 1000MS   Memory Limit: 65536KB   64bit IO Format: %I64d & %I64u Submit S ...

  5. oracle init.ora常用配置详解

    参考网上整理了重要的配置文件 db_name = "51cto"   一个数据库标识符,应与CREATE DATABASE 语句中指定的名称相对应. instance_name = ...

  6. BZOJ 1500 splay终结版...

    GSS系列有一丝丝像- 只不过那个是线段树 这个是splay 翻转 插入 删除啥的就是普通的splay 合在一起了而已 //By SiriusRen #include <cstdio> # ...

  7. Neo4j沙盒实验申请过程步骤(图文详解)

    不多说,直接上干货! 参考博客 http://blog.csdn.net/u012318074/article/details/72793632    (对此表示感谢) 前期博客 我暂时是将Neo4j ...

  8. React组件化开发

    环境搭建: 1.安装node.js 2.安装cnpm  # npm install -g cnpm --registry=https://registry.npm.taobao.org 3.全局安装c ...

  9. (转载)Android快速开发偷懒必备,一句话搞定所有ViewGroup的Adapter . 支持自定义ViewGroup

    [置顶] [Android]快速开发偷懒必备,一句话搞定所有ViewGroup的Adapter . 支持自定义ViewGroup 标签: androidAdapter快速开发0耦合 2016-12-1 ...

  10. 七牛上图片总是net::ERR_NAME_NOT_RESOLVED

    七牛上图片总是net::ERR_NAME_NOT_RESOLVED >> php这个答案描述的挺清楚的:http://www.goodpm.net/postreply/php/101000 ...