【个人阅读】M1/M2阶段总结
1.以前博客的链接
http://www.cnblogs.com/zyctsl/p/4028006.html
http://www.cnblogs.com/zyctsl/p/4094011.html
2.请说明哪些问题现在自己已经清楚了,请阐明一下,是如何通过看书,实践,或者讨论弄清楚的
问题1:关于代码的管理问题
最近写软工和编译作业,随时都会有一些小小的改动,而且过一段时间后,自己都忘记了改了哪里,而且如果是自己写的还好,可以去读代码,但是像软件工程这种团队协作的项目来说,读别人的代码就感觉又费力气又费时间,当初我是觉得svn来管理太麻烦,不过现在想想相比于去重复的读代码,svn实在好用太多,而且每次修改还可以加上注释。所以现在我觉得,代码管理还是用类似于svn这种管理软件来管理比较好。
当然,还有可以用来管理程序的就是文档了,虽然大家都不太喜欢喜文档,当我们去读别人的代码的时候,我们最想先看的就是别人的文档和注释,这样可以节省很多时间,所以文档也是管理代码的很重要的一个方面,包括一些必要的注释,对于读代码,是非常有帮助的。
问题2:团队中分工与协作的问题
我觉得在这个问题中,PM的重要性就体现出来了,首先团队的分工,我觉得首先一个团队在分组的时候就要考虑到每个人各方面的能力,一个能力稍强的和一个能力稍弱的人一组可以以强带弱,但是把能力稍强的人分成一组,强强联手,然后在分配任务的时候,适当的有些倾斜,这种分组方式也未尝不可。其实这两种方式最终结果到底有多少不同,我们不好判断,但是我个人觉得差别或许不大。我们组分工,第一阶段是就近原则,宿舍离得近的同学一组,这样方便一起讨论,确实是,一般都是两个人一起写,类似于结对编程,效果也还行,但是这样就会造成有的小组的两个同学都有拖延症,最后项目的完成时间就会被延迟,所以这样考虑得话,在分工的时候还要考虑到个人的习惯。M2阶段我们组的分工大致是按照上面的第一种方式,其实感觉最终的效果和M1差别不大,有拖延症的还是会要拖到最后才去完成整个项目,所以现在关于这个问题我还是没有很清晰的认识,可能这和我们毕竟不是一个非常专业的开发团队有关吧,估计一个团队的组建会考虑每个成员的各方面的能力,来让这个团队整体的实力变得比将几个成员的能力简单的叠加的实力强很多吧。
3.哪些问题还不明白,请分析
不明白的问题有上面团队的分工和写作的问题,到底怎样去各一个团队分组,分工才能让这个团队的效率最高,让这个团队的能力最大化。
还有就是一个团队的组成肯定要考虑各方面的因素,这些因素到底有哪些,哪些又是最重要的?
4.产生了哪些新的问题,请提出
新的问题关于团队的就是上面提到的团队的组成和分工问题
关于项目和个人的:项目共享服务期问题,多个团队用同一个服务器,首先就目前的状况来看,服务器的cpu负荷一直100%,代码运行效率很低,而且不考虑这方面,考虑共用一个数据库的安全性问题,首先数据库的创建者拥有管理数据库的所有权限,而数据库的使用者只能有数据库的读取权限,不应该拥有更改数据库的权限,这样有很大的安全隐患。
5. 新的体会
首先,一个项目的开发,确实会自觉或者不自觉得遵循瀑布模型,可见这个理论的正确性,在之前对这些理论还没有什么了解。
还有就是软件开发中的银弹问题:
其实这个问题在当时,我个人认为软件开发的银弹就是那几篇文章中所说的面向对象编程的思想,现在有很多开源的api之类的共享代码,功能模块。所以开发一个项目变得较之前相比容易得多,但是任何事物都是有两面性的,代码共享的隐患就是代码的安全问题,当时邹欣老师也提出了这方面的质疑,这个问题确实存在,而且谁都不能保证某个网上找的开源代码中没有病毒或者漏洞,不管是多么权威的网站。之所以现在我仍然认为面向对象编程所带来的功能模块化,使代码可以得到共享的这种编程思想是软件开发的银色子弹,是因为它有这种可能,它在某种程度上具备了成为银弹的“潜质”,只是这种“潜质”就目前的发展状况来看还不可行。
6.各个阶段的收获
需求:需求的来源,需求一定来自于使用你的系统的用户,也就是你的项目的下一个阶段的开始。需求是整个项目的方向,只有首先得到需求,才能着手项目。
设计:设计是整个软件工程的核心,设计前一定要先了解整个项目的架构,采用正确的设计方法。设计的过程是一个从宏观到微观的逐渐细致的过程。
实现:实现阶段进度安排要尽量的均匀,任务分配要合理。
测试:测试要全面,考虑覆盖率,黑盒测试和白盒测试要结合进行。
发布:发布要准备充分,做好宣传工作。
维护:项目出现问题要及时维护,维护后要重新对相应模块做测试。
【个人阅读】M1/M2阶段总结的更多相关文章
- 【个人阅读】软件工程M1/M2阶段总结
这次作业是好久以前布置的,由于学期末课程设计任务比较重,我在完善M2阶段的代码的同时又忙于数据库的实现和编译器的实现,一度感觉忙得透不过气来....到这些都基本完成的时候,会看自己以前的阅读心得,觉得 ...
- M1/M2阶段总结
之前提问的博客 问题解答 问题 1 关于代码复审,复审者是否应该参与编码?如果复审者也参与编码的话,那么难免任务量较多,但如果不参与编码的话,工作分配的似乎不太均衡. 我们的团队项目在M1和M2阶段没 ...
- 个人阅读作业——软件工程M1/M2的总结
临近学期末,本学期的软件工程课也已经结束了,在此我对软件工程课中,我们团队M1和M2开发阶段中,我做的工作做一个总结 我是DEV,主要工作是等着上级给我分配任务,但是很多时候如果这个活我不干,其他人就 ...
- 软件工程M1/M2总结及阅读作业总结
一.软件工程M1/M2总结 写下这篇总结的时候,我们的软件项目尚未完工.虽然尝试申请了延期答辩,但最终未能成功.这意味着,我们的项目能否正常发布已经处于了一个微妙的状态.可能可以,也可能不可以.只能尽 ...
- M1/M2项目阶段总结
1.M1/M2总结 我们这学期完成了学霸项目. 在M1阶段,我们首先进行了分工,完成了一个系统的计划,然后是对学长代码的移植和优化.在优化代码的过程中,我们遇到了不少问题,比如一些代码的冗余以及指向性 ...
- 个人阅读作业 --软件工程M1/M2总结
软件工程M1/M2总结 写在前面的话: 这学期的软件工程伴着考期的展开逐渐落下帷幕,回顾这学期的软件工程,我感觉我的热情在一次又一次的失落中逐步消耗殆尽,每个人对于这门课的体验都会有所不同吧,可以确定 ...
- 【个人阅读】软件工程M1/M2做一个总结
1.以前博客链接 http://www.cnblogs.com/penglinjiang/p/4027850.html http://www.cnblogs.com/penglinjiang/p/40 ...
- M1/M2个人总结
软件工程整个学期结束了,很开心学了这门课,在学到知识的同时也提高了自己的动手实践的能力,感觉自己在整个软件工程的各个环节中都能有所把握,可以将学到的知识运用到设计.实践更多的项目中去. M1阶段个人总 ...
- 软件工程M1/M2总结
也不分M1/M2了,就从头到尾的梳理一下这学期的软工课吧. 第一节课,老师就稀里哗啦说了一下这学期要怎么搞,什么个人项目啦,结对项目啦,团队项目一二啦,还要组队啊什么的,然后风风火火的组队. 个人项目 ...
随机推荐
- Django框架的使用教程--站点的管理[七]
Django的站点管理 创建超级管理员命令(密码要8位) python manage.py createsuperuser 进入站点管理 注册模型类 from django.contrib impor ...
- webpack热更新和常见错误处理
时间:2016-11-03 10:50:54 地址:https://github.com/zhongxia245/blog/issues/45 webpack热更新 一.要求 局部刷新修改的地方 二. ...
- Tronado自定义Form组件
Tronado自定义Form组件 一.获取类里面的静态属性以及动态属性的方法 方式一: # ===========方式一================ class Foo(object): user ...
- Js 不支持函数的重载
Js 不支持函数的重载,可以用相同的名字在同一作用区域,定义两个函数,而不会引起错误,但真正使用的是最后一个. Js 不会验证传递给函数的参数个数是否和函数定义的参数的个数相同,开发人员定义的函数都可 ...
- UVA12171-Sculpture(离散化+floodfill)
Problem UVA12171-Sculpture Accept: 196 Submit: 1152 Time Limit: 3000 mSec Problem Description Imagi ...
- [国家集训队]JZPFAR
嘟嘟嘟 k-d tree模板之二:查询第k大距离.(所以是怎么上黑的) 因为k-d tree的查询就是暴力嘛,所以我就想到了一个很暴力的做法:每一次查询用一个长度为k的优先队列维护.按距离递增,编号递 ...
- MVC知识点记录
_Layout.cshtmlRenderSectionsection 分部页的使用@Html.Partial Html.RenderPartial与 Html.RenderAction的 return ...
- String.valueOf()方法注意
String.valueOf();可以将 int char long float double boolean char[] 转化为字符串输出,但不是这几个类型时候,则会使用Object类型接收,底层 ...
- 【转】图像的上采样(upsampling)与下采样(subsampled)
转自:https://blog.csdn.net/stf1065716904/article/details/78450997 参考: http://blog.csdn.net/majinlei121 ...
- 恶意软件的bypass
导读 在网络安全的背景下,尽管存在反恶意软件控制,但逃避是执行恶意代码的做法.这种策略不会利用可修复的缺陷.相反,他们利用阻止现实世界中恶意软件检测的因素来实现其完整的理论潜力. 恶意软件这些逃避因素 ...