如何在 30 天内重新设计整个应用程序?

来自:CSDN 2020-01-02

" 作为这个应用程序的唯一创始人,我不仅负责网站、应用程序、Chrome 扩展和网页抓取工具的开发,同时还负责包括营销在内的业务方面的工作。我真的没有多余的时间去做任何事情,也绝对没有时间去重建整个 Web 应用程序——所以我给了自己一个月的时间,打算把整件事情搞定 ......"

作者 | Justin

译者 | 苏本如,责编 | 郭芮

出品 | CSDN(ID:CSDNnews)

以下为译文:

Instagram(照片墙)是目前最受欢迎的平台之一,去年,Instagram 的商业账户数量、广告费用,甚至直接在应用程序中进行的采购量,都出现了爆炸式的增长。各种规模的企业蜂拥到这个平台上,并且都想参与其中。Instagram 的流行使它成为一个伟大的营销工具,但同时也使它很难脱颖而出,并接触到潜在客户。Hashtag(标签)是一种社交媒体概念,在 Instagram 上被大量使用,以帮助对帖子进行分类,并允许用户把他们的内容展现在更多的人,而不仅仅是他们的追随者面前。

不幸的是,在 Instagram 上采用有效的标签策略是一项艰苦的工作,而且非常耗时。很少有企业拥有这些知识和资源,而真正做到这一点的企业甚至更少。

Curate 应用程序通过消除复杂性和节省他们每周的时间来帮助企业获得他们的标签提升。Curate 与 Instagram 直接集成,它知道每个账户使用过的所有标签,以及它们如何影响到每个帖子。一旦用户注册,所有他们可用的标签都可以唾手可得,以帮助他们选择最佳的和最大的曝光。Curate 可以帮助创建标签列表,提供可视化界面,跟踪禁用的标签,获取建议,甚至自动定时发布你的标签。

随着应用程序的不断发展,Curate 达到了一个转折点,我知道再基于当前设计的基础构建新的功能是不会再有好的回报了。越来越多的用户体验问题不是仅仅简单的风格改变可以解决的。最初设计中的应用程序导航甚至数据的显示方式开始变得不那么有效了。在它上面构建任何新的功能也变得越来越麻烦,而且应用程序也可以使用一些 lipstick 来摆脱它的标准 Material 界面。

由于 Curate 开始获得用户的关注,并且已经有了付费客户,是时候为他们提供更好的解决问题的方案了。作为这个应用程序的唯一创始人,我不仅负责网站、应用程序、Chrome 扩展和网页抓取工具的开发,同时还负责包括营销在内的业务方面的工作。我真的没有多余的时间去做任何事情,也绝对没有时间去重建整个 Web 应用程序。但是不管怎样,我知道我的想法是正确的,所以我给了自己一个月的时间,打算把整件事情搞定。

一直工作中……

在正好 30 天内,第一次的生产部署完成了,它全面提升了 Curate 的用户体验。

如果你发现自己也正面临着类似的挑战,下面我想分享我在这一过程中学到的一些技巧。

确定你要改变的功能

在我开始进行任何开发工作之前,我就开始确定那些需要重新设计的具体功能,确保在我的时间范围内可以实现。在我计划的 30 天的时间上,我多给了自己一周的机动时间,因为我知道会有一些我没有考虑到的事情发生,或者我根本没有足够的时间去做我想做的所有事情。

设定一些你能实际完成的事情是很重要的。你的目标不要设得太高,设定一个你知道你自己可以达到的目标就好。没有人会因为他们只花了短短 20 天就完全重新设计了他们的 SaaS 应用程序而感到不安。相反,扩大项目范围并超越你设定的时间期限是一种错误的做法,它会让你期望的发布很难真正到来。

对于 Curate 应用程序来说,这意味着包括菜单、布局和大约 10 个主页面可以包括在这次的重新设计中。而一些辅助页面和设置 / 计费页面等内容在这 30 天的重新设计中将只会有最少量的更新。我知道什么样的变化可以通过纯粹的前端更新来达成,什么样的变化需要后端改变来实现,我也知道其他的一些变化需要一些独特的复杂的步骤来完成。

我还把我的 UI 开发推到了最后,因为我使用的 UI 框架是 React,它自然地适合构建可重用组件。在理想情况下,最后一步或两步工作只需要将我在这一过程中构建好的组件组合起来。

一个月的时间对于我设定的功能范围或多或少需要做些冲刺,但我明白,当 30 天的计时器滴答作响时,我必须在最后一刻前交付一个完整的产品。我的目标是在 30 天内完成从编写代码到产品发布这一过程的所有工作,重要的是不要有任何事情半途而废。

我知道哪些部分的工作可以被排除在这次 " 大修 " 之外,如果它必须要做的话,我也可以在 " 大修 " 接近尾声时自然而然地完成这些部分。在这一过程中,让你的一些工作暂时不完成是可以接受的,但是随着结束的临近,你要集中精力完成你已经开始的工作,而不是致力于新的改变。这样做会让你剩下最后几天的时间可以用来专注于功能完善和产品发布。

把你的计划分解成几块,以便你对下一步的工作了然于胸

既然你已经锁定了你想要完成的所有事情,就开始把它们分解吧。想一想你想要什么样的改变,开始着手做一些页面模板。你需要考虑页面的外观,同时还要注意它在用户交互中的动作和行为。因为我是从整体上考虑了重新设计,所以当我开始做的时候,我可以给未来的自己一些关于 UI/UX(用户界面 / 用户体验)的提示。

当我对我的重新设计看起来像是有了某种形式的理解后,我就开始仔细考虑我应该如何构建它。什么是我要先编码的?在我完成一个新页面后,我将如何测试?哪些部分是最难的?你需要写下所有这些答案,并在开发过程中作为指导。你可以使用文本列表、看板(如 Trello)、笔记本,甚至电子表格,帮助你跟踪重新设计工作的每一部分。

我是一个低保真模型的粉丝,在这部分工作上我选择了旧时上学用的铅笔和纸。我把我要改变的 10 个页面,包括菜单,按照我认为的它们应该的样子都画了出来。我不是一个职业设计师,所以对我来说,在制作模型时出现灵感是很重要的。我深信,如果我们喜欢使用一个工具并理解它们如何解决面临的类似问题,我们就能从其中发现设计的洞察力。

从其他 SaaS 应用程序中获得灵感也有助于保持强大的内聚力,因为你可以看到你的参考站点如何处理你的应用程序拥有的所有相同的设计元素。Curate 从各种搜索引擎优化关键字工具中获得了很多灵感。人们在如何搜索有合适数量和搜索引擎优化竞争的关键词,和他们在 Instagram 上发现针对特定客户群的标签的过程,有着惊人的相似之处。

一个人利用一个月的业余时间重建一个生产性的 SaaS 应用程序的整个用户界面,这可不是一件小事。我不必考虑接下来会发生什么,这一点非常关键。这样我的每一点时间都可以用于致力于我的全部设计工作和实际开发工作。事实上,我并不需要做太多的计划,只需要朝着终点前进,正是这样使得整个旅程成为了可能。

如果你在开发的过程中还要花一部分时间在设计和思考部分 UI,那么 30 天的目标很快就会变得不切实际。在我开始准备完成一个编码阶段的工作量之前,我需要准备三个编码阶段的工作量以确保我有足够的工作,以备不时之需。相信你的直觉,专注于你制定的计划。

做好一份 Bug 修复的任务列表,并记录将来的升级

对于软件来说,如果你走得很快,就会产生 bug ( 漏洞 ) 。在你开发的过程中,有些事情你在设计阶段没有考虑过,可能会带来一个你不能马上解决的挑战。重要的是不要让这些在开发过程中减慢你的开发速度,同时不要让它们在整个 30 天内累积起来。

在部署前或上线后,把这些问题写下来,以便在完善期间进行处理。我会写下我在开发过程中看到或引入的 bug,然后在我完全完成那个页面、组件或部件之后再检查确认一次。通常我会发现自己在列表中记下了一个 bug,然后继续完成这个功能的开发工作,等开发工作完成,回过头来再检查时,我发现我已经很自然地把它修复了。

另一件要记住的重要事情是,你的应用程序最终不会是完美的,所以不要试图使它成为完美。如果有些 bug 没有影响到功能,比如 UI 不一致,不要强迫自己保证在全面更新结束之前确保所有 bug 都得到了处理。在部署前或上线后,记下这些 bug,以便在完善期间进行处理。这是另一个有助于在 30 天结束前成功地交付应用程序的策略。

在开发过程中,你会提出一大堆新的想法和概念来仔细考虑,而这些想法和概念是你以前从未想过的。你不想失去那些新的想法,这一点值得鼓励。既然你想低头完成你的计划,就花一点时间思考一下你的新概念,记下来,然后继续前进。Curate 应用程序的 backlog 中积压的一些最佳特性的想法是在实际开发过程中产生的。重要的是不要让这些想法分散你的注意力,因为它们会分散你的注意力。这些想法看起来很好,以至于你会问自己 " 我怎么能不添加这个功能呢?" 但你必须要有所控制。随着时间的推移和不断反思,想法会变得更好,这有助于你达到平衡,最终创造出最佳的解决方案。

如果你被困住了不要停下来,保持持续向终点前进

可能你还没有注意到,在我们目前所谈论的许多事情中,有一个共同的主题,那就是保持专注。为了达到目标,我不能长时间地纠结于一个 bug 或一个技术挑战。如果我发现自己在同一个问题上花了一个多小时的时间,我会写下这个问题,把我的代码更改保存起来,然后切换到另一个问题来处理。我在开发时使用了番茄工作法(Pomodoro Technique),它能帮助我很容易地了解我在一个特定任务上花费了多长时间。我一定要等到第二天我的大脑恢复后再拿下一个任务。这有助于从一个新的角度来处理问题,并降低了重复工作和无进展工作造成的时间浪费。

不要让这些路障绊倒你。遇到难题,写下来,然后再解决,这会给你一种满足感。我甚至故意从打字变成用铅笔记问题。在长时间的编码过程中,转换似乎有助于保持我的新鲜感。而且,把每一个我解决掉的问题从纸上划掉,对我来说也是一种奖励。

截止时间到了的时候,如果有些功能还不可用,这也是可以接受的。我的做法是确保它们不会出现,把它们关掉,而不是让它们以 bug 的形式出现。记住,如果你需要花费 3 天时间来解决一个问题,那么这已经占了你所有时间的 10% 了。挑战总会出现,但要想出办法解决这些挑战,以确保这个项目在一个可以接受的时间内完成。

在这一个月的旅程中,我在规划、设计、开发和执行方面积累了丰富的经验。在这一个月里,我一直想方设法保持自己的积极性,比如让我的妻子参与进来,帮助追踪我还有多少个页面需要完成。我随身带着一个旧的学校剪贴簿,上面写着我一直记在脑海里的设计。

保持兴奋和上进心是帮助我成长的原因,我每天早睡早起,醒来后立即投入工作。这是一次无法抗拒的有趣的经历。我不仅为 Curate 应用程序完成了一些了不起的事情,而且我还收获了一份个人成就感。希望这份经历能激励其他人进行类似的冒险,并为我找到适合我的方法提供一些启示。

原文:https://hackernoon.com/how-i-redesigned-my-entire-b2b-saas-app-in-30-days-1s2m2g3c

本文为 CSDN 翻译,转载请注明来源出处。

此内容来源于互联网 查看原文