软件工程概述

软件工程(Software Engineering) 包含程序、数据及相关文档涉及到软件开发、维护、管理等多方面的原理、工具与环境。最终的目的是开发高质量的软件。提高软件生产率、提高软件质量、降低软件成本。 阅读详情

软件危机

软件危机包含两方面问题:如何开发软件、如何维护规模越来越大的软件。

软件危机的原因:与软件本身特点有关、开发和维护不正确。

开发和维护不正确具体表现为:忽视软件需求分析的重要性,认为软件开发就是写程序,轻视软件维护等。

软件开发的过程:定义问题、进行可行性研究、需求分析、开发和测试、维护。

软件产品的组成:程序、文档和数据。

软件工程

软件工程的目标

  1. 提高软件的可维护性
  2. 减少软件维护的代价。

软件工程方法学

  1. 传统方法学:将软件生命周期的全过程一次划分为若干个阶段,顺序地完成每个阶段的任务。
  2. 面向对象方法学:既使用对象又使用类和继承等机制,而且对象之间仅能通过传递消息实现彼此通信。

软件生命周期

软件生命周期由三个阶段组成

  1. 系统分析: 问题定义、可行性研究、需求分析。

  2. 软件开发:总体设计、详细设计、编码和单元测试、综合测试。

  3. 运行维护

软件生命周期每个阶段的基本任务

  1. 问题定义:“做什么项目?”。通过对客户的调查,系统分析师扼要地写出关于问题性质、工程目标和工程规模的书面报告,得到客户的确认。

  2. 可行性研究:“值不值得做?”系统分析师在较高的抽象层次上进行研究,不是具体解决问题,而是研究问题的范围,是否有解决方案,客户确认是否继续工程。

  3. 需求分析:“项目需要哪些功能?”仍然不是具体地解决问题,系统分析师确定目标系统必须具备哪些功能,形成需求规格说明书,得到客户的确认。

  4. 总体设计:“大体上怎么

软件工程导论—软件工程概述总结 软件工程概述 本章分为四个部分,分别为软件危机,软件工程,软件生命周期,软件过程。 软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。 软件危机的典型表现: (1)对软件开发成本和进度的估计常常很不准确; (2)软件成本在计算机系统总成本中所占的比例逐年上升; (3)软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势 。 (4)软件通常没有适当的文档资料; (5)软件常常是不可维护的; (6)软件产品的质量往往靠不住; (7)用户对“已完成的”软件系统不满意 阅读详情

相关推荐

《软件工程导论》整体思维导图——笔记

注意:请使用Mindmaster软件打开.emmx文件进行阅读 面向用户:软件工程专业在读本科生,软件工程初学者,考研者

N32G003学习——第九章 第三节1 串口 发送

经过第九章前2节的学习,基础打下之后,开始敲代码。

qq_34525008的博客 1030

ASP.NET Core Identity + Mysql(实战一)——注册登陆

在进行实战之前,我们先来了解一下Identity。 ASP.NET Core Identity是用于构建ASP.NET Core Web应用程序的成员资格系统,包括成员资格、登录和用户数据存储。简单的来讲包括: 1.用户数据存储(使用任意你喜欢的关系型数据库,从sqllite到mysql、sqlserver等等,由Entity Framwork 支持) 2.登陆、注册外加身份认证(基于coo...

weixin_40359716的博客 1398

企业数字化建设之——品牌零售全渠道运营中台解决方案

OMS审单 --> 订单进入OMS待发货列表区域 --> 备货(线下)-->拣货((线下 )-->质检(线下)--> 包装(线下)--> 快递员取货(线下)(物品 + 客户收货地址清单 )--> 快递员发货(2.2.5 正常退货,客户发起 --> 客服助理审核 --> 评审组 --> ( 货物运输 ) -->质检 ->仓库收货入 正常仓库 -->财务退款,记账。OMS审单 --> 订单进入物流公司系统(如:*丰),--> 快递员发货 --> 物流状态同步OMS --> OMS同步物流状态到销售平台。

java_zhong1990的专栏 612

[QMT和ptrade量化交易小白入门]-112、小市值热点概念交易策略,回测5年20倍

本专栏主要是介绍QMT和ptrade的基础用法,常见函数,写策略的方法,也会分享一些量化交易的思路,大概会写200篇左右。QMT的相关资料较少,在使用过程中不断的摸索,遇到了一些问题,记录下来和大家一起沟通,共同进步。

木头大左的博客 1078

【嵌入式Linux驱动开发】二十四、Linux I2C 驱动上手尝试

  人的前程关于眼界、关乎格局。   志之所趋,无远弗届,穷山复海不能限也;   志之所向,无坚不入,锐兵精甲不能御也。 一、I2C驱动框架简介   Linux内核将 I2C 驱动分为两部分: ①、 I2C 总线驱动, I2C 总线驱动就是 SOC 的 I2C 控制器驱动,也叫做 I2C 适配器驱动。 ②、 I2C 设备驱动, I2C 设备驱动就是针对具体的 I2C 设备而编写的驱动。 1....

悟已往之不谏 知来者之可追 1068

利用大规模生物活性挖掘,计算识别针对癌基因驱动蛋白 EGFR、BRAF 与 CDK4 的高亲和力抑制剂

背景:精准癌症治疗需要小分子抑制剂与致瘤蛋白靶点之间的精确匹配。方法:我们使用 Python 及 ChEMBL 数据库 API 开发了一套计算流程,系统性地筛选针对 EGFR、BRAF 与 CDK4 的高亲和力配体。对 IC50 < 1000 nM 的生物活性进行过滤,并检索候选化合物的分子结构(SMILES)以供后续优化。结果:本研究共识别出 [插入总数] 种独特化合物。其中,对 BRAF 激酶而言,我们挑选了一批 IC50 低至 6.0 nM 的高效实验性化合物。

u012133341的博客 95

【数据集】全球首个10米分辨率精细分类土地覆盖数据集GLC_FCS10

【数据集】全球首个10米分辨率精细分类土地覆盖数据集GLC_FCS10

WW、forever的博客 1567

Hyperledger Fabric 网络搭建详解

写在前面:博主也是因为一些原因刚刚入坑区块链,我认为在我们入门新技术的时候,入门总是最困难的部分,只要入门了,后面学习起来就会越来越轻松,在网上找了很多文章,我觉得大多条理不是很清楚。本文章会详细介绍fabric(v1.0)环境部署,以及在搭建过程我遇到一些问题及解决方案,希望可以帮助到你们。 博主环境机器:VMware15 Ubuntu16.04 fabric(v1.0)环境部署一、必备软件安装1.ubuntu环境安装2.Go语言3.Docker安装4. Docker-Compose 安装二、Fa.

林中有神君 1万+

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

上一篇: 可行性研究
下一篇: JAVA中内部类(匿名内部类)访问的局部变量为什么要用final修饰?
FST_XUAN
博客等级 码龄10年 3粉丝 8原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值