软件工程

针对在系统开发生命周期中工作的专业人士,学者和学生的问答

5
维护良好的错误数据库的步骤
维护错误数据库对于每个项目都很重要。我习惯将以下内容存储在错误数据库中 发行日期时间 分配给谁 是否已经解决 如果解决了,那么解决日期时间 这些足以维护一个良好的错误数据库吗?
9 bug  bug-report 


1
“通用系统”对Java SE Embedded意味着什么?
Oracle网站说了有关Java SE Embedded 许可证的内容: 开发是免费的,但在除通用系统以外的任何其他产品上部署时都需要版税 “通用系统”在这里是什么意思? 我们在全国都有传感器网络。在我们安装的每个盒子上,都有一块基于微控制器的板,可以从环境中获取数据,并通过串行端口将数据发送到基于ARM的嵌入式板。在此主板系统上,有一个Java进程,该进程使用JMS读取数据并将数据提交到我们的中央服务器。这被归类为通用系统吗? 抱歉,我在这里问这个。我们在伊朗,这里没有甲骨文办公室要问。

7
验证和确认是测试过程的一部分吗?
基于许多资​​料,我不认为测试的简单定义是找到尽可能多的错误-我们进行测试以确保其有效或无效。例如followint是测试ISTQB的目标: 确定(软件产品)满足指定要求(我认为其验证) 证明(软件产品)适合目的(我认为这是验证) 检测缺陷 我同意测试就是验证,确认和缺陷检测。那是对的吗?

7
是敏捷开发还是管理?
在讨论Scrum的全部内容时,我发现也许我完全误解了敏捷性。在我看来,Scrum(这当然被认为是敏捷过程)与管理功能,冲刺和角色以及与TDD,结对编程,CI,重构和其他以开发人员为中心的技术无关的东西无关。直到现在)都是敏捷的心脏。现在我面临一个困难! 1)Scrum不了解开发人员是否执行敏捷实践? 2)您可以在不使用自动化测试的团队中实施Scrum吗?是否不执行重构或不遵循敏捷编程实践?
9 agile  scrum  process 

4
如何在多个项目上维护相同的代码片段
很难说出这里的要求。这个问题是模棱两可,含糊,不完整,过于宽泛或夸张的,不能以当前的形式合理地回答。如需帮助澄清此问题以便可以重新打开, 请访问帮助中心。 7年前关闭。 我是从事多个Android项目的独立开发人员。我在不同项目上维护相同功能时遇到问题。例如,我的三个应用程序使用相同的2个类;由于它们是不同的项目,因此当我需要对这些类进行更改时,我需要进行三遍更改。对于这种常见问题是否有简单的解决方案?

6
时间紧迫和计划压力如何影响总拥有成本和交付时间?
一位朋友的父亲是软件工程经理,他强调说:“造成计划超支的首要原因是计划压力。” 研究站在哪里?是适度的调度压力在鼓舞人心,还是我提到的经理是对还是错,还是“您的调度压力越大,交货时间越长,总拥有成本越多”的问题?理想情况下,软件工程可以在没有调度压力的情况下工作,但实际上我们必须在现实情况的约束下工作,这是其中之一吗? 与软件工程文献的任何链接将不胜感激。

4
什么是在.NET应用程序中处理引用的最佳方法
最近在工作中,我们遇到了一个问题,我们标记/分支了一个项目,并且由于指向旧文件夹结构的dll /项目引用而遇到了一些编译问题。 我们为每个项目创建了一个“外部bin”文件夹,并将引用的dll复制到这些文件夹中。这是最好的方法还是有专门的行业标准来处理?
9 c# 

3
我应该如何准备好代码以进行OpenSourcing并将其放置在GitHub上?
几周后,我的项目将结束,我想开始准备好代码供其他人使用。 我将把所有内容发布到GitHub,以便人们可以对其进行调整,并希望使其更好。 我想我要问的是,确保我的代码被充分记录并措辞正确以供他人使用的最佳方法是什么? 我知道您应该始终注释所有内容,并且我将为每种方法添加@params功能,但是一般是否还有其他提示?

3
是什么使Erlang适用于云应用程序?
我们正在开始一个新项目,并在公司的Openstack云实例化上实施(请参阅http://www.openstack.org/)。该项目是我们公司的安全工具。我们目前运行着数百个专用于安全工具的专用服务器,并将它们移至我们公司的openstack实例化。 我公司中的其他项目目前在多个分布式服务器应用程序中使用erlang,而其他Q / A指出,erlang用于几种流行的云服务中。我试图说服其他人考虑将其应用于我们的项目。 erlang在云编程方面的优势是什么?在哪里使用erlang特别合适?


1
为什么在Java中分配对象/数组时会产生开销?
Java中数组占用多少字节?假设这是一台64位计算机,并且还假设一个数组中有N个元素,那么对于不同类型的数组,所有这些元素将占用2 * N,4 * N或8 * N个字节。 在Coursera的一次演讲中说,对于一个N元素数组,它将占用2 * N + 24、4 * N + 24或8 * N + 24个字节,而这24个字节称为开销,但没有说明为什么开销是需要。 对象也有开销,为16个字节。 这些间接费用到底是什么?这些24/16字节由什么组成? 另外,这些开销仅存在于Java中吗?C,C ++和Python呢?
9 java  memory 

9
功能开发的操作系统选择[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 4年前关闭。 我主要是.NET开发人员,所以我通常使用Windows / VisualStudio(这意味着:我很受宠),但是我在业余时间喜欢Haskell和其他(大多数是功能性的)语言。 现在,对于Haskell来说,Windows支持是可以的(您可以获取Haskell-Platform),但是latley我试图建立一个基本的Clojure / Scheme环境,这在Windows上很痛苦。 因此,我正在考虑尝试其他操作系统以获得更好的工具和语言支持。当然,这使我有了MacOS或某些Linux发行版。 我以前从未使用过MacOS,当然Linux会便宜(免费),而且我认为我不能在普通的PC硬件上并行引导MacOS(可以吗?)。加:我不知道可以在那些(对我)外国操作系统上使用的工具。 简而言之:我想探索更多Haskell,Clojure,Scala,Scheme,当然至少需要JavaScript / HTML5 / Css的良好工具。对.NET / Mono / F#的支持会很棒,但是为此,我仍将拥有Win7引导程序。 所以我想知道:-您首选的操作系统是什么,发行版(Ubuntu可行吗?)-您使用的是什么Editor / IDE 感谢您的帮助! PS:我不确定这是否是解决此问题的正确地方,但我当然希望如此-如果没有,请告诉我应该将其移至何处(StackOverflow似乎不是正确的地方,恕我直言)

8
在集中版本控制中,经常进行更新是否总是一件好事?
假如说: 您的团队正在使用集中式版本控制。 您正在开发一个较大的功能,该功能可能需要几天才能完成,并且在此之前您将无法提交,因为这会破坏构建。 您的团队成员每天都会做一些事情,这些事情可能会更改您正在处理的某些文件。 由于这是集中的版本控制,因此您将必须在某个时候更新本地结帐:至少在提交新功能之前至少一次。 如果您在提交之前仅更新一次,那么由于您的队友进行的许多其他更改可能会导致很多冲突,这可能会一次解决所有冲突。 或者,您可以经常进行更新,即使每天有一些冲突需要解决,也应该一点一点地变得更容易。 您是否愿意经常更新始终是个好主意?

3
纪念模式背后的哲学
我一直在从Internet的各种来源阅读备忘录模式。来自不同来源的不同信息使我困惑,为什么实际上需要这种模式。 在工厂实现中,该模式的主要目的是恢复系统状态。 Wiki的主要目的是能够恢复系统上的更改。这产生了不同的影响-表示系统可以执行memento实现而无需还原。而这种还原能力就是其中的一个功能。 OODesign说 有时有必要在某个时刻捕获对象的内部状态,并具有稍后将对象恢复到该状态的能力。在发生错误或故障的情况下,这种情况很有用。 所以,我的问题是为什么我们到底要使用这个?是要保存以前的状态,还是要促进看守人和纪念品之间的封装?为什么这种封装如此重要? 编辑:对于那些访问,请检查此实现! 编辑:我正在实施对我的问题的备忘录解决方案。我将就此发布另一个问题,并将该问题链接到这个问题。感谢所有人的宝贵建议! 编辑3:这是我的示例实现的链接

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.