Architectural Design

For our project we proposed 3 tier MVC architecture. The reason for proposing MVC is that gives data the ability to change independently and allows presentation of the same data in different ways (Pressman, 2010). With 3-layered architecture gives more secure accessing to data and authentication can be enabled in each layer (Sommerville, 2010). We believe that merging MVC with 3 Layered architecture gives more secure and enhance reuse functionality.

Architucture

References:

Sommerville, I. (2010) Software Engineering >INTERNATIONAL EDITION <. 9th edn. Harlow: Pearson Education (US)

Pressman (2000) Software Engineering: A Practitioner’s Approach (McGraw-Hill International Editions: Compute… 5th edn. United States: McGraw Hill Higher Education

Design and Accessibility Considerations

a11ylogo_highres

It is really important to create an app that is accessible to the widest possible set of users. Considering that 15% of the world’s population have a disability that affects their access to mobile technology, it is important to make small provisions that can make a huge difference to the user experience of someone with a disability (Narasimhan and Leblois, 2012).

Our app will be published with an Accessibility Statement that will express our commitment to accessibility. An important part of this is allowing a clear and easy way for users to contact us to make suggestions for improvement based on their experiences of using the app (Onevoiceict.org, 2015)

Our app will have the following accessibility features:

  • A help section describing how to use the app.
  • Ability to alter the text formatting.
  • Minimal or no use of red and green together for colour-blind users.
  • Simple and consistent design to help users with cognitive disabilities.
  • Ability to change the display (e.g. to increase the contrast) for partially sighted users.

Future improvements that could be made include:

  • All content on the screen being turned into speech for totally blind users.
  • A voice input feature as an alternative to a keyboard for users with upper limb disorders.

References

Narasimhan, N. and Leblois, A. (2012). Making mobile phones and services accessible for persons with disabilities. ITU.

Onevoiceict.org, (2015). First Seven Steps to accessible mobile apps | OneVoice for Accessible ICT. [online] Available at: http://www.onevoiceict.org/first-seven-steps-accessible-mobile-apps [Accessed 27 Apr. 2015].

Mockups

These mockups show how Small.World would look on a smartphone, with the Nexus 5 used as an example.

After logging in, the user is taken to the ‘Friends’ tab, where they can see the friends that they are connected to (solid black line), as well as the friends of a friend (dotted black line). By tapping on a profile picture, a user can see the public profile of another user (e.g. interests, location)

Small.World_Examples2 Small.World_Examples3

The menu is accessed by tapping the button in the top left of the screen. From there a user can edit their profile, giving as much information as they want to, as well as being able to edit the display of the app. Users are also able to filter their friends by location or interest which would be useful for users with large numbers of friends.

Small.World_Examples4

The map view shows the location of a user and the location of their friends and friends of a friend within a certain radius. In the settings, the radius can be changed and the user can choose whether to see people or events. Again tapping on a user’s dot will bring up the public profile of another user.

Small.World_Examples5

Scenarios

A scenario provides the description of the use’s interaction with the application.
For the Small.World, let us assume the following roles:
Bob -a student who is studying the Master of Science programme in England.
He has a flatmate named Alice comes from Holland in the university.
He also has a good friend named Tess in his class.
Alice -Bob’s flatmate.
She expects to meet her parents in Amsterdam after the end of the second semester.
Tess -Bob’s classmate.
She has a nice plan about traveling to Amsterdam during the easter holiday.
System: The Small.World.

The scenarios take place in the following manner:

1.Bob enters the website of the Small.World.
2.Bob registers by his facebook account at the first time.
3.Bob allows the Small.World to search and add all his friends who use this application.
4.Bob customizes the Small.World’s layout.
5.Alice downloads the mobile app of the Small.World.
6.Alice logs in using her Google+ email account for free.
7.Alice relates her Google+ account to her facebook account.
8.Alice selects keep her personal information secret.
9.Tess receives a recommodation message from Bob about the Small.World.
10.Tess downloads the Small.World app into her phone following the link in the text message.
11.Tess logins in with her facebook account.
12.Tess puts her first review about movies by her phone.
13.The Small.World tracks Alice’s movement when she comes back to Amsterdam.
14.Tess checks-in at her new location when she travels to Amsterdam.
15.The Small.World displays Tess’s current location in a multi-layered map.
16.Bob receives a push notification-”Your friends Alice and Tess are both in Amsterdam,would you like to reccommand them to be friends?” from the Small.World.
17.Bob shares the basic information about Alice and Tess in the Small.World.
18.Bob reccommands Alice and Tess to add each other through the Small.World.
19.Alice adds Tess into her friends’ list.
20.Alice says Hello to Tess in the chat section.
21.Alice reviews Tess’s past posts.
22.Bob hosts a three-people’s video conference to discuss Tess’s travel plan in Amsterdam.
23.Tess adds more personal information in the Small.World app, such as personal hobbies and preference on food and places.
24.Alice finds a video about Anne Frank Huis and shares with Tess to recommend tess
to travel together.
25.Tess receives a sound notification from Small.World.
26.Tess accepts Alice’s recommendation.
27.Tess posts a review of locations and events.
28.Alice shares Tess’s review.
29.Alice makes an appointment with Tess in the comment area of the review to travel
together at 7th, April.
30.Bob tags Alice and Tess on a same map.
31.Tess turns on the GPS tracking.
32.The Small.World displays the current location of Tess in both online and offline mode.
33.The Small.World tracks Tess’s location in real time by GPS.
34. Tess receives an alert on presence of Alice within 5 miles proximity.
35.Alice selects a restaurant from the advertisements in Small.World app.
36.Tess gives a good feedback for the restaurant through the app.

Class Diagram

The Class is the static structure of the system. The diagram illustrates the system classes, attributes, operations and interrelationship between them (Ambler, 2014). The class diagram is divided into two main sections, class name with blue background, attributes beginning with a minus sign (-) indicate a private attribute.The arrows show the associations between classes with labels indicating the nature of the relations. For example, User class is associated with Profile class, it means each user has it is own profile.For simplicity, only the main operations are included in these classes. As in requirements mentioned, the User class has Chat, Post, and Message class. To make the class diagram clearer and easily understood, some operations have been eliminated from the figure.

 

SmallWorld_Class Diagram1

Ethical Challenges Might Face Small.World

Small.World offers incredible large amount of real time data from its users. This might tend to face ethical issues that other social networking companies have been faced in the past.

So for this project the process of gaining ethical approval from ERGO (Ethics and Research Governance Online) of University Southampton will be considered.

The main ethical issues might Small.World encounters are but not limited to :

  • Who owns the data creates by Small.World?
  • GPS tracking
  • Misleading reviews
  • Cyber Bullying
  • Sharing negative sentiment about the business places such as restaurants and cafes
  • The amount of information that shared with FOAF.
  • Invasion of Privacy

Small.World Prototype

Here is a glance of the system functions put into action, the prototype was used to gather the team members feedback to enhance it. Mockups were built based on the feedback given on the prototype below.

Click on the video link below for the prototype

 

Small_World_prototype_720

Tool used: http://www.justinmind.com