13.09.2016 Views

TINK - sketching product experiences of connected objects

Tink is the result of my graduation project from the master in design for interaction at TUDelft. Tink is a web platform that connects products with one another via the Internet, it provides designers with a complete Internet of Things (IOT) development environment. Designers are provided with a rich stack of features to sketch, prototype and test IOT projects. Tink is a user-friendly, visual, collaborative, open-source tool for designers to build connected interactions among objects.

Tink is the result of my graduation project from the master in design for interaction at TUDelft.

Tink is a web platform that connects products with one another via the Internet, it provides designers with a complete Internet of Things (IOT) development environment.
Designers are provided with a rich stack of features to sketch, prototype and test IOT projects. Tink is a user-friendly, visual, collaborative, open-source tool for designers to build connected interactions among objects.

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

88 - <strong>TINK</strong><br />

5.3 Prototyping the user interface<br />

A second prototype was developed with the<br />

intention <strong>of</strong> running a user test to evaluate<br />

the user experience <strong>of</strong> <strong>TINK</strong>.<br />

The development <strong>of</strong> a fully functional<br />

prototype <strong>of</strong> the entire system goes beyond<br />

the scope <strong>of</strong> the project because it would<br />

require months <strong>of</strong> development.<br />

Instead this partial prototype focused just<br />

on the implementation <strong>of</strong> the edit view,<br />

and to left out the monitor view.<br />

Time constraints also made it impossible<br />

to integrate the work done for the first<br />

technology test in the second prototype.<br />

The prototype was therefore not functional,<br />

as it was unable to connect to physical<br />

“<strong>connected</strong> <strong>objects</strong>“ (Arduino YUN).<br />

What was functional on this prototype were<br />

the main elements <strong>of</strong> the interface (the<br />

edit view to sketch and edit the system<br />

diagram) as well as the back-end used to<br />

save users information and save projects.<br />

The developed prototype will therefore be<br />

able to:<br />

• Create a new project<br />

• Access the system diagram editor<br />

• Add entities to the diagram<br />

• Add building blocks to the entities<br />

• Connect building blocks with each<br />

other.<br />

The prototype developed won’t allow to:<br />

• Share the project<br />

• Access the map view and visualize the<br />

data<br />

• Edit the code<br />

• Use the different types <strong>of</strong> building<br />

block connectors<br />

• Upload a custom picture for the<br />

entities<br />

• Clone entities<br />

• Deploy the s<strong>of</strong>tware<br />

• Get real time feedback<br />

• Access the building block library<br />

The prototype was built on top <strong>of</strong> the stack<br />

<strong>of</strong> JavaScript technology shown in Figure<br />

38.<br />

The front-end was implemented using<br />

AngularJs, a framework that facilitates the<br />

development <strong>of</strong> dynamic web applications.<br />

Since in modern browsers it is possible to<br />

include SVG tags into web pages, it was<br />

decided to use the vector markup language<br />

to code the system diagram. This was<br />

mainly adopted to solve the problem <strong>of</strong><br />

drawing arrows to connect one building<br />

block to another and be able to arrange<br />

elements freely in the page.<br />

The back-end, with the role <strong>of</strong> storing data,<br />

was built on top <strong>of</strong> SailsJs, a web framework<br />

aimed at the development <strong>of</strong> real-time web<br />

application. SailsJs is able to automatically<br />

generate the required API to interact with<br />

several types <strong>of</strong> databases. Moreover it

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!