Collaboration tool Trello

 


Bobby Grace, a designerFog Creek Softwarethe developer of Trello , recently published an article demystifying how this popular collaboration tool was developed.

Trello is a lightweight team process collaboration and list management platform. Its core is"Board","List"and"Card" 3layers. WhereBoardrepresents a project,Listrepresents a set of task lists, andCardrepresents an independent task. Cardscan be moved between differentlistspeople can be assigned, attached, and discussedaround eachcardTrello's horizontality , lightness, flexibility, and rapid iteration make it popular among users in the collaboration tool market.

More importantly, Trello itself uses Trello to get feedback, and to design and develop Trello .

Make Trello with Trello

They have an internal board called "Trello Internal" that lists everything related to the API and the design of the Trello.com website. There will be lists such as " in progress " , " waiting for testing / review " , " to be merged " , and of course " received bugs" .

Bobby describes their general process for dealing with bugs :

Pick a card from the Bugs Received list, assign the task to yourself, and move the card to the On Work list . Deal with bugs .

Create a new fork in your own repository (like bobby/oops-no-crash ) and put it on Kiln , the company's own distributed version control and code review system .

Write the name of the branch on the card description (as patched in bobby/oops-no-crash ), then move the card to the " to be tested / reviewed " list.

At the same time, other developers on Kiln have reviewed the changed code, and then notified the testers, who verified that the vulnerability was successfully patched.

Once you get 4 likes, the card will be moved to the " To be merged " list.

The release manager then merges the changes into the official Build repository, makes the newly revised version the new stable version and releases it, and you're done.

Next, other developers can pull the latest version with revisions from the official Build repository and merge it into their own branch. Then continue with the above process. Bobby says they put out a lot of revisions every day.

Development and testing of major features

Bobby revealed that there are actually three channels for accessing the Trello website : "Stable" , "Beta" and "Alpha" . The server will decide which version of trello.com the user should enter . Everyone will have access to "Stable " , then a select few will have access to "Beta " and Trello team members and Fog Creeker employees will have access to "Apha" . A few authorized people can also perform version switching.

Because some major new functions are only designed based on experience and need to be verified by the market, they will first be put into the Alpha version for testing, and then continue to iterate. If there are API changes related to the new client , they will release a version first and then submit it to the alpha version for testing.

After the alpha version is completed, it will be transferred to the beta version, the so-called public beta stage. Trello selects "1% to 15%" of users every day for it to try and get a lot of feedback, and then iterates based on feedback until it is 100% stable, followed by the release process of the new version.

Design and development

Bobby revealed that their team internally uses a " product planning board " to conduct product design research. A number of cards related to the problem will be listed on the board. Cards are generally of the form: " I can't find this feature " , " I want to do this but can't. " And problems usually come from some of the following sources:

Frequently Asked Questions in Support Emails Forwarded via Bug Tracker FogBugz

Team member frustration

Direct communication with users ( Trello has a dedicated person in charge)

The team will study all feedback. Then conduct various internal investigations, usability tests. Google Analytics will also be used to see which features are commonly used by users. I hope to understand how users use Trello , what users' needs and pain points are.

Then, a number of suggested solutions are written on the back of each problem card. Then select the problem card that needs to be dealt with according to the priority. Designers then draw sketches based on the solution and attach them to cards for feedback. Then there is the constant iterative modification. Prototype development begins after finalization, and each project will have a code name. Bobby says their project code name for the new "boards page " feature is called "Borderlands" because it considers everything outside of the board view. The code name for the new "The card back " project is called "Jelly Donut " , which means that the card is more delicious when turned over.

After the prototype is developed, the alpha version can be submitted, and then the development and testing process of major functions can be carried out.

In general, the development process of Trello is not much different from that of most software, but the most impressive impression of this disclosure should be that developers are the biggest users of their products, and only they are the most important users of their products. Loyal users make it possible to make a product that everyone loves, and Trello did it.

 

 

Guess you like

Origin http://10.200.1.11:23101/article/api/json?id=326800462&siteId=291194637