Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 应用程序开发工作流_C#_Workflow - Fatal编程技术网

C# 应用程序开发工作流

C# 应用程序开发工作流,c#,workflow,C#,Workflow,不久前,我为我工作的公司开发了一个简单的工程应用程序(Excel/VBA)。最近,其他公司开始对该软件感兴趣,所以我被指派让它更加用户友好。 我计划将VBA/Excel迁移到winForm C应用程序。由于这将是一个tedius任务,我想建立一个UML或分步图,以便在开发过程中不会忘记一些东西。所以我的问题是: 有谁能告诉我是否有应用程序开发工作流的示例,其中包括修改版本的更新过程等。首先,祝贺您接受开发项目。希望你会发现这是值得的。我还鼓励您向Stackoverflow注册,这样您就可以给自己

不久前,我为我工作的公司开发了一个简单的工程应用程序(Excel/VBA)。最近,其他公司开始对该软件感兴趣,所以我被指派让它更加用户友好。 我计划将VBA/Excel迁移到winForm C应用程序。由于这将是一个tedius任务,我想建立一个UML或分步图,以便在开发过程中不会忘记一些东西。所以我的问题是:
有谁能告诉我是否有应用程序开发工作流的示例,其中包括修改版本的更新过程等。首先,祝贺您接受开发项目。希望你会发现这是值得的。我还鼓励您向Stackoverflow注册,这样您就可以给自己起一个有意义的名字(或者至少是比user339481更有意义的名字),并轻松跟踪您的问题和答案。我相信随着过程的进行,你会得到更多

为了回答您的问题,软件开发方法学是一个非常非常广泛的主题,所以让您全面了解它们几乎是不可能的。我鼓励你们看一下像和这样的东西,并从总体上看

简而言之,当您处理定义良好的、与最终用户想要的完全匹配的静态需求时,瀑布效果更好。当你面对现实时,敏捷(和其他迭代的、动态的方法)工作得更好

工作
通过一个非常高层次的概述,以下是一些需要考虑的事项:

  • 收集您可以首先收集的所有需求。
在开发过程中,需求可以而且确实会发生变化(特别是对于内部业务线应用程序,对于包覆面处理产品,这种变化要小一些),但您希望尽可能减少这种变化。尽量不要让你的源代码定义应用程序的实际外观(他们肯定会这样做,所以要小心),除非某个特定的外观实际上会对可用性产生一些影响。几乎所有情况都不是这样。有一个“最佳设计”,很可能用户不知道这是什么。收集系统应该做什么以及结果应该是什么样的信息。幸运的是,您可能已经有了很多这方面的信息,因为您已经有了一个现有的产品

  • 在开始编码之前先进行总体设计,但不要成为分析瘫痪或过度工程的受害者。
过度设计一个解决方案就像跳槽,在没有明确方向或目标的情况下开始编码一样诱人。让事情尽可能简单,同时在未来的扩张中不要束缚自己。如果你写的很好,你会希望将来写得更好!我随便说说,但这两件事是软件开发中最难做的两件事。可取之处在于很容易把它们做好,但很难把它们做好。运用你的判断力,如果看起来你朝着错误的方向走了,不要害怕退后一步

  • 自己测试你的软件,但让知道自己在做什么的人测试它
您需要严格测试您的软件,但即使您是该领域的主题专家(换句话说,这是您为简化工作而编写的内容),您也需要的不仅仅是亲自查看和测试它。让你信任的工作人员知道这是为了帮助使用你的软件并给你反馈

工作规划
听起来你想创建一个UML图来描述如何编写软件,这是我不推荐的。这不会有什么帮助,而且您将花费比编写软件多得多的时间来编写它

然而,有帮助的是软件应该如何工作的UML图。虽然这在很大程度上取决于您正在编写的应用程序的类型(它非常适合于自动化处理系统,在自动化处理系统中,所有事情都是由一系列在循环中执行的步骤组成的,但对于UI密集型应用程序来说,它并没有那么有用),但即使它对于映射整个系统也没有用处,它可以很好地映射其中的一部分。如果您选择使用UML来描述应用程序的任何部分,您必须使其保持最新和准确。如果图表没有反映出应该发生什么,那么它将毫无用处(事实上,它很可能是一个障碍)。如果你的工作做得对,它也应该反映实际发生的事情

最后。。。
我不确定我在这方面帮了你多少忙,但希望这至少能为你提供一些有用的信息。如果你有更具体的问题,那么利用我们这里的大量知识:搜索你的问题,如果没有人想问它,就把它贴出来。这里有很多知识渊博的人,包括在微软C#团队工作的人和其他以写这方面的书为生的人。你会发现任何你能想到的答案都不乏


祝你好运