第一次作业

 

                                             第一章概述

 

一.软件=程序+软件工程

  1. 软件=程序+软件工程
  2. 多种语言与工具:Excel,C/C++,C#,VB,Unix Shell,Emacs,Powershell,Emacs,Powershell/VBScript,JavaScript,Perl,Python......
  3. 源代码管理的问题—也叫配置管理。
  4. 质量保障:有一系列的工具,流程和文档来保证程序的正确性,这些工具,流程应该达到很高的质量,才能确保开发出的软件的质量。具体的验证过程叫做软件测试。
  5. 推论:软件=程序+软件工程
  6. 软件企业=软件+商业模式

二.软件工程是什么

  1. 软件工程:是把系统的、有序的、可量化的方法应用到软件开发、运营和维护的过程。
  2. 软件工程包括下列领域:软件需求分析、软件设计、软件构造、软件测试和软件维护。
  3. 软件工具系统:Microsoft Visual Studio、GitHub、Eclipse、ClearCase和ClearQuest等等。
  4. 软件的特殊性:复杂性、不可见性、易变性、服从性、非连续性。

三.软件工程和计算机科学的关系

        1.计算机科学和软件工程的不同侧重点

计算机科学

软件工程

发现和研究长期的、客观的真理

短期的实际效果

理想化的

各种因素的折衷

确定性,完美,通用性

对不确定性和风险的管理足够好,具体的应用

各个学科独立深入研究,做出成果

关注和应用各个相关学科的知识,解决问题

理论的统一

百花齐放的实践方法

强调原创性

最好的、成熟的实践方法

形式化,追求简明的公式

在实践中建立起来的灵感和直觉

正确性

可靠性

 

三.软件工程的知识领域

  1. 生命周期:软件需求、软件设计、软件构建、软件测试、软件维护。
  2. 专门领域:软件配置管理、软件工程管理、软件工程过程、软件工程模型和方法、软件质量。
  3. 理论基础:计算基础、数学基础、工程基础。

四.软件工程的目标

  1. 目标:创造“足够好”的软件。
  2. Bug可直接衡量软件的开发效率、用户满意度、可靠性、软件流程的质量、可维护性。

P18-2

问题一:关于第二章关于单元测试的问题,单元测试的实际作用到底有多重要?根据阅读书本上的解释,单元测试可以使模块的质量能得到稳定性、量化的保证。但是这样可能会花费更多时间精力,有没有更节约时间且有效的方法?

 

问题二:两人合作合理吗?两人合作可能会出现两人编写习惯不同、学习程度不同而造成的难沟通现象。

 

问题三:代码为什么要进行复审?开始我认为程序中的问题在开发者调试时就可以发现,用专人进行复审没有必要。但是在书中知道代码复审还有“教育”和“传播知识”的作用。

 

问题四:MSF团队模型的分配作用?因为在平常团队完成任务时会觉得有人起不到重要作用,但是通过实践和阅读书本知道在团队合作中每一个部分都很重要。

 

问题五:书中195页中说“开发人员签入的代码有一些小问题”为什么说这不是风险?通过看书解释说代码签入带来的是软件生命周期的正常事件,是一个常态。要求代码签入完美的人才是风险。最后我还是对代码签入问题是否属于风险有疑问。

 

P18-3

1. 手机App 分类

 

通讯工具:QQ、微信、邮箱

 

学习工具:百词斩、有道词典、一点英语、考研帮

 

生活服务:饿了么、美团、百度地图

 

购物工具:淘宝、唯品会、小红书、毒

 

支付工具:支付宝、邮政银行、小米钱包

 

影视工具:网易云、腾讯视频、爱奇艺

2.软件问题总结

(1)如何说服我:符合我对其的要求需求。

 

(2)他们的目标:盈利。

 

(3)这些软件如何到我手上的:应用商城下载。

 

(4)感觉如何:很满意。

 

(5)如何处理Bug和更新:应用商城中进行软件更新,网上查找补丁

 

(6)同一类型软件如何竞争:宣传效果以及提升用户真实体验感受,并且做好处理反馈工作。

 

 

原文地址:https://www.cnblogs.com/leeyangtongxue/p/11488422.html