软件工程第一次作业

题目一:代码地址 https://coding.net/u/Uaesq/p/123/git
题目二:在一周之内快速看完《构建之法》,列出你不懂的5-10个问题,发布在自己的博客。
1.怎样才算是一个好的单元测试呢?(第二章)书中表示应准确快速保证程序基本模块的正确性。
2.团队模式和团队的开发模式有什么关系?(第五章)
3.敏捷开发不是很懂。(第七章)看了MSF敏捷开发但还是不太懂。
4.软件工程师的工作就是写代码,相关专业的练习也是以阅读代码、写代码为主,那么代码量和工程师的水平是线性的关系吗?(第四章)
5.如何验证正确性?那就要用断言。断言和错误处理是什么关系?(第四章)书上说看某事肯定如何时,就可以用断言。

题目三:软件有很多种:包装在盒子里的软件、基于网页的软件、企业或学校或某组织内部的软件、游戏、手机应用、操作系统、工具软件,选取三种软件,请分析它们各自的特点。
1)这些软件开发者是怎么说服你(陌生人)成为他们的用户的?他们的目标都是盈利么?他们的目标都是赚取用户现金么么?还是别的?
2)这些软件是如何到你手里的(邮购,下载,互相拷贝)
3)这些软件是如何处理Bug的?又是如何更新新的版本的?
4) 同一类型的软件之间是如何竞争的?
1.qq:
1)通过广告传播以及朋友之间的分享来让我使用软件。是盈利。他们通过q币,会员充值等来赚钱不只是现金。
2)应用商店下载。
3)通过更新和用户发现。通过让用户下载更新包来更新新的版本。
4)通过更强大的软件体验和对用户的吸引和创新。
2.支付宝
1)它致力于提供“简单、安全、快速”的支付解决方案,吸引用户。是盈利。包括网购担保交易、网络支付、转账、信用卡还款、手机充值、水电煤缴费、个人理财等不只是现金。
2)应用商店下载。
3)通过更新来处理Bug。通过让用户下载更新包来更新新的版本。
4)支付宝的产品定位是支付操作及周边电商金融衍生行为的工具型应用,实名与信用体系让用户很放心。
3.360安全卫士
1)通过广告传播以及朋友之间的分享来让我使用软件。不只是盈利。靠帮别人做广告,不如在自己官方上打上浏览器的广告,那就是做广告,安装流量赚钱,360软件上还有杀毒软件广告,也可以赚钱,还比如和别人做活动也赚钱。
2)应用商店下载。
3)通过更新和用户发现。通过让用户下载更新包来更新新的版本。
4)漏洞补丁扫描更精准,更新更及时,为各类突发漏洞提供及时有效的解决方案,更有利竞争。
4.列举你在使用上述软件时观察到的“特殊”现象,它们和硬件有什么不同?这些能说明软件的某些本质特性么?
更新很频繁,卸载很难卸载干净。
软件安装到硬件上,软件有破损是可以从新下载修理等等,而硬件很难修理最好换新的。
硬件是计算机的躯体。软件是计算机的灵魂。

posted @ 2017-04-16 23:05  胡萝卜xu  阅读(112)  评论(0编辑  收藏  举报