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阶段总结的更多相关文章

  1. 【个人阅读】软件工程M1/M2阶段总结

    这次作业是好久以前布置的,由于学期末课程设计任务比较重,我在完善M2阶段的代码的同时又忙于数据库的实现和编译器的实现,一度感觉忙得透不过气来....到这些都基本完成的时候,会看自己以前的阅读心得,觉得 ...

  2. M1/M2阶段总结

    之前提问的博客 问题解答 问题 1 关于代码复审,复审者是否应该参与编码?如果复审者也参与编码的话,那么难免任务量较多,但如果不参与编码的话,工作分配的似乎不太均衡. 我们的团队项目在M1和M2阶段没 ...

  3. 个人阅读作业——软件工程M1/M2的总结

    临近学期末,本学期的软件工程课也已经结束了,在此我对软件工程课中,我们团队M1和M2开发阶段中,我做的工作做一个总结 我是DEV,主要工作是等着上级给我分配任务,但是很多时候如果这个活我不干,其他人就 ...

  4. 软件工程M1/M2总结及阅读作业总结

    一.软件工程M1/M2总结 写下这篇总结的时候,我们的软件项目尚未完工.虽然尝试申请了延期答辩,但最终未能成功.这意味着,我们的项目能否正常发布已经处于了一个微妙的状态.可能可以,也可能不可以.只能尽 ...

  5. M1/M2项目阶段总结

    1.M1/M2总结 我们这学期完成了学霸项目. 在M1阶段,我们首先进行了分工,完成了一个系统的计划,然后是对学长代码的移植和优化.在优化代码的过程中,我们遇到了不少问题,比如一些代码的冗余以及指向性 ...

  6. 个人阅读作业 --软件工程M1/M2总结

    软件工程M1/M2总结 写在前面的话: 这学期的软件工程伴着考期的展开逐渐落下帷幕,回顾这学期的软件工程,我感觉我的热情在一次又一次的失落中逐步消耗殆尽,每个人对于这门课的体验都会有所不同吧,可以确定 ...

  7. 【个人阅读】软件工程M1/M2做一个总结

    1.以前博客链接 http://www.cnblogs.com/penglinjiang/p/4027850.html http://www.cnblogs.com/penglinjiang/p/40 ...

  8. M1/M2个人总结

    软件工程整个学期结束了,很开心学了这门课,在学到知识的同时也提高了自己的动手实践的能力,感觉自己在整个软件工程的各个环节中都能有所把握,可以将学到的知识运用到设计.实践更多的项目中去. M1阶段个人总 ...

  9. 软件工程M1/M2总结

    也不分M1/M2了,就从头到尾的梳理一下这学期的软工课吧. 第一节课,老师就稀里哗啦说了一下这学期要怎么搞,什么个人项目啦,结对项目啦,团队项目一二啦,还要组队啊什么的,然后风风火火的组队. 个人项目 ...

随机推荐

  1. 【Linux】磁盘的分区与命名规则

    1,Startx:切换到图形界面 2,Pwd:查看当前目录 3,Whoami:查看当前用户 4,Cd:   1. 命令格式: cd [目录名]       2. 命令功能: 切换当前目录至dirNam ...

  2. 05LaTeX学习系列之---TeX的命令行操作

    目录 目录 前言 (一)查看版本号 1.查看TeX的版本号 2.查看LaTeX的版本号 3.查看XeLeTeX的版本号 (二)更行版本 (三)用命令行来编译.tex文件 1.用LaTeX编译 2.用X ...

  3. 1.1开篇一:C语言编译器的选择---Dev C++

    返回总目录 目录: 1.Dev C++的下载&安装: 2.Dev C++的使用: 前言: 那么多编译器,为什么选择Dev C++?理由有下 理由一:Dev C++ 体积比较小,不占用太多的内存 ...

  4. SAP SQVI 快速浏览器

    SQVI可向SQL一样连接多个表浏览数据. 1.输入T-CODE:SQVI. 2.新建一个新查询case 输入CASE 名.点击新建,在弹出的窗口中输入标题,在数据源中可选择单个表查询,或者选择表连接 ...

  5. BZOJ1023:[SHOI2008]cactus仙人掌图(圆方树,DP,单调队列)

    Description 如果某个无向连通图的任意一条边至多只出现在一条简单回路(simple cycle)里,我们就称这张图为仙人掌图(cactus). 所谓简单回路就是指在图上不重复经过任何一个顶点 ...

  6. JavaScript中的typeof操作符用法实例

    在Web前端开发中,我们经常需要判断变量的数据类型.鉴于ECMAScript是松散类型的,因此需要有一种手段来检测给定变量的数据类型——typeof就是负责提供这方便信息的操作符.   对一个值使用t ...

  7. 转载 【.NET基础】--委托、事件、线程(1) https://www.cnblogs.com/chengzish/p/4559268.html

    [.NET基础]--委托.事件.线程(1)   1,委托 是存放方法的指针的清单,也就是装方法的容器 A, 新建winform项目[01委托],项目中添加dg_SayHi.cs 委托类 用于存储方法 ...

  8. Linux_修改hosts

    文章转自 https://blog.csdn.net/mikyz/article/details/69399987 Windows用户XP的在C盘 C:WINDOWS/system32/drivers ...

  9. 蒟蒻qxt的sd'日常

    emm... 今天刷了一道水题 居然 死循环了 真的是水题啊 顿时自闭 (救救孩子吧) 结果 bug是 我把for循环中的i的值改变了 使得i的值一直都不会达到他的边界值 于是就死循环了 所以 要用到 ...

  10. PAT A1098 Insertion or Heap Sort (25 分)——堆排序和插入排序,未完待续。。

    According to Wikipedia: Insertion sort iterates, consuming one input element each repetition, and gr ...