早期软件不完善的软件开发方法和错误的软件开发观念,导致了软件开发企业陷入了前所未有的困境:一方面,软件的开发速度与质量远远不能满足用户的需要,开发成本与风险急剧增高;另一方面,大量的软件需要维护,但由于缺乏必要的文档而造成维护费用极高。

软件工程则采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的技术方法结合起来,来指导软件的开发与维护。主要措施包括:

软件工程最大的特点就是强调文档的重要性,通过评价文档的质量来控制软件的开发质量,使得软件开发和维护始终处于可控状态,从而提高了软件的开发与维护质量。

针对不同的应用领域,特别引入不同的软件开发模型,为软件开发提供一个开发全部过程、活动和任务的结构框架,明确规定要完成的主要活动、任务和开发策略。

软件开发本身就是一个复杂的系统工程,需要多人协同开发,因此只有好的技术是远远不够的,还需要好的项目管理,这也是软件工程的重要研究内容。

另外,为了提高软件的开发效率,许多CASE工具已经被广泛使用,如各种集成的软件开发环境、UML建模工具、数据库建模与分析工具等。

软件工程采取了哪些措施以保证最终能够交付给用户一个高质量、低成本的软件产品?相关推荐

  1. 一文看懂推荐系统:概要02:推荐系统的链路,从召回粗排,到精排,到重排,最终推荐展示给用户

    一文看懂推荐系统:概要02:推荐系统的链路,从召回粗排,到精排,到重排,最终推荐展示给用户 提示:最近系统性地学习推荐系统的课程.我们以小红书的场景为例,讲工业界的推荐系统. 我只讲工业界实际有用的技 ...

  2. 如何保证代码的高质量?

    代码的高质量是软件的灵魂,代码  =  数据结构  + 算法,  而高质量的代码  =  优良的变量.函数命名  +  优良的代码结构.代码层次结构   +  数据结构  + 算法. 时时刻刻想这上面 ...

  3. 软件工程之高质量代码(编码规范)

    软件工程之高质量代码(编码规范) 软件编码规范是与特定语言相关的描写如何编写代码的规则集合. 编码规范的目的 是提高编码质量,避免不必要的程序错误,增强程序代码的可读性.可重用性和可移植性. Pyth ...

  4. 光明区支持现代服务业高质量发展若干措施(征求意见稿)

    光明区支持现代服务业高质量发展若干措施 (征求意见稿) 为贯彻落实<深圳市服务业发展"十四五"规划><深圳市人民政府办公厅关于印发2022年推动经济社会高质量发展 ...

  5. 2022年深圳市促进大健康产业集群高质量发展的若干措施

    为贯彻落实市委.市政府发展大健康产业的工作部署,加快形成内涵丰富.结构合理的健康产业体系,满足人民多层次.多元化健康需求,加快建成国内一流.国际领先的大健康产业集群,结合<深圳市培育发展大健康产 ...

  6. 以人为本 | 如何保证高质量的软件交付

    软件团队想要保证高质量的软件交付,一般情况下会想到以下几点: - 多的测试人员 - 高薪资.福利 - 各种质量管理工具和手法 - etc- 我们有大量的实际经验表明,这些方法往往没有达到预期值,更有甚 ...

  7. Scott Hanselman的2006 Windows最终开发者和高级用户工具列表

    enjoyed this post, or this blog, please 喜欢这篇文章或博客,请make a secure tax-deductable donation to the Amer ...

  8. elastic-job 是如何保证分布式环境下任务只有一个实例运行

    本文适合使用过elastic-job的人,不会介绍如何使用elastic-job,因为如何使用已经有官方文档介绍了. 最近研究了几个分布式作业调度框架,最终从xxl-job elastic-job l ...

  9. Scott Hanselman的Windows 2009最终开发者和高级用户工具列表

    TAX DEDUCTIBLE DONATIONS: If you 税收减免捐赠:如果您enjoyed this post, or this blog, please 喜欢这篇文章或此博客,请make ...

最新文章

  1. 北斗时钟在国内各行业的应用前景
  2. ACMNO.16用迭代法求 。求平方根的迭代公式为: X[n+1]=1/2(X[n]+a/X[n]) 要求前后两次求出的得差的绝对值少于0.00001。 输出保留3位小数 输入 X 输出 X的
  3. 不会画饼的领导,不值得托付
  4. puppet自动化运维之exec资源
  5. CMake入门指南-编译教程
  6. 自己写了个nginx启动脚本,shell
  7. 共克时艰:科技助力湖北地区银行业务线上转型
  8. 在Latex中插入Python代码
  9. socket通信简介
  10. 人月神话读感/摘抄 四
  11. 网络基础知识(黑马教程笔记)-7-异步编程和Promise
  12. N、NP、NPC问题分析
  13. 使用Kettle 进行行Oracle数据迁移时处理编码转换处理US7ASCII 编码
  14. 真正高质量的免费高速高防空间!
  15. 欧姆龙PLC分频电路
  16. python3 QT5 端口转发工具 增加最小化隐藏 托盘显示 点击托盘恢复及托盘菜单
  17. VirtualBox虚拟机使用Vagrant连接win(甲骨文Oracle VM )
  18. vue和java获取地理位置经纬度
  19. 微信小程序 用户协议和隐私协议
  20. 奥鹏计算机应用基础一答案15年,天大15年12月考试《计算机应用基础》大作业考核答案...

热门文章

  1. 几乎是苹果6倍!华为可穿戴设备出货量Q1同比猛增282%
  2. Vi编辑器的基本使用方法及vi和Vim的区别【ZT】
  3. 一个命令让redis服务端所有信息无所遁形~(收藏吃灰系列)
  4. mysql教程查询语句_最全的mysql查询语句整理
  5. 使用机器视觉模式识别屏幕
  6. php root权限执行命令,如何使用PHP执行需要root权限的系统命令
  7. r720支持多少频率的内存吗_DDR4 2400到DDR4 3200,最大内存频率买多少?为什么买了高频 速度却上不去...
  8. python成绩统计_python统计考试成绩排名
  9. linux下重启weblogic
  10. 【java】java 并发编程 CyclicBarrier 源码分析