软件工程师小窍门
场景:三个软件项目的内部质量审核。这些项目大部分是基于Android或IOS使用Java。
参与者:开发人员(D),项目领导人(PL),测试人员(T),评审小组(A)
参考模型:敏捷软件开发,CMMI
由于大部分的问题都是其他软件开发公司的常见问题,您可能会发现,大多数评审小组的建议也可以应用于您的组织。
= ==
要求:
A: 你如何筹备收集和引出用户需求?例如你是如何计划的?
PL/D:我们没有需求计划。我们将在整个项目周期分配时间。
A: 你觉得如果需求计划涵盖了以下几个方面是否有帮助: 1)谁是被访谈者——名字和角色;2)参与人的角色和职责;3)必要的资源例如一个可用的旧资源,4)具体数据/时间
PL/D:我们会为每一次访谈中的讨论做记录。
A:团队访谈前最好事先做好准备,以减少遗漏重要点的风险。
A:你如何验证用户需求?
PL/D: 我们使用用户需求规范文档草案的模拟屏幕和原型。
A: 因为客户/用户缺乏IT背景,他们可能难以理解需求规范文档。建议用场景的形式来验证需求。
PL/D:什么是“场景”?
A:例如,作为用户,我希望通过网络系统订一张11月20日(5天后)上海到深圳的机票。当你简要介绍这个场景的时候,你和团队可以在系统已经开发的情况下,通过屏幕演示给用户。你就能马上了解到认识上的误差。这不只是使用平常的情况下。特别用在特殊情况下,那些通常都会被你的开发团队的误解的场景上。
A:你知道这个需求来源(指向列表中的要求)?怎么用?
PL/D: (试图找到相应的会议记录)我确信我在会议上做过记录,只是现在找不到了。本周晚一点交给你好吗?
A: 假若你为你的的需求和资源做了一个需求跟踪矩阵,这个问题你2分钟之内就能回答出来。同样的,做一个映射到测试用例的表格,可以确保所有需求都能被测试。没有测试的情况下,没有对应任何要求。
A:你是怎么做需求检查的?
PL/D:我们用评审检查表。
A:在技术评审中你主要检查什么?
PL/D: 评审检查表是否完整和恰当,…。(指的是需求评审检查表)
A: 此外,你至少应该检查:可追溯,可检验(测试),可唯一识别、一致性等。
设计和实现:
A:如何确保你的代码质量和可复用性?
D: 因为我们缺少时间,所以没有做单元测试。基本依赖于代码评审自动化工具来检查。
A:代码评审不能取代单元测试。可以使用代码的检讨,找出缺陷,第一,但你还是要运行测试,以确保代码是好的。如果你没有一组测试,以确保质量的代码,这将是非常困难,当你试图改变或重构未来的软件。那是因为你不会知道是否改变或不改变程序的其他功能。当你制定了一套完整的测试案例,你会只是通过这些测试运行后再次重新设计。在敏捷或极限编程中,我们强调编写测试用例之前,先编程[测试驱动开发(TDD))。这是同样的想法。
关于测试:
A: 你是怎样准备系统测试?
T: 对于每个功能需求,我们写一些测试用例,执行测试。如果我们发现任何错误/缺陷,我们将其报告给开发人员纠正。
A: 在这个测试案例,它只是说“输入用户名“,你不指定将测试输入。如果开发商想重新运行测试,他们怎么会知道?
A: 准备测试用例仅仅是测试计划的一部分。测试计划应包括资源,测试环境,退出标准。你应该想一想,用什么样的措施来收集这些测试以及这些措施的目的。
分享到:
相关推荐
本篇访谈的主题是软件工程专业职业生涯规划,通过对软件工程师孙XX的访谈,了解了软件工程师的工作内容、职业发展前景、就业经验和学习建议等。 一、软件工程师的工作内容 软件工程师的工作内容主要包括项目设计、...
系统集成项目管理工程师下午考试答题技巧精选-案例分析(整理) 企业人手比较紧张,于是M就选择了“编程工作的高手”小张作为项目经坦。这种“饥 不择食”的现象在国内的软件企业中比较普遍。软件项目经理甚至高级...
本书是为备考全国计算机技术与软件专业技术资格(水平)考试(网络工程师)的人员量身定做的冲刺指南。全书紧贴新大纲,全面而系统地分析和介绍了“网络工程师”考试中所涵盖的各个知识点。对每个知识点的难度、考试...
HiMPP V4.0媒体处理软件开发参考文档的阅读对象主要针对技术支持工程师和软件开发工程师。文档内容不但涉及了芯片的使用方法,也包括了可能遇到的危险以及相应的风险等级,例如,符号“”代表高度潜在危险,可能造成...
制造工程师可以在其中重用、创建和验证制造流程序列来模拟真实的过程,并帮助优化生产周期和节拍。此外,流程仿真还扩展到了各种机器人流程中,支持生产系统的仿真和调试。 2. **RobotExpert** - **RobotExpert**...
举例来说,一个合适的自我介绍可能是这样的:“您好,我叫李华,目前在ABC科技公司担任软件工程师,专注于Java开发,拥有五年的项目经验。我在北京大学获得了计算机科学的硕士学位,对大数据处理和云计算有深入的...
学习这两个系统的原理和实际应用,对于电气工程师和自动化技术人员来说是基础且必要的。 首先,报警电路的作用在于监测生产过程中的异常情况,并通过声光等报警方式提示操作人员或自动执行某些安全措施。而联锁电路...
### PIC LCD MCU技巧与诀窍详解 #### 技巧与诀窍概述 本文档主要针对Microchip公司的LCDPIC®MCU系列微控制器及其在液晶显示(LCD)...对于从事嵌入式系统设计的工程师来说,掌握这些技巧无疑将大大提升产品竞争力。
此外,还有用于强调重要信息、最佳实践和小窍门的“说明”。寄存器访问类型约定提供了寄存器的可读写状态的详细说明,包括只读、可读可写、读清零和写清零。例如,RR表示只读寄存器,RCW表示可读可写寄存器,ROR表示...
同时,可能提供学习资源,包括摩尔斯码表、学习技巧和小窍门,帮助用户更有效地掌握摩尔斯码。 另外,考虑到初学者可能对摩尔斯码感到陌生,“摩尔斯码toch练习软件”或许会包含基础教程,详细介绍摩尔斯码的历史、...
而“注意”则表示对重要信息、最佳实践和小窍门的提示。 文档中还包含了一个修订记录部分,记录了自文档发布以来的每一次更新内容。这些记录反映了eNSP软件的改进和更新过程,用户可以据此了解软件的最新状态和历史...
在IT行业中,DevOps是一种文化、实践和工具的集合,旨在增强开发人员(Dev)和运维人员(Ops)之间的协作,以...通过不断学习和实践,你可以成为一名出色的DevOps和云工程师,为企业带来更高效、稳定的软件交付流程。
最后,低功耗设计不仅是硬件工程师的任务,软件开发者同样能通过优化代码,减少外存访问,充分利用寄存器和内部CACHE,及时响应中断等方式,对降低功耗做出重要贡献。硬件和软件的协同优化是实现低功耗设计的关键。 ...
本文将深入探讨如何通过各种技术措施提高PCB设备的可靠性,帮助工程师们在设计过程中避免常见问题,提升产品的质量和使用寿命。 一、布局规划 1. 布局合理性:首先,元器件的布局应该遵循功能模块化原则,相同或...
介绍在此存储库中,我将与您分享我所有的ROS项目,以及与凉亭和ros有关的重要技巧和窍门任务1: #让我们从凉亭的第一个项目开始:⋅⋅*基于以下内容的项目:--[x]完成我的更改制作凉亭世界 :thumbs_up: 做两个...
本文将基于四大主要FPGA供应商——Actel、Altera、Lattice Semiconductor 和 Xilinx的专业人士意见,深入探讨当前FPGA应用工程师面临的主要设计问题及其解决方案。 #### 目前FPGA应用工程师面临的最主要设计问题 1...
5. 文档符号约定:在Rainbow hConvertor迁移工具操作手册中,使用了多种符号,包括警示紧急的危险情形、潜在的危险情形、设备或环境安全警示信息、重要/关键信息、最佳实践和小窍门等,用户需要了解这些符号的含义,...