前段时间我为我工作的公司开发了一个简单的工程应用程序(Excel / VBA)。最近,其他公司对该软件产生了兴趣,因此我被指派使其更加用户友好。 我打算将VBA / Excel迁移到winForm C#应用程序。由于这将是一个tedius任务,我想设置一个UML或逐步图表,以免在开发过程中忘记一些东西。所以我的问题是: 任何人都可以告诉我是否有应用程序开发工作流程的示例,其中包括具有修订版本等的更新过程
答案 0 :(得分:1)
首先,恭喜接受开发项目。希望你会发现它有益。我还鼓励您注册Stackoverflow,以便您能够给自己一个有意义的名称(或至少比user339481更有意义的东西),并轻松跟踪您的问题和答案。我确信随着流程的进行,你会有更多。
为了解决您的问题,软件开发方法是一个非常非常广泛的主题,所以让您全面了解它们几乎是不可能的。我建议您查看Agile和Waterfall以及SDLC (software development lifecycle)等内容,以获取一般情况。
简洁地说,当您处理与最终用户想要的内容完全匹配的明确定义的静态需求时,瀑布会更好。当你处理现实时,敏捷(和其他迭代的,动态的方法)会更好地工作。
通过非常高级的概述,以下是需要考虑的一些事项:
在开发过程中,需求可以 进行更改(特别是对于内部业务线应用程序,对于收缩包装产品而言则更少),但您希望尽可能减少这种情况。尽量不让你的来源定义应用程序实际上的样子(他们肯定想要这样做,所以要小心),除非特定外观实际上会对可用性产生一些影响。这几乎普遍不是这种情况。有一个“最佳设计”,用户很可能不知道那是什么。收集有关系统应该做什么以及结果应该是什么样的信息。幸运的是,由于您拥有现有产品,因此您可能已经拥有大量此类信息。
过度设计解决方案同样具有吸引力,因为它是跳枪并开始编码而没有明确定义的方向或目标。让事情变得尽可能简单,同时在未来的扩展中不要束缚自己。如果你写的东西很好,那么你将来希望它变得更好!我这是非专业地说,但这两件事是软件开发中最困难的两件事。拯救的优点是很容易做到可接受,很难做到非常。使用你的判断,如果看起来你朝着错误的方向前进的话,不要害怕退缩和踢球。
您需要严格测试您的软件,但即使您是该领域的主题专家(换句话说,这是您为使 工作更轻松而编写的内容),需要的不仅仅是你自己的眼睛看着它并测试它。让您信任的人完成这项工作,以帮助您使用软件并为您提供反馈。
听起来你想要创建一个如何编写软件的UML图,这是我建议的。它没有用,你会花费更多的时间来编写它而不是编写软件。
然而,有用的是软件应该如何工作的UML图。虽然这在很大程度上取决于您正在编写的应用程序类型(它非常适合自动处理系统,其中所有内容都确实包含在循环中执行的一系列步骤,而对于UI密集型应用程序来说它并不那么有用) ,但即使它对映射整个系统没有用,它也可以很好地映射部分。如果您选择使用UML来描述应用程序的任何部分,必须使其保持最新且准确。如果它没有反映出应该发生的事情,那么该图将毫无用处(事实上,它可能会成为障碍)。如果你已经完成了正确的工作,它也应该反映实际发生的事情!
我不确定我在这方面给了你多少帮助,但希望这会为你提供至少一些有用的信息。如果您有更具体的问题,那么请利用我们在这里提供的大量知识:搜索您的问题,然后发布,如果没有人想过要问它。这里有很多知识渊博的人,包括在Microsoft C#团队工作的人和其他以此为生的书籍。你会发现你可以想出的任何答案都不缺乏答案。
祝你好运!