May 11 2012

Welcome and Navigation

Important: Please read this post first.

This is the blog of Group 7: OrientExpress. This blog records our progress of design and develop a new social networking application. We strongly recommend you to use the “TABLE of Content” which provided below as the navigation tool to help you browse the entire contents on our blog.

What’s more, our group is constituted with one mentor, one critical friend and five project members:

Mentor:
Norhidayah Azman
Email: nba08r@ecs.soton.ac.uk

Critical Friend:
Mandy Lo
Email: cmml100@ecs.soton.ac.uk

Group Menbers:
Chen Jia
MSc Software Engineering
Email: jc8g11@ecs.soton.ac.uk

Sun Guochen
MSc Software Engineering
Email: gs2e11@ecs.soton.ac.uk

Lu Yu
MSc Software Engineering
Email: yl1e11@ecs.soton.ac.uk

Sen Debopam
MSc Software Engineering
Email: ds1g11@ecs.soton.ac.uk

Wang Wei
MSc Web Technology
Email: ww3g11@ecs.soton.ac.uk

The processes of our product development can be divided into four main phases. The first phase is “Planning” which including generate the project brief and set the project management plan. The second phase is “Concept Development” which including analyzes the existing similar tools, search the related tech news items, research the related academic work and perform the user interview. After that, the third phase is “System-level and Detail Design” which includes the processes of product design, engineering development and product demonstration. Finally, the last phase is “Contextual Factors Consideration” which considers the social factors around our software and also provides an overview of pitch to dragons den panel.


TABLE of Contents


May 11 2012

Overview of Pitch to Dragons Den Panel


Background
With the popularity of social networks nowadays, people’s social information becomes rich and wonderful. However, much information comes from the people whom we don’t really communicate with and don’t care about. The problem seems to be more obvious and worse if the number of friends we have on social networks becomes bigger. In fact, our real social lives are much different from the current social networks like Facebook or Twitter. People we know and actually interact with most in real life are in our mobile contacts. It is meaningful for people to pay more attention on the social networks information of our mobile contacts.

Project Introduction
Our group’s project is a social network application on mobile phone called RankFirst. RankFirst integrates user’s contacts on mobile phone and information on social networks effectively. The core idea of RankFirst is to rank user’s social networks information according to the order of the relationship credits between the user and the user’s contacts. The credits are calculated based on the statistics of mobile phone’s social activities like sending messages, making phone calls, video calls and real meetings. Thus a relationship with higher credits gets higher social networks information priority.

Project’s Benefits
In this way, RankFirst helps user find the closest friends on contacts and let user get social networks information of those closest friends more efficiently. That is what the RankFirst’s slogan says “Make you and your closest friends closer”.

Demanded Investment
The number of demanded investment is ÂŁ12 million, which is expected to be spent on stages of product design and development, product maintenance and upgrades, marketing, wages and benefits.

Business Model
Our choice of RankFirst’s business model is advertisement model. Based on the big user base of mobile contacts and social networks, the advertisement model is believed to be an efficient approach to make revenue from RankFirst.

Strategic Target
Our strategic target is to extend the total number of RankFirst’s users to 30 million on different mobile phone operation systems like Android and iOS by 2014.


May 10 2012

Consideration of Legal Factor

Europe has a comprehensive scheme with high level of personal data protection. The EU Data Protection Directive 95/46/EC (EU DPD) was adopted by European Communities in 1995. It is the primary directive that regulates the processing of personal data. All 27 EU Member States which including United Kingdom must implement the Directive into their own law. EU DPD set up a very high standard data protection structure based on the essential factors in the current member states’ legislations so that all its member states can accept this Directive.

For our application, in order to comply with the EU DPD, both the obligations of data controllers and the rights of data subjects must be fulfilled and guaranteed.

Because the application provider is the party who determine the nature and means of personal data processing, hence the application provider will act as the data controller. The obligations should be fulfilled by the data controller are:

  • Notify processing to national authority (DPA). Include controller’s name and address, purpose of the processing, description of the data subjects, description of the data, etc.
  • Not to process personal data unless legitimate basis. Consent must be unambiguous, freely given and informed.
  • Compliance with processing principles.Fairly and lawfully processed, Specified, lawful purposes and not further incompatibly processed.
  • Ensure confidentiality and security of personal data. Adopt appropriate technical and organizational measures for security of data.
  • Not transfer data to 3rd country unless ‘adequate’ protection.

What’s more, for the reason that the users of this application are natural person who may be identified either directly or indirectly from the data. Therefore, the users are the data subjects, and the rights which granted to the data subjects include:

  • To access data.
  • To rectify, block, erase or destroy inaccurate data.
  • To prevent or limit certain processing.
  • To a judicial remedy for any breach of the rights guaranteed by national law.

May 10 2012

Consideration of Privacy Factor

RankFirst respects user’s privacy and won’t sell your personal data.

What types of information?

  1. User’s email address and the password
  2. User’s social activities records of mobile phone(Calls, Messages, Videos and Meetings)
  3. User’s exact current physical location
  4. User’s Social networks information

Where is the information stored?

  1. User’s email address and exact current physical location are saved on local device as session information, that is user’s mobile phone
  2. User’s first and last names, email address, password and social activities records of mobile phone are stored on RankFirst secure servers
  3. User’s social networks information is stored on third party servers such as Facebook or Twitter

How the information is used?

  1. When you register with RankFirst, user provides information to register and set up an account, including first and last names, email address, and password. The user’s email address and the password should only be used for the verification of the app login and it will never be disclosed to any third party. This email address is used to provide user the Services, send user Service related notices, including any updates to features of the app and notices required by law.
  2. After user registers the RankFirst app, user’s social activities histories of mobile phone will be recorded by the app in order to rank the contacts according to the RankFirst app’s algorithm.
  3. The user’s exact current physical location is inherently private and that it should only be used in very limited ways over which user has control. For this reason, RankFirst gives user the right to decide whether his/her current location could be viewed by contacts. This function uses the known position of reference points and satellite signals to determine the location of mobile devices.
  4. User’s social networks information could be reorganized by combining with the ranked contacts.

May 10 2012

Consideration of Economic Factor

Depends on our project, I found some relevant business models can be taken as examples. Firstly, we can use the cost-per-click model. In other words, it is use advertisements to obtain the profits. Though, the advertisements in website as a popular method are used in all of SNS service or websites. However, it is always the most efficient approach to acquire the revenue. The advertisements can be precision because of all the information can be available in a SNS page. Also, the big user group can attract more companies to post their advertisements on the SNS website. Thus, cost-per-click model is importantly necessary for the future profits of our product.

There is an example for our project use this model. The advertisement can be clicked and get more specific information about the product. In addition, if customers cannot like it, it could be closed by the button. And, the advertisements are randomly shown.

The second model is the subscription model. There is no doubt that our project is free of charge for all the users. However, we can collect some fee from an extended profile except basic profile. Moreover, we can make this kind of fee as a yearly fee. For instance, if users need back-up their ranking results, we can sell this function or service to help them manage their contacts.

Another model we can use is the Asian model, we can sell some virtual goods, for example, your friends have a birthday, and customer can buy some virtual gifts for his friends. Moreover, we can create our special ‘coin’, and customers can use them to buy those virtual goods.

As a result, advertisement is the first choice for us to acquire revenue. As to subscription model, we can use it in the subsequent period. Basically, the subscription model needs a big user group to assure the profits. For Asian model, it also need implement based on the user group. Moreover, if we intend put the Asian model into real business, it would some specific marketing analysis or customer survey.


May 10 2012

Consideration of Social Factor

At the beginning of our team’s decision-making, we found that networks are taking us far away from our real life step by step. When people are talking about the social networks or social websites, the key points are usually convenience, speedily, easy to find old and new friends and so on. However, what is about the downside of current social networks. The current social networks give us a fictitious society, devour our real social life. For example, in our contacts list of Facebook, there must be some people whom we just met once or never met. Sometimes we can chat with these people by social networks, but what will happen if we face them after a long time. Are these people are our real friends? Another problem is that current social networks bring us too much unnecessary information. These unnecessary information always cover up the tracks of close friends. As time passes, close friends become unfamiliar.

As a result of these reason, we want to make the social networks more realistic. Except some familiar social networks such as the Twitter and the Linkedin, the contact of our phone is also an “old style” social network and it is more realistic. At least, there is nearly no one whom we never met. Hence we selected phone contact as our base.

If the contacts in user’s phone are willing to share their GPS location, the user can also know where they are. We think that this function is a key point to make the social life realistic, because that friend a really there on the GPS map.

Our App also provides statistics function. Every communication between the user and contacts can be recorded. After some calculation and processing, our App can tell the user who are your close friends and who you contact frequently. This outcome will also used to distinguish information when you browse you social networks. The information of the people who you contact frequently can be shown with priority.

Our App also provides traditional social network function. It can be treat as an all-in-one client-side of social websites. User can browse the content from their social website and write comment.


May 10 2012

Video of Software

This video introduced the core idea, basic operations and functions of our social networking application “RankFirst”. The core idea of “RankFirst” is to rank user’s social networks information based on the statistics of the user’s mobile phone social activities. “RankFirst” just aims to make you and your closest friends even closer.


May 5 2012

Usability Evaluation

Totally five MSc Web Technology students were invited to take part in the usability evaluation of our application software. All of them have learnt the course “INFO6002 Assistive Technologies and Universal Design” and have some experience on the usability evaluation of software. The detailed information of them is listed at the bottom of this article.

Usability is a quality attribute that assesses how easy user interfaces are to use. Therefore, according to the Alertbox’s usability definition, five quality components are set as the criteria to evaluate the usability of this software application. And the grade and mark range are explained as below:

    A+ : Extremely Outstanding
    A : Excellent
    B : Good
    C : Just Ok
    D : Poor

Then the evaluation reviews from the five testers are summarized as below.

(1) Learnability
It is easy for the user to perform most of the basic tasks such as sign up or login, rank the contacts and view friend’s profile, history information and social networking information. It may take some time for the users to learn the location sharing function. Hence the learnability of Adobe Reader is excellent.

(2) Efficiency
Once the user learnt the design, it will take little time for the user to perform other tasks for example edit the personal information, share the location information with friends, view the photos, status, news or notes of friend’s social networking account etc. So the efficiency of this software is good.

(3) Memorability
After a period of time of not use, it is very easy for the users to establish proficiency again. Therefore the menorability of RankFirst is outstanding.

(4) Errors
User will make little errors when using this software to rank and view the contacts, but may make errors when sharing the location information with different friends. Fortunately, it is not difficult to recover from the errors. Hence the errors performance of this software is medium.

(5) Satisfaction
Most of the people think it is a pleasant experience when using this software to visualize the relationship with the user’s closest friends and bring close friend even closer. Hence the satisfaction of RankFirst is good.

Tester List:

    Chengqi Wang (cw5g11@ecs.soton.ac.uk)
    Bin Cai (bc2e10@ecs.soton.ac.uk)
    Ran Ding (rd4g11@ecs.soton.ac.uk)
    Ming Wen (mw7g11@ecs.soton.ac.uk)
    Feng Wang (fw3e11@ecs.soton.ac.uk)

May 5 2012

Link to Demo Software

RankFirstApplication.apk is the demo software application which can be installed on Android platform. To download the software, please just click the Android icon below and follow the insturctions. To run the application, just install the RankFirstApplication.apk on the Android mobile phone.



May 4 2012

Roles of Individuals

Chen Jia
Role: Project Manager

Chen Jia is the project manager in this project. He has the overall responsibility for the successful planning, execution, monitoring, control and closure of the project.

In detail, Chen Jia is responsible to design the Gantt Chart, research the academic work of Dunbar’s Number, design the storyboards, write ideas of the project, record the video, research the consideration about Privacy factor and write the overview of pitch to dragons den panel.


Sun Guochen
Role: Business Analyst

Sun Guochen is the business analyst in this project. He has the responsibility to perform the core business analysis and solve problems.

Specifically, Sun Guochen is responsible to find and review the related news items in the tech media, design and draw the mockups and web maps, research the consideration about Economic factor.


Lu Yu
Role: Architect

Lu Yu is the architect in this project. He has the responsibility to create architectures.

Concretely, Lu Yu is responsible to analyze the existing similar tools in IOS platform, draw the UML diagrams and write the personas and scenarios, research the consideration about Social factor.


Wang Wei
Role: Developer

Wang Wei is the developer in this project. He has the responsibility to write code and design algorithm.

Specifically, Wang Wei is responsible to write the project brief, research the academic work of Contacts Priority Ranking Algorithm, write the calculation method of ranking algorithm, make the tech demos and link to demo software, perform the usability evaluation and research the consideration about Legal factor.


Sen Debopam
Role: Tester

Sen Debopam is the tester in this project. He has the responsibility to test the application and track defects.

Concretely, Sen Debopam is responsible to write the project brief, analyze the existing similar tools in Android platform, design and perform the interviews with users and focus groups, write the overview of standards and protocols.


May 4 2012

Tech Demos and Code

Android is an open-source mobile phone operating system which developed based on Linux kernel. On November 5th 2007, the first version of Android was officially published by Google. After that, this mobile platform has taken the world by storm and become the most popular smart phone platform in the world.

In this application, we try to implement the “RankFirst” application in an Android platform as the tech demos. And then, as the future work, it will be further implemented in the IOS, Windows Mobile, and Symbian platforms respectively.

The Figure 1 below is the screenshot of the project. The Development tool is Eclipse with Android plugin.

The Figure 2 below is the screenshot of the Android simulator.

What’s more, the code of the demo software application is also available to download. To download the code of the Android application, simply click the link below.


May 4 2012

UML Diagrams

This is the global use case view of our mobile application. There are four main use cases in this view namely Sign In use case, Contacts Ranking use case, Social Networks use case, and Setting use case. In order to show the use case view clearly, branches of four main use cases are not shown in this view. Four main use cases stand for four main function of our application.

The Sign In use case is used to check whether the user has authority to access this application. After login, user can browse all the contacts in the phone contact and related information of selected contact. User can also browse own social networks by the Social Networks use case. The Setting use case provide configuration function to user.


This is the detailed use case view of use case Sign In. Sign Up use case is extended from Sign In use case, because some new user may not have a account to login our App. Create Account use case is used to create new user’s account in the database.

If a user has an account, the Sign In use case will call the Check Account Information use case to check whether the user’s authority is right or not.


This is the detailed use case view of Contracts Ranking use case. The Contracts Ranking use case can be extended to three secondary use cases, namely, Show Profile of Contact, View Statistic, and View Contact’s Social Network Information. User can execute some traditional contact, such as making a phone call and send short messages. User can browse the frequency of the communication between user and selected contact. View Contact’s Social Networks Information use case provide the function of browse the social networks of selected contact.


This is the detailed use case view of Social networks use case. There are three secondary use cases. The Select Social Networks use case help user switch between different social networks. The Select Ranking Modes use case help user select ranking approach of shown social network content. The last use case is the basic function; user can view social networks content.


This is the detailed use case view of Setting use case. Two significant use cases in this view are Edit Personal Details use case and Bind Social Network use case. User can edit some personal information via the Edit Personal Details use case. The Bind Social Network use case is used to configure different social networks. If the application want to download information from social websites, user’s accounts of social websites are necessary.


May 4 2012

Web Map

The web map is used to introduce the specific operation process orders of our product RankFirst.


May 4 2012

Mockups and Ideas

  • User provides his/her registered email address and password to login to the app;
  • User should sign up for the app when he/she use it at first time.

  • User provides his/her personal information including name, password and email address to sign up the app.

  • The app ranks the contacts automatically when user completes the login or registration.

  • User selects Contacts Ranking view, in which contacts are ranked by credits in descending order;
  • User presses the gear tab to set the app;
  • User searches a contact by inputting the contact’s name in the search box;
  • User enables the footprint to share his/her current location with the corresponding contact;
  • When a contact’s social networks information has updated, a green mark appears behind the corresponding contact to notice the user with the updating;
  • User selects one particular contact to view the contact’s information.

  • User sets personal details, language, sound effects, push notification and the enabled social networks in the Setting view;
  • User clicks the Logout tab to logout the app.

  • In Info view, there are three subsections: Profile, Statistics and Social;
  • In Profile section, user views the selected contact’s current location (if the contact permits user to view it) on the map by press the refresh tab;
  • User presses the edit tab to edit the contact’s information;
  • User presses the telephone numbers to call the contact;
  • User presses the SMS tab to send messages to the contact;
  • User presses the email address to send emails to the contact.

  • In Statistics section, user views the communication frequencies and records with the contact;
  • User views the communication frequencies by selecting the aimed year and month;
  • User views the communication frequencies in five categories: Overall, Calls, SMS, Video and Meet;
  • User views the detail communication records with the user by time.

  • In Social Section, user slides on the top of the screen to select social network;
  • User views the contact’s information by categories including Photos, Status. News, Notes and Links.

  • User selects the Social Networks tab to enter the social networks view.

  • In Social Networks View, user slides on the top of the screen to select social network;
  • User selects the information’s ranking mode between RANK FIRST and Most recent;
  • User views all the contact’s information by categories including Photos, Status. News, Notes and Links.

  • May 4 2012

    Personas and Scenarios

    In the following words, I will introduce three personas that all these people have potential requirement to our mobile applications.

    Persona 1:
    Jensen Button
    36 years old, Male, Manager of Insurance Company.

    Jensen has worked in this insurance company couple of years. He is a promotional manager. There are dozens of door-to-door salesmen in his department. His daily work is dispatching these salesmen to different areas of the city. Every day, after the work area dispatching, salesmen leave the company and go to their work area. Jensen often worries about whether salesmen work in the right area. Hence, Jensen may make phone calls to salesmen or send short messages to salesmen to check how are their works going sometimes.

    Persona 2:
    Lucy Dean
    18 years old, Female, Student

    It can be said, Lucy who just stepped in the university is a popular girl. Her friends group much bigger then a general student. Most of these friends are Lucy’s schoolmates of A Level and before. Others are new friends in her university. Sometimes, Lucy is proud of this, because her friends are everywhere; sometimes this also makes her puzzle. In the Facebook of Lucy, there are several hundred friends. There is also hundreds of information from different people on her wall. The huge number of information cause that she always lose the information from her close friends.

    Persona 3:
    Mike Sui
    20 years old, Male, Student.

    Mike Sui is a webmaster. He likes to run through different website. He feels that web is a colourful world and thousands of funny contents are post on the web. Certainly, he is a user of Facebook, Twitter, and Linkedin. So, to check these social networks via his mobile phone is necessary for him. But, these three social networks have different apps. He has to turnoff one app and turn on another one.


    May 4 2012

    Story Boards

    User Login


    1. User provides his/her registered email address and password to login to the app.
    2. The app ranks the contacts automatically when user completes the login.


    User Sign Up


    1. User presses the Sign Up tab to sign up for the app.
    2. User provides his/her personal information including name, password and email address to sign up the app.
    3. The app ranks the contacts automatically when user completes the sign up.


    View Contacts Ranking


    User selects Contacts Ranking view, in which contacts are ranked by credits in descending order. User searches a contact by inputting the contact’s name in the search box. User enables the footprint to share his/her current location with the corresponding contact. When a contact’s social networks information has updated, a green mark appears behind the corresponding contact to notice the user with the updating.


    Setting


    1. User presses the gear tab to set the app.
    2. User could set personal details, language, sound effects, push notification and the enabled social networks in the Setting view. User clicks the Logout tab to logout the app.


    View Contact’s Profile


    1. User select one particular contact to view the contact’s information.
    2. In Info view, there are three subsections: Profile, Statistics and Social. In Profile section, user view the selected contact’s current location (if the contact permits user to view it) on the map by press the refresh tab. User press the edit tab to edit the contact’s information. User press the telephone numbers to call the contact. User press the SMS tab to send messages to the contact. User press the email address to send emails to the contact.


    View Communication Statistics


    1. User press the Statistics tab to view the communication frequencies and records with the contact.
    2. User view the communication frequencies by selecting the aimed year and month. User view the communication frequencies in five categories: Overall, Calls, SMS, Video and Meet. User view the detail communication records with the user by time.


    View Contact’s Social Networks Information


    1. User press the Social tab to view the contact’s information of social networks.
    2. User slides on the top of the screen to select social network. User view the contact’s information by categories including Photos, Status. News, Notes and Links.


    View Overall Social Networks Information


    1. User selects Social Networks view.
    2. In Social Networks View, user slides on the top of the screen to select social network. User select the information’s ranking mode between RANK FIRST and Most recent. User view all the contact’s information by categories including Photos, Status. News, Notes and Links.


    May 2 2012

    Overview of Standards and Protocols

    This passage introduces the overview of standards and protocols, we are planning to use this specifications to develop the Rank First app.

    Graphics

    SVG, Scalable Vector Graphics, provides an XML-based markup language to describe two-dimension vectorial graphics. Since these graphics are described as a set of geometric shapes, they can be zoomed at the user request, which makes them well-suited to create graphics on mobile devices where screen space is limited. They can also be easily animated, enabling the creation of very advanced and slick user interfaces.

    CSS3 (the third level of the specification) is built as a collection of specifications set to offer a large number of new features that make it simple to create graphical effects, such as rounded corners, complex background images, and shadow effects.

    Fonts play also an important role in building appealing graphical interfaces, but mobile devices are in general distributed with only a limited set of fonts. WOFF (Web Open Font Format) addresses that limitation by making it easy to use fonts that are automatically downloaded through style sheets, while keeping the size of the downloaded fonts limited to what is actually needed to render the interface.


    Multimedia

    HTML adds two tags that improve dramatically the integration of multimedia content on the Web: the video and audio tags. These tags allows to embed respectively video and audio content, and make it possible for Web developers to interact much more freely with that content than they would through plug-ins. They make multimedia content first-class citizens of the Web, the same way images have been for the past 15 years.

    While these tags allow playing multimedia content, the HTML Media Capture and the Media Capture API define mechanisms to capture and record multimedia content using attached camera and microphones, a very common feature on mobile devices.


    User Interactions

    Increasing shares of mobile devices rely on touch-based interactions. While the traditional interactions recognized in the Web platform (keyboard, mouse input) can still be applied in this context, a more specific handling of touch-based input is a critical aspect of creating well-adapted user experiences. As a result, work has started on defining Touch Events in the DOM (Document Object Model).

    Conversely, many mobile devices use haptic feedback (such as vibration) to create new form of interactions (e.g. in games); work on a vibration API is under consideration in the Device APIs & Policy Working Group.


    Forms

    The ability to build rich forms with HTML is the basis for user input in most Web-based applications. Due to their limited keyboards, text input on mobile devices remains a difficult task for most users; HTML5 address parts of this problem with offering new type of form controls that optimizes the way users will enter data:

  • date and time entries can take advantage of a number of dedicated form controls (e.g. input type="date" ) where the user can use a native calendar control;
  • the input type="email" , input type="tel" and input type="url" can be used to optimize the ways user enter these often-difficult to type data, e.g. through dedicated virtual keyboards, or by accessing on-device records for these data (from the address book, bookmarks, etc.);
  • the pattern attribute allows both to guide user input as well as to avoid server-side validation (which requires a network round-trip) or JavaScript-based validation (which takes up more resources);

  • Data Storage

    A critical component of many applications reside in the ability to save state, export content, as well as integrate data from other files and services on the system.

    For simple data storage, the Web Storage specification offers two basic mechanisms, localStorage and sessionStorage, that can preserve data respectively indefinitely, or on a browser-session basis.

    For richer interactions, the Web platform has a growing number of APIs to interact with a device file system: the File Reader API makes it possible to load the content of a file, the File Writer API allows to save or modify a file, while the nascent File Systems API give access to more general file operations, including directory management.

    On top of this file-based access, the Indexed Database API defines a database of values and hierarchical objects that integrates naturally with JavaScript, and can be queried and updated very efficiently.


    Sensors and Hardware Integration

    Mobile devices are packed with sensors, making them a great bridge between the real and virtual worlds: GPS, accelerometer, ambient light detector, microphone, camera, thermometer, etc.

    The Geolocation API provides a common interface for locating the device, independently of the underlying technology (GPS, WIFI networks identification, triangulation in cellular networks, etc.)


    Performance & Optimization

    Due to their limited CPU, and more importantly to their limited battery, mobile devices require a lot of attention in terms of performance.

    The work started by the Web Performance Working Group on Navigation Timing gives tools to Web developers for optimizing their Web applications.


    May 1 2012

    Calculation Method

    In order to add relevant credits with each person on mobile contacts based on every interaction, the contacts priority ranking algorithm can be adopted as the social ranking algorithm in this application.

    The proposed algorithm is based on the Social Strength Calculation Approach, and the evaluation criterion mainly is the user’s mobile communication history.

    Here, we suppose that the user has seven contacts in his mobile contacts list, and the communication history record is shown as the Table 1 below.

    Table 1 Sample Communication History

    For the reason that each frequency parameter f has three dimensions i, j and k, like the Figure below.

    Figure 1 Frequency Parameter

    Then, we can get the relevant values for the parameters i, j and k in the following tables:

    Table 234 Values

    After that, we can use these values to transform the mobile communication history record table to the frequency logs table below.

    Table 5 Frequency Logs

    Then, the utility function below can be used to formulate the social strength calculation.

    What’s more, because different communication methods have different weight and will add different credits to the social strength with each contact, so in this application we set that “Real Meet” > “Video” > “Call” > “SMS”. Accordingly, we set the weight parameters as the table below.

    Table 6  Weight Parameter

    For Communication Service of Mobile Communication (i=1). The strength of the user with each contact is (from a=1 to a=7):

    Hence, we get:

      S(1,1)=100.7738
      S(1,2)=104.2857
      S(1,3)=210.4762
      S(1,4)=45.5953
      S(1,5)=47.8571
      S(1,6)=82.7975
      S(1,7)=8.2143

    For Communication Service of Real Communication (i=2). The strength of the user with each contact is (from a=1 to a=7):

    Hence, we get:

      S(2,1)=60
      S(2,2)=30
      S(2,3)=150
      S(2,4)=0
      S(2,5)=30
      S(2,6)=30
      S(2,7)=0

    After the strength of each communication service of contact a is calculated, the overall strength of that individual contact can be calculated accordingly by the following function:

    Hence, we get:

      S(1)= 172.7738
      S(2)= 140.2857
      S(3)= 390.4762
      S(4)= 45.5953
      S(5)= 83.8571
      S(6)= 118.7975
      S(7)= 8.2143

    Then the application will be able to adopt the calculated results to rank the contacts in a descending order. For example:

    Table 7 Contacts Ranking

    Finally, we can get the contacts ranking result as the figure below.

    Final Rank