软件工程——个人总结

一.回想开学初对于软件工程这门课的期望,总结本课程对你带来的提升

1.学习和使用的新软件: Mockplus原型设计软件 Dreamweaver软件
2.学习和使用的新工具 Enterprise Architect UML分析和设计工具 php编译工具 My sql 数据库管理系统
3.学习和掌握的新语言、新平台 语言:HTML、PHP 平台:微信公众平台、 新浪云平台
4.统计一下,你在这软件工程实践中,完成了多少行的代码 在这次软件工程实践中,完成了大约一两千行的代码
5.学习和掌握的新方法 原型界面的设计; 使用PHP和MySQL制作动态网页。 使用PHP的后台数据库链接 软件开发方法及其测试方法; 软件测试,软件开发
二、总结与展望
1.记录自己在软件工程上课程上的经验总结 学会了大家一起团队合作,期间大家一定会有很多的想法冲突,但大家也相互契合。并且我也学会了可以说是复习了一下html制作网页,搭建后台 并学会了PHP编辑后台,和连接数据库。
2.对于下一届的学弟学妹你有什么建议和告知呢? 在大一学到的网页设计和数据库实在是太有用了,所以要好好学,做项目时要学会合理运用时间。
3.分析一下自己所处的团队。软件工程实践是大学里少有的认真的团队协作经验。《构建之法》团队合作的阶段,你们团队经历过么?最后到达了哪一阶段? 经历过,经历了萌芽阶段,磨合阶段,规范阶段及创造阶段,我们的团队每个人都很有想法都很有责任心,这是我们的项目做的还可以,效率也挺高的。 项目设计会有一点点的分歧,但在后面大家的相互讨论,并且共同契合,一起完成了项目。
4.个性发挥 从刚做项目时的什么都不懂,当时也是很绝望啊,但也向学长进行了请教加上自学,真的学会了好多啊,从实践中学习才能真正的学到东西。 所以对于这门课还是很喜欢的。 附上我家狗狗的照片哈哈哈! ![](http://images2015.cnblogs.com/blog/1108906/201706/1108906-20170624192522304-227630214.png) ![](http://images2015.cnblogs.com/blog/1108906/201706/1108906-20170624192539398-578663176.png)
1.怎样才算是一个好的单元测试呢?(第二章P25)书中表示应准确快速保证程序基本模块的正确性。 并说出了验证单元测试的一系列标准,有几条不是要清楚如: 单元测试应该在最基本的功能/参数上验证程序的正确性。要测试最基本的单元,测试最基本的方法,但是我觉得测试一个项目应该看待它的整体功能,单单只是 基本的功能无误不能完全反映出该项目整体是无误的,可能基本功能之间的联系出问题也会使整个项目泡汤。 单元测试过后,机器状态保持不变。我自己的理解是测试后数据库会产生一些临时文件,而我们不需要这些东西,不过对“Teardown阶段”有些不太懂,不知道具 体在哪一时期什么时候删除最合适。仅仅是在最后测试完删除吗,感觉如果中途测试其中一些,如果产生的临时文件影响之后的测试会有很大麻烦。 答:单元测试(UnitTest)是一段自动化的代码,用来调用被测试的方法或类,而后验证基于该方法或类的逻辑行为的一些假设。单元测试几乎总是用单元测试框架来写的。它写起来很顺手,运行起来不费时。好的单元测试是全自动的、可信赖的、可读性强的、可维护的。
2.敏捷开发不是很懂。(第六章P104)看了敏捷开发的原则后感觉敏捷开发就是为了更高效率更高质量的完成一个项目,难道这样的方法就一定是完美的吗?就像书中所说,一群狗熊级的程序员天天写代码不知道找问题,就算今天遇到的问题也不解决,明天又去掰另一个棒子,连一天天的任务都不清楚感觉会离冲刺越来越远。 答:敏捷开发是一种以人为核心、迭代、循序渐进的开发方法。在敏捷开发中,软件项目的构建被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。 敏捷开发是由一些业界专家针对一些企业现状提出了一些让软件开发团队具有快速工作、响应变化能力的价值观和原则,并于2001初成立了敏捷联盟。他们正在通过亲身实践以及帮助他人实践,揭示更好的软件开发方法。
3.软件开发是一门工程还是一门艺术还是一门手艺?(第三章P55) 答:其实对于这门专业我觉得是以很伟大的专业,但是就像书上说的如果是一门工程那就要收很多规矩,但是就像前面所说一个团队的成员要收很多规矩,也要被约束,但 我更想把它当作一门艺术,诗歌可以,软件工程也可以。不过要有一些自由的空间才能更好的发挥自己。所以我现在对约束的程度产生了很大的疑惑。
4.(第八章P153)获取用户需求的A/B测试不是很懂,决定两种不同的UI进行调查,在技术上实现A/B测试,手机数据,分析数据,形成结论,感觉与这个名字没有什么关系啊,而且感觉这不就是普通的调查吗? 答:A/B测试是一种新兴的网页优化方法,可以用于增加转化率注册率等网页指标。AB测试本质上是个分离式组间实验,以前进行AB测试的技术成本和资源成本相对较高,但现在一系列专业的可视化实验工具的出现,AB测试已越来越成为网站优化常用的方法。 A/B测试其实是一种"先验"的实验体系,属于预测型结论,与"后验"的归纳性结论差别巨大。A/B测试的目的在于通过科学的实验设计、采样样本代表性、流量分割与小流量测试等方式来获得具有代表性的实验结论,并确信该结论在推广到全部流量可信。
5.盲目信任“专业人士”扮演的角色。(第十四章P296) 对于此观点我很同意,但是以大学生的角度,我们学的还是太少,班里有很强代码能力的人不是很多,“专业人士”在学校里应该指的是老师了,难道我们不应该挺老实的吗? 感觉水平差的学生做的任务量就不会要多,所以影响用改也不是很大吧? 答:我们可以向老师请教问题并学习,但是项目本身的灵魂和思路还是要我们自己来决定。
posted @ 2017-06-24 18:59  胡萝卜xu  阅读(177)  评论(1编辑  收藏  举报