201671030119 Tang cover strong experimental fourteen courses summary

project content
This work belongs courses 2016 Computer Science and Engineering Software Engineering (Northwest Normal University)
Where this requirement in the job Experimental fourteen project review team & course summary
Job learning objectives 1. Master software project will be assessed process;
2. reflection summarize course content.

1. The course content of the semester, Contrasts "Experimental Software Engineering to prepare a" task 5 you mentioned (given questions blog link), to try to answer questions and clarify how the discussion by learning / practice / make clear; whether learning creates new problems? If so, please ask.

- 问题1:在构建之法书本第17页中提出了这样两个问题,“软件工程为什么要发布一些不完美的软件?为什么不等到软件完美后再发布?”而后书中提到,软件工程就是要在时间、成本等多种约束条件下决定一个软件在什么时候“足够好”,可以发布。那么我有了疑问,当软件的质量和软件的预计时间与成本有了极大的冲突时,一个优秀的软件开发团队应该更倾向于哪一方?
  解答 :一个优秀的软件开发团队,不会出现预计时间、成本与软件质量之间的冲突,因为优秀的开发团队会在需求调研过程中将得到很完整的用户需求,之后按照用户需求和自己团队的能力进行时间、成本的估计也就是可行性分析,这样就不会发生问题中这种冲突。
- 问题2:在构建之法中第135页也就是第七章实战中的软件工程中有这样一个标题:保持敏捷,预期和适应变化。这里向我们表明,软件工程是时刻在变化的,所以在软件开发的过程中我们要时刻跟进用户的需求,这里就要用到“敏捷流程”。敏捷流程是应对快速变化的需求的一种开发方式,可以使开发团队应对经常变化的需求。在现如今技术快速的发展背景下,是不是代表形式化的开发方法(有极高的可靠性和质量)已经跟不上软件需求变化的脚步了?那我们是不是应该放弃以往的形式化开发方法?
  解答 :经过一学期的学习,我发觉敏捷流程是一种很强大的开发方法,但不代表着以往形式化的开发方法就应该被放弃,虽然如今技术发展的很快速,但是当软件需求出现变化不是很大,不需要团队进行时时刻刻的变化时候,这种形式化的开发方法可以极高的提升冉软件的质量,所以我们不应该放弃这种方法。
- 问题3:在构建之法书中第十二章提到了用户体验,这一章节强调了用户体验的重要性,软件服务是紧贴着用户的选择。书中提到了很多软件被长期使用之后,软件会越发难用。当一个软件在交付给用户以后,用户经过长期使用,对软件产生了厌倦,使得用户丢弃了软件,那么在这种情况下,是用户还是软件开发团队的错误使得软件被弃用呢?
  解答 :在这种情况下,用户可以跟开发团队进行交流,让开发团队在后期进行软件的优化和维护。问题中提到用户经过长时间使用后对软件产生厌倦,那么说明在软件交付时,软件是符合用户的要求的,而长期使用后,厌倦了软件,这种时候应该去和开发团队交流,而不是去抛弃软件,所以两者都有错误。

"Construction of the questions read law" --Guthub link

2. summed up his analysis of the feasibility of the project / needs analysis / software design / implementation / testing / project acceptance / learned what "knowledge."

- 可行性分析
    1.数据流图(DFD)的使用;
    2.任务分解技术;
    3.NABCD方法的使用。
- 需求分析
与用户交流获取需求的方法:
    1.访谈;
    2.调查问卷;
    3.原型需求分析。
- 软件设计
    1.层次图和结构图的使用;
    2.软件结构设计中遵循发模块独立原理。
- 实现
    java web的学习。
- 测试
    1.白盒测试技术、黑盒测试技术;
    2.Alpha测试和Beta测试。
- 项目验收
    掌握了软件项目评审流程。

3. The combination of individual project / twinning individual program / project team experience, to talk about the experience.

    个人项目到结对编程再到团队项目,这个过程让我真正认识到了什么是团队。从刚开始的个人项目,一个人做着一个小项目,很小很小的那种,只是这样也有着很多错误,到后来的结对编程,发觉结对编程可以极快的加速编程速度,而且错误也变的很少了,这个项目后,已经感觉到了一个人力量的薄弱。再到后来,开始了团队项目,它让我找到了做真正项目的感觉,也明白了为什么好的软件都是由软件团队制作而成,因为一个人的力量是有限的,而众人的力量是无限的。

4. Summary of Practice on the course and upgrade to bring you, including the following:

(1): statistical software engineering practice, how many lines of code you have completed the

约2000行代码。 

(2): You were how much time each homework software engineering practices? (Make a list)

experiment When using (min)
Experimental Software Engineering to prepare a 60
Software engineering experiment two individual events 180
Improvement of the peer review with three operations 60
Experiment 4 software engineering twinning projects 270
Experiment 5 software R & D team building 60
Experiments six team project topics 50
Experiment 7 team prototyping and development project 90
Experimental research and analysis needs eight prototype-based team projects 150
Experimental nine team project needs improvement and system design 180
Experimental ten project team to improve the system and detailed design 270
Well-designed experimental eleven project team and coding 180
If a software testing and test Alpha sprint 450
Beta test thirteen team sprint and project acceptance 450

(3): Which one job to make you the most? why?

    最让我印象深刻的一次作业就是团队作业7:团队项目设计完善&编码,这次是软件真正开始编写的时候,因为我们的编码能力有限,在这个过程中发生了很多问题,差点导致项目不能正常提交,我们团队,花费了很多时间去解决它。所以这是我印象最深刻的一次作业。

(4): the cumulative number of hours spent on the practice of software engineering? The average number of hours per week spent?

    共累计54小时用在软件工程实践上,平均每周用时3小时。

(5): You learn and master a new language, a new platform;

    语言:Java web
    平台:GitHub、博客园

(6): complete the form below, summarizes a semester of study, software engineering development tools, development methods and modeling methods you learn or use;

Software development tools, project management tools Software development methods Modeling software
Visio, blade, mockplus, GitHub Prototype method, an object-oriented approach, structured approach UML modeling, object-oriented modeling

(7): other gains or upgrade.

    在整个软件工程课程的学习过程中,我的博客撰写能力、基于java语言以及数据库sql语言的程序编写能力都有了很大的提升,而且,经过多次团队作业,我的团队协作能力也有了极大的提升。

5. What problems do you think the current curriculum, do you have any better suggestions.

    我认为软件工程就是一门需要手动、脑动的课程,老师布置的作业可以很好的帮助我们。唯一的缺点可能就是时间的问题,因为大三学生的任务还是很繁重的,软件工程的作业是每周一次,为了保质保量,必然会花费很多的时间,所以,我希望老师可以增加一些时间给每一个项目,让学生可以更好的完成它。

Guess you like

Origin www.cnblogs.com/tanggq/p/11109284.html