课程:
https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass2/
作业要求:
https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass2/homework/2706
课程目标: 理解掌握软件工程相关的原理、流程,了解一名合格的软件工程师的基本素质需求。
具体可以帮助我的方面: 其可以帮助我学习,了解软件开发相关的流程、模式,让我明白一名合格软件工程师在团队合作,个人技术,分析客户需求等方面应有何等的经验与能力,并告知我如何成为一名合格的软件工程师。
建立自己的博客:
我的博客:https://www.cnblogs.com/XiaoPB/
自我介绍:
我叫庞斌,是西南石油大学软件工程专业的学生。有时候,遇见难以短时间解决的问题,我总是会花很多时间去思考。直到我把这个问题完全解决或者过了很长时间我还没有解决的思路,我才会放弃。但是,如果是后者我会在知道解决方案后,又会花很多时间去思考整理这类问题的核心。只有确定我可以在后面遇见同类问题的时候才会暂时放下。我觉得我可能就只有这点算是一个优点,但是,它同时也是我的一大缺点。因为这种处理问题的方式,我常常做事会效率很低,希望以后可以渐渐提升自己的效率吧。
阅读与思考:
(1)回想一下你初入大学时对软件工程专业的畅想
- 当初你是如何做出选择软件工程专业的决定的?
- 高考结束后,我对未来的方向很迷茫,我不知道自己有什么长处,也没有什么什么感兴趣的科目,最后选择软件工程的原因主要还是觉得这个专业的就业形势不错并且觉得软件开发之类的东西很酷,于是就选择了这个专业。
- 你认为过去两年中接触到的课程是否符合你对软件工程专业的期待,为什么?
- 老实说,其实过去的一年多里,我接触到的课程并没有完全符合我对专业的期望,因为虽然我接触到了cc++之类的基础程序代码的编写,但是并没有实际接触到软件开发的具体相关内容,我对自己能做到什么依旧有些迷茫。
- 你觉得软件工程是你喜欢的领域吗,它是你擅长的领域吗?
- 我其实比较喜欢这个领域,但是他并不是我擅长的领域,这与我个人努力不够有很大关系。
- 将来你会选择从事软件开发相关的工作吗?是的话给出你想去的城市、公司和岗位,否的话给出原因
- 不出意外我是会选择从事软件开发相关的工作,但是目前我对自身的发展方向的迷茫和个人能力的不足,我还没有考虑到公司和岗位的问题。
(2)即将大三的你,对照前人们走过的路和描述未来发展,现在的你
- 自我感觉你已经具备的专业知识、技能、能力有哪些?已经写过的代码量是多少?
- 目前就专业知识,我已经学习了c++,数据库,数据结构等课程,但是除了部分代码编写,很多基本原理都还不熟悉,甚至有部分已近遗忘了。因为对专业知识的半罐子水平,我自身的代码量也很少,除了老师布置的任务自己很少实践。
- 离成为一个合格的软件工程专业本科毕业生,在专业知识、技能、能力上还差距哪些?
- 首先作为一个本科生,我自身的基本功即相应原理知识,代码的编写能力,都有不足,并且曾经很熟练的技能都有些手生和遗忘。其次,对项目的实践经验几乎为零,还完全不能达到一个软件工程的本科大学生水准。
(3)大三是一个人生选择的十字路口,考研、工作、考公、出国,不同的选择在大三就有不同的努力方向。而无论考研还是工作的每条路径,也有许多不同的分支。
- 对照以上你阅读的前人们的经历,你的选择是什么?
- 对目前个人能力的判断,我会选择往工作方面去努力。
- 在这种选择下,你认为你相比其他同学来说有何优势,有何劣势?
- 一开始我就决定毕业后直接找工作,那么有了明确的目标,以后我就不会在考研和考公方面用心思,就可以把更多的时间用去弥补之前的专业知识的漏洞,为之前的不努力行为买单,最后有底气和能力找到一份自己满意的工作。
- 针对你的选择,你给自己的大三设定的规划安排是什么?
- 在大三的阶段,我一方面要开始确定自己以后的工作岗位,并开始查找符合自己目标及期望的公司,并为之做功课。一方面要更加认真地学习专业知识,很好地完成方案学习计划。另一方面我还要花更多时间去修补前一年多的时间里欠下的“账”,夯实自己的基础。再就是尽可能地丰富自己的实际项目经验,为以后的工作提供经验基础。
提出问题:
1:迷思之二:大家都喜欢创新(P342)
“不但大众不喜欢创新,甚至创造者自己都不例外。。。。。。这时候有个年轻的发明家上门推销他的创新——电话。”
创新是现在许多人都在追求的目标,但是往往一个优秀的创新在后期还会为你提供不少烦恼。比如:你的创新侵犯的大多数的人利益,难以传播下去,甚至有可能到最后这个创新还会使得你自己的利益受创(现在人工智能是IT行业的一个创新方向,但是最后他的发展会导致不少人的失业下岗,甚至最后一些相关的IT相关人为从事的工作都能被人工智能取代)这个时候我们该怎么看待这种创新?在面对阻力的时候,作为一个人想要安稳生活在社会中的人,我们就该放弃这些创新吗?
我们创新后的产品在经过一段时间的发展趋于成熟后,这时出现了新的看起来更有前景、用途更加广阔的创新性产品,我们该怎么应对这种创新的出现?又怎么对待自己那已经成熟创新型产品?
2:迷思之四:创新者都是一马当先(P346)
在这部分书中罗列了不少先行者被后起者超越的例子。在看到这些例子后我不免想到,自己首发的创新,却被其他后来了解到得到更加广泛和更好的开发利用,那么作为首发人肯定会有遗憾和不甘。我们有了创新之后,我们是应该立刻发表,还是在创新之后先自己内部有一定的开发,并在某些方面有了长足的领先发展后在发布?前者很容易出现后来者上的情况,因为世界这么大,一个刚刚诞生的创新,哪怕是多么厉害的天才团队都不可能完全开发它,并且在这项创新中保持着永远领先的地位。而后者则可能出现自己开发过程中有人有了和自己一样或是差不多的创新项目,然后他直接发布了,而作为先发现的人失去了首发的位置,甚至是相关专利。面对这两种情况我们该如何平衡和取舍?
3:迷思之五:要成为领域的专家,才能创新
一般能被称为一个领域的专家的人,他们是在一个领域有着不俗能力并且也是有着不小贡献的人,但是他们往往会陷入自己的固化思维,遵守着自己的“规矩”,这是不利于创新的。就像这一节中往往领域内的专家没有领域外的创新者有创意。那么我们应该怎么维持着自己的创新性思维呢?
4:迷思之八:创新者就是冒险家
创新有时是一项很具有冒险意义的行为。该小节提到的许多特点确实是创新者需要具备的,但是就“不是喜欢冒险,而是能从多次失败中恢复过来并继续努力”“不太在乎面子,而在乎自己能否进步”两点,针对那些创业企业家们来说这可能是没问题,但是作为现实社会的一些团队中的成员,我们并没有那么多次机会和足够的成本让我们失败。而面子在某一方面代表着权威性,如果在这方面多次出现有损现象,难免会让客户出现失望以及不满。那么在实际的工作中我们也该秉持着这些创新特点?
有时候我们并不能完全判断创新产品的所有价值,而就其研发阶段表现价值不足预期或者负收益我们怎么判断是否该坚持?
5·
在阅读完16章,我明白创新是企业发展的动力,但是创新并不是一件简单的事,但是他又是一种提升自己价值的最快途径,作为一个并不算是人才的人,但是自身创新能力也不强,我们该如何提升自己在团队中的价值,或者如何培养在软件开发方面的创新思维?
了解和调查源程序版本管理工具:
1.Microsoft TFS:
优点:任务版上能将需求、项目进度一览无余,对于小团队而言,比甘特图更有用,集成了项目管理、版本控制、BUG 跟踪,能有效实现 SCRUM,能与 VS 无缝接合。
缺点:搭建、维护tfs比较复杂,硬件要求也比较高。
2.GitHub:
优点:他支持多人共同完成一个项目,因此你们可以在同一页面对话交流。 创建自己的项目,并备份,代码不需要保存在本地或者服务器,GitHub做得非常理想。Git最好的特性之一是能够跟踪错误,这让使用Github变得更加简 单。Bugs可以公开,你可以通过Github评论,提交错误。在GitHub页面,你可以直接开始,而不需要设置主机或者DNS。
缺点:不适合新手,他不是捕捉创意过程和记录创意点子以及设计跟踪的最佳工具。
4.BUGZILLA:
优点:BUGZILLA不收费, BUGZILLA现在有中文版支持,操作方便。
缺点:BUGZILLA只能管理缺陷
5.Apple XCode:
优点:可以自动创建分类图表。 自动提供撤消、重做和保存功能,无需编写任何编码。
缺点:更新版本后,某个插件可能会失效。
参考文献:https://www.cnblogs.com/yuyue1216/p/5281544.html