软工网络15个人作业4——alpha阶段个人总结
1.自评表
|类别|具体技能和面试为问题|现在的回答|毕业找工作时|
|:---|:---|:---|:---|:---|
|语言|最拿手的计算机语言之一,代码量多少?(偏前端)|java ||
|语言|最拿手的计算机语言之二,代码量多少?(偏后端)|jsp ||
|软件实现|你有没有在别人代码的基础上改进,你是怎么读懂别人的代码的,你采取了什么办法来保证你的新功能不会影响原来的功能?你在开发中碰到最复杂的bug是什么,你是如何解决的?
这个bug出现的原因是什么,你在将来应该怎么去避免bug再出现?
|主要是从实现功能和代码一部分一部分对应看,通过不断调试保证不会影响原有功能
最复杂的bug是闪退,通过不断修改解决||
|软件测试| 你是如何测试你自己写的代码?
你如何测试别人的代码?
你掌握了多少种测试工具和方法?你写过测试工具吗?
你如何对一个网站进行压力测试和效能测试?
你如何测试一个软件的人机界面?
|通过简单的测试工具测试稳定性
通过大量操作尝试,手动找bug
2种测试工具,没写过测试工具
通过Apache JMete测试网站
通过一致性测试和信息反馈测试||
|效能分析|你写过的最复杂的代码是什么?
你是如何测量和改进它的效能的,用了什么工具,如何分析的?|最复杂的代码,每学期的课设吧。。。基本没用测试工具||
|需求分析|你做过多少个有实际用户的项目,用户最多有多少?
你的项目有什么创新的地方?|无||
|行业洞察力|你最感兴趣的领域是什么?这个领域过去10年经历了哪些创新?
你分析过这个领域前10名的产品吗?分析一下它们的优劣。
你要进入这个领域,应该如何创新?|最感兴趣的网络安全
过去十年密码破译更成熟了,各项技术也在完善
领域前十的产品大多是垄断性或供给政府企业机构的
如果我进入这个领域会发展针对个人的信息安全服务,尤其是在大数据的背景下||
|项目管理|你参与过项目管理吗?请描述一下两个当下流行的开发方式在你的项目中的具体应用情况。
请问你如何决定项目中各种任务的有限次序,有什么理论来支持你的做法?
如果你突然发现项目不能按时完成,你作为项目领导,有什么办法?|参与过简单的项目管理
任务顺序按燃尽图的来,主要先完成基础功能
完成不了先找代替计划,再事后总结||
|软件设计|你做过架构设计、模块设计、接口设计么?请说明一下你为何是这样设计,你比较过什么不同的设计方式,你的设计取得了什么结果?|这块没做过||
|质量意识|你是怎么做代码复审的,你加入我们团队后,能帮我们提高代码质量么,请具体说怎么提高?|代码复审主要看功能的实现程度
通过提高代码的覆盖率||
|工具/社区|你在各种开发平台都使用过什么工具,自己写过什么工具来改进工作效率?
给社区贡献过什么工具和代码?Github有分享代码么?
你写的技术博客坚持了多久,读者最多的是那一篇?
|使用过Jmerter,DBMonster
无分享代码,没贡献过工具
博客做了1年||
|团队协作|请描述你在项目中如何说服同伴采用你提出的更好地解决方案,或者你如何听取了别人的意见,改进了自己的方案?
你如何说服懒惰的同学加紧工作,实现团队的目标?|项目中还是通过展示前景开会来改进
emmm,这个大家好像都一样||
|理论素养| 你上过什么数学、计算机或其他理论课?
请举出具体的例子,说明你学到的理论知识如何帮助你解决实际问题。|高数,离散数学,概率统计,线性代数,计算机导论,计算机网络基础,计算机组成原理,数据结构 在做数据存储时就需要考虑数据结构|||
|自我管理|全年级你专业排名多少?
你从刚入学到现在的排名有变化吗?
如何解释你的排名的变化?|前50%||
2.问题回答
问题一,我有一个问题,就是对于我们这些学生来说,最痛苦的就是上手敲代码,因为过程中出现的bug常常因为解决不了而放弃,尤其适当做实验项目,课设之类的时候,如果前面不能把那些不太必要的程序加进去,到后面太做完在优化,可能就会有大量的bug,而且很多地方根本不会优化到后期,而在前期又会因为书上写的因为太早优化而不知道全局的问题,我想知道对于程序菜鸡要怎么解决。
回答:要先实现基本的功能后,根据时间的情况适当的进行优化。优化是在中后期,前期不用太考虑。
问题二,造阶段——构造阶段结束时是第三个重要的里程碑:初始功能里程碑。此时的产品版本也常常被成为“beta”版。
回答:对于接触过软工的实际项目后,对于alpha,和beta也有了更实际的了解,这样的用语对于专业的软工编程人员来说还是很有用的。
问题三,在这里这个有远见的人指的是产品经理(PM)还是指团队里有想法的人?而且在其他书里我读到过,团队的愿景应该是由团队的领导层设计被成为项目/公司的指导思想,不知道这里的远景是否和这个有关?
回答: PM和项目的愿景有一定关系,但PM更多的是负责项目的进度和整体的项目规划。
问题四,上段文字以及后页的文章里提到一个观点是随着功能的复杂,软件越来越难用,在这里我认为就像很多企业做产品的时候推出多种版本就可以了啊,专业版或者是业余版,而且根据用户习惯方面可以根据用户信息跟踪就可以了解用户的使用习惯,这类相应的解决方法,希望作者可以在里面提供
回答:一个软件的通用性很重要,而且开发一个软件的成本是很高的,所以还是在功能上尽可能满足用户习惯就好。
问题五,自定义键盘
这个问题并没有很好的回答。
3.再提问题
问题一,p57,3.31职业发展-考级之路 因为很多读者都是在校学生,作者可否推荐下适合学生考的证书。
问题二,p97,软件团队的模式,作者在这块介绍十分详细,但初读的几次觉得各模式差别并没有非常大,能否将一些模式和在一起或设计成表格模式更便于阅读。
问题三,p194,对于program manager和project manager在公司的职位不太懂。
问题四,p294,13.2.12 小强大扫荡 不知道在实际工程中的情况,如果有案例会更好
问题五,p354,16.1.6 迷思六 这里的铱星计划的手机失败的原因后期如果改变定位没有存在的价值嘛?