现代软件工程-构建之法(第一次)

今天开始,对现代软件工程-构建之法一书阅读后会持续写总结~这本书还是很好的,帮助程序员对软件工程理解,推荐给大家。

第一章(概论)


  问题:“软件=程序+软件工程” 和 “软件企业=软件+商业模式”两者是什么,有何关联?

  想法:一个良好的软件团队要从需求分析开始,把合适的需求梳理出来,然后逐步展开后续工作,如设计(软件架构),实现(写数据结构和算法),测试,到最后发布软件。

  程序(算法,数据结构)是基本功,但是在算法和数据结构上,软件工程决定了软件的质量,商业模式决定了一个软件企业的成败。


  问题:软件工程究竟是什么,有什么含义?

  想法:软件工程是把系统的,有序的, 可量化的方法应用到软件的开发,运营和维护上的过程。

     软件工程包括下列领域:软件需求分析,软件设计,软件构建,软件测试和软件维护。

     软件工程和下列的学科相关:计算机科学,计算机工程,管理学,数学,项目管理学,质量管理,软件人体工学,系统工程,工业设计和用户体验设计。


  问题:软件开发流程是什么,有什么难题和特点?

  想法:软件开发流程的目的是为了提高软件开发,运营,维护的效率,并提高软件的质量,用户满意度 ,可靠性和软件的可维护性,这时候就需要软件工具加以辅助比如编译工具,源代码管理工具,源代码编辑工具等。

    软件开发过程有五大难题:

      1.复杂性

        因为大型软件有超过 百万行的源代码,上万个文件,这些数量往往以几何级数速度增长,让软件工程师头疼。

      2.不可见性

        工程师看不到自己的源代码如何具体地在用户上的机器被执行的,因此一旦出现错误,工程师几乎无法完整重现到底程序出现了什么问题。

      3.易变形

        软件看上去很容易修改相比于硬件,但实际上想要从百万行的源代码中正确的修改,更新是很困难的。

      4.服从性

        软件需要运行在硬件上,而且需要服从系统中的其他组成部分的要求。

      5.非连续性

        许多软件系统输入上很小的变化,回引起输出上极大的变化。

    软件还有其他特性:

      有许多不同的程序设计语言,软件工具和软件开发平台

      存在许多不同的软件开发流程

      软件团队中存在许多不同的角色

      软件既可以存储在磁带上,也可以存储在CD/DVD上


  问题:计算机科学和软件工程有什么区别?

  想法:计算机科学中的理论研究部分大多与数学,离散数学,数理逻辑密切相关;实践相关的部分,都和数据以及其他学科发生关系,而软件工程则和人的行为,现实社会的需求息息相关,因此两者有较大不同,计算机理论的进展会帮助软件工程(例如对程序正确性的分析);软件工程的进展(更好的工具,更多的应用领域)会帮助计算机科学家更有效的进行实验和探索。

    软件工程的目标在于创造足够好的软件,尽可能减少BUG的存在,有以下重要几点需要注意:

      1.用户满意度:用户可能在使用中发现了很多问题,影响了使用软件的效率。

      2.可靠性:软件经常崩溃,导致实用性变差。

      3.软件流程的质量:软件团队和开发流程的问题太多,导致了团体成员无法互相合作,按时交付软件。

      4.可维护性:某个软件难以维护,使得维护人员表示需要更多的资金和时间维护软件。


  问题:软件工程的目标是什么,一个良好的软件需要注意哪些方面?

  想法:软件工程的目标在于创造足够好的软件,尽可能减少BUG的存在,有以下重要几点需要注意:

      1.用户满意度:用户可能在使用中发现了很多问题,影响了使用软件的效率。

      2.可靠性:软件经常崩溃,导致实用性变差。

      3.软件流程的质量:软件团队和开发流程的问题太多,导致了团体成员无法互相合作,按时交付软件。

      4.可维护性:某个软件难以维护,使得维护人员表示需要更多的资金和时间维护软件。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值