2. HCI
Group Fun
Table of Contents
Introduction ............................................................................................................................. 3!
What is Group Fun? ............................................................................................................ 3!
What has my semester project consisted in? ...................................................................... 3!
Phase 1: Task Model .............................................................................................................. 6!
Phase 2: High-Fidelity prototype ............................................................................................. 6
Phase 3: Coding ..................................................................................................................... 7
1. Technologies used ......................................................................................................... 7!
2. Where is the code? ......................................................................................................... 8!
3. Different screens of the application ................................................................................. 8
Conclusion ............................................................................................................................ 14!
Page 2
3. HCI
Group Fun
Introduction
What is Group Fun?
Group Fun is a Facebook application, which allows a group of friends to
compose a common playlist together; it helps them agreeing on a common music
playlist for a given event, e.g., a birthday party or a graduation ceremony. Group
Fun has several goals: connecting friends together, managing music and sharing it.
With Group Fun, users can listen to their own collection of songs as well as their
friends’ music. With the collective music database, GroupFun integrates music tastes
from different friends and recommends common playlists to them. Therefore, they
can choose a common list for social events easily without worrying about distinct
music tastes. The application aims at satisfying music tastes of the whole group by
aggregating individual preferences.
What has my semester project consisted in?
The goal of my semester project was to extend the previous functionalities of
Group Fun. Finally, after discussing a lot about it, it turned out that lots of
functionalities have been redefined and changed. Moreover, since I took the HCI
course at the same time, I have learned all the way a designer has to browse before
starting coding an application: product statement, interaction design characteristics,
population analysis and persona, scenario, interface sketching, story board. It has
helped me a lot.
My semester project has been divided in three parts: studying the functionalities of
Group Fun, studying the interfaces and coding.
Page 3
4. HCI
Group Fun
Phase 1: task model:
After several meetings with Dr Pu talking about the main functionalities Group
Fun should have, Yu and I have created the task model bellow.
Description :
Create a group: allows the user to create a group of friends in order for them to
share music together. It can be created for any occasion: a birthday, a party, a
dinner!
The user will have to precise a name, a photo for the group and a privacy status for
the group. Then, he will send invites to each person he wants to have in his group.
(each futur member)
Page 4
5. HCI
Group Fun
Accept a group invitation: the friend invited by the user to join his group will have
the choice to accept or to decline the invite.
Revisit a group: (visit a group again) Any user can go to his group page again and
do anything that is provided in the group page (as long as he is still a member of this
group)
Invite friends: This functionality depends on the group's privacy.
If the group is public, anyone belonging to this group can invite friends.
If the group is private, only the one who has created it (the admin) can invite friends.
However, the admin can decide to assign other members of the groups to be admin
as well: in this case,they could invite friends.
Enter a group: The user has accepted the invite to join the group and enters in it for
the first time.
Upload and rate music: Each user has the possibility to rate the songs of the
groups he belongs to and to upload his music from his computer.
View members: allows the user to see all the members of the groups he belongs to.
Listen to my uploaded music: Each user will have the possibility to listen to the
music he has uploaded.
Listen to group music: Each member of the group can listen to all the music
uploaded by the other members of this group.
Page 5
7. HCI
Group Fun
Phase 3: Coding:
I have worked a lot on trying to organize the code. I have recoded everything
from scratch comparing to the previous application.
1. Technologies used:
• Code igniter (PHP framework based on MVC)
• Php
• Html
• Javascript
• Ajax
What is MVC?
MVC means model view controller. It is a pattern which isolates ”domain logic” from
the user interface, permitting independent development, testing and maintenance of
each.
The model manages the behavior and data of the application domain.
The view renders the model into a form suitable for interaction.
The controller receives user input and initiates a response by making calls on
model objects.
Page 7
8. HCI
Group Fun
2. Where is the code?
The application is accessible via facebook as “Group Fun”.
The path to the application on our server is:
http://grpupc1.epfl.ch/~laurentiu/groupfunElsaPhpFram/index.php/home
The settings for the connexion to the data base are in:
“groupfunElsaPhpFram/application/config/database.php »
3. Different screens of the application:
Page 8
14. HCI
Group Fun
Conclusion
To conclude, I have learned a lot thanks to this semester project and to the
HCI course. I have discovered that in computer science, there are other challenges
than algorithms and code!
Finally, I would like to thank again Dr Pu for taking time out from her busy
schedule in order to give me very useful pieces of advice and recommendations.
Thanks a lot to George and Yu as well who have been always free to answer my
questions! It has been a pleasure to work in this HCI lab with you!
Page 14