个人总结
-
团队名称#
- “云”之巅战队
-
团队项目#
- 在线云盘
-
学习和使用的新软件和工具#
- mockplus
- vs MVC4
- vs web
- eclipse php
- 云共享数据库
- 云存储
-
学习和掌握的新语言和平台#
- 语言
- ASP.net
- HTML5
- CSS3
- javascript
- 平台:mvc4,Notepad++
-
代码量#
用MVC4.600-700左右,后面用Notepad++大概1700左右
-
学习和掌握新的方法#
以前虽然说在信息导论上接触过HTML和javascript,但是到现在忘得差不多了,都是通过w3school和菜鸟教程进行学习,虽说不是掌握全部,但是我感觉学习的还行,还有php语言也是在菜鸟教程上进行学习的,ASP.net是在ASP.net开发实例1200上面进行学习的,上面有一些比如说文件上传和文件下载的教程,而且还有cd教学视屏对每个例子的每行代码进行讲解。还有就是学习了软件开发的流程和软件的测试方法。 -
经验总结#
这次的团队开发对于我们组来说是失败的,最大的原因就是因为我们组的无论是我,还是另外两个组员基础都比较差,底子薄,所以说最开始的时候,花了过多的时间在学习各方面的知识上,因为对于我们来说基本上都是0基础,像php,ASP.net,还有CSS3,以前从来都没有接触到过,像HTML5和javascript还好,因为毕竟以前我们有过接触和学习,学起来不是那么的吃力。后期开发软件的时候,我们人手也不够,对于开发一个网站来说,东西比较杂,比较乱,也比较多,人手必须要解决,但是我们只有三个人,再加上朋毛东知是藏族的,解决汉语都很困难,学习各种语言对他来说也不现实,所以我对他也没抱太多的希望,毕竟这是现实,所以我安排他做最后答辩的ppt。我们两个既要写前端还要写脚本,有些效果还要用到CSS3来支撑,还要创建数据库,因为是云存储,必须还要解决一点的问题及时文件一旦上传,该放在哪?使用云存储,那要花钱,查了很多资料,网上说可以在自己的电脑上搭建服务器或是实行本地存储,但是Mvc上面的本地连接网上说的也模棱两可,把我俩搅得云里雾里的,再我们考虑到时间的问题因为在MVC上面而且还要网页显示的适配问题,往后可能还要出现更多的问题,所以我们就做了大胆的放弃,放弃了以前的mvc框架,后面虽说只是做出了网站的前端,但是我个人觉得,我们还是从中学到了不少的东西,我觉得我们之间的团队关系沟通还是不错的,还有就是比如像php,.net等后端语言的学习,从中获取到了不少的东西。还有最后一点就是,以后如果要开发项目一定要选择一个好的团队,队员之间技术互补,有责任心的队员,这点我深有体会。但是在选好的队员之前必须要先修己,这样才有资格得到好的团队的青睐。失败是为了更好的成功。 -
对下一批学弟们的告诫#
我们的后端最后还是没能做出来,所以说很遗憾,但是也不能一权否定,我们有两种开发的思路提供给你们,一是mvc4框架结构,二是用Notepad++写的网站的前端,两种想法任选一种都可以,还有一种就是将两者的代码结合,但是在结合的过程中会遇到很多问题,因为我到最后没能解决,但是在假期我也会尝试,如果我可以解决,后续我会将代码和博客完善,代码放在百度云盘提供给你们。因为在短时间内一时半会解决不了。希望你们能谅解,还有切记就是提前选好自己的队员,项目一开始的时候就要放在心上,不然到后期会特别麻烦。还有最重要的一点就是切勿将项目想的特别地高大尚,前提是先把最基本的框架搭建出来,然后你想在前端加点特效或是加点其它的功能这样才是王道,不然刚开始的时候把所有的功能都想的那么美好,到时候快到期末了,连项目的雏形都做不出来,那样无论对自己的团队或老师来说都特别尴尬。这是我自己的体会。 -
团队分析#
我认为我们团队处于磨合阶段,虽然现在我们的关系还是很不错,但是到目前为止我们的团队有三个人,一个是藏族同胞,实质上就两个人,但是我们三个的沟通方面却特别好,一学期下来也没出什么内部矛盾,我说大家一起去图书馆,大家也没有什么抱怨,我跟朱旭东两个人基础也不是特别好,但是两个人都在尽力的查找资料,对项目都挺上心的,对于现在的社会来说最重要的就是找一个好的团队进行团队合作的方式进行团队开发,单人单干不现实,所以感谢学校能给我一次这样锻炼自己的机会,让我们有机会去提升自己。 -
团队创意#
- 其一,刚开始我们就不仅要想着将文件的存储方式进行改变,因为百度和阿里等都有成熟的云存储的网站,所以我们想搞点跟他们不一样的东西,想来想去我们从根本出发,因为云存储的最初的想法就是想要摆脱物理存储的不方便的困扰,给顾客提供方便,所以我们就想为了顾客更好的对文件进行管理和查找,我们直接再上传的时候就对文件进行分房管理,音乐的上传到音乐的模块,视频的上传到视频的模块,这样既方便用户管理,又方便管理员进行管理,文件这样进行存储的话,管理员就可以在后端对文件上传的速度进行控制,对音乐和视频的网络传输相应的分配传输速度快的服务器,像文档图片这种,可以设置传输速度慢点的,这样既省成本,而且可以通过传输速度,可以在顾客上捞一笔,三全其美,何乐而不为。 - 其次,在各个模块设立快速搜索功能,只要输入文件的文件名或者是文件的编号就可以进行快速搜索,因为存的时候是按不同的模块进行搜索,必然的提高了搜索的效率。(其实有时候我们通常都是在写好的算法,其实有时候可以从另一种角度来思考,比如从界面下手将不同的东西模块化,然后在小范围内进行搜索,必然会降低时间复杂度)。 -
团队项目感受#
为了适应现在社会对IT的人的要求,学校开展团队项目开发的课程,最开始我特别排斥,因为一个人干事想要干好就会想办法去干,而一个团队中去干一件事,必然有卖力苦干的和无所事事的人,而且还不能说,这是一件特别苦恼的事,而且每个人都有自己的想法和创新,想要统一也会很难。所以我非常排斥,我宁愿自己一个人写代码,也不愿分工去做。但是经过了一学期的实践练习之后发现并没有实际想像的那么糟糕,而是收获了很多,比如就拿创新来说,一个人的想法只是一个想法,假如十个人就算有五种想法,把他们结合起来做出的东西,肯定会比一个人做出来的好。而且,同样的代码量一个人敲代码和分工五个人去敲,效率显而易见。所以说这次的项目练习对我感触特别大,不能因为一些小的因素,来影响大的进步。还有就是做项目的时候,就是不要看得太远,首先把东西的雏形做出来才是王道,之后可以在往里面慢慢的加些东西,比如特效,还有其他的功能模块等。 -
提出的问题及其回答#
-
问题一: 老师,在书的第十五页中提到软件工程的目标就是为了创造“足够好”的软件,书上提到了四点包括用户满意度其中包括用户满意度,可靠性,软件流程的质量,和可维护性。书中前面提到软件=程序+软件工程。所以一提到软件的好坏, 必然会涉及到程序,所以我斗胆冒昧问一下老师就是软件的好坏是不是还要看程序的复杂度和开发有效的软件而所需要的时间?所以判断软件的好坏是不是还要加上这两点呢?
答:通过一学期的学习我渐渐明白我们程序员编写软件最大的目的是为了给客户满足客户需求,给客户提供方便,一般来说软件的好坏,主要看运行的稳定和客户的使用反馈,至于怎么开发主要看程序员的开发方式和开发方法。软件的好坏客户主要是从宏观的方面看,不看开发的细节。 -
问题二: 老师,第五章5.2.1我看到我们班同学对主治医师模式存在歧义,对此我想发表一下自己的观点。
答:我认为主治医师模式举的例子很恰当。对于我们刚接触IT不到我们来说无论是从创新,程序的模块化,以及高效率的算法跟大型的IT公司没有可比性,所以我们不得不采用边学习,边实践的方法来做东西。因为我们没有充足的时间将一门技术熟到“通吃”的高度。但对于大型IT公司来讲,一定是首先把技术搞透彻,才会派你去干与这门技术相关的软件,因为只有这样自己才能及时高效的处理研发中出现不可预料的bug,就拿书上的例子来说,如果我们连人体基本的器官及各种神经血管都搞不明白,连基本的IT职业素养都没有,医院还会让我们进手术室吗?我们连门槛都进不去,更别说是主治医师。所以我认为这个例子很恰当,而且很有代表性。当然,这只是我个人观点。 -
问题三: 老师,对于第八章8.3获取需求分析我想提出一个问题,就是假如我在做需求分析的时候“需求捕捉”等各方面做得都很好,还给客户提供了一些他不知道的功能,但是客户说我也不清楚,如果你认为对企业有益的加在软件里更好,但是在软件开发出来之后他说那个功能并不好用,需要改动 ,但对于我们改动只会产生新的bug,而且后期产生的bug是不可预料的,还不如推翻重写,但推翻重写会耗费大量的人力资源的资金。老师,假如遇到如这类进退两难的事情, 我们该如何去解决呢?
答:通过学了一学期,我个人认为,一旦出现这样的事情我们无计可施,只能等着破产,但是为了垄断这样的现象发生我认为一定要在前期做好我们的需求分析和文档工作尽量避免这种现象的发生。 -
问题四: 老师,在第十二章的12.1(p235)中举了一个遥控器的例子,我对这个例子有一些自己的想法。
答:这个例子说是为了顾客的角度着想,对,这说的没错,因为社会发展的方向就是越来越多的高科技为人们服务,但是发展更需要我们的新和突破,从市场营销来说,我们相对于同行更有竞争力。相对而言老人毕竟是少数,随着科技的发展,人类的进步,不识字的人越来越少,如果我们把遥控器改成像书上画的那样的那样未免太单调。我个人有个想法,我们可以减,但是不要减得太多,我们可以在遥控器上设置最基本的几个按键,然后再加一个按键,一按那个按键,好多高级功能显示在屏幕上,然后各个按键不是像是传统的按键那样写个文字,我们可以改成互动的图片或是一些微动画来显现,一方面,让界面更加美观,另一方面也会会激起人们想要了解这个功能的那种欲望。如果这样设计,其一适应有老人的便捷性,其二,可以让程序员们的高级工能“秀出来”,其三,界面也更加美化,不像传统按键那样乏味,其四,对于市场营销来说在同行之间可以有竞争力。无论是从消费者方面的需求心理,还是程序员的突破创新心理,还是从他的市场经济效益来说,似乎都是有益的,这样不就一举三得了吗?何乐而不为呢? -
问题五:老师,在第十六章的 16.1.3(p325)中您提到说好的想法会赢,但我觉得这个不一定,为什么呢?我们做软件干什么?
答:就是为了给各个行业,各种人提供方便和满足他想要的需求,人类一直在朝着一个方向进步,那就是越来越高级。而软件则是帮助人进步的一个好的工具,而对于软件的创新,我个人认为这要分成两方面,其一,如果是前所未有的,史无前例的这种创新,有可能就会赢,比如说安卓系统和ios系统,没有这两个操作系统就没有今天的智能手机,为什么像类似的创新会赢?因为他为人提供了方方面面的便捷和需求。其次就是筛选,有好的想法固然很重要,但是要筛选和预期,假如想法特别好,东西也做出来了,但是在市场上企业和顾客不认同,别说提供便捷,有时反倒成为进步的累赘,那么我认为相类似的软件的创新也是失败的。当然,这只是我的世界观,我的看法。
-


浙公网安备 33010602011771号