实验十四 团队项目评审&课程学习总结

 

项目 内容
这个做业属于哪一个课程 任课教师博客主页连接
这个做业的要求在哪里 做业连接地址
做业学习目标

(1)掌握软件项目评审会流程html

(2)反思总结课程学习内容算法

 

 

 

 

 

 

 

一.对实验一问题回答

 

实验一 通读教材后提问数据库

 

(1)在构建之法P63页提到的软件概要设计和软件详细设计有什么区别?编程

答:概要设计就是设计软件的结构,包括组成模块,模块的层次结构,模块的调用关系,每一个模块的功能等等。同时,还要设计该项目的应用系统的整体数据结构和数据库结构,即应用系统要存储什么数据,这些数据是什么样的结构,它们之间有什么关系。
详细设计阶段就是为每一个模块完成的功能进行具体的描述,要把功能描述转变为精确的、结构化的过程描述。
概要设计阶段一般获得软件结构图
详细设计阶段经常使用的描述方式有:流程图、N-S图、PAD图、伪代码等。数据结构

 

 

(2)书上P96页提到一个完整软件开发流程须要哪些步骤?框架

答:软件开发通常分为五个阶段:
1.问题的定义及规划
此阶段是软件开发与需求放共同讨论,主要肯定软件的开发目标及其可行性。
2.需求分析
在肯定软件开发可行性的状况下,对软件须要实现的各个功能进行详细需求分析。需求分析阶段是一个很重要的阶段,这一阶段作的好,将为整个软件项目的开发打下良好的基础。“惟一不变的是变化自己”,一样软件需求也是在软件爱你开发过程当中不断变化和深刻的,所以,咱们必须定制需求变动计划来应付这种变化,以保护整个项目的正常进行。
3.软件设计
此阶段中偶要根据需求分析的结果,对整个软件系统进行设计,如系统框架设计、数据库设计等。软件设计通常分为整体设计和详细设计。还的软件设计将为软件程序编写打下良好的基础。
4.程序编码
此阶段是将软件设计的结果转化为计算机可运行的程序代码。在程序编码中一定要制定统1、符合标准的编写规范。以保证程序的可读性、易维护性。提升程序的运行效率。
5.软件测试
在软件设计完成以后要进行严密的测试,一发现软件在整个软件设计过程当中存在的问题并加以纠正。整个测试阶段分为单元测试、组装测试、系统测试三个阶段进行。测试方法主要有白盒测试和黑盒测试。数据库设计

 

 

(3)书上P223页提到软件的设计与实现包括哪几个步骤?工具

 答:第一步,一个对软件的全局观点。系统经过逐步求精使得设计陈述逐渐接近源代码。这里有两个基本步骤,第一步是初步设计(Preliminary design) ,关注于如何将需求转换成数据和软件框架。布局

第二步是 详细设计(Detail design),关注于将框架逐步求精细化为具体的数据结构和软件的算法表达。发生中的设计行为、数据、算法和程序设计都须要由现代程序所需的界面设计这一清晰的行为来结合起来。界面设计(Interface design) 创建程序布局和人机交互机制。贯穿设计过程的质量由一系列的正式技术评定(formal technical reviews)或设计排演(design walkthroughs)来评价。单元测试

 

 

二.知识点总结

 

    • 可行性分析:可行性分析的过程分为三个步骤:首先须要进一步澄清问题,而后导出系统的逻辑模型,最后得出系统实现方案。可行性主要分为操做可行性、经济可行性、技术可行性及法律可行性,采用NABCD方法对系统进行初步分析,为将逻辑模型转化为物理模型,咱们还学习了数据流图。
    • 需求分析:需求分析是软件定义时期的最后一个阶段,它的基本任务是准确的回答“系统必须最什么”这个问题。在需求分析阶段结束以前须要编写需求规格说明书,以书面形式准确的描述软件需求,在需求分析过程当中,应用mockplus创建了软件原型。
    • 软件设计:软件设计主要是软件概要设计和详细设计。在概要设计时主要是根据需求分析阶段的成果将系统进行功能结构的划分。首先须要进行系统设计,从数据流图出发设想完成系统功能的若干合理的物理方案,而后和用户选定一个最佳方案,而后进行软件结构的设计,肯定软件有哪些模块组成以及这些模块的之间的动态调用关系。能够用层析方框图来描述习题的整体结构,在面向对象的设计中也能够采用类图,用例图,活动图,顺序图等来描述。在软件详细设计阶段主要是肯定怎么具体地实现用户须要的软件。结合具体的开发模式细化每一个模块的算法流程,数据结构,和接口设计。在面向对象设计中,主要是完善类图,精化类的属性和操做,详细定义类中服务参数和具体实现逻辑,依据软件开发环境调整类的层次关系和关联关系,定义软件数据库表结构等
    • 实现:主要包括编码何测试部分。编码主要是把软件设计的结果翻译成用某种高级语言书写的程序,所以,程序的质量主要取决设计的质量,可是高级语言对选择,特别是书写程序的风格,也对程序的质量有很大的影响。测试主要是发现程序中的错误,主要测试方法有白盒测试和黑盒测试。
    • 验收:项目验收主要是咱们对本身项目成果的一个交付,在验收时开发方也要有好的沟通能力,尽可能向客户展现本身的成果,让验收方满意。

 

三.心得体会

  • 转眼间一学期就结束了,经过这学期的学习,我受益不浅。记得刚上这门课的时候,老师布置了第一个任务就是申请本身的我的博客,提出本身经过通读构建之法遇到的问题,当时咱们花费了不少时间在编辑博客上面,再到后来每次的博客撰写的流畅,其实这也是一种收获。再到后来的项目需求分析的编写,利用mockplus制做项目原型设计、项目的编码及测试,每一次的做业我都参与了其中,因此多多少少都有一些收获。经过一学期的学习,我最大的收获是亲身经历了一个完整的项目的诞生的过程,经过一系列的说明书的设计,我大概了解了编写需求分析说明书、系统详细设计说明书、编码规范说明书的规范等等说明书的规范。学习了一些工具的使用,好比利用mockplus进行项目的原型设计,采用轻量级的Visio建模工具进行项目的建模。
  • 在咱们进行结对编程和团队项目的过程当中,我最大的收获是明白了拿到一个项目时须要先对它进行分解,再对每一个小模块进行详细划分和设计,这样作的好处就是目标明确、思路清晰、一个小模块出错不会影响其余模块,方便修改。再者,团队合理分工也很重要,这会使得效率提高不少,但在作的过程当中也须要小组成员的共同协做,共同探讨与研究。若是每次的任务你们都去参与,每一个人去承担一点任务,这样做业作起来也容易不少,还有一个问题就是在项目设计的过程当中小组成员要团结协做,遇到意见不统一时你们要及时沟通,努力去听取别人中肯的意见,不能独断独行。

 

四.总结

 

    • 1.统计在软件工程实践中,你完成了多少行的代码。
      大约3500多行代码。
    • 2.你在软件工程实践的各次做业分别花了多少时间?

      实验 用时(h)
      实验一 软件工程准备 5
      实验二 软件工程我的项目 15
      实验三 做业互评与改进 7
      实验四 软件工程结对项目 16
      实验五 软件研发团队组建 7
      实验六 团队项目选题 5
      实验七 团队项目原型设计与开发 15
      实验八 基于原型的团队项目需求调研与分析 15
      实验九 团队项目需求改进与系统设计 15
      实验十 团队项目系统改进与详细设计 15
      实验十一 团队项目设计完善与编码 20
      实验十二 软件测试与Alpha冲刺 20
      实验十三 Beta冲刺与团队项目验收 20
    • 3.哪一次做业让你印象最深入?为何?
      我印象最深入的一次做业是实验十 团队做业6:团队项目系统设计改进与详细设计,我在编写代码的时候,遇到了不少困难,好比添加酒店缴费功能时须要弹出一个窗口填写相关信息,我在编写代码的时候,窗口老是没法跳出,不显示。以后,经过询问学姐,解决了这个问题。还有以后的数据库连接,因为电脑的环境配置不合适,借用了同窗的电脑进行调试。此次做业,让我深深的意识到请求别人帮助的重要性。
    • 4.累计花了多少个小时在软件工程实践上?平均每周花多少个小时?
      本学期总共在软件工程实践上用时150h,平均每周用时9h。
    • 5.你学习和掌握的新语言、新平台。
      语言:Java Web、Java
      平台:博客园、GitHub、中国大学MOOC
    • 6.其余方面的收获或提高
      经过本学期的学习我在编程能力、文档撰写能力、任务规划能力、团队协做的能力,自我学习能力等都有了进一步的提升,更多的是学会了在团队合做中和其余成员之间的交流和沟通以及遇到问题时自我解决的能力。
    • 7.填写下表,总结一学期的学习中,你学习或使用的软件工程开发工具、开发方法和建模方法

软件开发工具、项目管理工具 软件开发方法 软件建模方法
Visio,墨刀、mockplus,GitHub,leangoo 原型方法、面向对象方法 UML建模、结构化建模

五.课程意见

  在时间进度安排方面很符合课程的进度,除了详细设计那一阶段时间有些仓促,毕竟你们之前接触的项目比较少,要是真的对起手来会有点吃力,但愿能够增长一周时间。同时助教工做态度很好,会很细心的发现咱们的错误,并提示咱们及时改正。

相关文章
相关标签/搜索