提问回顾

Eris_Charon Eris_Charon     2022-10-09     266

关键词:

提问回顾


提问回顾

个人作业week 1
  1. 书中提到瀑布式的开发方式,在实现软件开发过程中,各个阶段都可能会有遗留问题,并可能使得下一阶段难以进行,因此需要回头解决问题。在实际的开发过程中,分配给每个阶段的时间都是有限的,可能为了做出某个效果而给后续的开发留下问题,这样迭代下去会产生很多麻烦,会有很多反复,怎样较好的避免这种情况呢?
  2.     不知道该怎么解决,感觉还是要把上个阶段的问题解决的更加彻底一点才好,但是向下进行的过程中又难免遇到新的问题。
  3. 第一章中提到软件的不常用功能并类比了飞机的安全功能,这些功能常常用来在软件出现异常时维持程序的正常状态,因此他们的存在是必要的。但是我们在写程序是通常要在调试时,等到异常出现了才意识到应该在哪里做这样的功能,那么在软件设计之初有没有什么方法考虑到这些功能呢?
  4.     软件设计的时候应该考虑全面正常的功能,偏离正常分支的情况就需要做异常处理
  5. 第十三章讲到了测试的重要性,测试是软件的最后一道防线。在我的理解中,开发人员自身也应当做一些测试以保证程序基本的正确性,测试人员和开发人员相比所做的测试应该更加全面和细致。针对一个功能进行的单元测试应该在什么时候做?应该在完成代码前就把单元测试设计好还是应该完成代码后针对代码做单元测试?测试的标准应该是设计中的功能还是程序实际具有的功能?
  6.     单元测试应该在功能完成之前就已经完成了设计,即事先定义好接口和规范的输入输出,而不应该根据写完的代码写单元测试。应该测试的预期的功能和数据处理,如果预期功能发生变化,单元测试也应该发生变化,代码是相应该与设计一致。
  7. 书中提到结对编程和极限编程的思想是“将卓有成效的开发方法用到极致”,它似乎是一种非常值得推崇的方法,但是按照国内的情况来看似乎不那么受欢迎,按照我们到目前为止的认知,编程都是一件相当个人的事情。结对编程这种方式在实际的项目中是否可行呢?与个人编程相比,这样的编程方式又有什么样的弊端呢?
  8.     实际项目中使用结对编程的情况不是很普遍,因为它会占用两个人去做一个人的事情从而一定程度上降低工作效率。但是使用结对编程通常是为了尽早发现错误,并且方便双方进行交流和沟通,避免双方工作的冲突。
  9. 第九章中讲“PM做项目中出开发和测试以外的所有事情”,“PM的专业是理解和表达”,具备开发任务中所需的技术技能对PM来说是否是必要的呢?在项目的推进过程中,开发或测试人员难免会因为时间冲突、技术困难等原因无法按时完成任务,这时PM应该调整任务安排还是应该参与到开发或测试工作中,帮助完成任务?
  10.     应该综合考虑各方面因素,如果在开发初期,出现时间冲突或技术困难,可以对任务进行适当的调整,或利用缓冲区完成。若时间紧迫,或PM完全可以胜任该任务,PM应该参与到开发和测试的工作中。
  11. 第十一章讲到了设计与实现,从Spec到实现是将设计落实到功能上的过程。所谓的设计究竟应该包括哪些内容呢?进行设计时有时候划分了函数,确定了他们之间的调用关系,但是由于考虑不够细致后期仍然会发生较大的变动。在一些算法上也会遇到一些困难,与预估时间相比有较大的偏差。设计阶段应该细化到什么程度,是否应该细致的考虑所有细节?
  12.     设计无论做的多细致,实现起来还是会有偏差,因此设计主要针对整体的结构、功能,不必涉及太多细节,另外在实现过程中也需要不断地修改和更新文档,使开发文档与实际的开发工作同步
  13. 第九章中说在团队中项目经理、开发人员和测试人员是一种平等的关系。但是人们往往会不自觉地认为能给自己安排任务的人都应该与自己存在上下级关系,至少要有比自己更为突出的能力,那么在这种平等的关系之下,如果项目经理并没有过人的技术,在进行项目的规划和安排时怎样才能合理的分配工作并且有说服力呢?
  14.     充分的准备工作和协商是十分必要的。大家是处于一种平等的关系中共同完成一项任务,用着共同的目标,PM的主要依靠的并不是技术,而是对项目合理的规划和进度的掌控,PM应该用足够的时间对项目进行规划,结合每个人的情况进行任务的划分,
  15. 第八章中讲到在软件开发的过程中会不可避免的遇到“更改需求”这样的事情,无论是自己理解的偏差还是客户要求的改变,可能都需要在已完成的框架和功能上进行修改,往往会浪费之前付出的很多时间和精力,那么除了提高获取需求的能力和分析需求的准确性,从软件设计开发的角度出发,有没有什么减少损失的方法呢?
  16.     首先开发人员要做好不断更新需求的准备,另外,要设计好软件的结构,尽量做到高内聚低耦合的模块化,尽可能使修改集中在较小的范围内,避免牵一发而动全身。另外要在一开始就尽量选好软件的架构,而不是后期在进行重构。
  17. 在软件开发过程中,每个人负责的不同功能模块可能会有交互,而没有清晰的界限,开发人员需要很好的沟通才能使项目的开发顺利进行,交互的部分应该怎样分配时较好避免冲突呢?
  18.     应该在开发之前进行充分的设计,定义好交互部分的接口,保证两个部分能够对接。另外,需要写好文档,双方多进行沟通,但要避免交叉修改对方代码

知识点

  • 需求阶段
  •     学会是使用NABCD模型进行需求分析。并且进行需求分析时要做充足的调研,一定要从实际的用户那里获取信息,而不是自己凭空想象
  • 设计阶段
  •     需要确定项目大致的框架,进行功能、技术的设计,大致确定实现的流程
  • 实现阶段
  •     实现最小化可行产品,敏捷开发
  • 测试阶段
  •     设计阶段就应该对测试用一定的设计,实现的过程中就应该一边完成测试
  • 发布阶段
  •     应该事先准备好账号和需要的材料,保证软件的稳定性,并且寻找合适的渠道进行推广
  • 维护阶段
  •     应该多个渠道获取用户的反馈意见,根据反馈进行持续性的改进。

提问回顾与个人总结

提问回顾与个人总结项目内容这个作业属于哪个课程2021春季软件工程(罗杰任健)这个作业的要求在哪里提问回顾与个人总结我在这个课程的目标是初步掌握软件开发技术这个作业在哪个具体方面帮到我对本学期软件工程的学... 查看详情

终章——软工提问回顾与个人总结

终章——软工提问回顾与个人总结项目内容这个作业属于哪个课程2021春季软件工程(罗杰任健)这个作业的要求在哪里作业要求我在这个课程的目标是积累软件开发经验,提高工程能力这个作业在哪个具体方面帮助我实现目标... 查看详情

20180112软工提问回顾

提问回顾:提问链接:http://www.cnblogs.com/LuoboLiam/p/7594679.html1、注释在项目中到底起到什么作用?如果我们在变量以及方法命名上下足功夫,那解释方法工作的注释是不是就可以省略?经过邹老师的解答我对注释有了更深刻的理解... 查看详情

“回顾,再出发”——记2020软工提问回顾与个人总结

...季计算机学院软件工程(罗杰任建)这个作业的要求在哪里提问回顾与个人总结我在这个课程的目标是完成一次完整的软件开发经历并以博客的方式记录开发过程的心得掌握团队协作的技巧做出一个优秀的、持久的、具有实际意义... 查看详情

提问回顾

提问回顾以前问的问题个人开发流程里面的PSP表格中,开发阶段发现没有程序优化这一项,但是开发过程中程序的优化感觉上是必不可少的一部分,那么为什么PSP表格所描述的个人开发流程中没有优化这一项呢?优化可以认为是... 查看详情

提问回顾

链接:http://www.cnblogs.com/wangchenyu1996/p/7571663.html关于10个问题为什么说软件是人类创造的最复杂的系统类型?大型建筑、飞行器甚至长篇小说的结构也可以非常复杂,并且容易变得难以理解和维护,认为软件系统十分复杂是不是因... 查看详情

提问回顾

个人作业-Week1传送门自问自答Q1:“ScrumMaster不是一个官,而是一个没有行政权力的沟通者,就像微软的PM那样。他/她同时还要在团队中做具体的工作。直接把原来的‘经理’变成ScrumMaster,大多行不通。”当一个团队在进行敏捷... 查看详情

提问回顾

阅读教材后的疑问提问链接编写单元测试的原则应该以方便测试且易于验证的方式而不必拘泥于形式,但适当的切分模块是必要的。单元测试应该是保证小部分代码的正确性,避免代码量累积到最后除了问题难以下手。但如果过... 查看详情

提问回顾

提问链接主要当时也没有提什么问题,这篇文章讲的更多的是自己的一些思考鸡群效应在团队合作之后,也切身体会了一下团队合作的感觉,比起实力和经验差距较大的队友,我还是更喜欢跟和自己差不多的队友沟通,能够感受... 查看详情

提问回顾

个人作业Week1问题回答问题1:为什么在一个ZBB之后,bug数会以惊人的数目反弹?在团队项目中,在一个阶段发现了一群bug,当大家把这些bug一一修复后再进行测试,会出现一些之前没有发现的问题,并且可能由于之前的更改导致... 查看详情

提问回顾

之前提出的问题对软工课刚开始时自己问题的回答《构建之法》3.1节提到,花多少时间可以作为衡量一个软件开发的工作量的因素,即一组人的工作量可以用“人数x时间”来表示,而《人月神话》一书则是反对这种衡量标准的... 查看详情

rtos训练营上节回顾轻量级队列轻量级事件组和晚课提问(代码片段)

一:上节回顾在上次课里,我们从代码的角度来分析了任务通知的内部机制先来回顾一下,用图形的方式,用链表的方式来展示内部机制1.1初始状态假设一开始有两个任务:他们优先级都是n,放在一个就... 查看详情

rtos训练营上节回顾轻量级队列轻量级事件组和晚课提问(代码片段)

一:上节回顾在上次课里,我们从代码的角度来分析了任务通知的内部机制先来回顾一下,用图形的方式,用链表的方式来展示内部机制1.1初始状态假设一开始有两个任务:他们优先级都是n,放在一个就... 查看详情

rtos训练营上节回顾内部机制中断管理和晚课提问(代码片段)

一:上节回顾上节课我们详细的讲了定时器的内部机制:我们分为两条线来看定时器:1.上图里面左边的那些函数,都是去写队列:写不同的命令2.右边的定时器任务:他平时是阻塞状态,他怎样阻塞&#x... 查看详情

rtos训练营上节回顾内部机制中断管理和晚课提问(代码片段)

一:上节回顾上节课我们详细的讲了定时器的内部机制:我们分为两条线来看定时器:1.上图里面左边的那些函数,都是去写队列:写不同的命令2.右边的定时器任务:他平时是阻塞状态,他怎样阻塞&#x... 查看详情

rtos训练营上节回顾空闲任务定时器任务执行顺序调度策略和晚课提问(代码片段)

一:上节回顾在上一节课我们贴了这么一个图:FreeRTOS里面有很多个链表,这些链表分为三类:就绪列表、暂停列表、Delay链表。对于就绪列表,每一个优先级都有一个链表,比如我们有32个优先级,那... 查看详情

[buaa软工第四次]个人作业-提问回顾与个人总结(代码片段)

个人作业-提问回顾与个人总结“阅读和调研”文章链接问题回顾&解答所学知识点需求设计实现测试发布维护理解和心得“阅读和调研”文章链接[BUAA软工第一次]个人阅读作业-阅读和调研问题回顾&解答在“软件工程概论”... 查看详情

rtos训练营上节回顾轻量级队列轻量级事件组和晚课提问(代码片段)

一:上节回顾在上次课里,我们从代码的角度来分析了任务通知的内部机制先来回顾一下,用图形的方式,用链表的方式来展示内部机制1.1初始状态假设一开始有两个任务:他们优先级都是n,放在一个就... 查看详情