1.M1/M2总结

我们这学期完成了学霸项目。

在M1阶段,我们首先进行了分工,完成了一个系统的计划,然后是对学长代码的移植和优化。在优化代码的过程中,我们遇到了不少问题,比如一些代码的冗余以及指向性混乱,数据方面的处理也是没有系统,没有结构。由于大家之前接触的语言都是C,C+和Java,而且只知道git,没有用过TFS,好在大家勤勤恳恳,努力学习了C#,JSON,TFS,并对代码中的错误进行修改,在此过程中付出了极大的辛苦,才得以将M1版本开发出来。

M2阶段是在与很多科目的竞争中做出来的,当时不少科目期末考试和大作业,于是团队中课程较少的人更加辛苦一些,抽出更多时间,前端与后端不断沟通交流,才将M2完成。

2.链接到以前的博客

http://www.cnblogs.com/zhangbolong/p/4830941.html

问题一:如何判断一个软件是值得维护的?抑或如何评价一个软件的发展潜力?

一个软件是否值得维护依赖于它对用户的满足度和对开发者的预期目的的实现。比如说,它是否可以覆盖开发者预定的测试需求?例如,对于一个质量非常好的软件产品,存在的软件缺陷异乎寻常的少,测试用例设计人员准备了大量的测试用例,已经完全覆盖了测试需求,但是只有很少一部分测试用例在执行时发现了缺陷,而其他用例都顺利通过了。那么在它满足于用户的目的的情况下,就可以认为它是值得维护的。对于一个即熟悉测试工作,又熟悉被测应用的测试人员,应当可以花费很少的时间就可以理解测试用例中表达的测试思路,并可以很快的执行完这个测试用例。当开发过程中的某些因素影响了测试需求,测试用例的作者或其他测试设计人员,应该可以花费很少的时间就完成定位并维护所有相关测试用例的工作。

问题二:是软件本身的实用价值重要还是用户的使用价值更重要?

软件从无到有的设计、研发,一直到推送到用户的面前,中间经历了很多复杂的流程和步骤,并不是简单的一句话就能描述清楚的,显然软件的成功也并不能靠一两句话去解释。
软件的成功是数种、甚至数十种因素综合作用的结果,有的得益于依托于庞大的资源、有的依托于畅通的渠道、有的依托于政策优势、甚至有的仅仅是因为运气好...所以很难通过一两个软件去判断。
软件价值和用户体验是一个什么样的关系呢?软件的主要价值在于满足人们的某种需求,这也是它最重要的一点,如果它不能满足用户的需求,用户就不会去使用,就失去了存在的意义。围绕它的所有盈利方式也就无从谈起。它对用户的价值是得以立足的基础,也是一切商业行为的基础。
价值大于用户体验:一个没有价值的产品就像无根之萍。      
用户体验决定产品成败:在多个有价值的同类产品中,综合体验好的会更接近成功。

问题三:多人项目中,如何合理的取得平衡点并使效率最大化?

在学生时代,还是更多依赖于不同人的开发水平,我认为,对于结对编程(以及两人以上的编程),团队成员中,尤其是负责开发和测试的程序员,他们之间的水平不能差距过大。差距过大会使团队中每个人的积极性都打折扣。而且在水平差不多的团队中,往往更加协调。其次,在分工时,应该根据每个人的擅长及能力分工。

问题四:如何预先避免不同软件运行时带来的冲突?

我的原意是指软件对于不同平台的兼容性,而非不同软件厂商恶意竞争。移动领域的开发,目前面临不同操作系统需不同开发语言,同一操作系统存在不同版本,同一版本存在不同机型等难题,给移动开发增加了很大难度。PhoneGap,Titanium,SenCha是目前比较主流的跨平台开发技术。

问题五:如何预见用户需求?

在需求分析阶段,利用符合客户语言习惯的表达,了解客户的业务及目标。

3.阅读以前文章,新的体会

在实际的开发阶段,以往文章中的许多模式,比如瀑布模型,是很不适用的。在M1阶段,客户往往很难清楚地给出所有的需求,而该模型却要求如此。在M2阶段,实际的项目开发很难严格按该模型进行。

需求阶段:分词器,TFS,XML

设计阶段:文本关键词的提取和翻译

实现阶段:黑盒功能测试,代码审查

发布阶段:软件工程中项目整合的方法

维护阶段:根据测试结果判断维护代价

M1/M2项目阶段总结的更多相关文章

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

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

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

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

  3. 软件工程M1/M2总结

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

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

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

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

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

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

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

  7. 2018-2019-2 《Java程序设计》结对项目阶段总结《四则运算——整数》(二)

    20175218 2018-2019-2 <Java程序设计>结对项目阶段总结<四则运算--整数> 一.需求分析 实现一个命令行程序,要求: 自动生成小学四则运算题目(加,减, ...

  8. 【个人总结】软件工程M1/M2总结

    个人博客连接: http://www.cnblogs.com/lwq12061168/p/4094252.html http://www.cnblogs.com/lwq12061168/p/40284 ...

  9. Cisco基础(六):配置目前网络环境、项目阶段练习

    一.配置目前网络环境 目标: 一家新创建的IT公司,公司位于北京有80多台服务器 目前网络环境使用技术,通过端口映射技术将web服务器发布给Internet: 三层交换:汇聚接入层交换机 默认路由:实 ...

随机推荐

  1. SQL取最大值编码(自动编码)

    SQL取最大值编码(自动编码) 用途 : 使用SQL语法做出自动编码效果,例如将单号自动+1后,产生该笔单号 Table说明 SQL语法 SELECT 'A'+REPLICATE('0',7-len( ...

  2. Linux 内存使用率

    文章参考: 1.正确计算linux系统内存使用率 2.Linux系统内存消失与slab使用之谜 例如当前主机内存信息如下: [zhang@test ~]$ cat /proc/meminfo MemT ...

  3. 从列表和实例来了解python迭代器

    什么是迭代器?它是一个带状态的对象,在你调用next()方法的时候返回容器中的下一个值,任何实现了__iter__和__next__()(python2中实现next())方法的对象都是迭代器,__i ...

  4. 【HTTP缓存】浏览器缓存理论知识

    时间:2016-12-12 17:51:30 作者: zhongxia 零.前言 这里主要写的是理论,具体实践的比较少,后期写一个实践教程,内容基本都是从参考文章里面抄过来的[看完文章,顺便写做下笔记 ...

  5. CSS3 animation动画,循环间的延时执行时间

    如下代码,其中的delay值为3s,但是animation按现在的规则,这个delay是指动画开始前的延时,在动画循环执行间,这个delay是不生效的. .item{ webkit-animation ...

  6. Swift开发实例:苹果Swift编程语言新手教程中文版+FlappyBird,2048游戏源代码

    源代码: 用IOS Swift语言实现的Flappy Bird源代码:http://download.csdn.net/detail/estellise/7449547 用IOS Swift实现的游戏 ...

  7. 莫比乌斯函数 51nod-1240(合数分解试除法)

    就是输出n时,莫比乌斯函数的值.直接将n唯一分解即可. 思路:筛出105以内的素数,因为109开方,105就差不多.当一个大数还没有被1000个素数分解,那么这个数基本上可以认为是素数(为合数为小概率 ...

  8. 【转】Android 关于arm64-v8a、armeabi-v7a、armeabi、x86下的so文件兼容问题

    转载地址:http://blog.csdn.net/ouyang_peng/article/details/51168072 Android 设备的CPU类型(通常称为”ABIs”) x86: 平板. ...

  9. 转载 SpringMVC详解(一)------入门实例

    目录 1.什么是 SpringMVC ? 2.创建 web 工程,并导入相应的 jar 包. 3.新建 SpringMVC 全局配置文件 4.在 web.xml 文件中配置前端过滤器 5.编写处理器  ...

  10. smartpass

    1.smartpass 是用户注册后,产生的用户名密码 与每个摄像头的用户名密码不一致 2.每个设备初始化登录密码为admin admin,如果需要修改,则在进入该设备IP地址,设置——>用户管 ...