zoukankan      html  css  js  c++  java
  • [软件工程]软件工程第一次作业

    • 第一题:小学生四则运算
    • 第二题:我在看《构建之法》时的几个思考
      • 在4.3代码设计规范一节中的4.3.2的goto
        • 原文中提出只要有助于程序逻辑的清晰体现,什么方法都可以使用,包括goto
        • 但是在Dijkstra的《goto有害论》一文中提出了goto降低代码的可读性,如果大量使用goto的话可能会造成代码的行号异常复杂,更加难读,而且会造成程序流程的混乱,使理解和调试程序都产生困难。在某些情况下确实可以提升程序的逻辑,但是大量使用也会造成逻辑过于复杂。
      • 在4.4代码复审一节中,作者总结了6点复审的目的,而我认为还应该多加一点,就是复审代码的注释
        • 在我看来,同一个团队中,互相理解代码的一个重要路径就是注释。有时,程序员在改写代码是可能疏于去修改相应的注释,所以就可能造成注释与代码不符。而且有时注释写的晦涩难懂,也会影响交流,所以可以审核注释,使其更通俗化。
      • 在获取用户需求——用户调研一节中部分内容不是很理解
        • 在本节中前面的几个方法还比较好理解,但是8.快速原型调研并不是很理解,而且旁边的F模式插图,更是看得很迷
      • 在8.4竞争性需求分析的框架,图8.7中对用户无用的功能过于的绝对化,现在无用不代表将来无用(当然不包括被淘汰的无用功能)
        • 起初我也是认为对用户无用的功能就应该及时的剔除,但是在一次的夏令营中,我有幸遇到过一位搜狗拼音的项目经理,当时我也有同样的问题,搜狗拼音为什么加了那么多根本没什么用的功能,当时那位项目经理的回答是,因为未来谁都无法遇见,所以一个公司,一个团队想要谋求一些新的发展就势必要想象到未来可能出现的一切可能,所以只要有新想法,就将它发展起来,说不好就是未来的就是自己现在的一个没用的功能。
      • 在10.3规格说明书一节中,我感觉我看完了全部内容,但是好像还是不知道怎么去写一个比较好的说明书,应该以什么样的格式?都写些什么内容?
      • 在13.1.1按测试设计的方法分类一节中,我基本明白了什么是黑箱和白箱,但是黑箱、白箱这两种测试有什么自己的优点?而且在测试的过程中,我应该带入什么样子的测试用例?它们两种方法的测试用例是否相通?
    • 第三题:我选择了 游戏、操作系统、工具软件
      • 1)这些软件开发者是怎么说服你(陌生人)成为他们的用户的?他们的目标都是盈利么?他们的目标都是赚取用户现金么么?还是别的?
        • 游戏:游戏首先是自己独特的玩法,或者是自己很高的画质,很细致的建模和极佳的游戏体验。游戏基本上都是以盈利为目的的,不管是购买、充值还是间接的宣传目的,都是在盈利。大部分游戏是为了赚取现金,但是也有一些游戏是为了将用户引流至某个APP,赚取APP运营商的钱
        • 操作系统:操作系统一般是预装在设备中的,当然也有一些其他的系统,主要吸引用户的还是流畅度、外观、应用程序的兼容性。拿Windows系统来说,它的目标应该就是盈利,而一些Linux发行版则是为了公益。Windows系统是直接赚取用户现金,也有部分定制的Linux发行版也是直接赚取现金
        • 工具软件:吸引用户的主要应该是某些特别的功能。比如PS,AE等等。他们的盈利也是直接赚取用户的现金,当然也有免费的工具。
      • 2)这些软件是如何到你手里的(邮购,下载,互相拷贝)
        • 游戏:从网上下载,互相拷贝或者从一些平台上购买电子版或实体版
        • 操作系统:从网上下载、互相拷贝或者购买实体版
        • 工具软件:从网上下载、互相拷贝或者购买实体版
      • 3)这些软件是如何处理Bug的?又是如何更新新的版本的?
        • 游戏:都会及时更新,一般更新都是下载更新包,而不是下载整个软件
        • 操作系统:及时推送补丁,但是跨版本升级则需要重新安装
        • 工具软件:及时的推送更新,比如PS,会自动更新,但是如果升级版本,也需要重新安装
      • 4) 同一类型的软件之间是如何竞争的?
        • 主要就是增加用户的友好度,使软件更简单使用,降低价格或者就像360一样选择免费,转为赚取广告收入。
      • 5)列举你在使用上述软件时观察到的“特殊”现象,它们和硬件有什么不同?这些能说明软件的某些本质特性么?
        • 硬件一旦售出,除了质量问题,一般不用维护,但是软件则不同,需要及时维护
        • 软件的购买方式多种多样,可以购买电子版,也可以购买实体版,但是硬件必须购买实体版
    • 团队
      • 我们团队一共四个人,李怡龙,贺鸿琨,胡浪,季澈,其中季澈是我们的组长,团队介绍可以移步季澈的博客。
  • 相关阅读:
    Go语言学习之方法和接口
    Go语言学习之for循环
    Go语言学习之结构体
    Go语言学习之Map
    Go语言学习之值传递和引用传递解释And Go语言指针
    GO语言学习之切片(slice)
    GO语言学习之多维数组
    GO语言学习之数组
    GO语言学习之常用内置函数
    Oracle ORA28040报错解决
  • 原文地址:https://www.cnblogs.com/lee-li/p/8626264.html
Copyright © 2011-2022 走看看