课程: 软件工程原理和方法
课程链接:https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass2
作业要求链接:https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass2/homework/2706
我在这个课程的目标是:学习软件开发的流程,学习管理能力,问题沟通分析能力,加强自己的团队精神,团队合作能力。
这个作业在哪个具体方面帮助我实现目标:有很多大佬的心得,很多优秀的链接,通过阅读了解软件工程构建之法,分析出自己的的缺陷和不足,引发自己的思考。
正文
一.建立博客并介绍自己
1,博客地址:https://www.cnblogs.com/jh-blog/
2自我介绍:作为一个高考失败者,复读了一年的我才考上了西南石油大学,当初填报软件工程,最主要的其实是看中了计算机系的前景,对电脑的热情也并算不上多么强烈。说实话,刚进大学是很迷茫的,因为对这个专业不是那么的了解,不清楚自己的方向,在大学荒废了一年的时光。我从来不觉得自己是一个有恒心的人,大概我就是那种什么都会一点,但却不会深入学习的那种人,学习如此,娱乐也是如此。但是我兴趣广泛,学习能力还是挺强的,这也算是一个小小的优势吧。
二.阅读与思考
(1)回想一下你初入大学时对软件工程专业的畅想
- 当初你是如何做出选择软件工程专业的决定的?
当初选专业的时候,因为也不知道自己到底喜欢的是什么,又觉得软件工程就业前景不错,就选择了它。
- 你认为过去两年中接触到的课程是否符合你对软件工程专业的期待,为什么?
因为我学的比较差,跟同时学的其他同学相比差距不小,心理落差还是比较大的,而且有时感觉上课时学的会很枯燥,反正是没有达到自己的心里预期。
- 你觉得软件工程是你喜欢的领域吗,它是你擅长的领域吗?
我还是比较喜欢软件工程的,毕竟能做出一个成功的软件是一件很有成就的事情。但是我也不得不说,我并不擅长,感觉自己编程时会脑袋不够用。
- 将来你会选择从事软件开发相关的工作吗?是的话给出你想去的城市、公司和岗位,否的话给出原因
如果学的有所成果,还是希望最后能成为一个软件工程师,地方就在成都的小公司吧,因为毕竟自己也只有这样的水平。
(2)即将大三的你,对照前人们走过的路和描述未来发展,现在的你
- 自我感觉你已经具备的专业知识、技能、能力有哪些?已经写过的代码量是多少?
会一点C语言和C#,但是自我感觉所掌握的都是一些皮毛,没有深入学习过,写过的代码也就是平时上机作业和瑞格练习。
- 离成为一个合格的软件工程专业本科毕业生,在专业知识、技能、能力上还差距哪些?
很多基础的专业知识还没有完全掌握,更不用说时代还在进步,我们所需要了解掌握的会更多,而且编程代码量和经验太少了。
(3)大三是一个人生选择的十字路口,考研、工作、考公、出国,不同的选择在大三就有不同的努力方向。而无论考研还是工作的每条路径,也有许多不同的分支。
- 对照以上你阅读的前人们的经历,你的选择是什么?
大学生越来越多了,本来自己就学的不算太好,所以考研应该是最好的选择。
- 在这种选择下,你认为你相比其他同学来说有何优势,有何劣势?
优势是我对于学习并不是那么排斥吧,毕竟复读过一年。劣势就是缺乏了工作经验。
- 针对你的选择,你给自己的大三设定的规划安排是什么?
专心备战考研。
三.提有质量的问题
1.第三章团队对个人的期望中,提到了有团队的软件流程TSP,那是否TSP对成员的要求就决定了成员是否是一个优秀的队员呢?
2.软件工程质量是软件质量的一部分,软件开发的目的也是拿给用户来体验的,为什么衡量软件工程的质量是靠一套较为官方的理论,而不是当用户体验之后,由用户的反馈来决定软件工程的质量?
3.关于软件团队的模式,对于不同的团队,应该如何选择团队开发的模式。
4.在17章中绩效管理中如何衡量一个人在团队贡献中的绩效。
5.16章第1.5小结标题说 迷思之五 要成为领域的专家,才能创新,而后从侧面说很多行业巨头都非本行业的,如阿里巴巴和索尼,那为什么领域的专家有时候没有领域外的创新者那么有创意?
四.了解和调查源程序版本管理工具
Git:
优点:适合分布式开发,强调个体。公共服务器压力和数据量都不会太大。速度快、灵活。任意两个开发者之间可以很容易的解决冲突。离线工作。
缺点:资料少。学习周期相对而言比较长。不符合常规思维。代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息。
Bugzilla
优点:免费,有中文版支持
缺点:快速搜索结果不准确。只能管理缺陷。
SVN
优点:对目录的组织的管理更加方便,保证提交操作的完整性,整个团队的代码较为一致。
缺点:集中管理对服务器的要求较大,不适合开源开发。