首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >什么样的设计和规划技术最适合于个别项目?

什么样的设计和规划技术最适合于个别项目?
EN

Software Engineering用户
提问于 2011-06-15 12:17:33
回答 3查看 294关注 0票数 1

今年夏天,我想开发一些应用程序,它们都比较小,但风险很大--它们很复杂,我没有经验。我要自己工作,因为我的同学或其他我认识的IT人员对编程没有真正的兴趣(我发誓!)

除了编写好的代码外,我还想正确地分析、设计和计划所有的事情。对于一个人的项目来说,应用标准的方法可能会非常困难,不是吗?

那么,我应该使用什么生命周期和图表呢?在大学里,我学到的只是一种非常肤浅的软件工程方法。

EN

回答 3

Software Engineering用户

回答已采纳

发布于 2011-06-15 12:49:56

我建议一次专注于一个小项目。如果问题很复杂,你可能想先花点时间思考,这样你就可以深入问题领域,至少在你对如何解决核心问题有一个想法的程度上。

一旦您有了这种理解,并且通常是一个很好的草图,那么从一开始就用单元测试来实现代码,其中每个测试都表示期望的结果或代码处理有缺陷或不完整的输入的能力。

对于一个人的团队来说,大多数的标准方法都是过头的,但是这个原则仍然可以应用,尽管规模要小得多。我不建议花太多的时间在漂亮的图表上,手绘草图就行了。因为这听起来像是在尝试学习编程方面的新知识,所以不要担心生命周期。

票数 3
EN

Software Engineering用户

发布于 2011-06-15 12:26:09

看看敏捷方法。首先,获取您想要实现的目标的小部分,并在迭代过程中处理(迭代是一段时间,可以是一天,也可以是一个月)。迭代越小,反馈就越快。在所有情况下,一件事开始时的需求通常与结束时的需求完全不同,而你在图表、工作流等中付出的任何努力都是徒劳的。

敏捷过程是非常主观的,而且每个团队都有不同的地方,而且规模太大,无法在这里讨论而不会失去重点,但我确实建议您阅读许多致力于此的网站中的一个。

票数 1
EN

Software Engineering用户

发布于 2011-06-15 12:51:37

我赞同马丁·福勒( Martin Fowler )在谈到图表和文档时谈到的同样的想法--本质上只做有意义的事情,当它们能够向你的客户和团队伙伴传达想法时,使用它们--它们(此时)都是你。

我也做过同样的事情--在一边或在家里创建项目。以下几点帮助了我,希望能得到你喜欢的东西--留下剩下的:

( 1)我仍然订阅了构建软件的数据中心视图。数据(用于商业应用程序)仍然是王者。什么是数据,什么是关系-建立一个ERD并理解您的“业务”(因为没有一个更好的术语)。

2)写出一个高层次的“故事”列表--你想让你的应用程序去做的事情。您可以使用一种单独的敏捷方法,并按优先级顺序对它们进行排序和处理。首先首先要做的是,例如--您将需要错误日志记录、数据管道、UI基础设施、成员服务(等等)。在做核心模块之前。

( 3)布局良好的高层次设计。它不一定是花哨的,但把它写在纸上,偶尔再看一看。它有时可以帮助你看到森林通过树木,当你工作时,一个很好的细节稍后。

3)构建核心模块。遵循良好的做法。在这里,我不会讲太多的细节--你知道它们是什么(例如单元测试,关注点的分离,等等)

4)测试它-- OK...this是自己的困难部分。找一两个朋友(我妻子是个很好的测试者--保佑她的心)。花时间给他们买披萨。但是你需要有一个不是你的人-你知道太多的技巧,而你的朋友是优秀的测试者。

5)制定部署或分配计划。市场营销和分销通常不是我们的tea...so之一,你可能也想在这方面寻求帮助。

享受吧!

票数 1
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/84167

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档