<课程链接>
https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass2/
<作业要求的链接>
https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass2/homework/2706
<目标>
了解软件的基本知识,为将来设计软件打下良好的基础,并强化对于计算机中软件方面的认识
<具体方面>
软件的设计方式和技巧,以及自我如何在团队中发挥最大化作用
一.建立博客并介绍自己
1.<博客地址>
https://www.cnblogs.com/biscuits/
2.<自我介绍>
我来自四川绵阳,报考第一志愿就是软件工程。当时就觉得在当今社会中,软件的发展会是大趋势。于是,毅然决然
就报考了它。如果说“闪光点”的话,我觉得我自己的数学思维比较好,对于计算十分感兴趣,我觉得这算是一个优
点吧。但是我感觉我并没有把这种优势好好用到编程中,自己对于算法的了解,还处于最低的层次,这是我的不足,
不过,我现在也在一点一点去了解算法,争取取得进步!
二.阅读与思考
(1.)回想一下你初入大学时对软件工程专业的畅想:
·当初你是如何做出选择软件工程专业的决定的?
了解了各个专业以及当今社会发展的大趋势,是否好就业
·你认为过去两年中接触到的课程是否符合你对软件工程专业的期待,为什么?
较符合,设计软件都需要从基础做起,学习各类语言,学习了C,C#,其中C#让我感受颇深,做过了软件的登陆界面以及搜索功能
·你觉得软件工程是你喜欢的领域吗,它是你擅长的领域吗?
这个不好说,我更喜欢分析,计算。我更喜欢算法的设计
·将来你会选择从事软件开发相关的工作吗?是的话给出你想去的城市、公司和岗位,否的话给出原因
我更想去参与大数据相关的工作或者前端开发,对于软件开发,我觉得我自己的对于设计,兴趣并不是很大
(2.)即将大三的你,对照前人们走过的路和描述未来发展,现在的你
·自我感觉你已经具备的专业知识、技能、能力有哪些?已经写过的代码量是多少?
就目前而言,除了课堂上教的C,数据结构,C#,数据库以外,我自己学过了HTML,CSS,JS,还有基础的JAVA以及涉猎的PHP。就我的代码量,我觉得还是差了很多,当我设计网页时,我总是要去到处查询各种标签的用法,这就说明我自己平时写的少,没有花心思去写,只顾去设计,缺乏了实际操作
·离成为一个合格的软件工程专业本科毕业生,在专业知识、技能、能力上还差距哪些?
专业知识方面我觉得我掌握的太少,如今社会日益变化,语言都在更新,所以,平时要去了解技能上我觉得我差距有点大,知道的太过基础能力的话,自己参与过的项目太少,经验不足,不知道现在的所求,一切都是自以为
(3.)大三是一个人生选择的十字路口,考研、工作、考公、出国,不同的选择在大三就有不同的努力方向。而无论考
研还是工作的每条路径,也有许多不同的分支
·对照以上你阅读的前人们的经历,你的选择是什么?
我想要去考研,我想要提升自己的知识面,做研究或许更适合我,但我可能也会出去工作下,看看如今软件工作人员的生活状态
·在这种选择下,你认为你相比其他同学来说有何优势,有何劣势?
我更擅长分析,作报告,做算法,我有思维的能力,我的劣势是现在参加的项目太少,无法丰富自己的思维模式,要多多参与平时的锻炼,提升自我的意识
·针对你的选择,你给自己的大三设定的规划安排是什么?
学好基础课程外,在图书馆积极备考,同时参与老师们的实验,提升自己思维
三.提有质量的问题
1.快速看完整部教材,列出你仍然不懂的5到10个问题,发布在你的个人博客上。注明是哪一章哪一节。要有观点、
有证据或分析。字数不是直接的考核标准,但是要求篇幅长到能把观点表述清楚。
(1.)第五章5.2中,我不了解团队模式分工为啥如此之杂,就现实而言,优秀的公司有2类人物,负责基础的,其次
就是负责解决重大问题的,其实并没有那么之乱,大家在项目中承担的角色不同而已。
(2.)第五章2.3中,书本中列举的模式感觉很少,缺乏了一些基本的模式讲解,例如构建集成,统一过程模型等等,
其次他的讲解也没有把模式的做法详细说出
(3.)第八章的8.3,书本中的用户调研,就书本列举的方式太过单一,就当代用户来说,很多都是在我们的软件做到
一半时,突然提出,我们很难马上做出改变,所以,我们应当改进我们我们的了解方式,不能简简单单的直接套用
老方式,是时候开展好的方法了
(4.)第九章9.5,本节中对它说的应对风险中制定应急计划的措施感到不懂,公司对一个项目会有投资,但投资金额
却是有限,我们想的应该是在这个金额内如何规避风险,而不是我们另外再拿一笔资金来解决,公司不可能对每个
项目都这样做,那公司运作就会出现问题
(5.)第十六章16.3,本节中我对创新的招数不是很了解,尤其是SWOT模式,它的内部和外部分析是不是太广了,我
们编写软件其实就是从用户,软件本身性能分析,我们可以把问题细节化,让分析面更广更大
四.了解和调查源程序版本管理工具
Git:
优点:
1.可以离线工作
3.适合分布式开发
4.公共服务器压力,数据量都不会太大
缺点:
1.不符合一般思维
2.模式上比SVN更加复杂
GitHub:
优点:
1.是一个版本控制系统和协作工具,可以用它来发布工作
2.可以项目存档,多人分享交流
缺点:
1.耗费时间多
2.不是最好的设计跟踪工具
Trac:
优点:
1.灵活性强
2.具有比较完备的设计
缺点:
1.不支持多项目
2.中文化存在问题
3.核心组件缺乏