软件工程基础第一次作业:阅读与准备

 

作业课程 https://edu.cnblogs.com/campus/xnsy/Autumn2019SoftwareEngineeringFoundation
作业要求 https://edu.cnblogs.com/campus/xnsy/Autumn2019SoftwareEngineeringFoundation/homework/4517
课程目标  深入掌握软件工程设计理念,拓展思维,提高逻辑思维能力,提高编程能力,掌握软件开发
具体方面  阅读,通过阅读前辈的经验之谈,学习经验,少走弯路

 

 

 

 

 

 

 

作业正文

 

一、个人信息

姓名 刁泳清
学号 201831061116
博客链接 https://www.cnblogs.com/diaoyongqing666/

 

 

 

 

1.个人介绍

       本人男,白羊座,喜欢唱,跳,rap,篮球(真的!)。要说闪光点,应该就是我利用自己的特长跆拳道能够让自己的生活滋润一点,能满足自己偶尔产生的购物欲望。跆拳道从小就开始练了吧,至今少说也得有15年了,当做一门兴趣爱好来学的,所以没打算以后靠这个吃饭,挣点零花钱倒还是不错。说说专业吧,选择本专业时的初衷是以为会是一门有趣的专业,能够学习到很多电脑软件的使用技能,但从刚开第一门专业课的那一刹那,我就明白了这是一个浩瀚无垠的领域,是一个真的会学到秃头的方向,原来我们是计算机食物链最底层的开发者,而不纯粹是那些好看且实用的软件受用者,除了代码还是代码,看来当时我对计算机科学与技术这门专业误解很深。。。但是!好在通过不断地代码编译和学习,我苦中作乐,逐渐体会到了编程的乐趣,每当看着自己敲出的密密麻麻的代码,并且提示0 warning,0 error的界面,我内心却是满满的成就感。

通过本门课程的学习我想了解及掌握什么是软件工程,为以后的软件开发工作积累知识和经验,也为提高自己的思维能力而不懈努力。

2.阅读与思考

(1)

  • 当初你是如何做出选择你所在专业的决定的?

       从小自己就对计算机非常感兴趣,当时在我还没出生的时候父亲就已经在家里准备了一台电脑,当时操作系统好像是windows 98,后面更新成了xp。可能当时有一点所谓的天赋,计算机的很多功能在不参考说明书的情况下自己能够摸索出来,大人也对我赞叹有加,在这种虚幻的糖衣炮弹包裹之下我变得没那么再爱探索,逐渐沉迷了游戏,对于计算机更深层的探索停滞不前,但自己对于计算机依然保持着浓厚的兴趣,因此,进入大学,为了找回儿时的那份热情,我毅然决然选择了计算机相关专业。

  • 你认为过去一(两)年中接触到的课程是否符合你对你自己所在专业的期待,为什么?

        比较符合吧,但还是有一些失望,就如我前面所说的,刚开始我对于本专业的误解较深,自从上了大学第一堂专业课,反差还是很大的,但后来逐渐找到编程的乐趣,与其禁锢在理想与现实的落差中不如勇敢去接纳,享受苦中作乐。计算机科学与技术专业有时候偏理论的课程较多,并且自学占很大一部分,仅仅靠课堂学时不足以掌握所学课程,对于像我一类对自己有更高要求的同学,自然花费在其中的时间和精力更多,需要做一些舍去。

  • 你觉得你所在的专业是你喜欢的领域吗,它是你擅长的领域吗?

        是的,是我喜欢的领域,我比较喜欢有挑战性的东西,至于擅长算不上吧,还在发掘自己的潜能道路上一直前行。

  • 将来你会选择从事和你专业相关的工作吗?是的话给出你想去的城市、公司和岗位,否的话给出原因

       会,想去沿海的城市,像上海,南京,杭州,无锡之类互联网行业发展很好的地域,公司自然越牛越好(还是要跟自己能力相匹配。。),岗位的想往人工智能相关领域发展。

(2)

  • 自我感觉你已经具备的专业知识、技能、能力有哪些?已经写过的代码量是多少?描述你做的最复杂的项目/作业。

     专业知识有C,数据结构,C++(正在学习中),软件工程基础(正在学习中),能熟悉使用C语言。代码量应该2000行左右吧,最复杂的应该是大一下学期的程序设计实践操作课程写的京东购物管理系统,但感觉自己写的还不够好,还有很多可以改进。

  • 离成为一个合格的本科毕业生,在专业知识、技能、能力上还差距哪些?

     专业知识差的就多了,感觉还有很多要学习,技能和能力就是思考问题的方式,编程设计和实践能力,还有逻辑思维能力。

(3)

  • 对照以上你阅读的前人们的经历,你的选择是什么?

    考研,想更深入学习计算机知识,并且自己对人工智能感兴趣,这对于本科生来说还不够,需要更高学历。

  • 在这种选择下,你认为你相比其他同学来说有何优势,有何劣势?

       优势:主观上来讲自己自制能力较强,想要去做的事会尽自己最大能力去实现,客观的话有一些亲戚朋友可以给我一些考研上的建议和支持。

   劣势:自己时间课余时间较少,由于自己一些矛盾还未解决,后期会逐渐解决。

  • 针对你的选择,你给自己的大三设定的规划安排是什么?

      学习好专业课程,有机会的话去接触一些实际项目开发,找公司实现,丰富自己的经验。

  • 你对于实现自己的梦想已经做了或者计划做什么样的准备?

      由于大一去忙一些别的事情,导致没有加入团队学习,大二想进一个团队,分配更多时间在专业上。

3.有质量的问题

①6. 敏捷流程

第六章讲到的敏捷开发原则中有一条经常发布可用的软件,发布间隔可以从几周到几个月,能短则短。这里提到的经常发布软件我认为不太现实,就算在如此短的时间内发布软件其质量肯定会有所下降,我们都知道软件开发很重要的一点就是要进行维护,保证软件的可持续性。开发软件时间过短,软件在应用的过程中很容易出现错误,这对于维护会产生很大的阻碍,并且对用户的体验也很差。

②7.2  MFS基本原则

在7.2.3中讲到MFS中充分授权的管理方式的核心观念是最难在中国公司实行的一部分,因为“放权”的管理理念和很多中国公司企业文化不相符。为什么会行不通呢?我上网查询了一下,因为一些管理者觉得让下属作出一些能影响自己的决策很不习惯,并且管理者总觉得自己比下属能干。即使授权也会有很严格的要求,对新人的潜力和价值没有有效的预测。因此为何中国的企业很多老大走了下面的人会饿肚子,而国外的公司就算走了关键人物公司还能运转,这就是权力的下放出了问题,太依靠老板或关键人物的个人能力。

③11.5.2 每日构件

11.5.2中讲到每日构建,但书中没有对构建的明确定义,构建到底是什么意思?书中提到的成功公司和不成功公司在构建上有什么具体的差距?

④16.1.5 要成为领域的专家,才能创新

为什么要成为领域的专家才能创新?书中说到“70%的创新者说,他们最成功的创新,是在他们的拿手领域之外发现的”。我比较赞同这句话,在自己领域内研究的内容很容易受到局限,反而当它延伸到另外一个领域中发现会有更大的应用空间和可创新性。比如说马云,最早是学习英语专业,但后来自己创业,从最早的中国黄页到如今的阿里巴巴商业帝国,马云的创新之路反而不是在自己英语专业的领域内完成。回到开始,标题所说的要成为领域专家才能创新,但目前看来很多创思都是由年轻一代的青年想出来的,并非是一定要成为专家才能创新。

⑤16.5创新和作坊

一个团队人数多少才算合适?书中马云指出“小即是美”,并且提出三个潮流支持小作坊的成长。众多研究和经验表面,最有效的团队大小,是8—12人。人少而精固然是很好的团队阵容,这样每个人都有挑战和创新的空间,但我觉得还是要根据开发项目的实际情况制定团队阵容,如果想形成一个产业链,就需要各方面的人才,团队的阵容也会随着产业的扩大而逐渐扩大。

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

Apple XCode

优点:

  • 集成了C、 C++、Swift等很多语言和编程模型。
  • 具有自动撤消、重做和保存功能,无需编写任何编码。。

缺点:

  • 只能在Mac环境中运行。
  • 更新版本后,某个插件可能会失效。

Git

优点:

  • 免费的开源软件。
  • 可以离线工作,管理代码成本低,不需要依赖服务器。
  • 具有很好的安全性能,警告提示清晰详尽。

缺点:

  • 初学者上手难度较大,学习时间较长。
  • 代码保密性差,代码容易被公开,易被攻击。

Microsoft TFS

优点:

  • 能与 VS 无缝衔接。
  • 集成了项目管理、版本控制、BUG 跟踪,能有效实现 SCRUM

缺点:

  • 用ASP实现,用浏览器访问很慢
  • 搭建、维护tfs比较复杂,硬件要求也比较高

你可能感兴趣的:(软件工程基础第一次作业:阅读与准备)