SlideShare una empresa de Scribd logo
1 de 93
Descargar para leer sin conexión
MeetASAP project
End of studies project i
Dedication
I dedicate this work to my family and friends. A special feeling of gratitude to my loving parents
whose words of encouragements and push for tenacity ring in my ears and my sister who never left
my side all along the journey.
A special thought to my beloved mother, the woman who thought me how to be stronger than the
circumstances and how to find the strength to overcome all the obstacles that life can throw in front
of us. This success is ours dear mom.
MeetASAP project
End of studies project ii
Acknowledgment
The internship opportunity I had with Orange Labs was a great chance for learning and professional
development. Therefore, I consider myself as a very lucky individual as I was provided with an
opportunity to be a part of it. I am also grateful for having a chance to meet so many wonderful
people and professionals who led me though this internship period.
Bearing in mind previous I am using this opportunity to express my deepest gratitude and special
thanks to “Jean François Gyss” my manager who in spite of being extraordinarily busy with his
duties, took time out to hear, guide and keep me on the correct path and allowing me to carry out
my project at their esteemed organization and extending during the training.
I express my deepest thanks to my mentor “Nathalie Bégoc Bécam” for her exemplary guidance,
monitoring and constant encouragement throughout the internship. I’m grateful for her role in
taking part in useful decision, giving necessary advice and arranging all facilities to make my
journey in the company easier.
Lastly, I am thankful to the entire OLPS team and especially team PCE for answering my each
query and providing me with valuable information from their respective fields… I truly appreciate
their cooperation and contribution to the achievement my internship’s goals and objectives.
I would like to thank also my supervisor “Houssem Eddine Lassoued” who despite the fact that he
became my mentor recently, tried all his best to provide me with accurate yet valuable help and
guidance.
I perceive this opportunity as a big milestone in my career development. I will strive to use gained
skills and knowledge in the best possible way, and I will continue to work on their improvement, in
order to attain desired career objectives.
THANKS AGAIN TO ALL THOSE WHO HELPED ME.
MeetASAP project
End of studies project iii
Glossary
List of terms Definition
1G First generation of Global System for Mobile
Communications (GSM)
2G Second generation of Global System for Mobile
Communications (GSM)
3G Third generation of Global System for Mobile
Communications (GSM)
4G Fourth generation of Global System for Mobile
Communications (GSM)
5G Fifth generation of Global System for Mobile
Communications (GSM)
ACK Acknowledgement
APN Access Point Name
AS Application Server
HD High Definition
IM Instant Messaging. The term chat is also applied
in this document to the same concept.
LTE Long Term Evolution
VoIP Voice over IP
RCS Rich Communication Services
IMS IP Multimedia session
SIP Session initiation Protocol
OEM Original Equipment Manufacturer
OTT Over The Top applications
OSP Online Service Provider
MNO Mobile Network Operator
OS Operating System
UCI User Centric Approach
SMS Short Message Service
MeetASAP project
End of studies project iv
QoS Quality of Service
GSMA Groupe Spéciale Mobile (GSM) Association
VoLTE Voice over LTE
RAN Radio Access Network
HSS Home Subscriber Service
MME Mobile Management Entity
CSFB Circuit Switch Fall Back
CSCF Call Stateful Control Function
MeetASAP project
End of studies project v
Abstract
Mobile communications systems revolutionized the way people communicate, joining together
communications and mobility. A long way in a remarkably short time has been achieved in the
history of wireless. It is an important technology in this regard and mobile phone has become the
most common tool of communication over the recent years. Evolution of wireless access
technologies is going to reach its fifth generation (5G) within the upcoming years. Yet, within the
strategy to provide the customers with better services and applications, we decided to implement an
innovative service based on Rich Communication Services “RCS” and all the tools that the fourth
generation (4G) offers. RCS is the next major evolution for SMS/MMS communication services
and therefore this is a quiet trendy topic. It’s all about offering a ubiquitous, interoperable service
by leveraging the investment on high-speed data networks. As a consequence, consumers will never
have to suffer from a fragmentation of communication services. They'll be able to communicate in a
variety of ways without requiring any installation or registration. This is a frictionless and
trustworthy experience that only operators are capable of delivering nowadays.
The service has an aim to enrich the user experience and is presented as a secure alternative for the
Over The Top applications “OTT”. All along the internship, we make sure that we align within the
different approaches that are used by all the teams in the company. User Centric Innovation “UCI”
and “Scrum” are the essential methodologies that we used to carry out the different steps of the
project. “MeetASAP” is our final product that consists of an innovative service that offers various
functionalities to its users. It is used to provide for them the most appropriate nearby place to meet
and that according to their chosen options. It does provide a chat tool as well as a sharing tool
during conversations. We believe that this service is able to compete with already existing solutions
in the market.
MeetASAP project
End of studies project vi
Table of Contents
Dedication ............................................................................................................................................i
Acknowledgment................................................................................................................................ii
Glossary............................................................................................................................................. iii
Abstract...............................................................................................................................................v
Table of figures..................................................................................................................................ix
List of tables......................................................................................................................................10
General introduction..........................................................................................................................1
Chapter1:............................................................................................................................................3
Context of the project ........................................................................................................................3
Introduction........................................................................................................................................4
I-Presentation of the company..........................................................................................................4
I-1-Company overview ................................................................................................................................ 4
I-2-Department presentation ...................................................................................................................... 5
I-3-Team presentation ................................................................................................................................. 7
II-Internship topic presentation .......................................................................................................7
II-1-Internship context ................................................................................................................................ 7
II-2-Aim of the internship ........................................................................................................................... 8
III-Study of the existing solutions.....................................................................................................8
III-1-Presentation of the existing solutions in the market........................................................................ 8
III-1-1-Glympse......................................................................................................................................... 8
III-1-2-Find My Friends............................................................................................................................. 9
III-1-3-Find My Friends & Buddies ........................................................................................................ 10
III-1-4-Meetup ......................................................................................................................................... 11
III-1-5-Nearify ......................................................................................................................................... 11
III-2-Critics of the existing solutions........................................................................................................ 12
III-3-Suggested solution ............................................................................................................................ 13
IV-Employed methodologies...........................................................................................................14
IV-1-User centric innovation approach “UCI”....................................................................................... 14
IV-1-1-UCI overview .............................................................................................................................. 14
IV-1-2-Principals of UCI......................................................................................................................... 15
IV-2-Agile methodology- Scrum............................................................................................................... 16
IV-2-1-Scrum presentation ...................................................................................................................... 16
IV-2-2-Scrum roles.................................................................................................................................. 17
IV-2-3-Scrum benefits ............................................................................................................................. 17
Conclusion.........................................................................................................................................19
Chapter2:..........................................................................................................................................20
Analysis of the needs and requirements.........................................................................................20
Introduction......................................................................................................................................21
I-Analysis of the needs and requirements......................................................................................21
I-1-Main actors of our system................................................................................................................... 21
MeetASAP project
End of studies project vii
I-1-1-The A-user (Host)........................................................................................................................... 21
I-1-2-The B-user (Guest) ......................................................................................................................... 21
I-2-Functional requirements..................................................................................................................... 22
I-3-Non-functional requirements.............................................................................................................. 23
I-4-Optional requirements ........................................................................................................................ 24
II-Use case diagrams........................................................................................................................24
II-1-Global use case diagram.................................................................................................................... 24
II-2-Detailed use case diagrams................................................................................................................ 27
II-2-1-Use case diagram for invitation sending process .......................................................................... 27
II-2-2-Use case diagram for chat messaging ........................................................................................... 28
II-2-3-Use case diagram for file/image sharing....................................................................................... 29
Conclusion.........................................................................................................................................31
Chapter3:..........................................................................................................................................32
Design of the solution.......................................................................................................................32
Introduction......................................................................................................................................33
I-System architecture (static)..........................................................................................................33
I-1-Global network architecture............................................................................................................... 33
I-2- Orange Core network......................................................................................................................... 34
I-3-Test environment architecture ........................................................................................................... 35
I-4- RCS architecture ................................................................................................................................ 37
I-4-1-API architecture.............................................................................................................................. 37
I-4-2-RCS stack architecture ................................................................................................................... 38
I-5-Package diagram.................................................................................................................................. 39
I-6-Class diagram....................................................................................................................................... 40
II-Dynamic architecture..................................................................................................................41
II-1-System sequence diagram.................................................................................................................. 41
II-2-Detailed sequence diagrams .............................................................................................................. 44
II-2-1-Fetching online contacts diagram.................................................................................................. 45
II-2-2-Initiating file transfer diagram ...................................................................................................... 45
II-3-Activity diagram................................................................................................................................. 46
Conclusion.........................................................................................................................................48
Chapter 4:.........................................................................................................................................49
Project implementation ...................................................................................................................49
Introduction......................................................................................................................................50
I-Work environment........................................................................................................................50
I-1-Development environment.................................................................................................................. 50
I-1-1-Android Studio ............................................................................................................................... 50
I-1-2-Sublime Text2 ................................................................................................................................ 51
I-2-Other software used............................................................................................................................. 51
I-2-1- Photoshop PS6............................................................................................................................... 51
I-2-2- ScrumDo........................................................................................................................................ 52
I-2-3-OVH user dashboard ...................................................................................................................... 52
I-3-Hardware environment....................................................................................................................... 53
II-Encountered difficulties ..............................................................................................................53
II-1-RCS stack............................................................................................................................................ 53
II-2-Migrating to Android studio ............................................................................................................. 54
II-3-Connectivity........................................................................................................................................ 54
II-4-Familiarization ................................................................................................................................... 54
MeetASAP project
End of studies project viii
III-Interfaces’ presentation.............................................................................................................54
III-1-Main MeetASAP interface............................................................................................................... 55
III-2-Contacts List interface ..................................................................................................................... 56
III-3-Invitation sending interface............................................................................................................. 57
III-4-Meeting’s options selection .............................................................................................................. 58
III-5-Meeting spot selection ...................................................................................................................... 59
III-6-Navigation screens............................................................................................................................ 60
III-7-Chat options ...................................................................................................................................... 61
III-7-1-Start chat ...................................................................................................................................... 61
III-7-2-Chat Log and configuration ......................................................................................................... 62
III-8-File transfer option........................................................................................................................... 63
III-9-Service capabilities and status......................................................................................................... 64
IV-Project’s timeline........................................................................................................................64
Conclusion.........................................................................................................................................65
Overall conclusion............................................................................................................................66
Bibliography .....................................................................................................................................69
Appendices........................................................................................................................................71
Appendices A: Mobile network context.........................................................................................72
Evolution: ................................................................................................................................................... 72
GSMA and Network 2020:........................................................................................................................ 72
Orange and Essentials 2020 ...................................................................................................................... 73
Appendices B: Teams’ projects ......................................................................................................76
SPIN ............................................................................................................................................................ 76
Enriched calling ......................................................................................................................................... 77
Appendices C: More about RCS.....................................................................................................78
What is RCS ............................................................................................................................................... 78
Difference between RCS and OSP “ Online Service Provider” ............................................................ 78
Architecture Overview ............................................................................................................................. 78
RCS services:.............................................................................................................................................. 79
4G Network: ............................................................................................................................................... 80
The 4 G standard:...................................................................................................................................... 81
4G features: ................................................................................................................................................ 81
MeetASAP project
End of studies project ix
Table of figures
Figure 1 Orange logo ......................................................................................................................................... 5	
  
Figure 2 Consumer Communication Services department ................................................................................ 5	
  
Figure 3 Orange internal structures ................................................................................................................... 7	
  
Figure 4 Glympse application............................................................................................................................ 9	
  
Figure 5 Find My Friends application ............................................................................................................. 10	
  
Figure 6 Find My Friends & Buddies application ........................................................................................... 11	
  
Figure 7 Meetup application............................................................................................................................ 11	
  
Figure 8 Nearify application............................................................................................................................ 12	
  
Figure 9 MeetASAP application...................................................................................................................... 14	
  
Figure 10 User Centric Innovation approach diamonds .................................................................................. 15	
  
Figure 11 Scrum framework............................................................................................................................ 16	
  
Figure 12 MeetASAP global use case diagram ............................................................................................... 26	
  
Figure 13 Use case diagram for invitation sending process ............................................................................ 27	
  
Figure 14 Use case diagram for chat ............................................................................................................... 28	
  
Figure 15 Use case diagram for sharing .......................................................................................................... 30	
  
Figure 16 Global network architecture ............................................................................................................ 33	
  
Figure 17 Orange Core network ...................................................................................................................... 34	
  
Figure 18 Test environment architecture......................................................................................................... 35	
  
Figure 19 API architecture............................................................................................................................... 37	
  
Figure 20 RCS stack architecture .................................................................................................................... 38	
  
Figure 21 Package diagram of MeetASAP...................................................................................................... 39	
  
Figure 22 MeetASAP class diagram................................................................................................................ 40	
  
Figure 23 MeetASAP sequence diagram......................................................................................................... 42	
  
Figure 24 Chat initiation diagram.................................................................................................................... 43	
  
Figure 25 Image sharing initiation diagram..................................................................................................... 44	
  
Figure 26 Fetching online contacts diagram.................................................................................................... 45	
  
Figure 27 File transfer diagram ....................................................................................................................... 46	
  
Figure 28 Activity diagram of MeetASAP...................................................................................................... 47	
  
Figure 29 Android Studio IDE......................................................................................................................... 50	
  
Figure 30 Sublime Text2 ................................................................................................................................. 51	
  
Figure 31 Adobe Photoshop PS6..................................................................................................................... 52	
  
Figure 32 ScrumDo application....................................................................................................................... 52	
  
Figure 33 VPS dashboard interface ................................................................................................................. 53	
  
Figure 34 Main MeetASAP features ............................................................................................................... 55	
  
Figure 35 Contact list interface........................................................................................................................ 56	
  
Figure 36 Invitation process for host and guest............................................................................................... 57	
  
Figure 37 Options selection for host and guest................................................................................................ 58	
  
Figure 38 Recommendations list interface ...................................................................................................... 59	
  
Figure 39 Pre-navigation and navigation screens............................................................................................ 60	
  
Figure 40 Instant messaging screen................................................................................................................. 61	
  
Figure 41 Chat log and configuration interfaces ............................................................................................. 62	
  
Figure 42 File sharing process......................................................................................................................... 63	
  
Figure 43 Service and capabilities screens ...................................................................................................... 64	
  
Figure 44 MeetASAP project timeline ............................................................................................................ 65	
  
Figure 45 GSMA logo ..................................................................................................................................... 73	
  
Figure 46 Spin interfaces ................................................................................................................................. 76	
  
Figure 47 Enriched calling interfaces .............................................................................................................. 77	
  
Figure 48 IMS overview architecture .............................................................................................................. 80	
  
Figure 49 Mechanisms of GSM and IMS........................................................................................................ 81	
  
MeetASAP project
End of studies project 10
List of tables
Table 1 comparison table of existing solutions ............................................................................................... 13	
  
Table 2 Invitation sending process .................................................................................................................. 27	
  
Table 3 Chat option process............................................................................................................................. 29	
  
Table 4 File/image sharing process ................................................................................................................. 30	
  
Table 5 SPIN project........................................................................................................................................ 76	
  
Table 6 Enriched calling project...................................................................................................................... 77	
  
MeetASAP project
End of studies project 1
General introduction
MeetASAP project
End of studies project 2
Today, mobile communications play a central role in the voice/data network arena. With the
deployment of mass scale 5G just around the corner, new directions are already being researched.
Within this context, the main actors of networking have been working closely to achieve these
improvements and therefore provide enhanced yet efficient services and applications that will allow
them to compete with their rivals. The main idea is to revolutionize the market by setting new
trends that are based on cutting-edge technologies and by consequence offer the customers
innovative solutions and products. The existence of 4G Networks in today’s technology-driven
society is important indicators of advancement and change. 4G, or Fourth Generation networks, are
designed to facilitate improved wireless capabilities, network speeds, and visual technologies. It is
anticipated that as these networks continue to thrive, the demand for advanced related technologies
will also grow, thereby creating new alternatives for savvy technology users to exceed their desired
expectations.
The topic of the internship “communication on 4G: from the design to the implementation of an
idea” is quiet timely within the current situation. Its main goal was to come up with a new service
that will enforce the firm’s arsenal. The work was done according to the Orange’s guidelines and it
gave us the opportunity to explore and discover how innovative projects are conducted.
All along the current document, we will explain the different steps that we went through during the
internship. In the first chapter, we will provide a global overview of the subject in order to give you
an idea about the different factors and solutions already existing. The next chapter will be dedicated
to the analysis of the needs and requirements. Next, we’ll move to the design phase. This step is
quiet crucial in the elaboration process and it defines the main interactions and tools in our
application. The last chapter will be dedicated to present the work that was done all along the six
months of the internship. We’ll be showing the final product as well as the tools used to implement
it, the obstacles that we went through and give a timeline perspective. For further explanation and
illustration, we included appendices.
This report is the result of hard work and perseverance during six months at Orange Labs Lannion.
It was an opportunity to explore the professional environment in a well-known firm. Moreover, it
was a chance to explore, conceive and implement a solution that we imagined. All along these
months, we were able to enhance and enlarge our knowledge. This was a quiet tremendous
opportunity to explore professional life and get in touch with multidisciplinary teams to enrich
skills and gather more information.
MeetASAP project
End of studies project 3
Chapter1:
Context of the project
MeetASAP project
End of studies project 4
Introduction
In this chapter we’re going to explain the general context of the internship. We will present the firm
in which it took place and give a hint about the main issues that it tackles. In a second phase, we
will provide a study of the existing applications to be able to gather more information about the
consumers’ expectations. In last part, we will describe the different approaches used to elaborate
our service.
I-Presentation of the company
I-1-Company overview
Orange is one of the world’s leading telecommunications operators with revenues of 39 billion
euros and 156,000 employees worldwide (including 99,400 in France) at December 31, 2014. With
operations in 29 countries, the Group served 244 million customers at December 31, 2014,
including 185 million mobile customers and 16 million fixed broadband customers. Orange is also a
leading provider of telecommunication services to multinational companies, under the brand
Orange Business Services. Orange has been listed since 1997 on Nyse Euronext Paris (symbol:
ORA) and on the New York Stock Exchange (symbol: ORAN).
Orange, formerly France Telecom, is France’s incumbent telecommunications operator. The Group
has its origins in the Ministry for Posts, Telegraphs and Telephone, later to become the General
Directorate of Telecommunications, which in 1990 was accorded the status of independent public
entity and, on January 1, 1991, renamed France Telecom. On December 31, 1996, France Telecom
became a “Société Anonyme” (limited company) with the French State as its sole shareholder. In
October 1997, France Telecom shares were listed on the Paris and New York stock exchanges
allowing the French government to sell 25% of its shares to the public and Group employees.
Subsequently, the government gradually reduced its holding to 53%. The Law of December 31,
2003 authorized the transfer of the Company to the private sector and between 2004 and 2008 the
State sold a further 26% of the share capital. At December 31, 2014, the French State retained
25.04% of the shares, held either directly or jointly with Bpifrance. Since the 1990s, France
Telecom’s area of activity and its regulatory and competitive environment have undergone
significant changes. In a context of increased deregulation and competition, between 1999 and
2002, the Group pursued a strategy of developing new services and accelerated its international
growth with a number of strategic investments. These included, in particular, acquiring mobile
operator Orange and the Orange brand, which had been created in 1994, and taking a stake in
MeetASAP project
End of studies project 5
Poland’s incumbent operator, Telekomunikacja Polska (renamed Orange Polska in 2013). Share
issues and therefore the Group’s debt substantially increased during this period could not finance
most of these investments. At the end of 2002, France Telecom started a large-scale refinancing
plan for its debt to reinforce its balance sheet, as well as an operational improvements program, the
success of which has allowed the Group to develop a global integrated-operator strategy by
anticipating changes in the telecommunications industry. ([1])
Figure	
  1	
  Orange	
  logo	
  
I-2-Department presentation
The Consumer Communication Services department “CCS” under the direction of Orange Labs
ComServ Products and Services Research conducts activities such as anticipating and supporting
the deployment of innovative consumer communication services (Voice, Visio, Courier, Data) and
their APIs for zones France, Europe and AMEA.
Figure	
  2	
  Consumer	
  Communication	
  Services	
  department	
  
The department operates in the following fields:
Ø Communication services for households / families (VoIP, Family Place...), taking advantage
of the immersive and "do together" trend
Ø Personal communication services (Rich Communication Services, Enriched
Communications, Voice & Video over LTE, 4G advanced services, evolution to 5G...)
MeetASAP project
End of studies project 6
Ø Web communication services (web communication suites, communications over cloud,
highly advanced messaging...)
Ø Specific services for AMEA region (Advanced Intelligent Network services, premium
services...).
The main work of the department:
Ø Support Orange affiliates in deployment of services
Ø Deployment and maintenance in centralized mode (ASP) platform service for trials and
production
Ø Contribution to the technical strategy of communication services
Ø Design of end-to-end communication services architectures
Ø Design of new services in research and anticipation (User Centric Innovation, prototyping,
trials) and industrialization associated files
Ø Contribution to long-term vision of the evolution of communication services, taking into
account disruptions of use, technological, economic and social.
This work is done in collaboration with the various departments such as: Orange Labs Network
involved departments on communications platforms and standardization teams Libon Orange
Vallée, teams Orange Research Labs... Furthermore, the department is responsible for 5 technical
fields with a budget of € 17,5M in 2015 which are:
Ø The Technical Field Communication Family & Home
Ø The Estate Enriched Personal Communication Techniques
Ø The Technical Field Enriched Communication for AMEA ([2])
Ø The Technical Field RCS / VoLTE / Libon ([3])
Ø The Technical Field Web Enriched Communication
As part of the conquest of new tracks and Personal Social Services (PASS), the department also
manages research projects such as “Enriched Communication Experience” and the “Personal
Communication Sphere”. We should also mention that it includes five teams:
Ø The team “Home & Family Communication” conducts activities Anticipation and support
for the deployment of communication services for the home and family.
Ø The team “Personal Communication Delivery” supports activities for the deployment of
personal communication services.
Ø The team “Personal Communication Evolution” conducts Research and Anticipation
activities of new personal communication services.
Ø The team “Convergent Web Communication” conducts Anticipation activities and support
for Web communications suites deployment.
MeetASAP project
End of studies project 7
Ø The “Asp & Smart Products Research” team conducts Anticipation activities and supports
the deployment of communication services in AMEA and service platforms in centralized
mode.
I-3-Team presentation
Within Orange Labs Lannion, the Personal Communication Evolution “PCE” carries research and
anticipation activities. The main aims are:
Ø Fetching and prototyping innovative uses for enriching personal communications according
to the evolution of both mobile devices and networks nowadays (communication over LTE,
exploring the 4G and 5G networks, multi-devices, multi-users…)
Ø Anticipating the roadmap for personal communications. This includes the mapping and
elaboration of technical documentation.
Ø Implementing the company strategies when it comes to standardization of new services
within the GSMA for instance.
Figure	
  3	
  Orange	
  internal	
  structures	
  
II-Internship topic presentation
II-1-Internship context
Giving the current context of broadening horizons, the efforts of the team are concentrated on
improving the personal communication systems. During this process, operators are constantly
working on the development of services that will meet the clients’ expectations and minimize
various defects observed in current solutions. The project idea is to build on the approach taken by
the most influential mobile operators in the world members of the Group Special Mobile
Association “GSMA”. Thus, according to the new policy "GSMA Vision 2020", operators are
moving towards the adoption of new services and architectures for providing more efficient services
MeetASAP project
End of studies project 8
as well as a significantly improved customer experience. The goal is to deploy new technologies
such as RCS, IMS, LTE ... and all the possibilities that 4G can offer to build robust and strong
services that will compete with Over the Top “OTT” applications that already exist in the market
and are offered by Online Service Providers “OSP”. For sure the cost of this investment is way
expensive, but the revenues are however promising. The required architecture is partly deployed
and by the end of the year several new services will be introduced and marketed to the general
public. Thus ensuring interoperability, ubiquity and quality service for all customers. All this work
is the extent to fortify more and more the experience of Enriched Calling and introduce it as a solid
alternative solution to all third parties who are proprietary and limited solutions. These steps are
insured within the Orange 2020 strategy as well. ([4])
II-2-Aim of the internship
The main flaw that we have observed is the lack of options when it comes to the geo-location of
users in an Enriched Calling based application. The aim of the internship is therefore to develop a
prototype application that will facilitate the location of users and provide them with useful and easy
to use features when issuing a simple call that is of course based on the RCS frames. That’s said, it
will be able to fill this need and provide a rather complete and rich user experience at the same
time.
This prototype can later be adopted and marketed in an individual way or embedded in a more
versatile service pack through partnerships and trade agreements with different Original Equipment
Manufactures “OEM”. We should also mention that the advantage of such an application is that the
user does not need to switch to another application to be able to share their location or to mark the
position of the speaker. With the adoption of new network architecture that is oriented more
towards an all-IP network over existing architectures that are more circuit switching networks, this
application will be integrated in the out-of-the-box package made available to the user. This
alternative is embracing the “It is there and it just works” paradigm which will allow us to reach a
larger part of consumers. As a consequence it’s combining business with simplicity and increased
performance. Safety is guaranteed as well, and also offers a clean user experience to each customer.
III-Study of the existing solutions
III-1-Presentation of the existing solutions in the market
III-1-1-Glympse
Based on its description, this application is supposed to offer the easiest way to share your location
with anyone safely and in real-time. It allows your chosen interlocutors to track your location on
MeetASAP project
End of studies project 9
map for a certain amount of time. No registration is required and there is no new social network to
manage. The users receive a link allowing them to see your location for the duration you choose.
When the timer reaches its end in the Glympse ([5]), the site is no longer visible. Even better,
recipients do not need any special software to view the map in real time. Send a Glympse by SMS,
email, Facebook or Twitter, and the recipients can view it using any device with an Internet
connection. The main features of this application are:
Ø Easy: no registration required and no list of friends manage
Ø Secure: the Glympse automatically expires
Ø Live: share the location in real time
Ø Open: share with anyone - no application is required for viewing
Ø Liabilities: works in the background
Ø International: works wherever you have a data connection and GPS
Figure	
  4	
  Glympse	
  application	
  
III-1-2-Find My Friends
“Find My friends” ([6]) is an iOS-based application, which allows users to locate their friends and
family using their iPhones, iPads… They just need to install the application and invite their buddies
to share their locations by choosing from their contact list and entering the correct email address.
Once the friend accepts the invitation users can then start tracking the location and they can also
send a request to track position as well. The user can moreover set up location-based alerts to notify
him when a friend enters a given area. The features of this application are:
Ø Easily-located friends and family
Ø Location-based notifications
Ø Simple privacy controls
Ø Parental restrictions
MeetASAP project
End of studies project 10
Figure	
  5	
  Find	
  My	
  Friends	
  application	
  
III-1-3-Find My Friends & Buddies
“Find My Friends & Buddies” ([7]) is another application that allows users to find accurately and in
real-time the positions of their friends. It offers a tool for users to meet by insuring a reliable and
accurate locator within a messaging application. It works with “Sygic GPS” navigation and
augmented reality. The features are:
Ø See vacation of your friends in real time
Ø Check easily if they will be late for your meeting
Ø Share with your friends free messages
Ø Know if your friends got lost & help them
Ø Check in option
Ø Get a notification when your mates reach destination
Ø See the movement of your friends during past 7 days (available as an in-app purchase) to
follow steps one year their adventurous road trip
Ø Find My Friends uses GPS and internet functions on mapping
Ø Find My Friends is an easy to use tool that helps you locate your friends and see their exact
rental on the map in real time
MeetASAP project
End of studies project 11
Figure	
  6	
  Find	
  My	
  Friends	
  &	
  Buddies	
  application	
  
III-1-4-Meetup
Unlike the previously mentioned applications, Meetup ([8]) does not offer a track location option to
its users. It offers the possibility to find other users having the same interest and therefore meet in
real-life. It helps to arrange meetings and gather people who have common interests. The features of
this application are:
Ø Gathering people in different groups of interest
Ø Planning the meetings
Figure	
  7	
  Meetup	
  application	
  
III-1-5-Nearify
This application allows users to discover all nearby events such as concerts, festivals, film
screening… Moreover, it offers to a group of friends the opportunity to attend the same event
together. The concept of “Nearify” ([9]) is promoting most of events that are happening near you
and therefore mark your interest to attend them. The features that such an application offers are:
Ø Use Nearify to invite your friends to your favorite events
Ø Share events with your groups on other platforms
Ø Find directions to the event
MeetASAP project
End of studies project 12
Ø Add the event to your favorites.
Ø You can add your loved events to phone calendar to be reminded before the event
Figure	
  8	
  Nearify	
  application	
  
III-2-Critics of the existing solutions
During the previous section, we tried to present an overview about the different solutions that are in
the market today. These applications do have some similarities and differences as well. Each one
targets different range of customers or different purposes. We can say that most of them do have the
same approach of problem tackling. To make it easier to understand most of their characteristics
we’re going to elaborate a table of comparison through which we’re going to resume results of our
study. This table will allow us to have a better overall idea and seek the opportunity to enhance our
service in order to come up with a better solution. We defined different criteria on which we’re
going to compare these applications:
Ø Spots finding: the ability of an application to collect nearby places for its users.
Ø Navigation: the ability to offer navigation to a selected spot.
Ø Location update: the ability to see the current location of a user.
Ø Contacts: the ability to interact with the contacts from an address book.
Ø Time estimation: the ability to have a time estimation of the arrival for a user to a chosen
place.
Ø Mode of transport: the ability of displaying the chosen transport mode for users.
Ø Users interaction: the ability for users to exchange messages or notifications.
Ø File/images sharing: the ability to share images or files in order to offer a more interactive
experience for users.
MeetASAP project
End of studies project 13
Ø Instant messaging: the ability to offer a chat option for users so they can enjoy a complete
experience.
Table	
  1	
  comparison	
  table	
  of	
  existing	
  solutions	
  
Thanks to the comparative table analysis, we’re now able to know approximately our position in the
market when it comes to answering consumers’ needs and expectations. In this phase, we were able
to conduct a study in order to extract the main factors to develop our service. It needs to be
innovative and offer new functionalities for users. Giving the high number of downloads of such
applications; we’re able to conclude that such a service is quiet requested in the market today. The
main challenge now is to elaborate an RCS-based service that will be able not only to compete with
these applications but also to satisfy our customers.
III-3-Suggested solution
“MeetASAP” is the name that we’ve chosen for our new service. It’s going to be based on RCS in
order to take advantage on the wide range of functionalities it offers. The application will enhance
the user experience by offering different options. Its main aim is to implement an easy-to-use
Applicat
ion
name
Spot
s
findi
ng
Navigat
ion
Locati
on
update
Conta
cts
Time
estimati
on
Mode
of
transp
ort
Users
interact
ion
File/im
age
sharing
Instant
messag
ing
Glymps
e
x x ü ü ü x ü x x
Find My
Friends
x x ü ü x x ü x x
Find My
Friends
&
Buddies
x x ü ü x x ü x ü
Meetup ü x x ü x x x x x
Nearify ü x x ü x x x x x
MeetASAP project
End of studies project 14
service that will help users find the most appropriate place to meet according to their means of
transport and the nature of the meeting itself. The application will also provide an interactive way to
communicate between two interlocutors such an instant messaging service and an option for file or
image sharing on network. It will provide time estimation and road navigation as well. In other
terms, our objective is to tackle the drawbacks that we observed during the study of the existing
solutions in the market and therefore offer a reliable, innovative yet secure service that will
essentially meet our customers’ expectations.
Figure	
  9	
  MeetASAP	
  application	
  
IV-Employed methodologies
IV-1-User centric innovation approach “UCI”
IV-1-1-UCI overview
One of the unique points of this internship is the application of the user centric innovation approach
“UCI” ([10]) which is a methodology used by Orange to conduct innovation projects. Back in 2011,
the company started to use it in order to enhance projects’ management and enable the different
teams to structure their work in order to implement the new, to-be-launched services. For that to be
done, 5 principles as well as 4 major phases were defined. Overall, the process is composed of 11
steps that should be followed in order to transform data, knowledge and gathered requirements into
tangible and efficient experiences. The form of the diamond is not irrelevant. From the time
perspective the first halves of the diamonds are the triangles that are getting wider in time. It
illustrates the broadening of horizons and knowledge-gathering to create a vision of the project.
Whereas, the second halves show by getting narrower in time the process when the project is taking
a more defined yet precised shape.
MeetASAP project
End of studies project 15
Figure	
  10	
  User	
  Centric	
  Innovation	
  approach	
  diamonds	
  
Note: The letters signify that we combine Business goals, Technology and User needs which
are the main three levers in the user experience.
IV-1-2-Principals of UCI
IV-1-2-1Collaboration and team commitment
We should not forget that the main goal of the whole approach is to come up with services that offer
a great user experience and for that to be done, a team of committed yet multidisciplinary members
should be composed with at least 3 complementary perspectives: business, technology and usages.
IV-1-2-2-Systematic integration of the user in the approach
We need to have a deep understanding of the market and the needs of the customers that’s why
they’re involved within different stages of the process. This will insure to have a proper user
experience by the end of the project.
IV-1-2-3-Empathy with customers, result of deep understanding
For the innovations to be relevant, the project team must develop empathy towards the costumers in
different ways such as: using customer closeness (or immersion) techniques, relying on specific
expertise, participating in the observations, appropriating results, questioning the results, and
always with respect, without value judgment towards customers.
MeetASAP project
End of studies project 16
IV-1-2-4-Keep the focus on targeted experiences all along the chain
The project team should not seek to find answers or solutions before understanding the problem and
stakes. The early stages that are presented in the first diamond of the figure above aim at ensuring
the development of a strategic vision prior to the development of a response, or a solution.
Throughout the approach, the project team must remain vigilant to keep the focus on the insights
discovered and the target experience, and not rush the advent of solutions (shown in second
diamond).
IV-1-2-5-Embodiment of ideas and potential solutions
Visual thinking, storytelling and the materialization of ideas are the heart of the approach. These
techniques are used often to facilitate the understanding of complex information, inspire new ideas,
encourage the sharing and effectively communicate the vision of the project. The sooner the team
compares the ideas effectively to the reality of customers, the faster it learns of their strengths and
weaknesses (iterative approach).
IV-2-Agile methodology- Scrum
IV-2-1-Scrum presentation
Scrum ([11]) is an agile framework for completing complex projects. Scrum originally was
formalized for software development projects, but it works well for any complex, innovative scope
of work. The possibilities are endless. The Scrum framework is deceptively simple. Scrum is a
management and control process that cuts through complexity to focus on building software that
meets business needs. Management and teams are able to get their hands around the requirements
and technologies, never let go, and deliver working software, incrementally and empirically.
The Scrum model suggests that projects progress via a series of sprints. In keeping with an agile
methodology, sprints are time boxed to no more than a month long, most commonly two weeks. It
advocates for a planning meeting at the start of the sprint, where team members figure out how
many items they can commit to, and then create a sprint backlog – a list of the tasks to perform
during the sprint.
Figure	
  11	
  Scrum	
  framework	
  
MeetASAP project
End of studies project 17
IV-2-2-Scrum roles
We mainly have three main roles in the Scrum methodology. We’re going to explain them in order
to have a better understanding for the process. ([12])
IV-2-2-1-Product Owner
The Product Owner should be a person with vision, authority, and availability. He is responsible for
continuously communicating the vision and priorities to the development team. It’s sometimes hard
for Product Owners to strike the right balance of involvement. Because Scrum values self-
organization among teams, a Product Owner must fight the urge to micro-manage. At the same
time, they must be available to answer questions from the team.
IV-2-2-2-Scrum Master
The Scrum Master acts as a facilitator for the Product Owner and the team. The Scrum Master does
not manage the team. He works to remove any impediments that are obstructing the team from
achieving its sprint goals. This helps the team remain creative and productive while making sure its
successes are visible to the Product Owner. The Scrum Master also works to advise the Product
Owner about how to maximize ROI for the team.
IV-2-2-3-The Team
According to Scrum’s founder, “the team is utterly self managing.” The development team is
responsible for self-organizing to complete work. A Scrum development team contains about seven
fully dedicated members (officially 3-9), ideally in one team room protected from outside
distractions. For software projects, a typical team includes a mix of software engineers, architects,
programmers, analysts, QA experts, testers, and UI designers. Each sprint, the team is responsible
for determining how it will accomplish the work to be completed. The team has autonomy and
responsibility to meet the goals of the sprint.
IV-2-3-Scrum benefits
Scrum is a highly used methodology among the companies nowadays. In the below paragraph,
we’re going to explain further the advantages of such an approach according to different stakes’
perspectives.
IV-2-3-1-Benefits Of Scrum From The Client Perspective
Though a client or customer really doesn’t care about the project management methodology that the
team uses, they do realize some benefits from the methodology. Scrum provides a definite set of
MeetASAP project
End of studies project 18
benefits over the traditional methods and over other agile methodologies. For the client, the benefits
of Scrum are:
Ø Scrum puts the control of the value stream back in the hands of the business
Ø Scrum delivers products more quickly
Ø Scrum allows clients to change priorities and requirements quickly
IV-2-3-2-Benefits Of Scrum From The Organization Perspective
As an organization, it is s big decision to adopt a new methodology. People, processes, clients, and
management are all affected. It’s important to see tangible benefits quickly. This is where Scrum
shines. With a predictable, repeatable release schedule and self-managing teams, the organization
realizes the following benefits:
Ø Scrum keeps an organization honest and helps them to meet their commitments
Ø Scrum promotes transparency; you no longer need to hide the truth, you can be open
and honest with everyone
Ø Decision making is shifted to the lowest level (line employees), to the people best
able to understand all of the facts
IV-2-3-3-Benefits Of Scrum From The Management Perspective
Management, the decision-makers within the organization, will enjoy some benefits as well. The
predictable development process gives management benefits such as:
Ø Better workforce management
Ø Enhanced customer and client relationships
Ø Visibility into the entirety of the project management process
Ø Motivated and inspired team members
IV-2-3-4-Benefits Of Scrum From The Product Perspective
Really the product doesn’t know or care about benefits. But the lifecycle of the product will be
improved by the Scrum methodology, which leads to the following product-related benefits:
Ø Improved credibility with your clients due to a higher quality product
Ø More predictable release cycle with built-in testing processes leads to product
stability
Ø Sprint Review leads naturally to a product that the client wants and is excited about
MeetASAP project
End of studies project 19
IV-2-3-5-Benefits Of Scrum From The Team Perspective
In the end, the team will enjoy benefits of Scrum that reinforces their best work. Autonomy, self-
direction, immediate feedback, and true collaboration lead to such benefits to the team like:
Ø Unlock the true potential of the team
Ø Create a safe working environment where people can thrive
Ø The team learns to achieve a sustainable pace, so that they can continue to be
productive over the long haul
The combination of User Centric Innovation approach along with the agile methodology will allow
us to get a better outcome and enhance the product quality at the same time. This will provide a
better understanding for the consumers’ needs and a global overview for the different steps of the
elaboration of our service. One of the internship’s goals is to learn how to apply such approaches
during the various phases that the product will go through.
Conclusion
All along this chapter, we gave a global overview of the different aspects of the internship. We tried
to provide a better understanding of the issue that it will tackle all along with the comparison of the
existing solutions in the market. We also mentioned the used approaches in order to meet the
customers’ needs and provide an enhanced product. In the next chapter, we will move to the study
of needs so that we can have a more shaped and defined perspective.
MeetASAP project
End of studies project 20
Chapter2:
Analysis of the needs and
requirements
MeetASAP project
End of studies project 21
Introduction
All along this chapter, we’re going to describe the phase of the analysis of the needs. As a first step,
we’re going to identify the main actors in our system. Afterwards, we’re going to define the
different needs and requirements of our service. Furthermore, this analysis will help us to shape the
functionalities to develop in future steps and structure efficiently our work. Thanks to this phase, we
will be able to transform all these requirements into features that our final product will offer to our
customers.
I-Analysis of the needs and requirements
I-1-Main actors of our system
As we mentioned during the previous chapter, the aim of the internship is to come up with a new
reliable yet innovative service to enhance communication services that the company offers to its
customers. For that to be done, we need to start by identifying the main actors of our application
and distinguish the different functionalities which are going to be the implemented features in the
upcoming steps of the project.
In our case, we have two main actors in our system The A-user (Host) who is going to initiate the
different sessions and invitations and the B-user (Guest) who is going to be accepting the
invitations from his interlocutor in order to interact together.
I-1-1-The A-user (Host)
This user is the main actor in our system because he’s going to be the initiator of the various
sessions by sending an invitation to a user of his choice. He’s also going to be in charge of making
the choice of the place where the meeting is going to be. He also can send messages to his guest or
share files/ images with him. These features will help us to guarantee an interactive yet seamless
user-experience. It will also help re-inventing the traditional ways to communicate.
I-1-2-The B-user (Guest)
This user is the one who’s going to accept the invitation of the host in order to start the session and
be able to use the different features that our service will offer. He can alert the A-user of his choice
of the meeting place but he cannot take that decision. He can as well send and receive files/ images
to his interlocutor. These permissions are made to differentiate between several users in order to
make sure that the communication process is going smoothly without delays or long-time response
throughout the network.
MeetASAP project
End of studies project 22
I-2-Functional requirements
In order to go further with our analysis and after pointing out our main actors, we need to define the
functional requirements of our project. They’re going to be implemented during future steps and
they’re mandatory for our service to work smoothly in order to meet our customers’ expectations.
These needs were defined after holding many brainstorming sessions and consultations with the
team members just to be sure that we’re hitting the right track.
With that being said, let’s enumerate our functional requirements:
Ø Displaying users’ locations:
This feature is going to enable users to see their actual location on the map as well as their
interlocutor. It will provide a better visual support for users especially if they don’t know the city or
the area they’re in.
Ø Displaying the list of the different meeting’s options:
In order to provide a flexible application that can answer the different needs, our application will let
the users choose their own mode of transport as well as the nature of their meeting. Based on that
choice, the distance will be calculated.
Ø Displaying the list of places for a meeting:
To give an efficient yet enhanced experience, after defining the nature of their meetings and the
mean of transport, users will be able to get a fetched list of nearby places that meet their criteria.
Ø Calculating and Optimizing the trajectory:
Based on the selected options and places the application will calculate the estimated trajectory
between each user and the meeting point. The algorithm takes into consideration the position of
each user and tries to provide the most optimized way to reach their destination. The road will then
be displayed on the map so that users can have an approximated idea about distance and time.
Ø Sharing and updating the positions:
By the moment that both users choose their means of transport and the nature of the meeting, the
service will indicate the distance that separates them at that given time. They can also see their
progress while navigating to reach their meeting point.
Ø Image/ file sharing:
This feature offers the possibility for users to share file, images…while using our application. It will
be implemented in order to give extendable option to our service and provide an interactive
communication.
Ø Instant messaging:
MeetASAP project
End of studies project 23
This is an option for users to communicate while navigating to their meeting point. The instant
messaging feature provides an enhanced tool for users to enjoy the service. This will give our
service the ability to compete with OTT applications and provide a similar tool based on RCS.
I-3-Non-functional requirements
By non-functional requirements, we mean the needs that characterize our system. In other words, it
comes to defining a set of essential criteria for the proper functioning of our application. Thus, it
should be noted that they could be expressed in terms of performance, type of material or type of
design. In our case these are the needs that we were able to point out:
Ø Usability:
The application should have a user-friendly interface design. Its use should be simple and intuitive
so that our users will manage to cope with it without the need of specific knowledge. We have to
keep in minds that we’re targeting different ranges of customers and the application should be easy
to use for any user.
Ø Security:
Our application should guarantee the security of the exchanged data between users. By far, this is
one of the most valuable assets of our project because unlike the OTT applications, the firm makes
sure not to jeopardize its customers’ privacy. The information won’t be divulgated to third parties
actors.
Ø Scalability:
While developing our application we have to keep in mind that it should be kept open to the
implementation of new set of features when needed. RCS do already insure the ubiquity of the
applications. Any changes to be performed in the future should not affect the work of our service.
Ø High-availability:
Our application should be able to run under high available platform in order to be able to handle the
high number of requests.
Ø Maintainability:
The different modules developed and the system must be easy to maintain. For this, the code must
be readable and well structured. We must respect the coding standards for example the names of
attributes and variables, method names and the disposition of comments.
Ø Performance:
The response time and latency should be optimized as much as possible in order to ensure a real-
time experience and make users enjoy the application.
MeetASAP project
End of studies project 24
I-4-Optional requirements
This refers to enrich the functionalities of the project to meet the needs of users in order to make it
even more enjoyable to use. Without tender towards the superfluous, we can draw such options
according the following list:
Ø Integrating list of favorites:
Users can add their appreciations for the meeting spot and eventually add it to their favorite places
to go.
Ø Integrating Advertisements:
Add new functionalities such as displaying instant ads for cafes or restaurants that have on-going
promotions.
Ø Integrating video-sharing:
Adding this feature will enhance more the user-experience and therefore the number of our targeted
customers will rise.
II-Use case diagrams
At this point, we’re reaching a milestone in the project elaboration process. In order to have a global
and highlight the major outlines, we need to transform these requirements into diagrams using
UML. These charts summarize the actions that our users can perform while using our application.
II-1-Global use case diagram
The figure below shows the general use case diagram of our application. This illustration will help
to have a global view on the board outlines of our system and the main actions are summarized into
use cases. We find as agreed the main actors and their interactions with the service.
Ø Send an invitation to a guest: this use case describes the different interactions of the user
while choosing this option. It aims to plan the meeting between the host and the guest. The
planning includes the selection of different options and the visualization of the
recommendations list. We provide navigation assistance as well to the meeting point.
Ø Share a file or an image: this option is meant to provide users with an interactive experience
while using the service. It offers the possibility to send and receive images or files in real-
time.
Ø Chat with a friend: this feature provide our users with an instant messaging tool in order to
be able to reach their contacts at any time and any where. The users can enjoy a full rich
experience while using our service.
MeetASAP project
End of studies project 25
Ø Ask for a capability: this option provides the users to ask for more options from the RCS
platform. They can ask for instant sharing, video sharing, geo-location, and capability
discovery…
Ø Check the service: by this option we mean that the user can check the service status,
configure it to match his needs… this will allow us to provide a flexible service that is able
to meet the customers needs and expectations.
Ø Accept invitation for a meeting: this option illustrates how the guest should accept the
invitation of his host in order to proceed with the meeting-planning scenario. Once accepted
he’ll be able to choose the mode of transport as well as inform his host by the choice of the
meeting spot. Once done, they both can proceed to navigation and enjoy the features that our
service provides.
Ø Accept invitation for a chat: This use case shows that a guest should accept the invitation for
instant messaging and therefore enjoy using this feature with his friends.
Ø Accept image or file sharing: if the guest will accept the invitation he’ll be able to start
sharing different files and images with his contacts. In the opposite case he can simply reject
the invitation.
Overall, this diagram helps us within defining the basic features of our service and how they
interact together in order to provide a seamless experience. The process of writing and revising use
cases produces three important outcomes in the analysis team — clarity, consensus, and
commitment. Remarkably, it is common for stakeholders to be uncertain about how a process they
own actually works! Writing a use case helps stakeholders align the narrative with the details of an
existing process.
Use case diagrams are used to gather the requirements of a system including internal and external
influences. These requirements are mostly design requirements. So when a system is analyzed to
gather its functionalities use cases are prepared and actors are identified.
So to understand the dynamics of a system we need to use different types of diagrams. Use case
diagram is one of them and its specific purpose is to gather system requirements and actors.
Use case diagrams specify the events of a system and their flows. But use case diagram never
describes how they are implemented.
In forward engineering use case diagrams are used to make test cases and in reverse engineering use
cases are used to prepare the requirement details from the existing application.
MeetASAP project
End of studies project 26
Figure	
  12	
  MeetASAP	
  global	
  use	
  case	
  diagram	
  
MeetASAP project
End of studies project 27
II-2-Detailed use case diagrams
In this part of this chapter, we are going to give a closer look on the different use cases mentioned
in the previous diagram. This will give us a more defined idea on the flow process for a given
functionality that the user can execute.
II-2-1-Use case diagram for invitation sending process
The following diagram illustrates the “Send an invitation to a guest” use case. It does provide a
more shaped perspective on how the process will take place once the user triggers the action.
Figure	
  13	
  Use	
  case	
  diagram	
  for	
  invitation	
  sending	
  process	
  
The tables below sums up the use case “send invitation to a guest”. It describes the actor and the
nominal scenario of our process.
Table	
  2	
  Invitation	
  sending	
  process	
  
Use case 001
Name Send an invitation to a guest
Actors A-user (Host)
Description Send an invitation to a second user who’s
the guest in order to start planning the
meeting and display different features of the
application
MeetASAP project
End of studies project 28
	
  
II-2-2-Use case diagram for chat messaging
The schema below describes the “chat with a friend” option. It illustrates clearly what this action
involves and the interactions between the user and the system.
Figure	
  14	
  Use	
  case	
  diagram	
  for	
  chat	
  
Preconditions Ø Being connected to the RCS platform
Ø Running the service
Post conditions Ø Connected to the RCS platform
Ø Multimedia session established
Basic scenario Choosing a specific user from the contact list
and send him the invitation. Once accepted,
both users will be able to define the meeting
options and visualize a recommendations
list. Once both parties make the choice,
they’ll get to see their positions, the
trajectory and the time estimation will be
calculated. They will start the navigation to
the meeting place.
Alternative scenario The service won’t be available and users will
have to wait till connection is established.
Exceptions Ø Unavailable service
Ø Disconnected from the platform
Ø User not connected
Ø Host did not accept the invitation
MeetASAP project
End of studies project 29
In the following table describe the “Chat with a friend” use case. It gives us an idea about the basic
scenario and the alternative one as well. It does as well give a hint about the different exceptions
that the user may encounter while executing this case.
Table	
  3	
  Chat	
  option	
  process	
  
II-2-3-Use case diagram for file/image sharing
A use case model consists of use case diagrams depicted in UML and use case descriptions. The
UML model depicts the use case, actors, communication associations between actors and use cases,
and use case relationships, in particular the «extends» and «includes» relationships. The UML
notation does not address the use case description, which is in many ways is the most important part
of the use case model. The description includes the preconditions, postconditions, the description of
the main sequence of the use case and the description of alternative sequences. Thus a use case
describes several scenarios.
Use case 003
Name Chat with a friend
Actors A-user (Host)
Description Send an invitation to a second user who’s
the guest in order to start a chat messaging
session and take advantage of the different
abilities that RCS offer.
Preconditions Ø Being connected to the RCS platform
Ø Running the service
Post conditions Ø Connected to the RCS platform
Ø Messaging session established
Basic scenario Choosing a specific user from the contact list
and send him the invitation. Once accepted,
both users will be able to enjoy instant
messaging. It aims to enrich the experience
and provide users with a complete
application in order to communicate
efficiently and rapidly.
Alternative scenario The service won’t be available and users will
have to wait till connection is established in
order to visualize the sent messages (store
and forward concept).
Exceptions Ø Unavailable service
Ø Disconnected from the platform
Ø User not connected
Ø Host did not accept the invitation
MeetASAP project
End of studies project 30
The following diagram describes the actions that a user can opt for while choosing the “share a file
or an image” option. This will help us get a more defined perspective about the interactions that
we’re going to handle during the process.
Figure	
  15	
  Use	
  case	
  diagram	
  for	
  sharing	
  
This table provides us with the nominal scenario of the use case. It does as well provide us with the
preconditions and the post conditions for this particular use case.
Table	
  4	
  File/image	
  sharing	
  process	
  
Use case 002
Name Share a file or an image
Actors A-user (Host)
Description Send an invitation to a second user who’s
the guest in order to send and share files or
images in real-time.
Preconditions Ø Being connected to the RCS platform
Ø Running the service
Post conditions Ø Connected to the RCS platform
Ø Messaging session established
MeetASAP project
End of studies project 31
Conclusion
All along the current chapter, we managed to elaborate an analysis of the requirements and need of
our service. We distinguished the main functional ones, the non functional and the optional one as
well in order to have a global overview of the whole project. In a second step, we illustrated the
different needs into use case diagrams, which involves the main actors and their interactions within
the service. In the following phase, we’re going to tackle the system design part.
Basic scenario Choosing a specific user from the contact list
and send him the invitation. Once accepted,
both users will be able to send, share and
receive files or images of their choice. This
will give the users the opportunity to enjoy
using such features that will enhance their
way of communication in real-time.
Alternative scenario The service won’t be available and users will
have to wait till connection is established.
Exceptions Ø Unavailable service
Ø Disconnected from the platform
Ø User not connected
Ø Host did not accept the invitation
MeetASAP project
End of studies project 32
Chapter3:
Design of the solution
MeetASAP project
End of studies project 33
Introduction
The design phase usually defines structures and models to follow during the implementation phase
of the solution. This is the phase where we prepare the project architecture and where we define the
structure of the application. For the sake of clarity, we will begin with a preliminary phase where
we’ll present the system architecture that we need to implement. Afterwards, we’ll follow up with a
dynamic architecture in order to illustrate the operations that will take place.
I-System architecture (static)
In this part, we are going to illustrate the architecture of our system and its different components so
that we’ll be able to define a solid base to our service. This step is crucial for the fusion of both the
functional and technical branches in order to assure a great performance for our service and provide
a reliable alternative for our customers.
I-1-Global network architecture
Figure	
  16	
  Global	
  network	
  architecture	
  
The schema above illustrates the global network architecture. It shows how our application interacts
with the network and defines the main flows that are made. It is based on the Orange mobile core
network that will guide us to the orange IMS in order to proceed with the different actions that a
user can choose. The service is also going to send and receive queries from Google services API in
MeetASAP project
End of studies project 34
order to complete operations such as meeting spot fetching or time and distance calculations. We
tried to give the different alternatives for the service to connect with the platform whether we are
using Orange Radio Access Network (RAN) or a Wi-Fi access in order to give a perspective that’s
as clear and simple as possible. The main purpose of the RAN is to provide a connection between
the handset and the core network and to isolate all the radio issues from the core network. The
advantage is one core network supporting multiple access technologies.
We should also mention that this is the current architecture of the network and further details will
be provided in the annexes in order to detail the components.
I-2- Orange Core network
Figure	
  17	
  Orange	
  Core	
  network	
  
The schema above will give us a more detailed idea about the Orange core network and how it
interacts with the service. A core network is a telecommunication network's core part, which offers
numerous services to the customers who are interconnected by the access network. Its key function
is to direct telephone calls over the public-switched telephone network.
A core network is a telecommunication network's core part, which offers numerous services to the
customers who are interconnected by the access network. Its key function is to direct telephone
calls over the public-switched telephone network. In general, this term signifies the highly
functional communication facilities that interconnect primary nodes. The core network delivers
routes to exchange information among various sub-networks. When it comes to enterprise networks
that serve a single organization, the term backbone is often used instead of core network, whereas
MeetASAP project
End of studies project 35
when used with service providers the term core network is prominent. Core networks usually offer
the following features:
Ø Aggregation: The top degree of aggregation can be seen in a service provider network. Next
in the hierarchy within the core nodes is the distribution networks, followed by the edge
networks.
Ø Authentication: Determines whether the user demanding a service from a telecom network
is permitted to complete the task within the network.
Ø Call Control or Switching: Determines the future span of a call depending on the processing
of call signaling.
Ø Charging: Deals with the processing and collation of charging the data created by multiple
network nodes.
Ø Service Invocation: A core network executes the service invocation task for its customers.
Service invocation may occur in line with some precise activity (such as call forwarding) by
the users or unconditionally (such as for call waiting).
Ø Gateways: Should be used in core network for accessing other networks. The functionality
of gateways depends on the kind of network to which it is connected.
I-3-Test environment architecture
Figure	
  18	
  Test	
  environment	
  architecture	
  
MeetASAP project
End of studies project 36
IMS–IP Multi-Media Subsystem standardized by the telecommunications world is a new
architecture based on new concepts, new technologies, new partners and ecosystem. IMS provides
real-time multimedia sessions (voice session, video session, conference session, etc.) and non real-
time multimedia sessions (Push to talk, Presence, instant messaging) over an all-IP network. IMS
targets convergence of services supplied indifferently by different types of networks: fixed, mobile,
Internet. IMS is also called Multimedia NGN (Next Generation Network). IMS deployment is a
strategic decision, not a network technology decision. It can be taken either by a traditional service
provider in the context of repositioning its business on IP services or by any entity that would
decide to start an activity in IP services even without owning an access or transport network.
The IMS (IP Multimedia Subsystem) vision is to integrate mobile/fixed voice communications and
Internet technologies, bringing the power and wealth of Internet services to mobile and fixed users.
It allows the creation and deployment of IP-based multimedia services in the 3G networks. IMS can
enable IP interoperability for real-time services between fixed and mobile networks and so holds
the promise of seamless converged voice/data services. Services transparency and integration are
key features for accelerating end-user adoption. Two aspects of IMS are of fundamental importance
to deliver these features:
Ø IP-based transport for both real-time and non-real-time services
Ø Introduction of a multimedia call model based on SIP (Session initiation Protocol).
The IMS will provide:
Ø A multi-service multi-protocol, multi-access, IP based network - secure, reliable and trusted
Ø Multi-services: Any type of service may be delivered by a common QoS enabled core
network,
Ø Multi-access: diverse access networks (WiFi, WiMAX, UMTS, CDMA2000, xDSL, Cable,
etc.) can interface with IMS.
The AS (Application Server) provides a service execution environment, application-specific logic
(e.g. Push To Talk, Presence, Prepaid, Instant messaging), and all the signaling for one or more
services. It may influence and impact the SIP session on behalf of the services.
IMS is the future architecture for IP multimedia telephony. Being defined by operators that want to
continue to deliver telephony services when their legacy networks are replaced by an IP network,
IMS is both a challenge and an opportunity as the foundation for the telephony, applications and
services businesses over the coming decade.
MeetASAP project
End of studies project 37
I-4- RCS architecture
I-4-1-API architecture
Figure	
  19	
  API	
  architecture	
  
The joyn ([13]) Client architecture is composed of several sub-systems, organized into functional
layers as shown in the schema above. The fundamental enabling component is the IMS Stack,
which contains the protocol suite (Session Initiation Protocol [SIP], Message Session Relay
Protocol [MSRP], Real-Time Protocol [RTP]/Real-Time Control Protocol [RTCP], Hyper-Text
Transfer Protocol [HTTP], etc.) and core services (IMS Session Management, Registration, etc.).
The functionality of this component is governed by the IMS specifications.
Above IMS there are the Rich Communication Services (RCS) Enablers, comprising the
functionality to enable RCS-based Chat, Video and Image sharing, File Transfer and other RCS
services. The functionality of this layer is governed by the GSMA RCS specifications. RCS
Services API mediates access to these functional layers. Client applications and services access the
underlying functionality exclusively through this interface. The RCS service API logic access for
client applications to the RCS services (Open Mobile Alliance [OMA] SIP Instant Message and
Presence Leveraging Extensions [SIMPLE] Instant Messaging [IM], GSMA Video Share, GSMA
Image Share, etc.).
MeetASAP project
End of studies project 38
The joyn Core Applications or OEM UX ([14]) are the (typically embedded) applications that
provide the end-user’s access to RCS services. The Core Applications make use of the RCS
Services API and also expose a UX API (a subset of the Service API) whereby any other
applications can programmatically invoke operations that are interactively fulfilled by the Core
Applications.
The architecture is intended to enable RCS Extension to make direct use also of the RCS Service
API, enabling programmatic access to the RCS services. The RCS Service API is scoped so as to
make access by Third Party Applications possible subject to those applications having the
appropriate permission.
RCS Service APIs provide a functional interface to the RCS enablers, enabling the Core
Applications and Third Party applications to interoperate with other RCS devices whilst relying on
the stack to ensure conformance to the RCS specifications.
I-4-2-RCS stack architecture
Figure	
  20	
  RCS	
  stack	
  architecture	
  
We have to bear in mind that RCS client architecture ([9][8]) is composed of several subsystems
that are organized into functional layers. It relies entirely on IMS “IP Multimedia Subsystem”. The
fundamental component is the IMS stack which contains the protocol suite (SIP, MSRP, RTP,
RTCP, HTTP...) and the core services (IMS session management, registration...) as well. The
MeetASAP project
End of studies project 39
functionality of this component is governed by the IMS specifications. Right above it we find the
RCS Enablers. Their main function is to enable RCS-based chat, videos, image sharing and other
RCS services. Its functionality is governed by GSMA RCS specifications. The access to these
functional layers is mediated by the RCS-Services-API It is the logic access for client applications.
In order to provide access for the RCS-services to the end’s users we have the Core Applications or
OEM UX “Original Equipment Manufacturers” layer which is typically embedded.
The RCS stack is an open source implementation of the Rich Communication Suite standards for
Google Android platform. This implementation is compliant to GSMA RCS-e Blackbird standard.
Thanks to its client/server API, the stack may be easily integrated with existing native Android
applications (e.g. address book, dialer) and permits to create new RCS applications (e.g. chat,
widgets).
I-5-Package diagram
Package diagram is UML structure diagram, which shows packages and dependencies between the
packages. It shows the arrangement and organization of model elements in middle to large-scale
project. Package diagram can show both structure and dependencies between sub-systems or
modules. In our case, we elaborated the following package diagram in an attempt to provide an
easy-to-understand yet consistent illustration for the different relations in our project. This provides
a global overview of the interactions between the different packages of our code.
Figure	
  21	
  Package	
  diagram	
  of	
  MeetASAP	
  
MeetASAP project
End of studies project 40
I-6-Class diagram
The class diagram is a static diagram. It represents the static view of an application. The purpose of
the class diagram is to model the static view of an application. The class diagrams are the only
diagrams that can be directly mapped with object oriented languages and thus widely used at the
time of construction. In the following diagram we tried to represent the interaction between the
main two packages of our service for the sake of simplicity and efficiency. While consulting it we
have to bear in mind that the service was build based on the Reference Implementation project RI
which quiet complex. These classes are responsible for the meeting planning operations such as
choosing the interlocutor, sending the invitation, choosing the meeting spot from the
recommendation list and finally starting the navigation and path displaying option.
MeetASAP does as well provide file sharing options and chat option, which are inherited from the
RI application in order to emphasize on the fact that RCS does offer an ultimate experience for its
users.
Figure	
  22	
  MeetASAP	
  class	
  diagram	
  
MeetASAP project
End of studies project 41
II-Dynamic architecture
This architecture represents the dynamic behavior of the system. Indeed this vision serves to
highlight inter-object relationships. It gives a deeper perspective about the different components of
our system and the main interactions between them. In this section we will provide sequence and
activity diagrams so that we’ll be able to track the behavior of our service. The dynamic analysis
allows the monitoring of the evolution of objects and understanding their function in the system. It
is based on several diagrams such as the sequence diagram.
II-1-System sequence diagram
Sequence diagrams model the flow of logic within our system in a visual manner, enabling us both
to document and validate our logic, and are commonly used for both analysis and design purposes.
Fundamentally we have a pool of interaction partners from the use case diagrams. Depending on the
flow that is being depicted in the sequence diagram, the appropriate actors and business systems can
be selected from this pool. Sequence diagram emphasizes on time sequence of messages.
The main sequence of the use case is described as a sequence of interactions between the use case
actor(s) and the system. From the use case description, the analyst can depict this sequence of
interactions on a system interaction model using a system level sequence diagram. This diagram
depicts all the actors that participate in the use case and their interactions with the software system,
which is depicted as one single aggregate object. Depicting the system as one single object
preserves the black box property of this view. This view has the advantage of explicitly describing
the sequence of external inputs to the system and external outputs from the system.
From a design overview, we use the system sequence diagram to describe in a time perspective and
chronologically interactions between external actors and the system. In the schema below, we will
describe the users’ actions within our system.
As mentioned in the figure 23, our both actors are going to interact with the service and the service
itself is going to interact with servers in order to fetch the needed information. The interactions
begin while the host is online and wants to send an invitation to a guest of his own choice. Once his
guest accepts the invitation they both can enjoy our application and start by defining their needs and
options. The next step is to pick a meeting spot from the list that service fetched as a response to the
query it sent to the server. From that moment both users will see a pre-navigation screen displayed
on their devices. They’ll be able to consult the estimated time and path to attend their destination.
The calculations are made based on their geographic positions and we used the APIs that Google
does offer for this purpose. From there, they both can move to the navigation screen and start
reaching the meeting point that they both agreed on previously.
MeetASAP project
End of studies project 42
Figure	
  23	
  MeetASAP	
  sequence	
  diagram	
  
MeetASAP does as well provide other options other than planning a meeting with friends. It offers
the option to chat with interlocutors and sharing images, files too. These are considered to be the
MeetASAP project
End of studies project 43
strong features of RCS. We tried to explain the mechanism of these options by the following
diagrams in order to make easy-to-understand.
Figure	
  24	
  Chat	
  initiation	
  diagram	
  
MeetASAP project
End of studies project 44
In order to start the chat session the user need to be connected to the RCS platform. Afterwards,
he’ll need to choose the contact. An invitation will be sent to the interlocutor in order to inform him
with the request. Once accepted, both users can start the chat and enjoy the use of instant messaging
in a secured way.
Figure	
  25	
  Image	
  sharing	
  initiation	
  diagram	
  
To start file, image sharing with a selected contact, the host need to send an invitation first. Once
the guest accepts the invitation the process begins and he’ll be able to select the request file to send.
The host will get a notification that confirms the success of the operation.
II-2-Detailed sequence diagrams
Within the following paragraph we’re going to explain and illustrate more some operations among
our service. This part aims to give closer look to the functioning of our application to ensure a
seamless and fluid user experience. As we mentioned previously we plan to provide our customers
with efficient and user-friendly service.
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP
Rapport PFE MeetASAP

Más contenido relacionado

La actualidad más candente

1601896849 rapport fluttercopie
1601896849 rapport fluttercopie1601896849 rapport fluttercopie
1601896849 rapport fluttercopieRamiJOUDI2
 
Rapport PFE Ahmed BEN JEMIA
Rapport PFE Ahmed BEN JEMIARapport PFE Ahmed BEN JEMIA
Rapport PFE Ahmed BEN JEMIAAhmed BEN JEMIA
 
orkhanikarima-MémoireMastereProRx&telecom-FST2015-, Supervision et Monitoring...
orkhanikarima-MémoireMastereProRx&telecom-FST2015-, Supervision et Monitoring...orkhanikarima-MémoireMastereProRx&telecom-FST2015-, Supervision et Monitoring...
orkhanikarima-MémoireMastereProRx&telecom-FST2015-, Supervision et Monitoring...Karima Torkhani
 
Conception et développement d’un système d’alerte et notification d’une tou...
Conception et développement  d’un système d’alerte et notification  d’une tou...Conception et développement  d’un système d’alerte et notification  d’une tou...
Conception et développement d’un système d’alerte et notification d’une tou...Bilel Khaled ☁
 
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...mouafekmazia
 
Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...
Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...
Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...Nawres Farhat
 
Rapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_web
Rapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_webRapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_web
Rapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_webSalma Gouia
 
Présentation PFE "Refonte et déploiement d’une solution de messagerie en util...
Présentation PFE "Refonte et déploiement d’une solution de messagerie en util...Présentation PFE "Refonte et déploiement d’une solution de messagerie en util...
Présentation PFE "Refonte et déploiement d’une solution de messagerie en util...Nawres Farhat
 
Rapport de projet_de_fin_d__tudes__pfe__safwen (8)
Rapport de projet_de_fin_d__tudes__pfe__safwen (8)Rapport de projet_de_fin_d__tudes__pfe__safwen (8)
Rapport de projet_de_fin_d__tudes__pfe__safwen (8)safwenbenfredj
 
Rapport Pfe Application Web e-commerce Symfony2
Rapport Pfe Application Web e-commerce Symfony2Rapport Pfe Application Web e-commerce Symfony2
Rapport Pfe Application Web e-commerce Symfony2Ben Abdelwahed Slim
 
Projet de fin d’études
Projet de fin d’études  Projet de fin d’études
Projet de fin d’études TombariAhmed
 
Rapport pfe talan_2018_donia_hammami
Rapport pfe talan_2018_donia_hammamiRapport pfe talan_2018_donia_hammami
Rapport pfe talan_2018_donia_hammamiDonia Hammami
 
Rapport PFE : Réalisation d'une application web back-office de gestion pédago...
Rapport PFE : Réalisation d'une application web back-office de gestion pédago...Rapport PFE : Réalisation d'une application web back-office de gestion pédago...
Rapport PFE : Réalisation d'une application web back-office de gestion pédago...Anas Riahi
 
Rapport pfe 2017 Système de gestion des rendez-vous médicaux
Rapport pfe 2017 Système de gestion des rendez-vous médicaux Rapport pfe 2017 Système de gestion des rendez-vous médicaux
Rapport pfe 2017 Système de gestion des rendez-vous médicaux fehmi arbi
 
Rapport PFE réalisation d’un Framework Kinect
Rapport PFE réalisation d’un Framework KinectRapport PFE réalisation d’un Framework Kinect
Rapport PFE réalisation d’un Framework KinectAmine MEGDICHE
 
Conception et développement d’une place de marché B2C
Conception et développement d’une place de marché B2CConception et développement d’une place de marché B2C
Conception et développement d’une place de marché B2CNassim Bahri
 
RapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRITRapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRITLina Meddeb
 
Rapport de projet de fin d"études
Rapport de projet de fin d"étudesRapport de projet de fin d"études
Rapport de projet de fin d"étudesMohamed Boubaya
 

La actualidad más candente (20)

PFE .NET CRM
PFE .NET CRMPFE .NET CRM
PFE .NET CRM
 
1601896849 rapport fluttercopie
1601896849 rapport fluttercopie1601896849 rapport fluttercopie
1601896849 rapport fluttercopie
 
Rapport PFE Ahmed BEN JEMIA
Rapport PFE Ahmed BEN JEMIARapport PFE Ahmed BEN JEMIA
Rapport PFE Ahmed BEN JEMIA
 
orkhanikarima-MémoireMastereProRx&telecom-FST2015-, Supervision et Monitoring...
orkhanikarima-MémoireMastereProRx&telecom-FST2015-, Supervision et Monitoring...orkhanikarima-MémoireMastereProRx&telecom-FST2015-, Supervision et Monitoring...
orkhanikarima-MémoireMastereProRx&telecom-FST2015-, Supervision et Monitoring...
 
Conception et développement d’un système d’alerte et notification d’une tou...
Conception et développement  d’un système d’alerte et notification  d’une tou...Conception et développement  d’un système d’alerte et notification  d’une tou...
Conception et développement d’un système d’alerte et notification d’une tou...
 
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...
 
Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...
Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...
Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...
 
Rapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_web
Rapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_webRapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_web
Rapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_web
 
Présentation PFE "Refonte et déploiement d’une solution de messagerie en util...
Présentation PFE "Refonte et déploiement d’une solution de messagerie en util...Présentation PFE "Refonte et déploiement d’une solution de messagerie en util...
Présentation PFE "Refonte et déploiement d’une solution de messagerie en util...
 
Rapport de projet_de_fin_d__tudes__pfe__safwen (8)
Rapport de projet_de_fin_d__tudes__pfe__safwen (8)Rapport de projet_de_fin_d__tudes__pfe__safwen (8)
Rapport de projet_de_fin_d__tudes__pfe__safwen (8)
 
Rapport Pfe Application Web e-commerce Symfony2
Rapport Pfe Application Web e-commerce Symfony2Rapport Pfe Application Web e-commerce Symfony2
Rapport Pfe Application Web e-commerce Symfony2
 
Projet de fin d’études
Projet de fin d’études  Projet de fin d’études
Projet de fin d’études
 
Rapport pfe talan_2018_donia_hammami
Rapport pfe talan_2018_donia_hammamiRapport pfe talan_2018_donia_hammami
Rapport pfe talan_2018_donia_hammami
 
Rapport PFE : Réalisation d'une application web back-office de gestion pédago...
Rapport PFE : Réalisation d'une application web back-office de gestion pédago...Rapport PFE : Réalisation d'une application web back-office de gestion pédago...
Rapport PFE : Réalisation d'une application web back-office de gestion pédago...
 
Rapport pfe 2017 Système de gestion des rendez-vous médicaux
Rapport pfe 2017 Système de gestion des rendez-vous médicaux Rapport pfe 2017 Système de gestion des rendez-vous médicaux
Rapport pfe 2017 Système de gestion des rendez-vous médicaux
 
Rapport PFE réalisation d’un Framework Kinect
Rapport PFE réalisation d’un Framework KinectRapport PFE réalisation d’un Framework Kinect
Rapport PFE réalisation d’un Framework Kinect
 
Rapport PFE
Rapport PFERapport PFE
Rapport PFE
 
Conception et développement d’une place de marché B2C
Conception et développement d’une place de marché B2CConception et développement d’une place de marché B2C
Conception et développement d’une place de marché B2C
 
RapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRITRapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRIT
 
Rapport de projet de fin d"études
Rapport de projet de fin d"étudesRapport de projet de fin d"études
Rapport de projet de fin d"études
 

Similar a Rapport PFE MeetASAP

Causes effects and measures on employee turnover in awcc june 09, 2018
Causes effects and measures on employee turnover in awcc june 09, 2018Causes effects and measures on employee turnover in awcc june 09, 2018
Causes effects and measures on employee turnover in awcc june 09, 2018Tamim Totakhail
 
Oeb newsletter interview 2010
Oeb newsletter interview 2010Oeb newsletter interview 2010
Oeb newsletter interview 2010Joe Pokropski
 
Increasing customer base using mpls technology in yemennet abdulrahman,2014
Increasing customer base using mpls technology in yemennet abdulrahman,2014Increasing customer base using mpls technology in yemennet abdulrahman,2014
Increasing customer base using mpls technology in yemennet abdulrahman,2014Abdulrahman Abutaleb
 
The Mobile Academy - Supporting London's Mobile Ecosystem
The Mobile Academy - Supporting London's Mobile EcosystemThe Mobile Academy - Supporting London's Mobile Ecosystem
The Mobile Academy - Supporting London's Mobile EcosystemJulia Shalet
 
The Mobile Academy - Supporting London's Ecosystem
The Mobile Academy - Supporting London's EcosystemThe Mobile Academy - Supporting London's Ecosystem
The Mobile Academy - Supporting London's EcosystemJulia Shalet
 
external_casestudy_USC
external_casestudy_USCexternal_casestudy_USC
external_casestudy_USCRaymond Smith
 
Java Day Istanbul 2020 Conference Report
Java Day Istanbul 2020 Conference ReportJava Day Istanbul 2020 Conference Report
Java Day Istanbul 2020 Conference ReportNursel Cıbır
 
DIGITAL MARKETING PROJECT
DIGITAL MARKETING PROJECTDIGITAL MARKETING PROJECT
DIGITAL MARKETING PROJECTYugandhara Kute
 
Six Principles of Software Design to Empower Scientists
Six Principles of Software Design to Empower ScientistsSix Principles of Software Design to Empower Scientists
Six Principles of Software Design to Empower ScientistsDavid De Roure
 
MOSC2013 MOSCMY Brochure Malaysia Open Source Conference 2013
MOSC2013 MOSCMY Brochure Malaysia Open Source Conference 2013MOSC2013 MOSCMY Brochure Malaysia Open Source Conference 2013
MOSC2013 MOSCMY Brochure Malaysia Open Source Conference 2013Linuxmalaysia Malaysia
 
Brochure Malaysia Open Source Conference 2013 MOSCMY 2013 (MOSC2013) brochure
Brochure Malaysia Open Source Conference 2013 MOSCMY 2013 (MOSC2013) brochureBrochure Malaysia Open Source Conference 2013 MOSCMY 2013 (MOSC2013) brochure
Brochure Malaysia Open Source Conference 2013 MOSCMY 2013 (MOSC2013) brochureLinuxmalaysia Malaysia
 
Field Work Report on Front End Web Development
Field Work Report on Front End Web DevelopmentField Work Report on Front End Web Development
Field Work Report on Front End Web DevelopmentAL-Khalil
 

Similar a Rapport PFE MeetASAP (20)

Causes effects and measures on employee turnover in awcc june 09, 2018
Causes effects and measures on employee turnover in awcc june 09, 2018Causes effects and measures on employee turnover in awcc june 09, 2018
Causes effects and measures on employee turnover in awcc june 09, 2018
 
Internship at SELISE
Internship at SELISEInternship at SELISE
Internship at SELISE
 
Oeb newsletter interview 2010
Oeb newsletter interview 2010Oeb newsletter interview 2010
Oeb newsletter interview 2010
 
Testimonial - what our client speaks
Testimonial - what our client speaksTestimonial - what our client speaks
Testimonial - what our client speaks
 
Help desk system report
Help desk system reportHelp desk system report
Help desk system report
 
Increasing customer base using mpls technology in yemennet abdulrahman,2014
Increasing customer base using mpls technology in yemennet abdulrahman,2014Increasing customer base using mpls technology in yemennet abdulrahman,2014
Increasing customer base using mpls technology in yemennet abdulrahman,2014
 
The Mobile Academy - Supporting London's Mobile Ecosystem
The Mobile Academy - Supporting London's Mobile EcosystemThe Mobile Academy - Supporting London's Mobile Ecosystem
The Mobile Academy - Supporting London's Mobile Ecosystem
 
The Mobile Academy - Supporting London's Ecosystem
The Mobile Academy - Supporting London's EcosystemThe Mobile Academy - Supporting London's Ecosystem
The Mobile Academy - Supporting London's Ecosystem
 
3 (mobile computing)
3 (mobile computing)3 (mobile computing)
3 (mobile computing)
 
Career counselling websites
Career counselling websitesCareer counselling websites
Career counselling websites
 
Internship Wso2
Internship Wso2Internship Wso2
Internship Wso2
 
external_casestudy_USC
external_casestudy_USCexternal_casestudy_USC
external_casestudy_USC
 
Java Day Istanbul 2020 Conference Report
Java Day Istanbul 2020 Conference ReportJava Day Istanbul 2020 Conference Report
Java Day Istanbul 2020 Conference Report
 
DIGITAL MARKETING PROJECT
DIGITAL MARKETING PROJECTDIGITAL MARKETING PROJECT
DIGITAL MARKETING PROJECT
 
Internship Report
Internship ReportInternship Report
Internship Report
 
Six Principles of Software Design to Empower Scientists
Six Principles of Software Design to Empower ScientistsSix Principles of Software Design to Empower Scientists
Six Principles of Software Design to Empower Scientists
 
MOSC2013 MOSCMY Brochure Malaysia Open Source Conference 2013
MOSC2013 MOSCMY Brochure Malaysia Open Source Conference 2013MOSC2013 MOSCMY Brochure Malaysia Open Source Conference 2013
MOSC2013 MOSCMY Brochure Malaysia Open Source Conference 2013
 
Brochure Malaysia Open Source Conference 2013 MOSCMY 2013 (MOSC2013) brochure
Brochure Malaysia Open Source Conference 2013 MOSCMY 2013 (MOSC2013) brochureBrochure Malaysia Open Source Conference 2013 MOSCMY 2013 (MOSC2013) brochure
Brochure Malaysia Open Source Conference 2013 MOSCMY 2013 (MOSC2013) brochure
 
Field Work Report on Front End Web Development
Field Work Report on Front End Web DevelopmentField Work Report on Front End Web Development
Field Work Report on Front End Web Development
 
Laptoppc use habits in academia
Laptoppc use habits in academiaLaptoppc use habits in academia
Laptoppc use habits in academia
 

Último

5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Clustering techniques data mining book ....
Clustering techniques data mining book ....Clustering techniques data mining book ....
Clustering techniques data mining book ....ShaimaaMohamedGalal
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 

Último (20)

Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Clustering techniques data mining book ....
Clustering techniques data mining book ....Clustering techniques data mining book ....
Clustering techniques data mining book ....
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 

Rapport PFE MeetASAP

  • 1. MeetASAP project End of studies project i Dedication I dedicate this work to my family and friends. A special feeling of gratitude to my loving parents whose words of encouragements and push for tenacity ring in my ears and my sister who never left my side all along the journey. A special thought to my beloved mother, the woman who thought me how to be stronger than the circumstances and how to find the strength to overcome all the obstacles that life can throw in front of us. This success is ours dear mom.
  • 2. MeetASAP project End of studies project ii Acknowledgment The internship opportunity I had with Orange Labs was a great chance for learning and professional development. Therefore, I consider myself as a very lucky individual as I was provided with an opportunity to be a part of it. I am also grateful for having a chance to meet so many wonderful people and professionals who led me though this internship period. Bearing in mind previous I am using this opportunity to express my deepest gratitude and special thanks to “Jean François Gyss” my manager who in spite of being extraordinarily busy with his duties, took time out to hear, guide and keep me on the correct path and allowing me to carry out my project at their esteemed organization and extending during the training. I express my deepest thanks to my mentor “Nathalie Bégoc Bécam” for her exemplary guidance, monitoring and constant encouragement throughout the internship. I’m grateful for her role in taking part in useful decision, giving necessary advice and arranging all facilities to make my journey in the company easier. Lastly, I am thankful to the entire OLPS team and especially team PCE for answering my each query and providing me with valuable information from their respective fields… I truly appreciate their cooperation and contribution to the achievement my internship’s goals and objectives. I would like to thank also my supervisor “Houssem Eddine Lassoued” who despite the fact that he became my mentor recently, tried all his best to provide me with accurate yet valuable help and guidance. I perceive this opportunity as a big milestone in my career development. I will strive to use gained skills and knowledge in the best possible way, and I will continue to work on their improvement, in order to attain desired career objectives. THANKS AGAIN TO ALL THOSE WHO HELPED ME.
  • 3. MeetASAP project End of studies project iii Glossary List of terms Definition 1G First generation of Global System for Mobile Communications (GSM) 2G Second generation of Global System for Mobile Communications (GSM) 3G Third generation of Global System for Mobile Communications (GSM) 4G Fourth generation of Global System for Mobile Communications (GSM) 5G Fifth generation of Global System for Mobile Communications (GSM) ACK Acknowledgement APN Access Point Name AS Application Server HD High Definition IM Instant Messaging. The term chat is also applied in this document to the same concept. LTE Long Term Evolution VoIP Voice over IP RCS Rich Communication Services IMS IP Multimedia session SIP Session initiation Protocol OEM Original Equipment Manufacturer OTT Over The Top applications OSP Online Service Provider MNO Mobile Network Operator OS Operating System UCI User Centric Approach SMS Short Message Service
  • 4. MeetASAP project End of studies project iv QoS Quality of Service GSMA Groupe Spéciale Mobile (GSM) Association VoLTE Voice over LTE RAN Radio Access Network HSS Home Subscriber Service MME Mobile Management Entity CSFB Circuit Switch Fall Back CSCF Call Stateful Control Function
  • 5. MeetASAP project End of studies project v Abstract Mobile communications systems revolutionized the way people communicate, joining together communications and mobility. A long way in a remarkably short time has been achieved in the history of wireless. It is an important technology in this regard and mobile phone has become the most common tool of communication over the recent years. Evolution of wireless access technologies is going to reach its fifth generation (5G) within the upcoming years. Yet, within the strategy to provide the customers with better services and applications, we decided to implement an innovative service based on Rich Communication Services “RCS” and all the tools that the fourth generation (4G) offers. RCS is the next major evolution for SMS/MMS communication services and therefore this is a quiet trendy topic. It’s all about offering a ubiquitous, interoperable service by leveraging the investment on high-speed data networks. As a consequence, consumers will never have to suffer from a fragmentation of communication services. They'll be able to communicate in a variety of ways without requiring any installation or registration. This is a frictionless and trustworthy experience that only operators are capable of delivering nowadays. The service has an aim to enrich the user experience and is presented as a secure alternative for the Over The Top applications “OTT”. All along the internship, we make sure that we align within the different approaches that are used by all the teams in the company. User Centric Innovation “UCI” and “Scrum” are the essential methodologies that we used to carry out the different steps of the project. “MeetASAP” is our final product that consists of an innovative service that offers various functionalities to its users. It is used to provide for them the most appropriate nearby place to meet and that according to their chosen options. It does provide a chat tool as well as a sharing tool during conversations. We believe that this service is able to compete with already existing solutions in the market.
  • 6. MeetASAP project End of studies project vi Table of Contents Dedication ............................................................................................................................................i Acknowledgment................................................................................................................................ii Glossary............................................................................................................................................. iii Abstract...............................................................................................................................................v Table of figures..................................................................................................................................ix List of tables......................................................................................................................................10 General introduction..........................................................................................................................1 Chapter1:............................................................................................................................................3 Context of the project ........................................................................................................................3 Introduction........................................................................................................................................4 I-Presentation of the company..........................................................................................................4 I-1-Company overview ................................................................................................................................ 4 I-2-Department presentation ...................................................................................................................... 5 I-3-Team presentation ................................................................................................................................. 7 II-Internship topic presentation .......................................................................................................7 II-1-Internship context ................................................................................................................................ 7 II-2-Aim of the internship ........................................................................................................................... 8 III-Study of the existing solutions.....................................................................................................8 III-1-Presentation of the existing solutions in the market........................................................................ 8 III-1-1-Glympse......................................................................................................................................... 8 III-1-2-Find My Friends............................................................................................................................. 9 III-1-3-Find My Friends & Buddies ........................................................................................................ 10 III-1-4-Meetup ......................................................................................................................................... 11 III-1-5-Nearify ......................................................................................................................................... 11 III-2-Critics of the existing solutions........................................................................................................ 12 III-3-Suggested solution ............................................................................................................................ 13 IV-Employed methodologies...........................................................................................................14 IV-1-User centric innovation approach “UCI”....................................................................................... 14 IV-1-1-UCI overview .............................................................................................................................. 14 IV-1-2-Principals of UCI......................................................................................................................... 15 IV-2-Agile methodology- Scrum............................................................................................................... 16 IV-2-1-Scrum presentation ...................................................................................................................... 16 IV-2-2-Scrum roles.................................................................................................................................. 17 IV-2-3-Scrum benefits ............................................................................................................................. 17 Conclusion.........................................................................................................................................19 Chapter2:..........................................................................................................................................20 Analysis of the needs and requirements.........................................................................................20 Introduction......................................................................................................................................21 I-Analysis of the needs and requirements......................................................................................21 I-1-Main actors of our system................................................................................................................... 21
  • 7. MeetASAP project End of studies project vii I-1-1-The A-user (Host)........................................................................................................................... 21 I-1-2-The B-user (Guest) ......................................................................................................................... 21 I-2-Functional requirements..................................................................................................................... 22 I-3-Non-functional requirements.............................................................................................................. 23 I-4-Optional requirements ........................................................................................................................ 24 II-Use case diagrams........................................................................................................................24 II-1-Global use case diagram.................................................................................................................... 24 II-2-Detailed use case diagrams................................................................................................................ 27 II-2-1-Use case diagram for invitation sending process .......................................................................... 27 II-2-2-Use case diagram for chat messaging ........................................................................................... 28 II-2-3-Use case diagram for file/image sharing....................................................................................... 29 Conclusion.........................................................................................................................................31 Chapter3:..........................................................................................................................................32 Design of the solution.......................................................................................................................32 Introduction......................................................................................................................................33 I-System architecture (static)..........................................................................................................33 I-1-Global network architecture............................................................................................................... 33 I-2- Orange Core network......................................................................................................................... 34 I-3-Test environment architecture ........................................................................................................... 35 I-4- RCS architecture ................................................................................................................................ 37 I-4-1-API architecture.............................................................................................................................. 37 I-4-2-RCS stack architecture ................................................................................................................... 38 I-5-Package diagram.................................................................................................................................. 39 I-6-Class diagram....................................................................................................................................... 40 II-Dynamic architecture..................................................................................................................41 II-1-System sequence diagram.................................................................................................................. 41 II-2-Detailed sequence diagrams .............................................................................................................. 44 II-2-1-Fetching online contacts diagram.................................................................................................. 45 II-2-2-Initiating file transfer diagram ...................................................................................................... 45 II-3-Activity diagram................................................................................................................................. 46 Conclusion.........................................................................................................................................48 Chapter 4:.........................................................................................................................................49 Project implementation ...................................................................................................................49 Introduction......................................................................................................................................50 I-Work environment........................................................................................................................50 I-1-Development environment.................................................................................................................. 50 I-1-1-Android Studio ............................................................................................................................... 50 I-1-2-Sublime Text2 ................................................................................................................................ 51 I-2-Other software used............................................................................................................................. 51 I-2-1- Photoshop PS6............................................................................................................................... 51 I-2-2- ScrumDo........................................................................................................................................ 52 I-2-3-OVH user dashboard ...................................................................................................................... 52 I-3-Hardware environment....................................................................................................................... 53 II-Encountered difficulties ..............................................................................................................53 II-1-RCS stack............................................................................................................................................ 53 II-2-Migrating to Android studio ............................................................................................................. 54 II-3-Connectivity........................................................................................................................................ 54 II-4-Familiarization ................................................................................................................................... 54
  • 8. MeetASAP project End of studies project viii III-Interfaces’ presentation.............................................................................................................54 III-1-Main MeetASAP interface............................................................................................................... 55 III-2-Contacts List interface ..................................................................................................................... 56 III-3-Invitation sending interface............................................................................................................. 57 III-4-Meeting’s options selection .............................................................................................................. 58 III-5-Meeting spot selection ...................................................................................................................... 59 III-6-Navigation screens............................................................................................................................ 60 III-7-Chat options ...................................................................................................................................... 61 III-7-1-Start chat ...................................................................................................................................... 61 III-7-2-Chat Log and configuration ......................................................................................................... 62 III-8-File transfer option........................................................................................................................... 63 III-9-Service capabilities and status......................................................................................................... 64 IV-Project’s timeline........................................................................................................................64 Conclusion.........................................................................................................................................65 Overall conclusion............................................................................................................................66 Bibliography .....................................................................................................................................69 Appendices........................................................................................................................................71 Appendices A: Mobile network context.........................................................................................72 Evolution: ................................................................................................................................................... 72 GSMA and Network 2020:........................................................................................................................ 72 Orange and Essentials 2020 ...................................................................................................................... 73 Appendices B: Teams’ projects ......................................................................................................76 SPIN ............................................................................................................................................................ 76 Enriched calling ......................................................................................................................................... 77 Appendices C: More about RCS.....................................................................................................78 What is RCS ............................................................................................................................................... 78 Difference between RCS and OSP “ Online Service Provider” ............................................................ 78 Architecture Overview ............................................................................................................................. 78 RCS services:.............................................................................................................................................. 79 4G Network: ............................................................................................................................................... 80 The 4 G standard:...................................................................................................................................... 81 4G features: ................................................................................................................................................ 81
  • 9. MeetASAP project End of studies project ix Table of figures Figure 1 Orange logo ......................................................................................................................................... 5   Figure 2 Consumer Communication Services department ................................................................................ 5   Figure 3 Orange internal structures ................................................................................................................... 7   Figure 4 Glympse application............................................................................................................................ 9   Figure 5 Find My Friends application ............................................................................................................. 10   Figure 6 Find My Friends & Buddies application ........................................................................................... 11   Figure 7 Meetup application............................................................................................................................ 11   Figure 8 Nearify application............................................................................................................................ 12   Figure 9 MeetASAP application...................................................................................................................... 14   Figure 10 User Centric Innovation approach diamonds .................................................................................. 15   Figure 11 Scrum framework............................................................................................................................ 16   Figure 12 MeetASAP global use case diagram ............................................................................................... 26   Figure 13 Use case diagram for invitation sending process ............................................................................ 27   Figure 14 Use case diagram for chat ............................................................................................................... 28   Figure 15 Use case diagram for sharing .......................................................................................................... 30   Figure 16 Global network architecture ............................................................................................................ 33   Figure 17 Orange Core network ...................................................................................................................... 34   Figure 18 Test environment architecture......................................................................................................... 35   Figure 19 API architecture............................................................................................................................... 37   Figure 20 RCS stack architecture .................................................................................................................... 38   Figure 21 Package diagram of MeetASAP...................................................................................................... 39   Figure 22 MeetASAP class diagram................................................................................................................ 40   Figure 23 MeetASAP sequence diagram......................................................................................................... 42   Figure 24 Chat initiation diagram.................................................................................................................... 43   Figure 25 Image sharing initiation diagram..................................................................................................... 44   Figure 26 Fetching online contacts diagram.................................................................................................... 45   Figure 27 File transfer diagram ....................................................................................................................... 46   Figure 28 Activity diagram of MeetASAP...................................................................................................... 47   Figure 29 Android Studio IDE......................................................................................................................... 50   Figure 30 Sublime Text2 ................................................................................................................................. 51   Figure 31 Adobe Photoshop PS6..................................................................................................................... 52   Figure 32 ScrumDo application....................................................................................................................... 52   Figure 33 VPS dashboard interface ................................................................................................................. 53   Figure 34 Main MeetASAP features ............................................................................................................... 55   Figure 35 Contact list interface........................................................................................................................ 56   Figure 36 Invitation process for host and guest............................................................................................... 57   Figure 37 Options selection for host and guest................................................................................................ 58   Figure 38 Recommendations list interface ...................................................................................................... 59   Figure 39 Pre-navigation and navigation screens............................................................................................ 60   Figure 40 Instant messaging screen................................................................................................................. 61   Figure 41 Chat log and configuration interfaces ............................................................................................. 62   Figure 42 File sharing process......................................................................................................................... 63   Figure 43 Service and capabilities screens ...................................................................................................... 64   Figure 44 MeetASAP project timeline ............................................................................................................ 65   Figure 45 GSMA logo ..................................................................................................................................... 73   Figure 46 Spin interfaces ................................................................................................................................. 76   Figure 47 Enriched calling interfaces .............................................................................................................. 77   Figure 48 IMS overview architecture .............................................................................................................. 80   Figure 49 Mechanisms of GSM and IMS........................................................................................................ 81  
  • 10. MeetASAP project End of studies project 10 List of tables Table 1 comparison table of existing solutions ............................................................................................... 13   Table 2 Invitation sending process .................................................................................................................. 27   Table 3 Chat option process............................................................................................................................. 29   Table 4 File/image sharing process ................................................................................................................. 30   Table 5 SPIN project........................................................................................................................................ 76   Table 6 Enriched calling project...................................................................................................................... 77  
  • 11. MeetASAP project End of studies project 1 General introduction
  • 12. MeetASAP project End of studies project 2 Today, mobile communications play a central role in the voice/data network arena. With the deployment of mass scale 5G just around the corner, new directions are already being researched. Within this context, the main actors of networking have been working closely to achieve these improvements and therefore provide enhanced yet efficient services and applications that will allow them to compete with their rivals. The main idea is to revolutionize the market by setting new trends that are based on cutting-edge technologies and by consequence offer the customers innovative solutions and products. The existence of 4G Networks in today’s technology-driven society is important indicators of advancement and change. 4G, or Fourth Generation networks, are designed to facilitate improved wireless capabilities, network speeds, and visual technologies. It is anticipated that as these networks continue to thrive, the demand for advanced related technologies will also grow, thereby creating new alternatives for savvy technology users to exceed their desired expectations. The topic of the internship “communication on 4G: from the design to the implementation of an idea” is quiet timely within the current situation. Its main goal was to come up with a new service that will enforce the firm’s arsenal. The work was done according to the Orange’s guidelines and it gave us the opportunity to explore and discover how innovative projects are conducted. All along the current document, we will explain the different steps that we went through during the internship. In the first chapter, we will provide a global overview of the subject in order to give you an idea about the different factors and solutions already existing. The next chapter will be dedicated to the analysis of the needs and requirements. Next, we’ll move to the design phase. This step is quiet crucial in the elaboration process and it defines the main interactions and tools in our application. The last chapter will be dedicated to present the work that was done all along the six months of the internship. We’ll be showing the final product as well as the tools used to implement it, the obstacles that we went through and give a timeline perspective. For further explanation and illustration, we included appendices. This report is the result of hard work and perseverance during six months at Orange Labs Lannion. It was an opportunity to explore the professional environment in a well-known firm. Moreover, it was a chance to explore, conceive and implement a solution that we imagined. All along these months, we were able to enhance and enlarge our knowledge. This was a quiet tremendous opportunity to explore professional life and get in touch with multidisciplinary teams to enrich skills and gather more information.
  • 13. MeetASAP project End of studies project 3 Chapter1: Context of the project
  • 14. MeetASAP project End of studies project 4 Introduction In this chapter we’re going to explain the general context of the internship. We will present the firm in which it took place and give a hint about the main issues that it tackles. In a second phase, we will provide a study of the existing applications to be able to gather more information about the consumers’ expectations. In last part, we will describe the different approaches used to elaborate our service. I-Presentation of the company I-1-Company overview Orange is one of the world’s leading telecommunications operators with revenues of 39 billion euros and 156,000 employees worldwide (including 99,400 in France) at December 31, 2014. With operations in 29 countries, the Group served 244 million customers at December 31, 2014, including 185 million mobile customers and 16 million fixed broadband customers. Orange is also a leading provider of telecommunication services to multinational companies, under the brand Orange Business Services. Orange has been listed since 1997 on Nyse Euronext Paris (symbol: ORA) and on the New York Stock Exchange (symbol: ORAN). Orange, formerly France Telecom, is France’s incumbent telecommunications operator. The Group has its origins in the Ministry for Posts, Telegraphs and Telephone, later to become the General Directorate of Telecommunications, which in 1990 was accorded the status of independent public entity and, on January 1, 1991, renamed France Telecom. On December 31, 1996, France Telecom became a “Société Anonyme” (limited company) with the French State as its sole shareholder. In October 1997, France Telecom shares were listed on the Paris and New York stock exchanges allowing the French government to sell 25% of its shares to the public and Group employees. Subsequently, the government gradually reduced its holding to 53%. The Law of December 31, 2003 authorized the transfer of the Company to the private sector and between 2004 and 2008 the State sold a further 26% of the share capital. At December 31, 2014, the French State retained 25.04% of the shares, held either directly or jointly with Bpifrance. Since the 1990s, France Telecom’s area of activity and its regulatory and competitive environment have undergone significant changes. In a context of increased deregulation and competition, between 1999 and 2002, the Group pursued a strategy of developing new services and accelerated its international growth with a number of strategic investments. These included, in particular, acquiring mobile operator Orange and the Orange brand, which had been created in 1994, and taking a stake in
  • 15. MeetASAP project End of studies project 5 Poland’s incumbent operator, Telekomunikacja Polska (renamed Orange Polska in 2013). Share issues and therefore the Group’s debt substantially increased during this period could not finance most of these investments. At the end of 2002, France Telecom started a large-scale refinancing plan for its debt to reinforce its balance sheet, as well as an operational improvements program, the success of which has allowed the Group to develop a global integrated-operator strategy by anticipating changes in the telecommunications industry. ([1]) Figure  1  Orange  logo   I-2-Department presentation The Consumer Communication Services department “CCS” under the direction of Orange Labs ComServ Products and Services Research conducts activities such as anticipating and supporting the deployment of innovative consumer communication services (Voice, Visio, Courier, Data) and their APIs for zones France, Europe and AMEA. Figure  2  Consumer  Communication  Services  department   The department operates in the following fields: Ø Communication services for households / families (VoIP, Family Place...), taking advantage of the immersive and "do together" trend Ø Personal communication services (Rich Communication Services, Enriched Communications, Voice & Video over LTE, 4G advanced services, evolution to 5G...)
  • 16. MeetASAP project End of studies project 6 Ø Web communication services (web communication suites, communications over cloud, highly advanced messaging...) Ø Specific services for AMEA region (Advanced Intelligent Network services, premium services...). The main work of the department: Ø Support Orange affiliates in deployment of services Ø Deployment and maintenance in centralized mode (ASP) platform service for trials and production Ø Contribution to the technical strategy of communication services Ø Design of end-to-end communication services architectures Ø Design of new services in research and anticipation (User Centric Innovation, prototyping, trials) and industrialization associated files Ø Contribution to long-term vision of the evolution of communication services, taking into account disruptions of use, technological, economic and social. This work is done in collaboration with the various departments such as: Orange Labs Network involved departments on communications platforms and standardization teams Libon Orange Vallée, teams Orange Research Labs... Furthermore, the department is responsible for 5 technical fields with a budget of € 17,5M in 2015 which are: Ø The Technical Field Communication Family & Home Ø The Estate Enriched Personal Communication Techniques Ø The Technical Field Enriched Communication for AMEA ([2]) Ø The Technical Field RCS / VoLTE / Libon ([3]) Ø The Technical Field Web Enriched Communication As part of the conquest of new tracks and Personal Social Services (PASS), the department also manages research projects such as “Enriched Communication Experience” and the “Personal Communication Sphere”. We should also mention that it includes five teams: Ø The team “Home & Family Communication” conducts activities Anticipation and support for the deployment of communication services for the home and family. Ø The team “Personal Communication Delivery” supports activities for the deployment of personal communication services. Ø The team “Personal Communication Evolution” conducts Research and Anticipation activities of new personal communication services. Ø The team “Convergent Web Communication” conducts Anticipation activities and support for Web communications suites deployment.
  • 17. MeetASAP project End of studies project 7 Ø The “Asp & Smart Products Research” team conducts Anticipation activities and supports the deployment of communication services in AMEA and service platforms in centralized mode. I-3-Team presentation Within Orange Labs Lannion, the Personal Communication Evolution “PCE” carries research and anticipation activities. The main aims are: Ø Fetching and prototyping innovative uses for enriching personal communications according to the evolution of both mobile devices and networks nowadays (communication over LTE, exploring the 4G and 5G networks, multi-devices, multi-users…) Ø Anticipating the roadmap for personal communications. This includes the mapping and elaboration of technical documentation. Ø Implementing the company strategies when it comes to standardization of new services within the GSMA for instance. Figure  3  Orange  internal  structures   II-Internship topic presentation II-1-Internship context Giving the current context of broadening horizons, the efforts of the team are concentrated on improving the personal communication systems. During this process, operators are constantly working on the development of services that will meet the clients’ expectations and minimize various defects observed in current solutions. The project idea is to build on the approach taken by the most influential mobile operators in the world members of the Group Special Mobile Association “GSMA”. Thus, according to the new policy "GSMA Vision 2020", operators are moving towards the adoption of new services and architectures for providing more efficient services
  • 18. MeetASAP project End of studies project 8 as well as a significantly improved customer experience. The goal is to deploy new technologies such as RCS, IMS, LTE ... and all the possibilities that 4G can offer to build robust and strong services that will compete with Over the Top “OTT” applications that already exist in the market and are offered by Online Service Providers “OSP”. For sure the cost of this investment is way expensive, but the revenues are however promising. The required architecture is partly deployed and by the end of the year several new services will be introduced and marketed to the general public. Thus ensuring interoperability, ubiquity and quality service for all customers. All this work is the extent to fortify more and more the experience of Enriched Calling and introduce it as a solid alternative solution to all third parties who are proprietary and limited solutions. These steps are insured within the Orange 2020 strategy as well. ([4]) II-2-Aim of the internship The main flaw that we have observed is the lack of options when it comes to the geo-location of users in an Enriched Calling based application. The aim of the internship is therefore to develop a prototype application that will facilitate the location of users and provide them with useful and easy to use features when issuing a simple call that is of course based on the RCS frames. That’s said, it will be able to fill this need and provide a rather complete and rich user experience at the same time. This prototype can later be adopted and marketed in an individual way or embedded in a more versatile service pack through partnerships and trade agreements with different Original Equipment Manufactures “OEM”. We should also mention that the advantage of such an application is that the user does not need to switch to another application to be able to share their location or to mark the position of the speaker. With the adoption of new network architecture that is oriented more towards an all-IP network over existing architectures that are more circuit switching networks, this application will be integrated in the out-of-the-box package made available to the user. This alternative is embracing the “It is there and it just works” paradigm which will allow us to reach a larger part of consumers. As a consequence it’s combining business with simplicity and increased performance. Safety is guaranteed as well, and also offers a clean user experience to each customer. III-Study of the existing solutions III-1-Presentation of the existing solutions in the market III-1-1-Glympse Based on its description, this application is supposed to offer the easiest way to share your location with anyone safely and in real-time. It allows your chosen interlocutors to track your location on
  • 19. MeetASAP project End of studies project 9 map for a certain amount of time. No registration is required and there is no new social network to manage. The users receive a link allowing them to see your location for the duration you choose. When the timer reaches its end in the Glympse ([5]), the site is no longer visible. Even better, recipients do not need any special software to view the map in real time. Send a Glympse by SMS, email, Facebook or Twitter, and the recipients can view it using any device with an Internet connection. The main features of this application are: Ø Easy: no registration required and no list of friends manage Ø Secure: the Glympse automatically expires Ø Live: share the location in real time Ø Open: share with anyone - no application is required for viewing Ø Liabilities: works in the background Ø International: works wherever you have a data connection and GPS Figure  4  Glympse  application   III-1-2-Find My Friends “Find My friends” ([6]) is an iOS-based application, which allows users to locate their friends and family using their iPhones, iPads… They just need to install the application and invite their buddies to share their locations by choosing from their contact list and entering the correct email address. Once the friend accepts the invitation users can then start tracking the location and they can also send a request to track position as well. The user can moreover set up location-based alerts to notify him when a friend enters a given area. The features of this application are: Ø Easily-located friends and family Ø Location-based notifications Ø Simple privacy controls Ø Parental restrictions
  • 20. MeetASAP project End of studies project 10 Figure  5  Find  My  Friends  application   III-1-3-Find My Friends & Buddies “Find My Friends & Buddies” ([7]) is another application that allows users to find accurately and in real-time the positions of their friends. It offers a tool for users to meet by insuring a reliable and accurate locator within a messaging application. It works with “Sygic GPS” navigation and augmented reality. The features are: Ø See vacation of your friends in real time Ø Check easily if they will be late for your meeting Ø Share with your friends free messages Ø Know if your friends got lost & help them Ø Check in option Ø Get a notification when your mates reach destination Ø See the movement of your friends during past 7 days (available as an in-app purchase) to follow steps one year their adventurous road trip Ø Find My Friends uses GPS and internet functions on mapping Ø Find My Friends is an easy to use tool that helps you locate your friends and see their exact rental on the map in real time
  • 21. MeetASAP project End of studies project 11 Figure  6  Find  My  Friends  &  Buddies  application   III-1-4-Meetup Unlike the previously mentioned applications, Meetup ([8]) does not offer a track location option to its users. It offers the possibility to find other users having the same interest and therefore meet in real-life. It helps to arrange meetings and gather people who have common interests. The features of this application are: Ø Gathering people in different groups of interest Ø Planning the meetings Figure  7  Meetup  application   III-1-5-Nearify This application allows users to discover all nearby events such as concerts, festivals, film screening… Moreover, it offers to a group of friends the opportunity to attend the same event together. The concept of “Nearify” ([9]) is promoting most of events that are happening near you and therefore mark your interest to attend them. The features that such an application offers are: Ø Use Nearify to invite your friends to your favorite events Ø Share events with your groups on other platforms Ø Find directions to the event
  • 22. MeetASAP project End of studies project 12 Ø Add the event to your favorites. Ø You can add your loved events to phone calendar to be reminded before the event Figure  8  Nearify  application   III-2-Critics of the existing solutions During the previous section, we tried to present an overview about the different solutions that are in the market today. These applications do have some similarities and differences as well. Each one targets different range of customers or different purposes. We can say that most of them do have the same approach of problem tackling. To make it easier to understand most of their characteristics we’re going to elaborate a table of comparison through which we’re going to resume results of our study. This table will allow us to have a better overall idea and seek the opportunity to enhance our service in order to come up with a better solution. We defined different criteria on which we’re going to compare these applications: Ø Spots finding: the ability of an application to collect nearby places for its users. Ø Navigation: the ability to offer navigation to a selected spot. Ø Location update: the ability to see the current location of a user. Ø Contacts: the ability to interact with the contacts from an address book. Ø Time estimation: the ability to have a time estimation of the arrival for a user to a chosen place. Ø Mode of transport: the ability of displaying the chosen transport mode for users. Ø Users interaction: the ability for users to exchange messages or notifications. Ø File/images sharing: the ability to share images or files in order to offer a more interactive experience for users.
  • 23. MeetASAP project End of studies project 13 Ø Instant messaging: the ability to offer a chat option for users so they can enjoy a complete experience. Table  1  comparison  table  of  existing  solutions   Thanks to the comparative table analysis, we’re now able to know approximately our position in the market when it comes to answering consumers’ needs and expectations. In this phase, we were able to conduct a study in order to extract the main factors to develop our service. It needs to be innovative and offer new functionalities for users. Giving the high number of downloads of such applications; we’re able to conclude that such a service is quiet requested in the market today. The main challenge now is to elaborate an RCS-based service that will be able not only to compete with these applications but also to satisfy our customers. III-3-Suggested solution “MeetASAP” is the name that we’ve chosen for our new service. It’s going to be based on RCS in order to take advantage on the wide range of functionalities it offers. The application will enhance the user experience by offering different options. Its main aim is to implement an easy-to-use Applicat ion name Spot s findi ng Navigat ion Locati on update Conta cts Time estimati on Mode of transp ort Users interact ion File/im age sharing Instant messag ing Glymps e x x ü ü ü x ü x x Find My Friends x x ü ü x x ü x x Find My Friends & Buddies x x ü ü x x ü x ü Meetup ü x x ü x x x x x Nearify ü x x ü x x x x x
  • 24. MeetASAP project End of studies project 14 service that will help users find the most appropriate place to meet according to their means of transport and the nature of the meeting itself. The application will also provide an interactive way to communicate between two interlocutors such an instant messaging service and an option for file or image sharing on network. It will provide time estimation and road navigation as well. In other terms, our objective is to tackle the drawbacks that we observed during the study of the existing solutions in the market and therefore offer a reliable, innovative yet secure service that will essentially meet our customers’ expectations. Figure  9  MeetASAP  application   IV-Employed methodologies IV-1-User centric innovation approach “UCI” IV-1-1-UCI overview One of the unique points of this internship is the application of the user centric innovation approach “UCI” ([10]) which is a methodology used by Orange to conduct innovation projects. Back in 2011, the company started to use it in order to enhance projects’ management and enable the different teams to structure their work in order to implement the new, to-be-launched services. For that to be done, 5 principles as well as 4 major phases were defined. Overall, the process is composed of 11 steps that should be followed in order to transform data, knowledge and gathered requirements into tangible and efficient experiences. The form of the diamond is not irrelevant. From the time perspective the first halves of the diamonds are the triangles that are getting wider in time. It illustrates the broadening of horizons and knowledge-gathering to create a vision of the project. Whereas, the second halves show by getting narrower in time the process when the project is taking a more defined yet precised shape.
  • 25. MeetASAP project End of studies project 15 Figure  10  User  Centric  Innovation  approach  diamonds   Note: The letters signify that we combine Business goals, Technology and User needs which are the main three levers in the user experience. IV-1-2-Principals of UCI IV-1-2-1Collaboration and team commitment We should not forget that the main goal of the whole approach is to come up with services that offer a great user experience and for that to be done, a team of committed yet multidisciplinary members should be composed with at least 3 complementary perspectives: business, technology and usages. IV-1-2-2-Systematic integration of the user in the approach We need to have a deep understanding of the market and the needs of the customers that’s why they’re involved within different stages of the process. This will insure to have a proper user experience by the end of the project. IV-1-2-3-Empathy with customers, result of deep understanding For the innovations to be relevant, the project team must develop empathy towards the costumers in different ways such as: using customer closeness (or immersion) techniques, relying on specific expertise, participating in the observations, appropriating results, questioning the results, and always with respect, without value judgment towards customers.
  • 26. MeetASAP project End of studies project 16 IV-1-2-4-Keep the focus on targeted experiences all along the chain The project team should not seek to find answers or solutions before understanding the problem and stakes. The early stages that are presented in the first diamond of the figure above aim at ensuring the development of a strategic vision prior to the development of a response, or a solution. Throughout the approach, the project team must remain vigilant to keep the focus on the insights discovered and the target experience, and not rush the advent of solutions (shown in second diamond). IV-1-2-5-Embodiment of ideas and potential solutions Visual thinking, storytelling and the materialization of ideas are the heart of the approach. These techniques are used often to facilitate the understanding of complex information, inspire new ideas, encourage the sharing and effectively communicate the vision of the project. The sooner the team compares the ideas effectively to the reality of customers, the faster it learns of their strengths and weaknesses (iterative approach). IV-2-Agile methodology- Scrum IV-2-1-Scrum presentation Scrum ([11]) is an agile framework for completing complex projects. Scrum originally was formalized for software development projects, but it works well for any complex, innovative scope of work. The possibilities are endless. The Scrum framework is deceptively simple. Scrum is a management and control process that cuts through complexity to focus on building software that meets business needs. Management and teams are able to get their hands around the requirements and technologies, never let go, and deliver working software, incrementally and empirically. The Scrum model suggests that projects progress via a series of sprints. In keeping with an agile methodology, sprints are time boxed to no more than a month long, most commonly two weeks. It advocates for a planning meeting at the start of the sprint, where team members figure out how many items they can commit to, and then create a sprint backlog – a list of the tasks to perform during the sprint. Figure  11  Scrum  framework  
  • 27. MeetASAP project End of studies project 17 IV-2-2-Scrum roles We mainly have three main roles in the Scrum methodology. We’re going to explain them in order to have a better understanding for the process. ([12]) IV-2-2-1-Product Owner The Product Owner should be a person with vision, authority, and availability. He is responsible for continuously communicating the vision and priorities to the development team. It’s sometimes hard for Product Owners to strike the right balance of involvement. Because Scrum values self- organization among teams, a Product Owner must fight the urge to micro-manage. At the same time, they must be available to answer questions from the team. IV-2-2-2-Scrum Master The Scrum Master acts as a facilitator for the Product Owner and the team. The Scrum Master does not manage the team. He works to remove any impediments that are obstructing the team from achieving its sprint goals. This helps the team remain creative and productive while making sure its successes are visible to the Product Owner. The Scrum Master also works to advise the Product Owner about how to maximize ROI for the team. IV-2-2-3-The Team According to Scrum’s founder, “the team is utterly self managing.” The development team is responsible for self-organizing to complete work. A Scrum development team contains about seven fully dedicated members (officially 3-9), ideally in one team room protected from outside distractions. For software projects, a typical team includes a mix of software engineers, architects, programmers, analysts, QA experts, testers, and UI designers. Each sprint, the team is responsible for determining how it will accomplish the work to be completed. The team has autonomy and responsibility to meet the goals of the sprint. IV-2-3-Scrum benefits Scrum is a highly used methodology among the companies nowadays. In the below paragraph, we’re going to explain further the advantages of such an approach according to different stakes’ perspectives. IV-2-3-1-Benefits Of Scrum From The Client Perspective Though a client or customer really doesn’t care about the project management methodology that the team uses, they do realize some benefits from the methodology. Scrum provides a definite set of
  • 28. MeetASAP project End of studies project 18 benefits over the traditional methods and over other agile methodologies. For the client, the benefits of Scrum are: Ø Scrum puts the control of the value stream back in the hands of the business Ø Scrum delivers products more quickly Ø Scrum allows clients to change priorities and requirements quickly IV-2-3-2-Benefits Of Scrum From The Organization Perspective As an organization, it is s big decision to adopt a new methodology. People, processes, clients, and management are all affected. It’s important to see tangible benefits quickly. This is where Scrum shines. With a predictable, repeatable release schedule and self-managing teams, the organization realizes the following benefits: Ø Scrum keeps an organization honest and helps them to meet their commitments Ø Scrum promotes transparency; you no longer need to hide the truth, you can be open and honest with everyone Ø Decision making is shifted to the lowest level (line employees), to the people best able to understand all of the facts IV-2-3-3-Benefits Of Scrum From The Management Perspective Management, the decision-makers within the organization, will enjoy some benefits as well. The predictable development process gives management benefits such as: Ø Better workforce management Ø Enhanced customer and client relationships Ø Visibility into the entirety of the project management process Ø Motivated and inspired team members IV-2-3-4-Benefits Of Scrum From The Product Perspective Really the product doesn’t know or care about benefits. But the lifecycle of the product will be improved by the Scrum methodology, which leads to the following product-related benefits: Ø Improved credibility with your clients due to a higher quality product Ø More predictable release cycle with built-in testing processes leads to product stability Ø Sprint Review leads naturally to a product that the client wants and is excited about
  • 29. MeetASAP project End of studies project 19 IV-2-3-5-Benefits Of Scrum From The Team Perspective In the end, the team will enjoy benefits of Scrum that reinforces their best work. Autonomy, self- direction, immediate feedback, and true collaboration lead to such benefits to the team like: Ø Unlock the true potential of the team Ø Create a safe working environment where people can thrive Ø The team learns to achieve a sustainable pace, so that they can continue to be productive over the long haul The combination of User Centric Innovation approach along with the agile methodology will allow us to get a better outcome and enhance the product quality at the same time. This will provide a better understanding for the consumers’ needs and a global overview for the different steps of the elaboration of our service. One of the internship’s goals is to learn how to apply such approaches during the various phases that the product will go through. Conclusion All along this chapter, we gave a global overview of the different aspects of the internship. We tried to provide a better understanding of the issue that it will tackle all along with the comparison of the existing solutions in the market. We also mentioned the used approaches in order to meet the customers’ needs and provide an enhanced product. In the next chapter, we will move to the study of needs so that we can have a more shaped and defined perspective.
  • 30. MeetASAP project End of studies project 20 Chapter2: Analysis of the needs and requirements
  • 31. MeetASAP project End of studies project 21 Introduction All along this chapter, we’re going to describe the phase of the analysis of the needs. As a first step, we’re going to identify the main actors in our system. Afterwards, we’re going to define the different needs and requirements of our service. Furthermore, this analysis will help us to shape the functionalities to develop in future steps and structure efficiently our work. Thanks to this phase, we will be able to transform all these requirements into features that our final product will offer to our customers. I-Analysis of the needs and requirements I-1-Main actors of our system As we mentioned during the previous chapter, the aim of the internship is to come up with a new reliable yet innovative service to enhance communication services that the company offers to its customers. For that to be done, we need to start by identifying the main actors of our application and distinguish the different functionalities which are going to be the implemented features in the upcoming steps of the project. In our case, we have two main actors in our system The A-user (Host) who is going to initiate the different sessions and invitations and the B-user (Guest) who is going to be accepting the invitations from his interlocutor in order to interact together. I-1-1-The A-user (Host) This user is the main actor in our system because he’s going to be the initiator of the various sessions by sending an invitation to a user of his choice. He’s also going to be in charge of making the choice of the place where the meeting is going to be. He also can send messages to his guest or share files/ images with him. These features will help us to guarantee an interactive yet seamless user-experience. It will also help re-inventing the traditional ways to communicate. I-1-2-The B-user (Guest) This user is the one who’s going to accept the invitation of the host in order to start the session and be able to use the different features that our service will offer. He can alert the A-user of his choice of the meeting place but he cannot take that decision. He can as well send and receive files/ images to his interlocutor. These permissions are made to differentiate between several users in order to make sure that the communication process is going smoothly without delays or long-time response throughout the network.
  • 32. MeetASAP project End of studies project 22 I-2-Functional requirements In order to go further with our analysis and after pointing out our main actors, we need to define the functional requirements of our project. They’re going to be implemented during future steps and they’re mandatory for our service to work smoothly in order to meet our customers’ expectations. These needs were defined after holding many brainstorming sessions and consultations with the team members just to be sure that we’re hitting the right track. With that being said, let’s enumerate our functional requirements: Ø Displaying users’ locations: This feature is going to enable users to see their actual location on the map as well as their interlocutor. It will provide a better visual support for users especially if they don’t know the city or the area they’re in. Ø Displaying the list of the different meeting’s options: In order to provide a flexible application that can answer the different needs, our application will let the users choose their own mode of transport as well as the nature of their meeting. Based on that choice, the distance will be calculated. Ø Displaying the list of places for a meeting: To give an efficient yet enhanced experience, after defining the nature of their meetings and the mean of transport, users will be able to get a fetched list of nearby places that meet their criteria. Ø Calculating and Optimizing the trajectory: Based on the selected options and places the application will calculate the estimated trajectory between each user and the meeting point. The algorithm takes into consideration the position of each user and tries to provide the most optimized way to reach their destination. The road will then be displayed on the map so that users can have an approximated idea about distance and time. Ø Sharing and updating the positions: By the moment that both users choose their means of transport and the nature of the meeting, the service will indicate the distance that separates them at that given time. They can also see their progress while navigating to reach their meeting point. Ø Image/ file sharing: This feature offers the possibility for users to share file, images…while using our application. It will be implemented in order to give extendable option to our service and provide an interactive communication. Ø Instant messaging:
  • 33. MeetASAP project End of studies project 23 This is an option for users to communicate while navigating to their meeting point. The instant messaging feature provides an enhanced tool for users to enjoy the service. This will give our service the ability to compete with OTT applications and provide a similar tool based on RCS. I-3-Non-functional requirements By non-functional requirements, we mean the needs that characterize our system. In other words, it comes to defining a set of essential criteria for the proper functioning of our application. Thus, it should be noted that they could be expressed in terms of performance, type of material or type of design. In our case these are the needs that we were able to point out: Ø Usability: The application should have a user-friendly interface design. Its use should be simple and intuitive so that our users will manage to cope with it without the need of specific knowledge. We have to keep in minds that we’re targeting different ranges of customers and the application should be easy to use for any user. Ø Security: Our application should guarantee the security of the exchanged data between users. By far, this is one of the most valuable assets of our project because unlike the OTT applications, the firm makes sure not to jeopardize its customers’ privacy. The information won’t be divulgated to third parties actors. Ø Scalability: While developing our application we have to keep in mind that it should be kept open to the implementation of new set of features when needed. RCS do already insure the ubiquity of the applications. Any changes to be performed in the future should not affect the work of our service. Ø High-availability: Our application should be able to run under high available platform in order to be able to handle the high number of requests. Ø Maintainability: The different modules developed and the system must be easy to maintain. For this, the code must be readable and well structured. We must respect the coding standards for example the names of attributes and variables, method names and the disposition of comments. Ø Performance: The response time and latency should be optimized as much as possible in order to ensure a real- time experience and make users enjoy the application.
  • 34. MeetASAP project End of studies project 24 I-4-Optional requirements This refers to enrich the functionalities of the project to meet the needs of users in order to make it even more enjoyable to use. Without tender towards the superfluous, we can draw such options according the following list: Ø Integrating list of favorites: Users can add their appreciations for the meeting spot and eventually add it to their favorite places to go. Ø Integrating Advertisements: Add new functionalities such as displaying instant ads for cafes or restaurants that have on-going promotions. Ø Integrating video-sharing: Adding this feature will enhance more the user-experience and therefore the number of our targeted customers will rise. II-Use case diagrams At this point, we’re reaching a milestone in the project elaboration process. In order to have a global and highlight the major outlines, we need to transform these requirements into diagrams using UML. These charts summarize the actions that our users can perform while using our application. II-1-Global use case diagram The figure below shows the general use case diagram of our application. This illustration will help to have a global view on the board outlines of our system and the main actions are summarized into use cases. We find as agreed the main actors and their interactions with the service. Ø Send an invitation to a guest: this use case describes the different interactions of the user while choosing this option. It aims to plan the meeting between the host and the guest. The planning includes the selection of different options and the visualization of the recommendations list. We provide navigation assistance as well to the meeting point. Ø Share a file or an image: this option is meant to provide users with an interactive experience while using the service. It offers the possibility to send and receive images or files in real- time. Ø Chat with a friend: this feature provide our users with an instant messaging tool in order to be able to reach their contacts at any time and any where. The users can enjoy a full rich experience while using our service.
  • 35. MeetASAP project End of studies project 25 Ø Ask for a capability: this option provides the users to ask for more options from the RCS platform. They can ask for instant sharing, video sharing, geo-location, and capability discovery… Ø Check the service: by this option we mean that the user can check the service status, configure it to match his needs… this will allow us to provide a flexible service that is able to meet the customers needs and expectations. Ø Accept invitation for a meeting: this option illustrates how the guest should accept the invitation of his host in order to proceed with the meeting-planning scenario. Once accepted he’ll be able to choose the mode of transport as well as inform his host by the choice of the meeting spot. Once done, they both can proceed to navigation and enjoy the features that our service provides. Ø Accept invitation for a chat: This use case shows that a guest should accept the invitation for instant messaging and therefore enjoy using this feature with his friends. Ø Accept image or file sharing: if the guest will accept the invitation he’ll be able to start sharing different files and images with his contacts. In the opposite case he can simply reject the invitation. Overall, this diagram helps us within defining the basic features of our service and how they interact together in order to provide a seamless experience. The process of writing and revising use cases produces three important outcomes in the analysis team — clarity, consensus, and commitment. Remarkably, it is common for stakeholders to be uncertain about how a process they own actually works! Writing a use case helps stakeholders align the narrative with the details of an existing process. Use case diagrams are used to gather the requirements of a system including internal and external influences. These requirements are mostly design requirements. So when a system is analyzed to gather its functionalities use cases are prepared and actors are identified. So to understand the dynamics of a system we need to use different types of diagrams. Use case diagram is one of them and its specific purpose is to gather system requirements and actors. Use case diagrams specify the events of a system and their flows. But use case diagram never describes how they are implemented. In forward engineering use case diagrams are used to make test cases and in reverse engineering use cases are used to prepare the requirement details from the existing application.
  • 36. MeetASAP project End of studies project 26 Figure  12  MeetASAP  global  use  case  diagram  
  • 37. MeetASAP project End of studies project 27 II-2-Detailed use case diagrams In this part of this chapter, we are going to give a closer look on the different use cases mentioned in the previous diagram. This will give us a more defined idea on the flow process for a given functionality that the user can execute. II-2-1-Use case diagram for invitation sending process The following diagram illustrates the “Send an invitation to a guest” use case. It does provide a more shaped perspective on how the process will take place once the user triggers the action. Figure  13  Use  case  diagram  for  invitation  sending  process   The tables below sums up the use case “send invitation to a guest”. It describes the actor and the nominal scenario of our process. Table  2  Invitation  sending  process   Use case 001 Name Send an invitation to a guest Actors A-user (Host) Description Send an invitation to a second user who’s the guest in order to start planning the meeting and display different features of the application
  • 38. MeetASAP project End of studies project 28   II-2-2-Use case diagram for chat messaging The schema below describes the “chat with a friend” option. It illustrates clearly what this action involves and the interactions between the user and the system. Figure  14  Use  case  diagram  for  chat   Preconditions Ø Being connected to the RCS platform Ø Running the service Post conditions Ø Connected to the RCS platform Ø Multimedia session established Basic scenario Choosing a specific user from the contact list and send him the invitation. Once accepted, both users will be able to define the meeting options and visualize a recommendations list. Once both parties make the choice, they’ll get to see their positions, the trajectory and the time estimation will be calculated. They will start the navigation to the meeting place. Alternative scenario The service won’t be available and users will have to wait till connection is established. Exceptions Ø Unavailable service Ø Disconnected from the platform Ø User not connected Ø Host did not accept the invitation
  • 39. MeetASAP project End of studies project 29 In the following table describe the “Chat with a friend” use case. It gives us an idea about the basic scenario and the alternative one as well. It does as well give a hint about the different exceptions that the user may encounter while executing this case. Table  3  Chat  option  process   II-2-3-Use case diagram for file/image sharing A use case model consists of use case diagrams depicted in UML and use case descriptions. The UML model depicts the use case, actors, communication associations between actors and use cases, and use case relationships, in particular the «extends» and «includes» relationships. The UML notation does not address the use case description, which is in many ways is the most important part of the use case model. The description includes the preconditions, postconditions, the description of the main sequence of the use case and the description of alternative sequences. Thus a use case describes several scenarios. Use case 003 Name Chat with a friend Actors A-user (Host) Description Send an invitation to a second user who’s the guest in order to start a chat messaging session and take advantage of the different abilities that RCS offer. Preconditions Ø Being connected to the RCS platform Ø Running the service Post conditions Ø Connected to the RCS platform Ø Messaging session established Basic scenario Choosing a specific user from the contact list and send him the invitation. Once accepted, both users will be able to enjoy instant messaging. It aims to enrich the experience and provide users with a complete application in order to communicate efficiently and rapidly. Alternative scenario The service won’t be available and users will have to wait till connection is established in order to visualize the sent messages (store and forward concept). Exceptions Ø Unavailable service Ø Disconnected from the platform Ø User not connected Ø Host did not accept the invitation
  • 40. MeetASAP project End of studies project 30 The following diagram describes the actions that a user can opt for while choosing the “share a file or an image” option. This will help us get a more defined perspective about the interactions that we’re going to handle during the process. Figure  15  Use  case  diagram  for  sharing   This table provides us with the nominal scenario of the use case. It does as well provide us with the preconditions and the post conditions for this particular use case. Table  4  File/image  sharing  process   Use case 002 Name Share a file or an image Actors A-user (Host) Description Send an invitation to a second user who’s the guest in order to send and share files or images in real-time. Preconditions Ø Being connected to the RCS platform Ø Running the service Post conditions Ø Connected to the RCS platform Ø Messaging session established
  • 41. MeetASAP project End of studies project 31 Conclusion All along the current chapter, we managed to elaborate an analysis of the requirements and need of our service. We distinguished the main functional ones, the non functional and the optional one as well in order to have a global overview of the whole project. In a second step, we illustrated the different needs into use case diagrams, which involves the main actors and their interactions within the service. In the following phase, we’re going to tackle the system design part. Basic scenario Choosing a specific user from the contact list and send him the invitation. Once accepted, both users will be able to send, share and receive files or images of their choice. This will give the users the opportunity to enjoy using such features that will enhance their way of communication in real-time. Alternative scenario The service won’t be available and users will have to wait till connection is established. Exceptions Ø Unavailable service Ø Disconnected from the platform Ø User not connected Ø Host did not accept the invitation
  • 42. MeetASAP project End of studies project 32 Chapter3: Design of the solution
  • 43. MeetASAP project End of studies project 33 Introduction The design phase usually defines structures and models to follow during the implementation phase of the solution. This is the phase where we prepare the project architecture and where we define the structure of the application. For the sake of clarity, we will begin with a preliminary phase where we’ll present the system architecture that we need to implement. Afterwards, we’ll follow up with a dynamic architecture in order to illustrate the operations that will take place. I-System architecture (static) In this part, we are going to illustrate the architecture of our system and its different components so that we’ll be able to define a solid base to our service. This step is crucial for the fusion of both the functional and technical branches in order to assure a great performance for our service and provide a reliable alternative for our customers. I-1-Global network architecture Figure  16  Global  network  architecture   The schema above illustrates the global network architecture. It shows how our application interacts with the network and defines the main flows that are made. It is based on the Orange mobile core network that will guide us to the orange IMS in order to proceed with the different actions that a user can choose. The service is also going to send and receive queries from Google services API in
  • 44. MeetASAP project End of studies project 34 order to complete operations such as meeting spot fetching or time and distance calculations. We tried to give the different alternatives for the service to connect with the platform whether we are using Orange Radio Access Network (RAN) or a Wi-Fi access in order to give a perspective that’s as clear and simple as possible. The main purpose of the RAN is to provide a connection between the handset and the core network and to isolate all the radio issues from the core network. The advantage is one core network supporting multiple access technologies. We should also mention that this is the current architecture of the network and further details will be provided in the annexes in order to detail the components. I-2- Orange Core network Figure  17  Orange  Core  network   The schema above will give us a more detailed idea about the Orange core network and how it interacts with the service. A core network is a telecommunication network's core part, which offers numerous services to the customers who are interconnected by the access network. Its key function is to direct telephone calls over the public-switched telephone network. A core network is a telecommunication network's core part, which offers numerous services to the customers who are interconnected by the access network. Its key function is to direct telephone calls over the public-switched telephone network. In general, this term signifies the highly functional communication facilities that interconnect primary nodes. The core network delivers routes to exchange information among various sub-networks. When it comes to enterprise networks that serve a single organization, the term backbone is often used instead of core network, whereas
  • 45. MeetASAP project End of studies project 35 when used with service providers the term core network is prominent. Core networks usually offer the following features: Ø Aggregation: The top degree of aggregation can be seen in a service provider network. Next in the hierarchy within the core nodes is the distribution networks, followed by the edge networks. Ø Authentication: Determines whether the user demanding a service from a telecom network is permitted to complete the task within the network. Ø Call Control or Switching: Determines the future span of a call depending on the processing of call signaling. Ø Charging: Deals with the processing and collation of charging the data created by multiple network nodes. Ø Service Invocation: A core network executes the service invocation task for its customers. Service invocation may occur in line with some precise activity (such as call forwarding) by the users or unconditionally (such as for call waiting). Ø Gateways: Should be used in core network for accessing other networks. The functionality of gateways depends on the kind of network to which it is connected. I-3-Test environment architecture Figure  18  Test  environment  architecture  
  • 46. MeetASAP project End of studies project 36 IMS–IP Multi-Media Subsystem standardized by the telecommunications world is a new architecture based on new concepts, new technologies, new partners and ecosystem. IMS provides real-time multimedia sessions (voice session, video session, conference session, etc.) and non real- time multimedia sessions (Push to talk, Presence, instant messaging) over an all-IP network. IMS targets convergence of services supplied indifferently by different types of networks: fixed, mobile, Internet. IMS is also called Multimedia NGN (Next Generation Network). IMS deployment is a strategic decision, not a network technology decision. It can be taken either by a traditional service provider in the context of repositioning its business on IP services or by any entity that would decide to start an activity in IP services even without owning an access or transport network. The IMS (IP Multimedia Subsystem) vision is to integrate mobile/fixed voice communications and Internet technologies, bringing the power and wealth of Internet services to mobile and fixed users. It allows the creation and deployment of IP-based multimedia services in the 3G networks. IMS can enable IP interoperability for real-time services between fixed and mobile networks and so holds the promise of seamless converged voice/data services. Services transparency and integration are key features for accelerating end-user adoption. Two aspects of IMS are of fundamental importance to deliver these features: Ø IP-based transport for both real-time and non-real-time services Ø Introduction of a multimedia call model based on SIP (Session initiation Protocol). The IMS will provide: Ø A multi-service multi-protocol, multi-access, IP based network - secure, reliable and trusted Ø Multi-services: Any type of service may be delivered by a common QoS enabled core network, Ø Multi-access: diverse access networks (WiFi, WiMAX, UMTS, CDMA2000, xDSL, Cable, etc.) can interface with IMS. The AS (Application Server) provides a service execution environment, application-specific logic (e.g. Push To Talk, Presence, Prepaid, Instant messaging), and all the signaling for one or more services. It may influence and impact the SIP session on behalf of the services. IMS is the future architecture for IP multimedia telephony. Being defined by operators that want to continue to deliver telephony services when their legacy networks are replaced by an IP network, IMS is both a challenge and an opportunity as the foundation for the telephony, applications and services businesses over the coming decade.
  • 47. MeetASAP project End of studies project 37 I-4- RCS architecture I-4-1-API architecture Figure  19  API  architecture   The joyn ([13]) Client architecture is composed of several sub-systems, organized into functional layers as shown in the schema above. The fundamental enabling component is the IMS Stack, which contains the protocol suite (Session Initiation Protocol [SIP], Message Session Relay Protocol [MSRP], Real-Time Protocol [RTP]/Real-Time Control Protocol [RTCP], Hyper-Text Transfer Protocol [HTTP], etc.) and core services (IMS Session Management, Registration, etc.). The functionality of this component is governed by the IMS specifications. Above IMS there are the Rich Communication Services (RCS) Enablers, comprising the functionality to enable RCS-based Chat, Video and Image sharing, File Transfer and other RCS services. The functionality of this layer is governed by the GSMA RCS specifications. RCS Services API mediates access to these functional layers. Client applications and services access the underlying functionality exclusively through this interface. The RCS service API logic access for client applications to the RCS services (Open Mobile Alliance [OMA] SIP Instant Message and Presence Leveraging Extensions [SIMPLE] Instant Messaging [IM], GSMA Video Share, GSMA Image Share, etc.).
  • 48. MeetASAP project End of studies project 38 The joyn Core Applications or OEM UX ([14]) are the (typically embedded) applications that provide the end-user’s access to RCS services. The Core Applications make use of the RCS Services API and also expose a UX API (a subset of the Service API) whereby any other applications can programmatically invoke operations that are interactively fulfilled by the Core Applications. The architecture is intended to enable RCS Extension to make direct use also of the RCS Service API, enabling programmatic access to the RCS services. The RCS Service API is scoped so as to make access by Third Party Applications possible subject to those applications having the appropriate permission. RCS Service APIs provide a functional interface to the RCS enablers, enabling the Core Applications and Third Party applications to interoperate with other RCS devices whilst relying on the stack to ensure conformance to the RCS specifications. I-4-2-RCS stack architecture Figure  20  RCS  stack  architecture   We have to bear in mind that RCS client architecture ([9][8]) is composed of several subsystems that are organized into functional layers. It relies entirely on IMS “IP Multimedia Subsystem”. The fundamental component is the IMS stack which contains the protocol suite (SIP, MSRP, RTP, RTCP, HTTP...) and the core services (IMS session management, registration...) as well. The
  • 49. MeetASAP project End of studies project 39 functionality of this component is governed by the IMS specifications. Right above it we find the RCS Enablers. Their main function is to enable RCS-based chat, videos, image sharing and other RCS services. Its functionality is governed by GSMA RCS specifications. The access to these functional layers is mediated by the RCS-Services-API It is the logic access for client applications. In order to provide access for the RCS-services to the end’s users we have the Core Applications or OEM UX “Original Equipment Manufacturers” layer which is typically embedded. The RCS stack is an open source implementation of the Rich Communication Suite standards for Google Android platform. This implementation is compliant to GSMA RCS-e Blackbird standard. Thanks to its client/server API, the stack may be easily integrated with existing native Android applications (e.g. address book, dialer) and permits to create new RCS applications (e.g. chat, widgets). I-5-Package diagram Package diagram is UML structure diagram, which shows packages and dependencies between the packages. It shows the arrangement and organization of model elements in middle to large-scale project. Package diagram can show both structure and dependencies between sub-systems or modules. In our case, we elaborated the following package diagram in an attempt to provide an easy-to-understand yet consistent illustration for the different relations in our project. This provides a global overview of the interactions between the different packages of our code. Figure  21  Package  diagram  of  MeetASAP  
  • 50. MeetASAP project End of studies project 40 I-6-Class diagram The class diagram is a static diagram. It represents the static view of an application. The purpose of the class diagram is to model the static view of an application. The class diagrams are the only diagrams that can be directly mapped with object oriented languages and thus widely used at the time of construction. In the following diagram we tried to represent the interaction between the main two packages of our service for the sake of simplicity and efficiency. While consulting it we have to bear in mind that the service was build based on the Reference Implementation project RI which quiet complex. These classes are responsible for the meeting planning operations such as choosing the interlocutor, sending the invitation, choosing the meeting spot from the recommendation list and finally starting the navigation and path displaying option. MeetASAP does as well provide file sharing options and chat option, which are inherited from the RI application in order to emphasize on the fact that RCS does offer an ultimate experience for its users. Figure  22  MeetASAP  class  diagram  
  • 51. MeetASAP project End of studies project 41 II-Dynamic architecture This architecture represents the dynamic behavior of the system. Indeed this vision serves to highlight inter-object relationships. It gives a deeper perspective about the different components of our system and the main interactions between them. In this section we will provide sequence and activity diagrams so that we’ll be able to track the behavior of our service. The dynamic analysis allows the monitoring of the evolution of objects and understanding their function in the system. It is based on several diagrams such as the sequence diagram. II-1-System sequence diagram Sequence diagrams model the flow of logic within our system in a visual manner, enabling us both to document and validate our logic, and are commonly used for both analysis and design purposes. Fundamentally we have a pool of interaction partners from the use case diagrams. Depending on the flow that is being depicted in the sequence diagram, the appropriate actors and business systems can be selected from this pool. Sequence diagram emphasizes on time sequence of messages. The main sequence of the use case is described as a sequence of interactions between the use case actor(s) and the system. From the use case description, the analyst can depict this sequence of interactions on a system interaction model using a system level sequence diagram. This diagram depicts all the actors that participate in the use case and their interactions with the software system, which is depicted as one single aggregate object. Depicting the system as one single object preserves the black box property of this view. This view has the advantage of explicitly describing the sequence of external inputs to the system and external outputs from the system. From a design overview, we use the system sequence diagram to describe in a time perspective and chronologically interactions between external actors and the system. In the schema below, we will describe the users’ actions within our system. As mentioned in the figure 23, our both actors are going to interact with the service and the service itself is going to interact with servers in order to fetch the needed information. The interactions begin while the host is online and wants to send an invitation to a guest of his own choice. Once his guest accepts the invitation they both can enjoy our application and start by defining their needs and options. The next step is to pick a meeting spot from the list that service fetched as a response to the query it sent to the server. From that moment both users will see a pre-navigation screen displayed on their devices. They’ll be able to consult the estimated time and path to attend their destination. The calculations are made based on their geographic positions and we used the APIs that Google does offer for this purpose. From there, they both can move to the navigation screen and start reaching the meeting point that they both agreed on previously.
  • 52. MeetASAP project End of studies project 42 Figure  23  MeetASAP  sequence  diagram   MeetASAP does as well provide other options other than planning a meeting with friends. It offers the option to chat with interlocutors and sharing images, files too. These are considered to be the
  • 53. MeetASAP project End of studies project 43 strong features of RCS. We tried to explain the mechanism of these options by the following diagrams in order to make easy-to-understand. Figure  24  Chat  initiation  diagram  
  • 54. MeetASAP project End of studies project 44 In order to start the chat session the user need to be connected to the RCS platform. Afterwards, he’ll need to choose the contact. An invitation will be sent to the interlocutor in order to inform him with the request. Once accepted, both users can start the chat and enjoy the use of instant messaging in a secured way. Figure  25  Image  sharing  initiation  diagram   To start file, image sharing with a selected contact, the host need to send an invitation first. Once the guest accepts the invitation the process begins and he’ll be able to select the request file to send. The host will get a notification that confirms the success of the operation. II-2-Detailed sequence diagrams Within the following paragraph we’re going to explain and illustrate more some operations among our service. This part aims to give closer look to the functioning of our application to ensure a seamless and fluid user experience. As we mentioned previously we plan to provide our customers with efficient and user-friendly service.