软件工程作业-阅读与提问

文章目录

前言

项目内容
这个作业属于哪个课程课程社区
这个作业的要求在哪里作业要求
我在这个课程的目标是学习软件开发过程
这个作业在哪个具体方面帮助我实现目标了解软件开发的基本过程

阅读与提问

  • 如何客观全面地评价一个软件是一个好的软件?有哪些因素。

    什么是好的软件?一些同学认为,所谓好软件,就是软件没有缺陷(Bug),所谓软件工程,就是把软件中的Bug都消灭掉的过程。这的确是抓住了软件工程的一个要素。和软件打交道的专业人都知道软件有“Bug”,软件团队的很多人都整天和Bug打交道,Bug的多少可以直接衡量一个软件的开发效率、用户满意度、可靠性和可维护性。

    诚然,Bug的多少的确是衡量一个软件好坏的重要因素,但是除此之外还有什么其他因素吗?例如课堂上讲过的使用率很少的功能,功能的丰富是否是衡量好坏的一个重要因素呢?同时现在越来越多的功能被开发团队加入到一个软件之中,这使得现在的软件体积越来越大,越来越臃肿,同时功能的丰富也会使得原本的软件不再“纯粹”。我们该如何建立一个客观全面的机制,来评价一个软件的好坏呢?

  • 如何检验单元测试的正确性、全面性?

    绝大部分软件都是由多人合作完成的,大家的工作相互有依赖关系。最典型的例子就是,某人负责的模块的功能被其他人调用。软件的很多错误都来源于程序员对模块功能的误解 、 疏忽或不了解模块的变化。如何能让自己负责的模块功能定义尽量明确,模块内部的改变不会影响其他模块,而且模块的质量能得到稳定的、量化的保证?单元测试就是一个很有效的解决方案。

    现在市面上的软件产品基本上都应该是通过了单元测试的,但是我们依旧会遇到软件时不时出现Bug的情况,尤其是在加入新的东西的时候,往往会出现很严重的Bug。在这种情况下,单元测试该如何处理?又该如何评判单元测试的好坏与完备?又改如何处理模块与模块之间的Bug呢?

  • 在学习语言越来越多的情况下,我们该如何解决使用频率不高语言的低层次问题?

    巴克斯顿说技能的反面是”Problem Solving“ 解决问题 ",这个听起来有点绕,我们看看IT人十分熟悉的一个例子吧。一个 IT 专业的大学生来面试,简历上写“技能:精通 VisuaI Studio C#编程“。于是面试官请他用 Visual Studio IDE 写一段程序 。 一个”不精通“的面试者的编程过程实际上就是一个“解决问题"的过程。例如:

    • 嗯,怎么开始一个C#的命令行程序呢?
    • 定义数组是怎么弄的?是”int [] arr“还是“int arr []”,还是ArrayList,还是Array 。我平时都是上网查的。哦,我不知道还有MSDN网站。
    • 嗯,为什么编译没过呢,哦,这里少一个分号。
    • 嗯,怎么设断点?怎么定义命令行参数?额,我要查一查······

    你发现他把时间都花在”解决(低层次)问题”上了,你想考察的“算法技能"、"C#程序设计技能"都无暇顾及。注意,这是在他认为非常精通的编程工具和编程语言中出现这样的问题。你要这样的员工么?

    现在市面上有很多主流语言,如C、C++、Java、Python等,他们的语言和规则又不尽相同。出于学习原因,我都学习使用过,但在实际生活中,我往往在不同的时间段使用不同的语言,这也就导致我对于不同语言的规则往往会记错,有时也要去查语言的说明文档,即把时间花在了”解决(低层次)的问题”上了。事实上,我们在实际使用过程中往往只钟情于一两种语言,对于其他语言,我们不是不会,只是不常用,在这种情况下,我们又该如何解决“低层次问题”和“算法技能”之间的关系呢?

  • 如何将代码和注释写的“赏心悦目”呢?

    我们经常抱怨阅读别人的代码很难,我们自己在写代码的时候,是否考虑到如何让代码更易于阅读和
    维护呢?

    对于代码注释,我们该如何将其写的简洁、目的明确呢?这是否有一套模板能让我们套用呢?对于功能的使用或调用,我们又有必要给出一个例子来说明呢?

  • 在当前的社会背景下,在IT行业的我们又该如何”创新“?

    最近几年,我们整个社会似乎对创新都很感兴趣,媒体上充斥着创新型的人才、创新型的学校、创新型的公司、创新型的城市、创新型的社会等名词。有些城市还把“创新"当作城市的精神之一,还有城市要批量生产上千名顶级创新人才。IT行业也充斥了很多创新的新闻和掌故。对于创新,有一些似是而非的观点和传说(Myth,迷思)。

    在当前的社会背景,我们在IT行业从事时,我们该如何创新,在哪里创新,创新之后的价值在哪些方面呢?虽然现在计算机还有很多地方的潜能没被发挥出来,但是,在我们将功能实现之后,又该如何认为这是有价的呢?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
校园悬赏任务平台对字典管理、论坛管理、任务资讯任务资讯公告管理、接取用户管理、任务管理、任务咨询管理、任务收藏管理、任务评价管理、任务订单管理、发布用户管理、管理员管理等进行集中化处理。经过前面自己查阅的网络知识,加上自己在学校课堂上学习的知识,决定开发系统选择小程序模式这种高效率的模式完成系统功能开发。这种模式让操作员基于浏览器的方式进行网站访问,采用的主流的Java语言这种面向对象的语言进行校园悬赏任务平台程序的开发,在数据库的选择上面,选择功能强大的Mysql数据库进行数据的存放操作。校园悬赏任务平台的开发让用户查看任务信息变得容易,让管理员高效管理任务信息。 校园悬赏任务平台具有管理员角色,用户角色,这几个操作权限。 校园悬赏任务平台针对管理员设置的功能有:添加并管理各种类型信息,管理用户账户信息,管理任务信息,管理任务资讯公告信息等内容。 校园悬赏任务平台针对用户设置的功能有:查看并修改个人信息,查看任务信息,查看任务资讯公告信息等内容。 系统登录功能是程序必不可少的功能,在登录页面必填的数据有两项,一项就是账号,另一项数据就是密码,当管理员正确填写并提交这二者数据之后,管理员就可以进入系统后台功能操作区。项目管理页面提供的功能操作有:查看任务,删除任务操作,新增任务操作,修改任务操作。任务资讯公告信息管理页面提供的功能操作有:新增任务资讯公告,修改任务资讯公告,删除任务资讯公告操作。任务资讯公告类型管理页面显示所有任务资讯公告类型,在此页面既可以让管理员添加新的任务资讯公告信息类型,也能对已有的任务资讯公告类型信息执行编辑更新,失效的任务资讯公告类型信息也能让管理员快速删除。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值