我的第一次作业

作业归属的课程                      课程链接(软件工程原理与方法)
作业要求 作业要求
个人课程目标 进一步理解软件工程原理,找准个人需要努力的方向
作业帮助我实现目标的具体方面

需求分析以及软件的设计与实现

 

 

 

 

 

 

 

 

本人博客园地址:我的博客

一.个人介绍

  我目前就读于西南石油大学,是一名软件工程专业大二的学生。个人一直蛮喜欢涉足于计算机方面,也很喜欢思考一些有趣的问题,但疏于懒惰,并未小有成就。

对于专业外的其他爱好而言,我更喜欢打篮球,尽管并不是十分出色,但我一直十分享受这项运动带给我的快乐和成就感。我从很小的时候就开始接触篮球,从起

初什么都不会通过向其他人学习的方法和过程到能够沉浸于每次的玩乐中,这是我庆幸的事情。希望我专业的过程也如这般样子。

二.阅读与思考

(1)回想一下你初入大学时对软件工程专业的畅想

  首先,我是转专业过来的学生,因为自己高考的成绩不是很理想,所以自己选到了一个自己并不感兴趣的专业,于是就在为转专业做准备。当时个人对软件工程专

业不是很了解,但是我衡量了自己兴趣以及未来发展的方向,最终选择了本专业。在过去两年的学习中,接触的专业课程很多,有编程语言的学习比如c语言和c#,

也有数学方面的课程比如离散数学和线性代数等等,但是个人而言我所学习的内容彼此之间独立性比重较大,言外之意就是这些所学的内容并没有在具体实践中应用

或者彼此关联,但这也极有可能和我自己很少去实践有关。相对于其他专业而言,个人还是蛮喜欢软件工程这个专业,虽然我并不是很擅长这个专业,但是我对其挺

感兴趣的,我也会努力去一步步理解和涉足这一专业。对于将来我当然十分愿意从事软件开发相关的工作,因为它既与我所学专业有关又是我的兴趣,但未来难以估

测,我更倾向于符合实际的事情,也希望留在成都这座城市吧。

(2)即将大三的你,对照前人们走过的路和描述未来发展,现在的你

  本专业已经学习了c语言、c#、数据结构、数据库等很多门专业课程,但基于个人实践较少,基本上难以达到熟练的程度,甚至慢慢遗忘部分内容。而且我写过的

码量除了课程要求的作业以外的代码几乎少之又少。对于成为一名合格的本专业的毕业生,一方面我需要对我个人不熟练的专业课程加以巩固学习,另一方面,还要

适当拓展本专业要求课程以外的专业方面的内容,但前提一定是专业课程学精。道理如此,不实践也只是空话而已.....

(3)大三是一个人生选择的十字路口,考研、工作、考公、出国,不同的选择在大三就有不同的努力方向。而无论考研还是工作的每条路径,也有许多不同的分支。

  阅读了以上博客,其中最令我有感触的是刘帅:在失望中寻找希望,因为我目前的处境和状态与他博客中所描述的情况有些相似的地方。通过了解他过去的一些经历,

同时结合自身实际,我更倾向于选择考研这条路,但是这不是我的必然选择,未来的发展是难以预期的,我会选择与时相契合的方向发展,但终归要学好本专业知识。

相比于其他同学,我或许更加喜欢思考一点点吧,这仅仅只是个人的想法,但是另一方面,我绝大多数时间都是在幻想着做某些事情,却疏于实践,虽然自己一直明白

这个道理,但是却一直无法将其改正,这就是我最大的劣势。大三自然是我人生中十分重要的一个阶段,我自然不会拿自己未来开玩笑,自己之前不熟悉的专业课内容

要慢慢的重新细致温习,对于本专业要求的课程都要好好的研习,希望有自己的想法和见解(个人认为这一点很重要)。  

三.提出有质量的问题

  •  问题1: 

  来源:第五章第一节-非团队与团队

  提问:在讨论非团队问题时,那七八个人被视为乌合之众是否有些不当?

  个人理解:他们在自己的纸板上写着“Java,五毛一行”“网页前端,不酷不要钱”等内容说明他们对自己所写方面的领域还是比较擅长的,当听到板砖赚钱的消息时

  他们或许只是迫于生活的压力而选择妥协。他们缺少的只是一个展示技能的机遇,如果他们其中真的有能力之辈,遇到伯乐,或许会创造不凡的成就。

  • 问题2:

  来源:第八章第三节-获取用户需求-用户调研

  提问:为什么在谈论用户调研方法时,没有通过视觉角度获取用户需求的方法?

  个人理解:软件开发过程中所面对的用户大部分应该对软件了解的比较少,对于他们想要实现的功能或者说是需求不能有准确的表达,导致用户需要的和用户表达的内

容难以匹配,所以通过这种交谈式的调研是不能很好的获取用户需求的,但是其依然十分关键。另一方面,作为调研人员,个人认为可以制作一些能够实现某些功能的

模块展示给用户,通过视觉的角度去获取用户的需求,同时在展示的过程中与其交流用户需要或者更倾向于实现的功能模块,或许能够获得更为准确的用户需求。

  • 问题3:

  来源:第十二章第一节-用户体验的要素

  提问:在获取用户体验要素时,是否可以让内部开发人员也亲身体验自己团队开发的软件?

  个人理解:内部开发人员是软件的设计与开发者,用户的体验对他们来说是一种反馈,以便进行实时的修改,个人认为他们可以自己亲身体验他们自己软件,作为真正

的体验者,能够亲身了解软件劣势,这也避免了交流存在的弊端。另一方面,软件面对的用户是大众,所以并不是所有的人都能够轻易的理解软件的应用的方法,尽可

能将软件的使用方法做简单能够增强用户的体验。

  • 问题4:

  来源:第十六章第一节-迷思之三:好的想法会赢

  提问:Dvorak键盘为什么不能的到广泛普及使用?

  个人理解:QWERTY键盘的普及只是大众已经习惯了这种键盘,然而习惯也是经历了很长一段时间才适应的,如果能够给予Dvorak键盘一段被适应时间,我认为可能会

实现比较大的价值。但是这并不能排除会在这段时间内减缓部分行业的发展,但是等到大众真正熟练时,这些损失会很快的被弥补同时会创造更多的价值。

  • 问题5:

  来源:第十七章第二节-领导力-知人善任

  提问:对于不爽的贡献者,如何能够调动他们的积极性?

  个人看法:对于这类人而言,他们的技术是得到肯定的,部门或者公司需要这些人,企业应当肯定他们的能力,重视他们的存在,并且应当给予其一定的奖励或者鼓励,

调动他们的积极性,让他们发挥出他们的高能力。积极性对于企业十分重要,它能够感染周围的人,不仅仅是在软件开发方面有所帮助,还能提高整个团队的效率与幸

福感。

--注:以上均是本人个人观点。

四.了解和调查源程序版本管理工具

  • Git:

优点:1.任意两个开发者之间可以很容易的解决冲突。

           2.公共服务器压力和数据量都不会太大。 

缺点:1.学习周期相对而言比较长。

           2.代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息。

  • Microsoft TFS:

优点:任务版上能将需求、项目进度一览无余,对于小团队而言,比甘特图更有用,集成了项目管理、版本控制、BUG 跟踪,能有效实现 SCRUM,能与 VS 无缝接合。

缺点:搭建、维护tfs比较复杂,硬件要求也比较高。

  • Github:

优点:1.速度快, 成熟的架构,开发灵活

           2.任意两个开发者之间可以很容易的解决冲突

           3.良好的分支机制,可以让主干代码保持干净

           4.部署方便。基本上下个命令就可以用

缺点:1.资料少,学习成本比较大,学习周期比较长,要求人员素质比较高

           2.代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息

注:第四项中源程序版本管理工具本人并未使用过,资料来自于百度。

   

 

posted on 2019-03-20 21:22  MAPLE1  阅读(245)  评论(2)    收藏  举报