![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
软件工程
文章平均质量分 86
软件工程导论
槑!
这个作者很懒,什么都没留下…
展开
-
【软件工程系列】软件项目管理
软件项目管理有效的软件项目管理集集中在4个P上,即人员(Person):工作风格(外向/内向、理性/感性)项目管理人员高级管理人员研发人员客户最终用户产品(Product)过程(Procedure)项目(Project)项目组织:主程序员负责制小组chief programmer team高度确定性、稳定性、一致性和重复性忘我方法egoless approach:让每个人平等地承担责任,民主式投票产生结果大量的不确定性时软件项目估算方法原创 2021-01-27 17:30:19 · 1139 阅读 · 0 评论 -
【软件工程系列】 面向对象实现风格
面向对象程序设计风格1 面向对象实现把面向对象设计结果翻译成面向对象程序测试并调试面向对象的程序2 程序设计语言所有语言都可完成面向对象实现,但效果不同使用非面向对象语言编写面向对象程序,则必须由程序员自己把面向对象概念映射到目标程序中。选用面向对象语言的优点:将来能够占主导地位,产品有生命力可重用性类库和开发环境,考虑类库中提供有价值类,开发环境中提供基本软件工具和类库编辑工具及浏览工具。3 程序设计风格提高可重用性提高方法的内聚减小方法的规模保持方法的一致原创 2021-01-27 17:29:59 · 569 阅读 · 6 评论 -
【软件工程系列】面向对象设计
面向对象设计分析:提取、整理用户需求,建立问题域精确模型。设计:转变需求为系统实现方案,建立求解域模型。一、面向对象设计准则及启发规则1.1 面向对象设计准则在实际的软件开发过程中分析和设计的界限是模糊的。分析和设计活动是一个多次反复迭代的过程。面向对象方法学在概念和表示方法上的一致性,保证了在各项开发活动之间的平滑(无缝)过渡,领域专家和开发人员能够比较容易地跟踪整个系统开发过程,这是面向对象方法与传统方法比较起来所具有的一大优势。抽象通过像类抽象机制实现提高可重用性信息隐原创 2021-01-27 17:29:30 · 1054 阅读 · 0 评论 -
【软件工程系列】面向对象分析
面向对象分析面向对象分析过程获取需求与用户交谈,向用户提问题;参观用户的工作流程,观察用户的操作;向用户群体发调查问卷;与同行、专家交谈,听取他们的意见;分析已经存在的同类软件产品,提取需求;从行业标准、规则中提取需求;从Internet上搜查相关资料等。整理需求书写需求陈述:需求陈述内容包括问题范围,功能需求,性能需求,应用环境及假设条件。建立模型抽取整理用户需求建立问题域精确模型。面向对象分析模型由三个独立模型组成:功能模型:用例图识别外部执原创 2021-01-27 17:29:04 · 752 阅读 · 0 评论 -
【软件工程系列】面向对象方法学
一、面向对象方法学传统软件工程方法学适用于中小型软件产品开发;面向对象软件工程方法学适用于大型软件产品开发。面向对象方法学方程式: OO = 对象 + 类 + 继承 + 传递消息实现通信1.1 面向对象方法学概念对象:具有相同状态的一组操作的集合,对状态和操作的封装。形象表示:类对具有相同状态和相同操作的一组相似对象的定义。类是一个抽象数据类型。实例实例是由某个特定类所描述的一个具体对象。消息要求某对象执行某个操作的规格说明。三部分:接受消息的对象消原创 2021-01-27 17:28:48 · 3018 阅读 · 0 评论 -
【软件工程系列】维护、评估、改进
维护系统任何针对系统改变所做的工作,都被认为是维护种类:S系统由规格说明形式化定义的,并且是由规格说明导出的。静态的,不容易适应问题中产生的变化P系统先抽象描述问题,然后根据抽象编写系统的需求规格说明E系统融入在现实世界中的系统,并随着现实世界的变化而改变维护:改正性维护:立即作出反应适应性维护:对系统的一部分进行的改变会要求改系统的其他部分完善性维护:利用基于规则的方法进行重新设计,可以增强将来的可维护性,以及使我们在将来更易于增加新的功能预防性维护:预防失效原创 2021-01-27 17:28:15 · 470 阅读 · 0 评论 -
【软件工程系列】系统实现与软件测试
结构化系统实现一、编码编码的目的把模块的过程性描述翻译为用选定的程序设计语言书写的源程序依据编码的主要依据是概要设计和详细设计说明文档任务理解概要设计和详细设计说明书遵循编码原则和风格进行翻译,形成源代码程序设计语言分类[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-u8PZ0LNe-1611678798453)(…/img/c4/程序设计语言分类.png)]机器语言1011011000000000:加法1011010100000000原创 2021-01-27 17:27:53 · 2219 阅读 · 0 评论 -
【软件工程系列】结构化详细设计
八、人机界面设计8.1 人机界面设计问题系统响应时间从用户完成某控制动作,到软件给出预期响应。两个重要属性:长度和易变性。长度: 过长,用户感到不安、沮丧。 过短,迫使用户加快操作节奏,易导致出错。易变性: 易变性指响应时间相对平均响应时间偏差,越低越好,否则会让用户误认为系统工作异常。用户帮助措施手册和联机帮助。联机帮助:集成帮助和附加帮助。集成帮助设计在软件里面,附加帮助系统建成后加到软件中,前者可用性更强。请求帮助:帮助菜单,特殊功能键(F1),HELP命令。原创 2021-01-27 17:27:20 · 925 阅读 · 0 评论 -
【软件工程系列】结构化总体设计
结构化设计 传统软件工程方法学采用结构化设计技术(SD)。从工程管理角度结构化设计分两步:概要设计:将软件需求转化为数据结构和软件系统结构。详细设计:过程设计,通过对结构细化,得到软件详细数据结构和算法。数据设计:数据模型及核心数据字典转变为数据结构。体系结构设计:功能模型中数据流图转变成计算机模块框架。接口设计:功能模型中数据流图转变成软件内部、软件与协作系统间、软件与用户间通信方式。过程设计:行为模型及功能模型中的“处理规格说明”转换成软件构件过程描述结构化设计的概念与原理原创 2021-01-27 17:27:02 · 1174 阅读 · 0 评论 -
【软件工程系列】结构化需求分析
一、需求分析重要性 对软件需求深入理解是开发成功的前提和关键。 开发软件系统最困难的部分就是准确说明开发什么,最困难的概念性工作是编写出详细需求,包括所有面向用户、面向机器和其他软件系统的接口 此工作一旦做错,将会给系统带来极大损害,并且以后对它修改也极为困难。二、结构化分析核心思想分解化简问题物理与逻辑表示分开进行数据与逻辑抽象三、结构化分析具体步骤发现需求与用户交谈,向用户提问题;参观用户的工作流程,观察用户的操作;向用户群体发调查问卷;与同行、专家交谈,听取他原创 2021-01-26 23:57:57 · 7764 阅读 · 0 评论 -
【软件工程系列】软件过程模型
软件过程在软件开发中所遵循的路线图称为**“软件过程”**。过程是活动的集合,活动是任务的集合。软件过程有3层含义:个体含义(软件产品或系统在生存周期中的某一类活动的集合)、整体含义(软件产品或系统在所有上述含义下的软件过程的总体)、工程含义(解决软件过程的工程)过程包含以下7种类型的要素:活动序列:活动的顺序过程模型:是关于系统兴趣的观点资源控制策略:指导原则组织:过程代理的层次化结构过程:一组有序的任务,它涉及活动、约束、资源使用的一系列步骤软件开发过程有时又称为软件生命原创 2021-01-26 00:00:22 · 1065 阅读 · 1 评论 -
【软件工程系列】软件工程概述
概念软件工程是应用计算机科学、数学及管理科学等原理,以工厂化的原则和方法来解决软件问题的工程,其目的是提高软件生产率、提高软件质量、降低软件成本。软件工程学:软件开发技术软件开发方法学软件工具软件工程管理软件工程管理学软件经济学软件工程过程是指为获得软件产品,在软件工具的支持下由软件工程师完成的一系列软件工程活动包括以下四个方面:P(Plan)软件规格说明,规定软件的功能及其运行时的限制D(DO)软件开发,开发出满足规格说明的软件C(Check)软件确认,确认开原创 2021-01-25 23:59:29 · 378 阅读 · 0 评论