DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support,...

140
i SANEA'A PLATFORM DYNAMIC DATA VISUALIZATION IN A CROWDSOURCING PLATFORM FOR HACKATHONS AND TIME-BOUND EVENTS IN THE MENA REGION By: Haila Mohammed Al-Qaffary Taghreed Morizeq Al-Khammash Amal Mohammed Al-Robayea Maha Saleh Al-Nasrallah Supervised By Dr. Areej Suleiman Al-Wabil DELL EMC Envision the Future Competition Final Report 2017 -2018

Transcript of DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support,...

Page 1: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

i

SANEA'A PLATFORM

DYNAMIC DATA VISUALIZATION IN A CROWDSOURCING

PLATFORM FOR HACKATHONS AND TIME-BOUND EVENTS IN THE

MENA REGION

By:

Haila Mohammed Al-Qaffary

Taghreed Morizeq Al-Khammash

Amal Mohammed Al-Robayea

Maha Saleh Al-Nasrallah

Supervised By

Dr. Areej Suleiman Al-Wabil

DELL EMC Envision the Future Competition

Final Report

2017 -2018

Page 2: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

ii

Acknowledgments

We would like to extend our highest gratitude to Allah Almighty, for illuminating the path

we walked through, and opening the doors of science to our minds, and helping us to

complete our project with satisfaction. And marking this project as to be the end of our

journey of education from Bachelor, we hope it will be useful application to our society.

We would especially like to acknowledge our tremendous supervisor “Dr. Areej Al-Wabil”

for her kind guidance and directions for helping us achieve all we have, academically, and

for her continuous support, encouragement, vision, guidance, advice, trust, invaluable

contributions, proposed ideas and constructive suggestions during the course of this project

and encourage us to improving our craft to make this project moves forward in a much

efficient way .

Sincerely thank goes to Princess Nourah Bint Abdulrahman University specialize college

of Computer Science and Information for all the effort they made to give us great education

and memorable days in our college life. It is also essential to thank my lecturers and

teachers throughout our academic journey as they have made it reward.

Sincere thanks to the HCI Lab at King Abdulaziz City for Science and Technology

(KACST) for joint collaboration and impact support. Working with such a project is a great

opportunity and honor for us.

Lastly, our sincerest gratefulness to our family and friends who overwhelmed us with their

favors and continues encouragement to keep us optimistic, focused and excited to extend

our reach. With their help and unwavering support we have been able to overcome

obstacles and reach where we are.

Page 3: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

iii

Abstract

The rise of hackathons has led the acceleration of technological progress and redefine the

technology innovation lifecycle. Time-bounded events have spawned a creativity that is

rarely seen elsewhere in the digital innovation landscape. Efficient track and analysis of

data emerging from time-bounded events - and trends in the technology innovation process

that emerge from encouraging developers, designers and entrepreneurs to track, process,

and communicate data about the phenomenon of hackathons and time-bounded events and

how they contribute toward innovation eco-systems in the region is of interest to both

professional analysts and the general public. This project identifies the distinguishing

characteristics and patterns of hackathons in the Middle East and North Africa (MENA)

region. It introduces a visual analytics application for uniquely identifying patterns in the

technical, socio-cultural and contextual differences that define hackathon practices and the

emerging hacking communities in the region. The benefit of such understanding not only

supports the continued growth of such activities in the region, but it also helps to

disambiguate hackathon activities from other productive practices for software

development, entrepreneurship and computing education. The aim of this project is design

and develop the first Arabic platform for interactive information visualizations for time-

bounded events such as hackathons, startup weekend, coding competitions, and ideations.

The contribution of this work outlines the trends and issues relevant to hackathons in the

MENA region and focuses on how insights can be sought by dynamically exploring

information visualizations that are crowdsourced from the community. This work has shed

light on insights that can be drawn from collaborative development of digital systems in a

concentrated time period. Themes from technology-centric and social-centric hackathons

are often aligned with global trends. Data-driven analytics from our MENA Hackathon

platform suggest that time-bounded events in the MENA region contribute beyond

producing digital artifacts, with building capacity and technical expertise, building

community and expanding social networks, exposing participants to different modes of

design thinking, and shaping cross-domain identities for the human capital in these regions.

Keywords: MENA , Time-bounded, Hackathon, HCI, Information Visualization, Annalistic

data, Knowledge Engineering.

Page 4: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

iv

Table of Contents

Acknowledgments .................................................................................................................................................... ii

Abstract .................................................................................................................................................................. iii

Table of Contents ..................................................................................................................................................... iv

List of Tables ............................................................................................................................................................ vi

List of Figures ........................................................................................................................................................ vii

List of Abbreviations ................................................................................................................................................ x

Chapter 1: Introduction ........................................................................................................................................... 1

1.1 Problem Statement & Significance ......................................................................................................... 2

1.2 Proposed Solution ..................................................................................................................................... 2

1.3 User characteristics ................................................................................................................................. 3

1.4 Definitions of New Terms ........................................................................................................................ 4

Chapter 2: Background Information & Related Work ........................................................................................ 6

2.1 Background Information .............................................................................................................................. 6

2.2 Related Work ................................................................................................................................................. 7

2.2.1 Major League Hacking ........................................................................................................................... 8

2.2.2 Devpost Platform: .................................................................................................................................... 9

2.2.3 Hackathon.io: ......................................................................................................................................... 10

2.2.3 Hackathon.com: ..................................................................................................................................... 10

2.2.5 NY Hackathons ...................................................................................................................................... 12

2.2.6 HackEvent .............................................................................................................................................. 13

2.2.7 Hackathons Near Me ............................................................................................................................. 14

2.3 Proposed & Similar Systems Comparison ................................................................................................ 15

Chapter 3: System Analysis ................................................................................................................................... 18

3.1 Requirements Specification ........................................................................................................................ 18

3.1.1 Benefits of creating personas ................................................................................................................ 18

3.1.2 Creation process .................................................................................................................................... 19

3.1.3 Personas usage ....................................................................................................................................... 23

3.1.4 Stakeholders ........................................................................................................................................... 23

3.1.5 User requirements ................................................................................................................................. 23

3.2 Challenges and Limitations ........................................................................................................................ 24

3.2.1 Technical challenges .............................................................................................................................. 24

Page 5: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

v

3.2.2 Non-technical challenges ...................................................................................................................... 24

3.2.3 Project limitations ................................................................................................................................. 24

3.3 Functional Requirements ............................................................................................................................ 25

3.4 Nonfunctional Requirements ...................................................................................................................... 26

3.5 System Specifications .................................................................................................................................. 28

3.5.1 Initial specification ................................................................................................................................ 27

3.5.2 Final specification .................................................................................................................................. 28

Chapter 4: System Architecture ............................................................................................................................ 30

4.1 System diagrams ..................................................................................................................................... 31

4.1.1 Flowchart ............................................................................................................................................. 31

4.1.2 Sequence Diagram .............................................................................................................................. 33

4.1.3 Use-Cases ............................................................................................................................................. 36

4.1.4 Data Modeling ..................................................................................................................................... 41

4.2 User Interface Design .................................................................................................................................. 42

4.2.1 Interface Flow ........................................................................................................................................ 43

4.2.2 User interface .................................................................................................................................. 45

4.2.3 Admin interface .............................................................................................................................. 56

4.2.4 Platform message ............................................................................................................................ 57

Chapter 5: Implementation ................................................................................................................................... 60

5.1 Introduction ............................................................................................................................................ 60

5.2 Implementation Requirements .............................................................................................................. 60

5.2.1 Hardware requirements ................................................................................................................. 60

5.2.2 Software requirements ................................................................................................................... 60

5.3 Implementation Phases .......................................................................................................................... 62

5.3.1 First phase: Collecting the data ..................................................................................................... 62

5.3.2 Second phase: Building the database ............................................................................................ 63

5.3.3 Third phase: Designing the interfaces ......................................................................................... 72

5.3.4 Fourth phase: Building functionality ............................................................................................ 75

5.3.5 Fifth phase: Implementing visual analytics platform .................................................................. 79

5.3.6 Sixth phase: Integrating all the previous parts ............................................................................ 90

Chapter 6: Testing .................................................................................................................................................. 92

6.1 Test Plan ....................................................................................................................................................... 92

6.1.1 Test objective ......................................................................................................................................... 93

6.1.2 Platform testing life cycle ...................................................................................................................... 93

6.1.3 Platform testing strategy ....................................................................................................................... 93

Page 6: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

vi

6.1.4 Black box testing plan ........................................................................................................................... 93

6.1.5 Main test plan ......................................................................................................................................... 94

6.2 Test Cases ..................................................................................................................................................... 95

6.2.1 Black box test cases ............................................................................................................................... 95

6.2.2 Database test cases ................................................................................................................................. 95

6.2.3 Functional test cases .............................................................................................................................. 98

6.2.4 Non-Functional (Graphical User Interface) test cases ..................................................................... 104

6.3 Test Result .................................................................................................................................................. 106

6.3.1 Summary result of black box testing ................................................................................................. 106

6.3.2 Summary result of main plan testing ................................................................................................. 107

6.4 Usability and Social Impact ...................................................................................................................... 108

6.4.1 Social impact ........................................................................................................................................ 108

6.4.2 Usability and user acceptance ............................................................................................................ 109

Chapter 7: Conclusions ........................................................................................................................................ 113

7.1 Evaluation .................................................................................................................................................. 113

7.2 Future work ............................................................................................................................................... 114

REFERENCES ..................................................................................................................................................... 115

Appendix A: Project Management Plan ............................................................................................................. 118

Team Communication Information ............................................................................................................... 118

Project Communication Matrix ..................................................................................................................... 118

Project Publication Management ................................................................................................................... 119

Gantt Chart ...................................................................................................................................................... 120

Contingency and Risk Mitigation Plan ......................................................................................................... 122

Methodology .................................................................................................................................................... 122

Agile life -cycle ................................................................................................................................................. 122

Agile sprint iterations ...................................................................................................................................... 123

Appendix B: Personas Card ................................................................................................................................ 125

List of Tables Table 0-1: Abbreviations list ...................................................................................................................... ix

Table 1-1: Definitions of all new terms ........................................................................................................... 4

Table 2-1: MLH platform .......................................................................................................................... 8

Table 2-2: Devpost platform ..................................................................................................................... 9

Table 2-3: Hackathon.io platform ........................................................................................................... 10

Table 2-4: Hackathon .com platform ....................................................................................................... 11

Page 7: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

vii

Table 2-5: NY Hackathons platform ....................................................................................................... 12

Table 2-6: HackEvent platform ............................................................................................................... 13

Table 2-7: Hackathons Near Me platform ............................................................................................... 14

Table 2-8: Proposed and similar systems comparison 1 .................................................................... 15

Table 2-9: Proposed and similar systems comparison 2 ................................................................... 15

Table 4-1: Signup use case scenario ................................................................................................... 36

Table 4-2: Login use case scenario ...................................................................................................... 37

Table 4-3: Tree map chart use case scenario ...................................................................................... 37

Table 4-4: Bar chart use case scenario ................................................................................................ 37

Table 4-5: Bubbles chart use case scenario ....................................................................................... 38

Table 4-6: Geographic map chart use case scenario ......................................................................... 38

Table 4-7: MENA map chart use case scenario ................................................................................ 39

Table 4-8: Doughnut chart use case scenario ..................................................................................... 39

Table 4-9: Radial chart use case scenario ............................................................................................. 40

Table 4-10: Add new event use case scenario .................................................................................... 40

Table 4-11: Update events use case scenario ...................................................................................... 40

Table 4-12: Filter time-bounded events theme use case scenario .................................................... 41

Table 4-13: Validate use case scenario ................................................................................................ 41

Table 6-1: Black box testing plan ............................................................................................... 93

Table 6-2: Main test plan .......................................................................................................... 94

Table 6-3: Black box test cases .................................................................................................... 95

Table 6-4: Data base test cases .................................................................................................. 96

Table 6-5: User registration test cases ...................................................................................... 98

Table 6-6: User login test cases ................................................................................................ 99

Table 6-7: User forget password test cases ............................................................................... 99

Table 6-8: Contact us test cases ................................................................................................ 99

Table 6-9: User profile test cases ............................................................................................. 100

Table 6-10: Control panel system administration test cases ..................................................... 100

Table 6-11: Spatial and temporal visualization chart test casess ............................................. 101

Table 6-12: Statistical visualization charts test cases .............................................................. 102

Table 6-13: MENA map visualization chart test cases ............................................................. 102

Table 6-14: Integration between three different charts test cases .............................................. 103

Table 6-15: GUI overview test cases ....................................................................................... 104

Table 6-16: GUI colors standard test cases .............................................................................. 104

Table 6-17: GUI consistency of webpages content test cases ................................................. 105

Table 6-18: GUI navigation test cases ....................................................................................... 105

Table 6-19: GUI usability test cases .......................................................................................... 106

Table 6-20: Summary result of black box testing ...................................................................... 107

Table 6-21: Summary result of main plan testing ...................................................................... 107

Table 6-22: User evaluation ..................................................................................................... 110

List of Figures Figure 2-1: Rise of the hackathon culture ................................................................................................... 6

Page 8: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

viii

Figure 3-1: Persona card ............................................................................................................................ 19

Figure 3-2: Brainstorming session with the team…………………………………………………... …….20

Figure 3-3: Persona card of researcher and graduate student .......................................................................... 21

Figure 3-4: Behavioral Archetypes ........................................................................................................... 22

Figure 4-1: System Archticture ................................................................................................................. 30

Figure 4-2: System Flow chart .................................................................................................................. 31

Figure 4-3: Visualization process sequence diagram ................................................................................. 33

Figure 4-4: System Sequence diagram ...................................................................................................... 33 Figure 4-5: Verfication of adimasiterations information ........................................................................... 34 Figure 4-6: Sequence diagram of signup process ...................................................................................... 34 Figure 4-7: Sequence diagram of rest password process ........................................................................... 35

Figure 4-8: Use Case (UC) diagram ......................................................................................................... 36

Figure 4-9: Entity Relation (ER) Diagram ................................................................................................ 42

Figure 4-10: Guest User Interface Flow ................................................................................................... 43

Figure 4-11: User Interface Flow ............................................................................................................... 44

Figure 4-12 : Admin Interface Flow .......................................................................................................... 45

Figure 4-13 : Shows landing page to the platform .................................................................................... 46

Figure 4-14: Shows explore events webpage ............................................................................................ 46

Figure 4-15: Select specific pin .................................................................................................................. 47

Figure 4-16: Filtering time-bounded events ................................................................................................ 47

Figure 4-17: Shows form to add event information .................................................................................. 48

Figure 4-18: Statistical dynamic charts visualization webpage ............................................................ 49

Figure 4-19: Shows visulaiztion chart depending on theme on each country in the MENA .................... 50 Figure 4-20: Shows visulaiztion chart depending on events theme and prize in the MENA .................... 50

Figure 4-21: Shows visualization chart depending on events theme and date in the MENA ..................... 51

Figure 4-22:Shows visualization chart depending on sponsors of events and theme in the MENA .......... 51

Figure 4-23: Shows about us page ............................................................................................................. 52

Figure 4-24: Shows frequently asked questions page ............................................................................... 53

Figure 4-25: Shows platform header ........................................................................................................ 54

Figure 4-26: Shows pop-up window to Sign up ....................................................................................... 54

Figure 4-27: Shows pop-up window to Sign in ........................................................................................ 54

Figure 4-28: Shows user page ................................................................................................................... 55

Figure 4-29: Shows admin page ................................................................................................................ 56

Figure 4-30: Shows pop-up message of empty field .................................................................... 57

Figure 4-31: Shows pop-up message of add new event ................................................................ 57

Figure 4-32: Shows pop-up message of wrong enters. ................................................................. 57

Figure 4-33: Shows pop-up message Email used previously ....................................................... 57

Figure 4-34: Shows pop-up message of change password successfully. ...................................... 57

Figure 4-35: Shows pop-up message of edit event. ...................................................................... 58

Figure 4-36: Shows notification by email for accepted evet. ....................................................... 58

Figure 4-37: Shows notification by email for rejected event ........................................................ 57

Figure 5-1: Content crowdsourcing in the Sanea’a platform ........................................................ 63

Figure 5-2: Platform users accessibility ........................................................................................ 64

Figure 5-3: Add new event information........................................................................................ 64

Figure 5-4: Add new event information form ............................................................................... 65

Figure 5-5: User view ................................................................................................................... 66

Page 9: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

ix

Figure 5-6: View event information ............................................................................................. 66

Figure 5-7: Update event information........................................................................................... 67

Figure 5-8: Update notification massage ...................................................................................... 67

Figure 5-9: Control panel of administration system ..................................................................... 68

Figure 5-10: Delete notification massage ..................................................................................... 68

Figure 5-11: Query of visualize button ......................................................................................... 69

Figure 5-12: User add new event information .............................................................................. 70

Figure 5-13: Store event information in the database tables......................................................... 70

Figure 5-14: User dashboard ......................................................................................................... 71

Figure 5-15: Review event information ........................................................................................ 71

Figure 5-16: Visualize event information ..................................................................................... 72

Figure 5-17: Homepage interface ................................................................................................. 72

Figure 5-18: About us webpage .................................................................................................... 73

Figure 5-19: Contact us webpage ................................................................................................. 74

Figure 5-20: FAQ webpage .......................................................................................................... 74

Figure 5-21: Registration webpage ............................................................................................... 75

Figure 5-22: Activation process .................................................................................................... 76

Figure 5-23: Login webpage ......................................................................................................... 76

Figure 5-24: Reset the password webpage ................................................................................ 77

Figure 5-25: Webmail control panel ................................................................................................... 78

Figure 5-26: Spatial Visualization of Time-Bounded Events in the Arab World......................... 80

Figure 5-27: visual analytics webpage. ......................................................................................... 81

Figure 5-28: Interactive d3 map visualization for event trends analysis. ..................................... 82

Figure 5-29: Case study-1 ............................................................................................................ 83

Figure 5-30: Case study -2 ........................................................................................................... 83

Figure 5-31: Dyamic bar charts that facilitate data manipulation to generate bespoke charts using d3 libraries. 84

Figure 5-32: Determine specific category ..................................................................................... 84

Figure 5-33: Tree map visualization chart .................................................................................... 85

Figure 5-34: Bubble chart visualization for events’ sponsors ...................................................... 86

Figure 5-35: Radial chart visualization for trend event among cities. .......................................... 87

Figure 5-36: Growth of hackathon phenomenon chart visualization among MENA ................... 88

Figure 5-37: Growth of hackathon phenomenon chart visualization between 2014-2018 ........... 88

Figure 5-38: Progress bar .............................................................................................................. 89

Figure 5-39: User interaction ........................................................................................................ 89

Figure 5-40: Filter dataset according to the user needs ................................................................ 90

Figure 6-1: Agile testing methodology ......................................................................................... 93

Figure 6-2: Platform testing strategy ............................................................................................ 93

Page 10: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

x

List of Abbreviations

MENA Middle East and North Africa

HTML Hypertext Markup Language

PHP Hypertext Preprocessor

D3.js JavaScript library for producing dynamic, interactive

data visualization.

JS Java Script

CSV Comma-Separated Values

DOM Document Object Model

JSON JavaScript Object Notation

TSV Tab Separated Values

SVG Scalable Vector Graphics

SDLC Systems Development Life Cycle

UC Use Case

ER Entity Relationship

HCI Human Computer Interaction

UI User Interface

Page 11: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

xi

Table 0-1: Abbreviations list

Page 12: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

1

Chapter 1: Introduction

Information visualization is defined as “the use of computer-supported, interactive, visual representations

of abstract data to amplify cognition”. It plays a key role in exploring and understanding large datasets.

The principle behind information visualization is to improve the understanding of data using graphical

presentations. The growth of computing power, lower computing costs, development of user interaction

technologies, and large amounts of information accumulated within databases have contributed to the

growth of information visualization [1].

Visual analytics is the most recent field in information visualization. It has been defined as “the science

of analytical reasoning supported by the interactive visual interface”. It provides visual tools that enable

reasoning and decision-making from data with interactive visualizations, optimized for efficient human

perception. The information is now the essential part of human life, which encourage new ways to think

and evolve new advancement. Huge amount of information or data are generated from different sources,

these information are of diverse types and stored in various format.

A lot of data being generated, access, and use for individual, collective benefits. Because of such versatility

of information heave significant issues that how to represent these information in more useful manner that

the user can use it efficiently and extract knowledge from stored data or information. The basic purpose

of visualization is to create interactive visual representations of the information that exploit human’s

perceptual and cognitive capabilities of problem solving [2].

As increasing volumes of data for time-bounded events are captured and become available, new

opportunities arise for data-driven analysis that can lead to insights for researchers interested in the social

dynamics and computer supported collaborative work in time-bounded events such as hackathons. In

recent years, a growing momentum of events for leveraging the power of hackers to deliver an accelerated

digital product has emerged to redefine the technology innovation lifecycle [3].

Innovation with digital technologies continues to emerge, but increasingly there are efforts to help nurture

such innovation. A hackathon is an event in which computer programmers and others involved in software

development collaborate intensively over a short period of time on software projects. These hackathons

Page 13: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

2

are encouraging of experimentation and creativity and can be challenge orientated. From holding large

numbers of these events, the hackathon phenomenon has emerged as an effective approach to encouraging

innovation with digital technologies in a large range of different spaces (education, open data, health,

academia, and more) [4].

1.1 Problem Statement & Significance

In the MENA region, the emergence of time-bounded events that are typically focused on the creation of

a software application or hardware prototype development was slower than the global trend. Sustained

growth in the past decade has been supported by an increasing appreciation of the contributions of time-

bounded event towards innovation and technology development. However, our understanding of the trends

and challenges in organizing time-bounded events is inadequate for the burgeoning analystics-driven

strategic planning and decision making.

Sophisticated tools were needed for analysts, policy makers and researchers to track, process, and

communicate data about the phenomenon of hackathons and time-bounded events and how they contribute

toward innovation eco-systems in the region. This motivated us to develop an interactive platform,

described in Section 5, to visualize the phenomenon of hackathons in the MENA region and to provide

the capability to visually explore the crowdsourced data sets.

Focuses on how insights can be sought by dynamically exploring information visualizations that are

crowd-sourced from the community. Themes from technology-centric and social-centric hackathons are

often aligned with data-driven analytics from our platform suggest that time-bounded events in the MENA

region contribute beyond producing digital artifacts, with building capacity and technical expertise,

building community and expanding social networks, and exposing participants to different modes of

design and shaping cross-domain multidisciplinary identities. Future directions for research include

reporting insights from the typology of hackathons in the regions and the trends in spatial and temporal

dynamics of these time-bounded events.

1.2 Proposed Solution

Data-driven visualizations are becoming more abundant in the visual experience of online hackathon

communities and the general public. Interactive information visualization take advantage of the relatively

broad bandwidth between a human’s eyes and the mind which helps users to not only see and visually

Page 14: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

3

explore, but also understand information in large amounts, all at once. Information visualization has been

shown to be an effective tool for spatial and temporal exploration of dynamics datasets. Aligned with the

emerging hackathon phenomenon, the need arises for interactive information visualizations to aid in the

processing, comprehension, tracking, and retention of data on time-bounded events in static, animated,

dynamic and interactive visuals [5].

One of the best ways to explore and try to understand the large datasets of hackathons is with visualization.

The data visualizations serve the purpose of facilitating access to scattered information of hackathons in

the MENA region, fostering the recognition of structures in abstract data about the hackathons across

different regions, and supporting information retrieval and exploratory analytics of these events and trends

related to the emerging phenomenon of hackathon-led innovation programs, strategies and initiatives. The

spatial-temporal visualization of time-bounded events in the Arab region facilitates closely coupled human

and machine analysis.

We are motivated to develop an interactive platform, to visualize the phenomenon of hackathons in the

MENA region and to provide the capability to visually understand and explore the crowdsourced datasets

(a) spatially by zooming in and out of regions and countries, and (b) temporally by exploring the data sets

across different time frames. (c) visual representation of the patterns and trends translate data gathered

from the crowd into a visible form that highlights important features, including commonalities and

anomalies for time-bounded events in time and space. These visual representations of time-bounded events

make it easy for users to perceive salient aspects of regional distribution of events as well as the density

of events across time. The visualizations augment the cognitive reasoning process with perceptual

reasoning through color-coded visual representations of these time-bounded events.

The platform is an openly-editable website where users can contribute to the content of hackathon events

in the MENA region. This content crowdsourcing approach is considered to facilitate a sustainable

dynamic data set and to encourage users to contribute towards maintaining the accuracy and quality of

data submitted through the platform's frontend.

1.3 User characteristics

• User group: General public, Administrator.

• User group size: Arabs and those interested in the Middle East and North Africa events.

• Age: 12 upward.

Page 15: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

4

• Gender: Males & Female.

• Language: English & Arabic.

• Educational background: Designed to be usable by people who have reading skills.

1.4 Definitions of New Terms

no Term Definition

1 D3

D3 stands for Data-Driven Documents. It is a high-quality JavaScript (JS) library to

create data visualization graphics, and also a data visualization processing technology.

It combines the data from a database system with HTML, SVG, and CSS. The

combination of data with the web standards allows the original two-dimensional data

to become an interconnected three-dimensional data architecture, and to display the

relationship between the data and visual effects.

D3 plays a key role of driver in connecting data and documents in the data

visualization process. The core of its solution is efficient data-based document

manipulation.

2

D3

Visualization

The process of representing abstract business of scientific data as images that can aid

in understanding the meaning of the data.

3 Crowdsourcing The act if soliciting contribution from undefined (and generally large) network of

people especially an online community, to obtain needed services via the web.

4

Time-bounded

Events

Time-bounded collaborative events in which teams work together under intense time

pressure in aim to accelerate the innovation and build up a business. The most popular

example about this phenomenon is hackathons [5].

5 Personas

Package behaviors and motivations of a customer group into a believable caricature.

Personas focus on the “who” of your audience research. They are useful to provide

insight into the characteristics of a target audience.

6

A Behavioral

Archetype

Describes common behavior and tasks exhibited by customers with similar needs.

Archetypes are steeped in user behavior. They contain details from user interviews

around a group’s needs, motivations and pain-points. Archetypes focus on the “who

does what, when they do it, and why” of your audience research. They provide insight

into behavior patterns and how a customer is using a product or service currently to

determine the approach and functionality of a user experience.

Table 1-1: Definitions of all new terms

Page 16: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

5

Page 17: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

6

Chapter 2: Background Information & Related Work

2.1 Background Information

The term hackathon was coined in 1999, It’s a portmanteau of “hack” and “marathon”, the hackathon

phenomenon has emerged as an effective approach to encouraging innovation with digital technologies in

a large range of different spaces (education, open data, health, academia, and more). A hackathon has been

described as a problem-focused computer programming event, as well as a contest to pitch, program, and

present instances of prototype digital innovation (e.g. a prototype mobile application).They bring together

programmers and others (interface designers, graphic designers and others) to collaborate intensively over

a short period of time on software projects, increasingly to compete for funding and other forms of support

(e.g. travel to attend events) for further development.

The meaning has since expanded to cover any design event that involves a specific challenge or set of

challenges, a fixed design period, and generally in a limited amount of time and location [4][5].

The popularity of such events started in the early 2000s, as they were sponsored by companies or

investment entities in the tech industry for facilitating rapid development of software technologies along

with exploring new avenues of funding and innovation [3].

Figure 2-1: Rise of the hackathon culture

In the recent, the rise of the hackathon culture in the global context was fast and utilitarian. The

interests of such events are gaining more popularity as shown in the figure (2-1) of google trends.

The phenomenon of hackathons has arisen from their growing global occurrence, professionally organized

corporate sponsored bespoke events. They have become an activity for many software companies, as well

as cultural organizations and government agencies as an approach to encourage digital innovation with

Page 18: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

7

their assets and resources. This has lead to the rise of hackathon events being considered to have had a

significant impact of the culture of digital innovation.

The rise of the hackathons might appear inevitable but may also have benefitted from being an effective

form of innovation under austerity, which may also help to explain the apparent greater growth of

hackathons in some parts of the developing world (e.g. Brazil, India, etc.) [3].

2.2 Related Work

In recent years, interactive platforms for promoting and participating in hackathons have been introduced;

where hackathons are featured, and interactive tools provide event-related information (e.g. scope,

schedules, rules, prizes and judging criteria) as well as computer-mediated communication tools for team

formation and community building prior to the event and after the events [3].

Page 19: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

8

2.2.1 Major League Hacking

Platform

About

Major League Hacking, officially abbreviated as MLH, is an organization built on

empowering hackers and operates a league for student hackathons. Founded in 2013 by

former developer evangelists Mike Swift and Jonathan Gottfried. In March 2016, it

became a Certified B-Corporation. B Corps are for-profit enterprises that are legally

required to consider the impact of their decisions on their community, not just their

shareholders. MLH platform provide the universities’ students a tool for finding and

sponsoring the upcoming hackathons in North America, Mexico and Europe.

Features

1. MLH it is a navigation platform where you can browse for upcoming events by

filtering based on location.

2. In addition, it provides a subscription system.

Limitations

1. Covers hackathons in North America and Europe regions only.

2. It doesn't exploration the historical events.

3. It is not crowdsourced platform.

4. It designed only for college students.

5. Disable search feature for the events.

Web-Pages

Upcoming Event

Reference https://mlh.io/

Table 2 -1: MLH platform

Page 20: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

9

2.2.2 Devpost Platform:

Platform

About

Devpost is a platform that helps software engineers participate in software competitions

(hackathons) and find engineering jobs. Customers market their developer tools and jobs to

the Devpost community. Devpost now powers the majority of the world's in-person and

online hackathons. The company was founded by Brandon Kessler in 2009. Devpost users

can create profiles, share software projects they have worked on, and create and participate

in online and in-person hackathons.

Features

1. Devpost it is a navigation platform where you can browse and search for upcoming

events by filtering based on location , prize amount, recently added, event type and

submission deadline.

2. Furthermore, event organizers can post hackathons determining the information like

hackathon rules or guidelines, and award any prizes advertised on their hackathon

site.

3. In addition, it provides a subscription system.

Limitations

1. It takes long time to validate data entry.

2. It does not send any notification to the user to confirm data entry.

Web-Pages

Historical and Upcoming Events

Reference https://devpost.com/

Table 2-2: Devpost platform

Page 21: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

10

2.2.3 Hackathon.io:

Table 2-3: Hackathon.io platform

Platform

About

Hackathon.io is a platform to discover, share and manage hackathons. It provides

information about technology events mainly hackathons including information about their

attendees, sponsor and projects. Provide tools for event organizers. It’s been first produced

in 2012 because the need of systems for communicating with attendees and keeping track

of the things they built. Hackathon.io was a beautiful tool for helping organizers push

notifications, showcase attendees, prizes, and sponsors, and get essential metrics on the

technologies used and being developed at the event.

Features

1. It also had a judging platform built in, which allowed people to create multiple user

profiles for different access levels to each feature of an event.

2. Users could create teams, find team-mates, creep on other team’s projects and even

give teams anonymous feedback on their project.

3. Hackathon.io it is a navigation platform where you can browse and search for

upcoming events by filtering based on location, date, submission deadline and

theme.

4. Furthermore, public users must sign up to post hackathons determining the

information like hackathon rules or guidelines, and award any prizes advertised on

their hackathon site.

5. In addition, it provides a subscription system.

Limitations

1. It takes long time to validate data entry.

2. It doesn't exploration the historical events.

3. Covers hackathons in North America and Europe regions only.

Web-Pages

Upcoming Events

Reference http://greggopman.com/hackathonio/

Page 22: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

11

2.2.4 Hackathon.com

Platform

About

Hackathon.com is platform for Hackathons and creative programming challenges. It is a

place for optimized visibility, professional mentorship and engage IT community and

invite talents from all around the World to work on their projects.

Features

1. Hackathon.com it is a navigation platform where you can browse and search for

historical and upcoming events by filtering based on location and event type.

2. Furthermore, public users must sign up to post hackathons determining the

information like hackathon rules or guidelines, and award any prizes advertised

on their hackathon site.

3. In addition, it provides a subscription system.

Limitations 1. It takes long time to validate data entry.

2. Covers hackathons in North America and Europe regions only.

Web-Pages

Historical and Upcoming Events Add New Event

Reference https://www.hackathon.com/

Table 2-4: Hackathon.com platform

Page 23: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

12

2.2.5 NY Hackathons

Platform

About

NY Hackathons platform that provides a venue for self-expression and creativity through

technology. People with technical backgrounds come together, form teams around a

problem or idea, and collaboratively code a unique solution from scratch — these generally

take shape in the form of websites, mobile apps, and robots.

Features

1. NY Hackathons it is a navigation platform where you can browse and search for

historical and upcoming events by filtering based on date, cheapest price, longest

duration and most people attending hackathons.

2. Furthermore, public users can post hackathons determining the information like

hackathon rules or guidelines, and award any prizes advertised on their hackathon

site.

3. In addition, it provides a subscribe feature.

Limitations

1. Covers hackathons in New York region only

2. It takes long time to validate data entry.

1. It does not send any notification to the user to confirm data entry.

Web-Pages

Add new event Historical and Upcoming Events

Reference https://nyhackathons.com/

Table 2-5: NY Hackathons platform

Page 24: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

13

2.2.6 HackEvent

Platform

About Hackevents is a search engine for hackathons. It's a place for hackers and developers to

discover and share the latest hackathons around the world.

Features

1. Hackevents it is a navigation platform where you can browse and search for

upcoming events by filtering based on location.

2. Furthermore, public users can post hackathons determining the information like

hackathon rules or guidelines, and award any prizes advertised on their hackathon

site.

Limitations

1. It doesn't exploration the historical events.

2. It takes long time to validate data entry.

3. It does not send any notification to the user to confirm data entry .

Web-Pages

Search for upcoming events and add new event

Reference https://hackevents.co/hackathon/saudi-arabia/riyadh/2492-misk-hackathon-riyadh

Table 2-6: HackEvent platform

Page 25: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

14

2.2.7 Hackathons Near Me

Table 2-7: Hackathons Near Me platform

Platform

About

Hackathons Near Me is a platform to discover, share and manage hackathons. It provides

information about technology events mainly hackathons including information about

their attendees, sponsor and fees for participant .

Features

1. Hackathons Near Me it is a navigation platform where you can browse and

search for upcoming events by filtering based on location.

2. Furthermore, public users can post hackathons determining the information like

hackathon rules or guidelines, and award any prizes advertised on their

hackathon site.

Limitations

1. It doesn't exploration the historical events.

2. It takes long time to validate data entry.

3. It does not send any notification to the user to confirm data entry.

4. Covers hackathons in North America and Europe regions only.

Web-Pages

Search for upcoming events and add new event

Reference http://www.hackathonsnear.me

Page 26: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

15

2.3 Proposed & Similar Systems Comparison

Table 2-8: proposed and similar systems comparison 1

Table 2-9: proposed and similar systems comparison 2

Hackathon.io DevPost MLH Sanea'a

/ Allow users add time-

bounded events. /

Allow users add and

edit time-bounded

events for scaling up

the content of

hackathons.

Crowdsourced

Static exploration for

up-coming time-

bounded events.

Static exploration for

up-coming and

historical time-bounded

events.

Static exploration

for up-coming

time-bounded

events.

Interactive exploration

for up-coming and

historical time-bounded

events.

Data

exploration

/ / /

Representing abstract

data as images by using

D3 high-quality

JavaScript library.

Data

visualization

United states and

Europe

United states and

Europe

North America and

Europe MENA region Region

- Location

- Date

- Theme

- Submission

deadline

- Location

- Prize amount

- Recently added

- Event type

- Submission deadline

Location

- Location

- Date

- Theme

- Gender

- Prize

- Sponsors

- Participant fee

- Final product

- Technology platforms

Search

based-on

Hackathons Near

Me HackEvent NY Hackathons Hackathon.com

Allow users add

time-bounded

events.

Allow users add time-

bounded events. /

Allow users add time-

bounded after signup. Crowdsourced

Static exploration for

up-coming time-

bounded events.

Static exploration for

up-coming time-

bounded events.

Static exploration

for up-coming

time-bounded

events.

Static exploration for

up-coming and

historical time-bounded

events.

Data

exploration

/ / / / Data

visualization

United states and

Europe

United states and

Europe New York city

United states and

Europe Region

Location Location

- Date

- Cheapest price

- Longest duration

- Location

- Event type

Search

based-on

Page 27: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

16

In the context of an ongoing data-driven research study on social dynamics in time-bounded events for the

MENA region, existing web platforms are not sufficient for analysis-driven recommendations these

systems are focused on finding hackathons and time bounded events rather than understanding the

historical events that happened. Sophisticated tools were needed for analysts, policy makers and

researchers to track, process, and communicate data about the phenomenon of hackathons and time-

bounded events and how they contribute toward innovation eco-systems in the region [3].

Page 28: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

17

Page 29: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

18

Chapter 3: System Analysis

In this section, we describe the system analysis process, which is often referred to as “the process

of studying a procedure or business in order to identify its goals, purpose and create systems and

procedure that will achieve them in an efficient way”, as defined by Merriam-Webster dictionary

[6].

That was done in the light of the end-user, to determine Requirements Specification of the Sanea’a

Platform. These requirements include functional and nonfunctional requirements, these

requirements shall be described in detail. The analysis was done by understanding the user needs

and behaviors while using the platform. Predicting user behavior is a very critical component, as

both marketing and design processes depend on it to build a product that meets users’ expectations

and achieves success in the market.

3.1 Requirements Specification

Before embarking on any intranet or website design project, it is important to understand the needs of our

users. It is then possible to identify the features and functionality that will make the platform a success,

and how the design can support users with different goals and levels of skill.

If we understand and empathizes with the people we are designing for, it can have a profound effect on

the decisions we make. It broadens our perspective and forces us to challenge our own biases and

conventions in favor of approaches that align to the people’s goals, needs and pain-points.

The target audience influences nearly every decision we make for a digital experience. This includes

technology selection, look and feel, interaction design patterns and use cases. In order to facilitate these

decisions, we aggregate and interpret our user research into representational customer profiles – Personas

and Archetypes.

The purpose of personas is to create reliable and realistic representations of our key audience segments

for reference. These representations should be based on qualitative and some quantitative user research

and web analytics [14].

3.1.1 Benefits of creating personas:

Personas help to focus decisions surrounding site components by adding a layer of real-world

consideration to the conversation. They also offer a quick and inexpensive way to test and prioritize those

features throughout the development process.

Page 30: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

19

In addition, creating well-documented behavioral archetypes can set you up to make decisions with

confidence as well as lead you into future activities, such as:

• Give a clear picture of the user's expectations and how they're likely to use the site.

• They are relatively quick to develop and replace the need to canvass the whole user community

and spend months gathering user requirements.

• They help avoid the trap of building what users ask for rather than what they will actually use.

• Disagreements over design decisions can be sorted out by referring back to the personas.

• Aid in uncovering universal features and functionality.

• Aligning all stakeholders on who our primary archetypes are.

• Gaining more empathy for our users as we make decisions from their viewpoint instead of our own

• Identifying features that will resonate with our core users.

• Creating an experience map with each of our primary archetypes to understand how they currently

use our platform.

• Conducting usability testing with users that represent our primary archetypes.

3.1.2 Creation process:

Personas focus on the “who” of your audience research. As shown in

figure (3-3), they include demographic details such as age, gender,

occupation, education, interests, etc. They are useful to provide insight

into the characteristics of a target audience, but often don’t include

details on behavioral patterns. Personas are helpful for visualizing

customer segments, so project teams can relate to those segments and

build solutions for them. They help the team avoid designing a product

from a client-as-customer or us-as-customer perspective [23].

Figure 3-1: Personas card

Personas creation belongs at the beginning of the project, as personas can inform site functionality, help

uncover gaps, or highlight new opportunities. To ensure the personas are accurate representations of our

users and have the support of our stakeholders throughout the process.

Page 31: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

20

• Conduct user research: Answer the following questions: Who are our users and why are they using

the platform? What behaviors, assumptions, and expectations color their view of the platform?

• Condense the research: Look for themes/characteristics that are specific, relevant, and universal to

the system and its users.

• Brainstorm: Organize elements into persona groups that represent our target users.

Figure 3-2: Brainstorming session with the team

• Refine: Combine and prioritize the rough personas. Separate them into primary, secondary, and, if

necessary, complementary categories.

• Make them realistic: Develop the appropriate descriptions of each personas background,

motivations, and expectations.

For this project, we interviewed 38 users to identify the 9 archetypes shown in figure(3-4).

Mapping each archetype’s behavioral landscape helped to guide the project team’s – and the

client’s – decisions around features, functionality and content, and resulted in a more meaningful

and valuable outcome.

Page 32: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

21

Figure 3-3: Persona scenario of researcher and graduate student

Behavioral Archetypes: focus on the “who does what, when they do it, and why” of your audience

research. Archetypes most directly help determine the approach and functionality of a user

experience, as well as contributing to determining, validating, and prioritizing product features

[23]. Examples of behavioral archetypes are shown in figure (3-4).

Page 33: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

22

Figure 3-4: Behavioral Archetypes

Page 34: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

23

3.1.3 Personas usage:

• Identify the features, functionality and content to develop for an intranet or website release,

ensuring that value is delivered to users from day one of the release.

• Determine whether one user interface will meet the goals of all users, or whether there needs to be

two or more user interfaces developed.

• Communicate to senior executives the vision for the new intranet or website and how it will meet

the needs of the staff or customer base.

• Make design decision about how a piece of functionality will work or about the creative design of

the web solution.

• Guide the content development so that content supports the goals of the users and answers their

common questions.

• Develop scenarios for usability testing.

• Contribute to the marketing efforts for the intranet or website.

3.1.4 Stakeholders

1. Investors

2. Academic

3. Companies

4. Organizers

5. Freelancers

6. Pre-collegiate

7. Sponsors

8. Participation

9. Researchers and higher students

10. Business and Technology Incubator

11. Business and Technology Accelerator

12. Small and Medium Enterprise (SME's)

3.1.5 User requirements

1. User can view upcoming events. 2. User can view trendy events.

Page 35: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

24

3. User can view historical events. 4. User can add new time-bound events. 5. User can update exist events information. 6. User can create account and log in to edit data entry.

7. User can spatial-temporal visualization and exploration of time-bounded events.

8. User can be filtering time-bound events based on : o Event theme whether if it is for health, humanity, technical and sport etc.

3.2 Challenges and Limitations

3.2.1 Technical challenges

• Education and Training is requires for the researchers and practitioners to share the basic principles

and skills about information visualization methods.

• The lack of Intrinsic quality measures means there is no common evaluation and selection

mechanism plus the unavailability of bench marks undermine advances in visualization methods.

• Scalability, how to manage huge visualization in available space.

• Information visualization changes over time, means there is dynamism in visualization [24].

3.2.2 Non-technical challenges

• Usability issues are critical issues for visualization, which means how to make it easy to use and

efficient.

• Understanding elementary perceptual– cognitive tasks is the basic step regarding information

visualization engineering, providing it according to human capability

3.2.3 Project limitations

• Database access limitation: The platform is an openly-editable website where users can

contribute for scaling up the content of hackathon events in the MENA region.

• Users verification: The insertion and edition in the platform is validated by administrator who

will validate the user by the institution’s email.

• Event’s information verification: The insertion and edition in the platform is validated by

administrator. The administrator validate the event information by URL event’s website.

• Time-bounded events limitation: Events in computing and information technologies that solve a

problem or build a business (e.g. hackathons, competitions, startup weekend tech incubator events,

accelerators and innovation contests).

• Geographic scope: Our proposed scope of work is the geographic region of the MENA region.

• Internet accesses limitation: Users need to have an internet access to run the visualization charts.

Page 36: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

25

3.3 Functional Requirements

Functional requirements capture the intended behavior of the system “what the system should do“. This

behavior maybe expressed as services, tasks or functions the system is required to perform.

1. The platform will allow user to visualize the phenomenon of hackathons in the geographically

scope of the MENA region which embeds information visualizations that can be explored spatially

and temporally.

2. The platform will provide a clear view to the user of regional events and when he clicks on

a specific pin the map will retrieve all related events along with detailed information about

each event.

3. The platform will allow user to exploring the data sets across a timeline using a lever/slider

to move from one-time frame to another.

4. The platform will support information retrieval and exploratory analytics of these events

and trends related to the phenomenon.

5. The platform will facilitates closely coupled human and machine analysis by spatiotemporal

visualization of time-bounded events in the MENA region.

6. Platform supports dynamic chart visualizations overlaid on the spatial plots of events were

designed to amplify viewers' cognitive capabilities by enhancing the recognition of patterns of

when and where time-bounded events are held.

7. The platform's data visualization can be filtered across time and geographic locations such as the

country of the event. As well as, demographic filters are also applied to search the time-bounded

events by event themes whether if it is for health, humanity, technical and sport etc. Any used filter

will reflect the data retrieval of all other filters automatically.

o Tree map visualizations chart to enable user to understand patterns of themes over

countries and genders.

o Bar chart visualizations chart to enable user to understand patterns the number of

participants in specific theme over given period of time.

o Bubbles chart visualizations chart to enable user to understand patterns of sponsors

over time-bound event.

Page 37: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

26

o Doughnut chart visualization chart to enable user to understand prizes of themes of

time-bound event in MENA region.

o Geographic map chart visualization to enable user to understand time line of time

bound events in MENA, know the location and description about the event.

o MENA visualization map to enable user to understand the rate of hackathon events

over the MENA region and explore dataset to understand of the growth of

phenomenon hackathon between 2014 to 2018.

o Radial visualization chart to enable user to understand the number events over the

MENA region.

8. The platform is a crowdsourced event by allowing users to add new time-bound events for scaling

up the content of hackathon events. In addition, the administrators will validate these events “data

entry” by email and URL of the event.

9. Platform provide secure registration system that validates email addresses, sends confirmation

emails, provides forgotten password functionality, stores passwords securely, validates input

forms. In order to allow user to edit entered information of events.

10. Platform provide CRUD application used to manipulate data in the database. It is user-interface

conventions that allow viewing, searching and modifying information through computer-based

forms and reports. In essence, entities are read, created, updated and deleted. Those same entities

can be modified by taking the data from a service and changing the setting properties before

sending the data back to the service for an update.

3.4 Nonfunctional Requirements

Nonfunctional requirements are requirement that describes not “what the system will do, but “How the

system will do it “. One could also think of it as quality attributes of system.

1. Security: Platform have two rolls of authorization

• Administrator authorized to post events on the platform and validate user entry.

• User authorized to add event, visualize data, search and view upcoming event and historical

event.

2. Usability: The user enters event information into a single form, finds searches and finds events

on a single page, reducing time to move between pages. The user enters the data, it will be

verified by the admin to reduce the errors.

Page 38: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

27

3. Safety: The used system shall not cause any harm to human users.

4. Probability: Ability and ease of using the platform in different configurations or

environments.

5. Maintainability: The system must be maintained frequently to ensure the good improvement

of functionality and reliability of the system.

6. Accuracy: Data should be free from mistakes or error and having the value that the end user

expects.

7. Reliability: Ability to do a required function under stated conditions with a specified period of

time without failing.

3.5 System Specification

3.5.1 Initial specification

Visualization projects with high visibility focus on two main purposes: inspiration and explanation.

Visualization can be used to increase understanding of complex problems through data analysis. As

increasing volumes of data for time-bounded events are captured and become available, and scattered

on multiple websites and social medias, new opportunities arise for data-driven analysis that can lead

to insights for researchers, analysts, policy makers to track, process, and communicate data about the

phenomenon of hackathons and time-bounded events and how they contribute toward innovation

ecosystems in the region.

This motivated us to develop the first Arabic interactive platform that harness the time-bounded events

data and facilitates obtaining the historical information to provide new innovation and new insights.

User interface will reflect the main goal of the website and the identity of Sanea’a. Users will able

view and access the platform from any device due to the responsive design provided. It will ensure a

unified user experience across the different page and sections as will be described in the following

sections. In addition to the seamless user experience, the platform will provide data visualizations in

different patterns to provide a better understanding to the users while navigating through the different

datasets through the portal. Users platform can perform many tasks, such as upload new datasets, view

or edit existing datasets that available on the platform. Visualization and explore the existing dataset

in different ways through dynamic interactive charts. Analysis and view summary of datasets, compare

different datasets or filter the data.

Page 39: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

28

3.5.2 Final Specification

The visualizations augment the cognitive reasoning process with perceptual reasoning through color-

coded visual representations of these time-bounded events and support relatively easy perceptual

inferences of relationships that are otherwise more difficult to induce. visualizing information, allow

us to see the patterns and connections that matter and then designing that information to so it makes

more sense, or it tells a story, or allows us to focus only on the information that's important. Data is

the kind of ubiquitous resource that we can shape to provide new innovations and new insights.

In Sanea’a the user can navigation through the platform and choose between searching, exploring or

interacting with the different components and visualizations. This will provide different routes for the

user to reach the information they are looking for depending on the preference and their navigation

behavior. When users identify the piece of information they are interested in, they will be directed to

the visualization charts. The charts serve as a story consisting of different informational components

and data visualization that will help users make sense out the datasets.

Different patterns of visualizations will be used in order to support the compatibility of the datasets:

treemap, bar chart, network, geographical, heatmap etc. Also, components that allow the users to

interact with the visualizations will be provided e.g. filters, compare, sort etc. The sections will always

start with a general view and sparklines to give an overview of the dataset before diving into the

visualizations.

Page 40: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

29

Page 41: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

30

Chapter 4: System Architecture

System Architecture based on understanding how a system should be organized, behavior and

designing the overall structure of the system. We choose Model- View-Controller pattern (MVC)

is use for web development and implementation user interface. MVC is structured into three logical

components that interact with each other, as shown in figure (4-1).

Figure 4-1: System Architecture

The MVC is made up of three parts:

1. View: The view component it’s a user interface (UI) defines and manages how the data is

presented to user. It deals with the data presentation from the model to the user.

2. Model: The Model component manages the system data and associated operations on that

data. It is responsible for the encapsulation of the underlying data.

3. Controller: The controller component manages user interaction and pass these interaction

to the view and the model. It is a software code that controls all the action between the

Model and View.

Page 42: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

31

4.1 System diagrams

4.1.1 Flowchart

A flowchart is a graphically representation of the structure of process or system, algorithm or the

step-by-step solution of the problem. The Flowchart describes the flow of data through an

information processing system and the parts of the flows. The flow is a set of the logic operations

that meet the certain requirements.

Figure 4-2: System Flow Chart

The Flowchart diagram above shows the system process where the data insertion and updating

process are correlative with the process of D3 data-driven visualization, it demonstrates the process

initially when the user insert or sign up for update the data then the administrator verify the user

for posting and updating data into the platform [7].

D3 data-driven visualization model consists of a three-tier structure:

• Data processing layer

• Data application layer

• Data visualization layer

Page 43: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

32

Correspondingly, the user follows three steps to use D3: loading data, binding data to graphic

elements, and rendering. Finally, users will be thankfully notified of the completion of posting and

updating.

1. Loading data: to convert the raw data into the format suitable for rendering and to load it

into the web browser. D3 supports loading data from an array or the local data files in JSON,

CSV, TSV formats. For instance, D3 provides d3. json () function to parse a JSON file and

load data into the browser. However, except for column charts, line charts, and scatter

charts, D3 needs to work on the layout of data before generating complex diagrams. D3

provides 12 functions for layout. They are not for traditional visualization. Instead, they are

committed to mapping the raw data to the format for a specific type of charts, namely data

conversion.

2. Binding data: to bind data to the specific DOM elements, and to update, create, or delete

elements accordingly. Function data () binds a data set (e.g., an array) to the select graphic

set, with each array value bound to each element in select graphic set. Binding data to DOM

elements is the key to implement interactivity. After data binding, the user can perform the

operations such as change, add, delete on graphic elements based on keyboard and mouse

events.

3. Rendering: The user analyzes the value scope of DOM objects, sets their corresponding

visual properties, and renders graphics in SVG canvas. The last step changes the view from

abstract data into intuitive graphics. D3 places visualization in the web page. Before

rendering, it gets the position and size of the canvas that define SVG area in the web page.

Basically, web-based visualization process is divided into two parts, client side contain user and

browser and the other one is server side contain web server and data base both of theme responds

with D3 visualization library. Figure (4-3) shows the process of web-based visualization where a

web-based server fetches the data from data storage, processes it to a graphical format, rendering

to client side then visualize data to user [8].

Page 44: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

33

4.1.2 Sequence Diagram

A sequence diagram shows object interactions arranged in time sequence. It depicts the objects and

classes involved in the scenario and the sequence of messages exchanged between the objects

needed to carry out the functionality of the scenario. Sequence diagrams are typically associated

with use case realizations in the Logical View of the system under development.

Figure 4-3: Visualization process

Figure 4-4: System sequence diagram

Page 45: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

34

Figure (4-4), shows the sequence of how the user interact with the platform.

Figure (4-5), shows the sequence of the verification of the administrator's information,

whether true or not.

Figure 4-5: Verification of the administrator's information

Figure 4-6: Signup process

Page 46: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

35

In figure (4-6), the user steps when you want to create an account to modify data of events in

the platform, and make sure that the email is correct.

Figure 4-7: Rest password

In the figure (4-7), the sequence diagram shows steps to reset the user's password when they

are lost or forgotten.

Page 47: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

36

4.1.3 Use-Cases

Figure 6-8: Use Case (UC) Diagram

Figure 4-8: Use Case (UC) Diagram

Figure 4-8 shows the use case diagram that describes interactions between an actor and the

system, which is used as a method in system analysis to identify, clarify and organize system

requirements.

4.1.3.1 Use cases description

Table 4-1: Signup use case scenario

Sign up Use case

User Actor

This use case begins when the user wants to update information of entered

events.

Brief

Description

User entered information for time-bound events. Precondition

User can update and review data entry of events. Trigger

User is successfully signed up and log-in information is stored on the

database.

Post

condition

Page 48: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

37

Table 4-2: Login use case scenario

Table 4-3: Tree map chart use case scenario

Log in Use case

User Actor

This use case enables user to sign in, include information of username or

email and password.

Brief

description

The user had an account Precondition

User log in to update and review data entry of events information. Trigger

If the use case was successful, the user is now logged into the platform. If

it's not, the system rejects the user login and it will display an error

screen.

Post

condition

Patterns of themes over countries and genders. Use case

User Actor

A Tree map chart provides a hierarchical view of the data and makes it easy

to spot patterns. The tree branches are represented by rectangles and each

sub-branch is shown as a smaller rectangle so, this chart can help to

visualizing the patterns for the number of time-bounded events, themes and

genders over the MENA region. To help our main stakeholders like the

organizers of the events to understand the paucity of theme over the

countries. Where they can explore this map by clicking the rectangles (the

number of events in each country) to zoom to the next level (the number of

events in each theme).as for the last level it can represent the percentage of

both genders male and female in each theme.

Brief

description

Run the tree map chart and click rectangles to zoom into next level. Precondition

User can understand patterns of themes over countries and genders of

event. Trigger

The platform visualization events dependent on what user determine. Post

condition

Patterns the number of participants in specific theme over given period of

time. Use case

User Actor

A bar chart is a style of chart used by some technical analysts on which

different amounts of data are represented by thin vertical or horizontal

rectangles that have the same width but different heights or lengths. A

single bar represents number of participants in specific theme over given

period of time.

Brief

description

Page 49: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

38

Table 4-4: Bar chart use case scenario

Table 4-5: Bubbles chart use case scenario

This chart can help to visualizing the patterns for the number of participants

and themes over period of time. To help our main stakeholders to

understand the community interests for each theme over period of time.

Where they can explore that by clicking on the specific bar (the number of

participants in specific theme).

Run the bar chart by choosing bars to clarify and classify community

interests for each theme over period of time. Precondition

User can understand patterns of the number of participants in specific

theme over given period of time. Trigger

The platform visualization events dependent on what user determine. Post

condition

Patterns of sponsors over time-bound event. Use case

User Actor

Bubble charts encode data in the area of a circle, the bubble branches were

represented by a circle and each sub-branch was shown as a smaller circle.

In our platform, we'll use it to visualizing the popular sponsors in the

MENA region. To help stakeholders to understand the pattern of sponsors

of time-bound event in the MENA region. In this chart in high level, that'll

visualize a number of more bubbles "circle" each bubble represents a

sponsor by clicking a bubble, for example, IBM bubble it will represent all

events that sponsored by it.

Brief

description

Run the bubble chart by click bubbles to zoom into next level. Precondition

User can understand patterns of the popular sponsors over time-bound

events. Trigger

The platform visualization events dependent on what user determine. Post

condition

View time- bound event based on geographic location. Use case

User Actor

Geographic map chart visualize the phenomenon of time-bounded events in

the geographically scope of the MENA region. Its provide a clear view to the

user of regional events and when he clicks on a specific pin the map will

retrieve all related events along with detailed information about each event

also, there a timeline slider that enable to see historical and upcoming events.

this chart will help user to understand time line of time bound events in the

MENA region

Brief

description

Run the chart by zooming in specific country or movement on timeline

slider Precondition

Page 50: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

39

Table 4-6: Geographic map chart use case scenario

Table 4-7: MENA map chart use case scenario

Table 4-8: Doughnut chart use case scenario

User can understand time bound event depend in geographic location or

timeline. Trigger

The platform visualization events dependent on what user determine. Post condition

View the rate of hackathon events over the MENA region Use case

User Actor

MENA visualization map shows the rate of hackathon events over the

MENA region. It has a 4 demotions to explore, the technology used and the

type of the events either in- person or virtual and the top even’s organizers

and sponsors.

Users can toggle on or off over the map to filter the event’s type by clicking

on the colored circles and the technology used name to filter the

technologies. Moreover, users can filter by select on the specified country.

Brief

description

Run the chart by zooming in specific country. Precondition

User can understand rate of hackathon events over the MENA region. Trigger

The platform visualization events dependent on what user determine. Post condition

Patterns of prizes for each theme in time-bound event. Use case

User Actor

Doughnut chart is a chart that displays data in rings, where each ring represents

data series. Besides, Doughnut charts can give you a great perspective of the

relative changes., you can get a bird's-eye view of the relative change in each

item of the series.

In our platform we will use donut chart to visualizing prizes for each them

(Education, health …etc.). In high level of this chart will visualizing themes

by clicking on one theme for example education you will move to the next

level, in second level you will explore the prizes of each event in this theme.

Brief

description

Run the doughnut chart and click rings to zoom into next level. Precondition

User can understand type and quantity of prizes in each theme over time-

bound events. Trigger

The platform visualization events dependent on what user determine. Post condition

Page 51: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

40

Table 4-9: Radial chart use case scenario

Table 4-10: Add event scenario

Table 4-11: Update event scenario

Patterns of events for each city in MENA region. Use case

User Actor

The interactive radial chart represents the number of the events in each city

in the Middle East and North Africa countries , while you can hover the

mouse over the radials to explore the number of the events in each city.

Brief

description

Run the radial chart and click radials to zoom into next level. Precondition

User can understand type and number of events in each city over MENA

region. Trigger

The platform visualization events dependent on what user determine. Post condition

Add new event Use case

User Actor

The user accesses the platform to add new events. Brief

description

Enter to the platform. Precondition

The user adds new events. Trigger

If the use case was successful, the administrator sends approval notification

to the user then visualizing event information into platform, if not

administrator send reject notification to the user and allow him to modify

data entry.

Post condition

Update information of the entry events. Use case

User Actor

This use case enables user to add /edit information about entry events. Brief

description

Administrator shall verification the URL of the event on the web along

with an institutional email address. Precondition

User insert new information about event or edit information of event. Trigger

If the use case was successful, the administrator send approval notification

to the user then visualizing event information into platform, if not

administrator send reject notification to the user and allow him to modify

data entry.

Post condition

Page 52: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

41

Table 4-12: Filter time-bounded events theme

Table 4-13: Validation data scenario

4.1.4 Data Modeling

Entity-Relationship (ERD), that describing a proposed structure of database, which data

will be stored in database and showing the relationships among the database tables

references.

Filter time-bounded events. Use case

User Actor

The platform's data visualization can be filtered by event theme . Brief

description

Enter to the platform Precondition

The user determines categories of events Trigger

The platform visualization events dependent on what user determine. Post condition

Validation of the data entry by users. Use case

Administrator Actor

This allow administrator to validate data entry that related to each event

then, accepted the data or not. Brief

description

The administrator should open the platform. Precondition

This use case allow administrator to accept data that will visualization in

platform. Trigger

If data are accepted, store data in database and visualization into platform. Post condition

Page 53: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

42

Figure 4-9: ER-Diagram

4.2 User Interface Design

User interface (UI) is a part of Human Computer Interaction (HCI), it’s a visual part of computer

application which a user interacts with a computer or a software.

In platform we focus to design UI easy to access all component and understanding by user.

Page 54: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

43

4.2.1 Interface Flow

4.2.1.1 User interface flow

1. Guest user interface flow

Figure 4-10: Guest user interface flow

Figure (4-10) shows navigation structure to give an overview of linking and transfers between

internal platform webpages.

Page 55: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

44

2. User interface flow

Figure 4-11: User interface flow

Figure (4-11) shows navigation structure to give an overview of linking and transfers between

transfers between internal platform webpages after user sign in.

Page 56: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

45

3. Admin interface flow

Figure 4-12: Admin Interface Flow

Figure (4-12) shows navigation structure to give an overview of linking and transfers between

admin webpages.

4.2.2 User interface

1. Homepage

User can explore the data to gain insights from the data visualizations and analysis. The user can

gain insights in different levels and scales and can view the data geospatially. Information about

time-bounded events, event themes, prizes and the number of participants for each theme all could

be explored through visualization. In addition, to the seamless user experience, the platform will

provide data visualizations in different patterns to provide a better understanding to the users while

navigating through the different datasets through the portal. Different patterns of visualizations will

be used in order to support the compatibility of the datasets: tree map, line chart, bar chart, network,

geographical, heatmap etc. Also, components that allow the users to interact with the visualizations

will be provided e.g. filters, compare, sort etc. The sections will always start with a general view

and spark lines to give an overview of the dataset before diving into the visualizations. It will ensure

a unified user experience across the different pages and sections. The home page provides different

views and access depending on the type of users. As shown in figure (4-13).

Page 57: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

46

Figure 4-13: Landing page for the platform

2. Explore events information

This page (إكتشف الفعاليات) give user many features to trigger the sense of exploration for the events

information, as shown in figure (4-14).

Figure 4-14: Explore events page

Page 58: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

47

1. View historical and upcoming events on the map by moving the slider to right or left.

2. Select specific pin to see more details about event information, as shown in figure (4-15).

Figure 4-7: Search by specific word

Figure 4-15: Select specific pin

3. Accordion help user to filtering the events based on event theme, as shown in figure (4-16).

Figure 4-16: Filtering time-bounded events

Page 59: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

48

4. Add event button ( إضافة فعالية جديدة ) allow user add new event if user select this button platform

will move to another page to insert data about event, as shown in figure (4-17).

Figure 4-17: Form to add event information

Page 60: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

49

In this page we have three scenarios:

1. User insert the information and select (إرسال) platform will display pop-up message, as

shown in Figure 4-31 (page 57)

2. User doesn’t insert one of the required field (اسم الفعالية,البريد اإللكتروني,الموقع اإللكتروني) platform

will display pop-up message, as shown in Figure 4-30. (page 57)

3. User press (إلغاء) platform move user to previous page.

3. Statistical dynamic charts visualization webpage

To navigation through the platform the users can choose between exploring or interacting with the

different components and visualization charts. This will provide different routes for the user to

reach the information they are looking for depending on the preference and their navigation

behavior. When users identify the piece of information they are interested in, they will be directed

to the visualization page. The page serves as a story consisting of different informational

components and data visualization that will help users make sense out the datasets. This page

see statistic, analysis and visualization about time-bounded events depend on (إكتشف اإلحصائيات)

different dataset (Figure 4-18).

Figure 4-18: Statistical dynamic charts visualization webpage

Page 61: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

50

Depending on this page, we have another sub-web- pages:

.Figure (4-19) (المحاور المتداولة للفعاليات في دول الشرق األوسط وشمال أفريقيا) .1

.Figure (4-20) (محور الفعالية والجوائز المطروحة) .2

3. ( مختلف المحاورعدد المشاركين في ) Figure (4-21).

.Figure (4-22) (الفعاليات والرعاة لهذا الفعالية) .4

Figure 4-19: Visualization chart depending on them on each country in the MENA

Figure 4-20: Visualization chart depending on events theme and prize in the MENA

Page 62: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

51

Figure 4-21: Visualization chart depending on events theme and date in the MENA

Figure 4-22: Visualization chart depending on sponsors of events and theme in the MENA

Page 63: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

52

4. About us page

In this page you will find a brief paragraph about Sanea’a platform and objective of this

platform, as shown in figure (4-23).

Figure 4-23: About us page

5. Frequently asked questions (األسئلة الشائعة )

This page display a listed of all expected questions and answers , as shown in figure (4-24).

Page 64: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

53

Figure: 4-24: Frequently asked questions page

All features and functionality above user can use it as guest user - without sign up - but if the user

want to edit entry events information he/she should sign up before. User can sign in/sign up from

header of platform, as shown in figure (4-25).

Page 65: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

54

6. Registration

Figure 4-25: platform header

If user select sign up(تسجيل) platform open a pop-up window, as shown in figure (4-26).

Figure 4-26: Pop-up window to sign up

If user have account can select sign in (تسجيل دخول), the platform will open a pop-up window, as

shown in figure (4-27)

Figure 4-27: Pop-up window to sign in

Page 66: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

55

7. User page

This page contains all events information inserted by user.

Figure:4-28: User page

If user select (تعديل) platform will display a form to edit event information, as shown in figure (4-

17) on (page 49).

Finally, all platform pages have:

1. Header contain six navigations to link all internal platform webpages together and sign in and

sign up.

2. Footer contain social media accounts and copyright.

Page 67: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

56

4.2.3 Admin interface

Control panel of administration page. This page allow admin to login by using ID and password.

Figure 4-29: Admin events page

This page display previous events, admin can edit, delete or see more details about each event,

figure (4-29).

Page 68: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

57

4.2.4 Platform message

1. Platform will display this pop-up message if user submit an empty

required field.

2. Platform will display this message if user add new event.

3. Platform will display this message if user enter wrong email or password.

4. Platform will display this message if user try to sign up by email used

previously by another user.

5. Platform will display this message if user change password successfully.

6. Platform will display this message if user edit event information.

Figure 4-30: Pop-up message of empty field

Figure 4-31: Pop-up message of

add new event

Figure 4-32: Pop-up

message of wrong enters.

Figure 4-33: Pop-up message

Email used previously

Figure 4-34: Pop-up message of

change password successfully

Figure 4-35: Pop-up message of edit event

Page 69: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

58

7. Notification by email after admin verify event information and accept it.

Figure 4-36: Notification by email for accepted event

8. Entry events information is rejected by admin

Figure 4-37: Notification by email for rejected event

Page 70: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

59

Page 71: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

60

Chapter 5: Implementation

5.1 Introduction

The connected intelligence platform Sanea’a that we are developing is built with the standard software

lifecycle. First, identifying the problem, determining the requirements, analyzing the system, designing the

system, implementing the system and finally testing and evaluating the system.

5.2 Implementation Requirements

5.2.1 Hardware requirements

1. Personal computer: with sufficient processor speed and hard drive capacity for installing and

developing the platform.

o Operating system Windows 7, 10 ( 32 / 64 ) bit).

o 64 bit CPU , with VT-x or AMD-V capability.

o 400 MB disk space.

o 2GB RAM.

2. Internet connection.

3. Smart phone.

5.2.2 Software requirements

1. Global host: we used the Bluehost for hosting our website and domain, It provides many features

and advantages :

o Security: With CloudFlare, Bluehost provides enhanced security features. CloudFlare is

suitable for webmasters that require SSL to make sure better security against DDOS

attacks on their site.

o Customer Support: Every website admin would like to get support from the hosting

provider without any delays. It is here that Bluehost proves more advantageous than other

hosting providers.

o Performance – Speed And Uptime: With Bluehsot’s claims of 99.99% uptime backed

by similar reviews of site owners who have used their hosting plans, this service provider

appears to have delivered the most important feature effectively.

o Control Panel: It provides a very easy to use control panel that is developed as per

industry standards. The intuitive UI assists users manage websites all alone very easily. It

Page 72: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

61

is possible to manage emails, domains, databases and install vital software like Joomla and

WordPress, from the control panel itself.

2. cPanel: is a UNIX web-based control panel that offers a control and access tools to manage and

monitor our website effortlessly. It provides many features for managing our website include file

management, Domain management database administrator, email and software configurations,

etc.

3. GitHub: is a code hosting platform for version control and collaboration.

4. phpMyAdmin: for handling the administration of MySQL over the Web. It supports a wide range

of operations on MySQL. Frequently used operations (managing databases, tables, columns,

relations, indexes, users, permissions, etc) can be performed via the user interface, or we can

directly execute any SQL statement.

5. CRUD application: used to manipulate data in the database.

6. Text Editors: for web development, We have used different code editors such as Notepad++ and

Atom.

7. Bootstrap: framework for developing responsive, mobile-first websites.

8. Web languages: for the implementation of the website we used the web development languages

such as

o HTML: Hyper Text Markup Language (HTML) is a computer language which developed

to create a website. Then, the website can be viewed by any user connected to the Internet.

Hyper means that you can browse any page on the Internet whenever you want by clicking

on links. Markup is what HTML tags do to the text inside them. They mark it as a certain

type of text. Its Developed to meet the demands and requirements of the growing Internet

o PHP: Hypertext Preprocessor is an open source scripting language that is widely used for

web development and can be embedded into HTML. PHP scripts are executed on the

server. It is powerful enough to be at the core of the biggest blogging system on the web.

It is deep enough to run the largest social network.

o JAVASCRIPT: JavaScript is a programming language used to make interactive web

pages. It runs on your visitor's computer and doesn't require constant downloads from your

website.

Page 73: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

62

o CSS: stands for Cascading Style Sheets its is used to define styles for your web pages,

including the design, layout and variations in display for different devices and screen sizes.

It can control the layout of multiple web pages all at once.

o ASP.NET: is an open source web framework for building modern web apps and services

with .NET ASP.NET creates websites based on HTML, CSS and JavaScript that are

simple, fast and can scale to millions of users.

9. JavaScript Object Notation (JSON): For exchanging data between a browser and a server.

10. Java script libraries:

o D3.js: library for producing dynamic, interactive data visualizations in web browsers. It

creates an interactive graphics combining the data from a database system with HTML,

SVG, and CSS.

o Leaflet: for mobile-friendly interactive maps.

o jQuery: is used to navigate a document, select DOM elements, create animations,

handle events.

o Google maps API: including the google maps in the website is by adding a script to refer

to the Google Maps API with a callback to the myMap function. The functionality of the

map is provided by a JavaScript library located at Google.

11. Tools for graphics:

o Creately.com: online website used to create flowcharts, organization charts, mind maps,

project charts, and other visuals.

o Fluidui.com: online website used to create web prototypes.

o Gantt team: online website used to create Gantt chart.

5.3 Implementation Phases

In this section we will mention the details of the implementation phase in our project.

5.3.1 First phase: Collecting the data

The intelligent visual analytics platform that we are developing is designed in six main phases. The

first phase is the data collection, where the platform’s contents are crowdsourced from the

community. This crowdsourcing approach was considered to facilitate a sustainable dynamic data

set and to encourage users to contribute towards maintaining the accuracy and quality of data

submitted through the platform's frontend.

Page 74: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

63

Figure 5-1: Content crowdsourcing in the Sanea’a platform

The content crowdsourcing architecture of Sanea’a platform, depicted in figure (5-1), is the bridge

between the often abstract goals of a crowdsourcing application and the final concrete resulting web

platform. While the path from abstract to concrete can be complex, the block diagram in figure (5-1)

shows the set of structures needed to reason about the hackathon platform (i.e. software elements of

location data and event-oriented data, the relations among them and the properties of both) and the

administrator should verify the contents that are going to be embedded for visualization by checking

the event’s website URL and institutional email.

5.3.2 Second phase: Building the database

In this phase, we have developed CRUD application stands for Create/Read/Update/Delete. It is

user-interface conventions that allow viewing, searching and modifying data through computer-

based forms and reports. It enables user to create/read/update/delete data and directly stored in

MySQL Database. PHP will be the server-side language that manipulates MySQL Database tables

to give front-end users power to perform CRUD actions. Those same data can be modified by

taking the data from a service and changing the setting properties before sending the data back to

the service for an update. After creating database tables to store user data entry. We have been built

the CRUD operations to enable users and admin to directly interact with database by useful,

friendly and responsive interface.

Page 75: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

64

CRUD Operation:

Users could be admin or consumer and the

interface will adapt to their needs respectively.

The administrator has full access to perform all

CRUD operations (create , read , update , delete

, visualize) while the consumer can perform tree

of them (create , read , update),as shown in

figure (5-2).

Figure 5-2: Platform users accessibility

1. Create — This is called up by pressing the create “ اضافة فعالية جديدة” button and enables user

to enter event information. The script makes sure all of the entered data such as the address,

date and the detailed information about the event, as shown in the form figure (5-4) are

recorded, that error messages appear when the wrong entry is given, and that the data is

forwarded to a declared database. The new entry is assigned a unique id, which can be used

to access this information later.

Figure 5-3: Add new event information

Page 76: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

65

At the data collection phase, the users can contribute to scaling up the content of the hackathon events

by adding events information such as the address, date and the detailed information about the event,

as shown in the form figure (5-4).

Figure 5-4: Add new event information form

2. Read — This is called up by pressing the view “ button. Its would consist of ” عرض البيانات

a function which would be called to view the entry events information. This function call

would not alter the events information in the database - it would simply retrieve the data

and display the results.

Page 77: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

66

Figure 5-5: User view

Figure 5-12: View event information

Figure 5-6: View event information

3. Update — This is called up by pressing update " البيانات تعديل " button to enable the users and

the admin for modify entry events information, as shown in figure (5-7) . The application

Page 78: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

67

calling the function would supply the new values for address, date and the detailed

information about the event. After the function call, the corresponding entry in the database

would contain the new fields supplied.

Figure 5-7: Update event information

Application will display this message after

successfully update event information.

Figure 5-8: Update notification massage

• Delete — This is called up by pressing the delete " البيانات حذف " button that enable administration

to delete specific event information, as shown in figure (5-9). The script makes sure that all

information of the selected event has been deleted from the database.

Page 79: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

68

Figure 5-9: Control panel of administration system

Application will display this message after successfully delete event information .

Figure 5-10: Delete notification massage

The administrator should verify the contents that are going to be embedded for visualization by

checking the event’s website URL and institutional email.

4. Visualize — The administrator will click the visualize data “تمثيل البيانات” button after

verifying the event. then, the content of the database will be transformed into a data file like

JSON file, TSV and CSV files depending on file type used for each chart. Every chart and

graph embedded a data file created by a different query, as shown in the figure (5-11).

Page 80: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

69

Figure 5-11: Query of visualize button

Case study:

a. Allow user to add event information for Hajj Hackathon.

Page 81: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

70

Figure 5-12: User add new event information

b. Entry information will have stored directly in the database.

Figure 5-13: Store event information in the database tables

Page 82: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

71

c. Entry event information will have display directly in the user dashboard and the user can

edit and review inserted contents.

Figure 5-14: User dashboard

Figure 5-15: Review event information

d. After the administration verify the contents by checking event’s URL and institutional

email. Event information will be directly visualizing into map by clicking visualize

button form admin control panel.

Page 83: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

72

Figure 5-16: Visualize event information

5.3.3 Third phase: Designing the interfaces

1. Homepage webpage

Figure (5-17) shows the main interface when user open Saneaa.com URL. It contains

global navigation bar for the rest of platform webpages. Additionally, user can easily

login to his/her account form home page by click login button.

Figure 5-17: Homepage interface

Page 84: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

73

2. About Sanea’a webpage

Figure (5-18) shows a brief description of the platform, full project report and

information about each member in our project.

Figure 5-18: About us webpage

3. Contact us webpage

Figure (5-19) shows contact us page that allow users to communicate with us.

Page 85: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

74

Figure 5-19: Contact us webpage

4. FAQ webpage

Figure (5-20) shows frequently asked questions about our website.

Figure 5-20: FAQ webpage

Page 86: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

75

5.3.4 Fourth phase: Building functionality

1. Registration

Registration and log in process contain many functionalities such as:

Figure 5-21: Registration webpage

❖ Errors messages for:

• Exist usernames.

• Short username if it's less than 3 characters.

• short password if it's less than 3 characters.

• Created password and the confirming one do not match.

• A password must be entered

• Username must be entered

❖ Validate email characters, must contain @character.

❖ After completing the registrations, users should activate their accounts, they will be receiving an

email that contains a link for the activation figures(5-22).

❖ Once the data has been verified the users record is updated, the column active is changed from

the token to hold 'Yes' to say they are active, this will only happen if the id and token passed

match what's stored against that user.

Page 87: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

76

❖ The link contains a token generated for each user when registers.

❖ The password provided cannot be stored as it is, that would be a huge security concern instead it's

hashed by passing it to the user object inside a password_hash call this returns a hashed password

which can then be stored in the database, this way no one can know what the password was apart

from the user who entered it.

Figure 5-22: Activation process

1. Login:

Figure 5-23: Login webpage

Page 88: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

77

❖ Errors messages for:

• Check if an existent account.

• Empty email and password.

• Short username if it's less than 3 characters.

• short password if it's less than 3 characters.

5. Reset the password:

Figure 5-24: Reset the password webpage

Page 89: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

78

➢ Every system need the ability to reset a password in case it's forgotten, how this will work is a user

enters their email address, a check is made to make sure its belongs to a user.

➢ Next a token is created and saved to the users record, an email is sent to them containing a link to

when clicked the token from the link is verified, if it passed the user is provided with a form to enter

their new password, its then saved to the database.

6. Contact us function:

Blue host provides a webmail, or web-based email, is portable and accessible anywhere that has an internet

connection because the application that sends and reads our mail is accessed on a website from the browser.

A few advantages of using webmail to access platform email are:

• Simplicity. No setup required.

• Portable and accessible anywhere.

• Great if you can’t install software on your work or school computer.

• Save space on your computer; email is stored online.

• Accessible offline.

• Immediate notifications to your device.

• Manage multiple email addresses in one interface.

• Easily back up your mail and store it on your computer.

Figure 5-25: Webmail control panel

Page 90: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

79

5.3.5 Fifth phase: Implementing visual analytics platform

The forth phase is launching the interactive visualizations to the general public (historical data)

to enable decision makers to explore the data sets and interact with the visual analytics, so they

can grasp difficult concepts aligned with the insights that they are looking for and to identify

new patterns. With interactive visualization, they can take the concept a step further by using

technology to drill down into charts and graphs for more details, interactively changing what

data they see and how it’s processed.

5.3.5.1 Process of visualization

The approach of designing well disciplined visualization the process can be divided into

six different steps i.e. mapping, selection, presentation, interactivity, usability, and

evaluation, which identifies major activities involving visualization, to aim precise and

error less design [24].

The following subsection explains briefly these six activities:

1. First step of visualization process is known is Mapping. Mapping means how to visualize

information or how to encode information into visual form. In mapping data or information

transform into graphical form under assumption of visual features. Good mapping produce

accurate visual representation, and can achieve when there is accurate relationship between

data objects and visual objects to be describe.

2. Second step of visualization process is called Selection. Selection means to select data

among those data which is available according to the given task or job. Selection of data

is directly dependent on the aim to get through visual graphics or pictorial representation.

This task in the process is the most important task, because the selection of wrong data

misleads the user to take crucial decisions and suffer through huge loss (financial, time.

etc), should avoid the inclusion of unnecessary data.

3. Third phase of the process is Presentation. In visualization perspective presentation means

how to manage, organize information in the available space on the screen effectively. After

intuitive mapping, clear and precise selection of data items it is really important to present

it in more meaningful and understandable form.

Page 91: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

80

4. Forth step of visualization process is called Interactivity. Interactivity means what are the

provided facilities to organize, explore, and rearrange the visualization. User friendly

interactivity enables a user to best explore, understand, and interpret the data or

information, which improve their exploration capabilities.

5. Human factors are fifth visualization feature to be considered. Human factor involve to

two broad categories, usability, and accessibility factors. The visualization is easy to use

for the end user. /Visual perception knowledge and cognitive aspects make it very easy to

design an effective visualization. These factors are the common practice of Human

Computer Interaction.

6. After creating usable visualization interface, the last step is to evaluate the created visual

form. Evaluation is equally important, to find out whether the visualization method has

effectiveness or not, the goal is achieved or not.

In the Sanea’a platform, the visualization has two modes of operation: filter/search mode and statistical

mode. The first mode allows the users to explore spatially by zooming in and out of regions and countries,

and temporally by exploring the data sets across a timeline using a lever/slider to move from one-time

frame to another. Moreover, the data can be filtered across time by location and theme (e.g. health,

humanitarian aid, sport). Filters are applied to explore subsets of datasets, as shown in the scenario

captured in figure (5-26).

Figures 5-26: Spatial Visualization of Time-Bounded Events in the Arab World

Page 92: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

81

The second mode is the Data Visualization and Exploration mode. In this mode the user can explore the

data to gain insights from the data visualizations and analysis. We had implemented more than 5 dynamic

interactive data-driven analytics charts for decision making by addressing the main components of time

bounded events (i.e. date, time, technology used, themes, and prizes, gender and number of participants).

The user can gain insights in different levels and scales and view the data geospatially. All categories

could be explored through this mode.

Figures 5-27: visual analytics webpage

Figure (5-28) is dynamic visualization map shows the rate of hackathon events along the MENA region.

It has interactive linking between 3 charts geo-graphic map for MENA region and vertical bar for statistical

information about number of events in each type for the selected country and horizontal bar for technology

used. Information can be mapped differently to different views to reveal or expose different perspectives

(viewpoint) or different portions of the information. On the bases of selection criteria the user can select

entities in one structure, which then shows the distribution the selected entities in another structure.

Additionally, It has 4 dimensions to discover. The technology used either IoT, Blockchain, Roberts or

other, the type of the events either in- person or virtual and the top event’s organizers and sponsors. Users

can toggle on or off over the map to filter the event’s type by clicking on the colored circles and the

technology used name to filter the technologies. Moreover, users can filter by selecting on the specified

country.

Page 93: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

82

Figure 5-28: Interactive d3 map visualization for event trends analysis.

Case study-1 : a. when the user selected specific type of event " بعد عن ", the linking charts will interact

with user needs all at once by filtering the b. rate of technology used in the selected type, c. display

more statistical information about the total number of the events, event’s organizers and sponsors

within selected type, as shown in figure (5-29).

Case study-2: a. when the user selected specific country "Oman", the linking charts will interact with

user needs all at once by filtering the b. rate of technology used in the selected country, c. more

statistical information about the total number of the events, event’s organizers and sponsors within

selected country. d. Furthermore, the user can compare between two countries “Oman and Saudi

Arabia” to discover analysis statistical information, as shown in figure (5-30).

Page 94: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

83

Figure 5-29 : Case study -1

Figure 5-30: Case study - 2

a

b

c

a

b

c d

Page 95: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

84

Figure (5-31) shows a sample of the statistical mode in which users can toggle on or off the categories and

the dynamic visualization shows the amount of number of participants refreshes on-screen in the platform

to provide instantaneous data tailored to the needs of stakeholders. Additionally, it helps to discover the

community interest in each category over period of time and which category that needs to be more

expanded.

Figures 5-31: Dynamic bar charts that facilitate data manipulation to generate bespoke charts using d3 libraries.

Figures 5-32: Determine specific category

Page 96: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

85

The following figure (5-33) show Tree map is also known as tree mapping. In information visualization,

tree mapping is a technique is use to display hierarchical data in the form of nested or layered rectangles.

It is used to visualize hierarchical structures. And facilitate users to compare nodes and sub nodes at

various depth and help to recognize patterns and expected results.

To help the stakeholders understand the amount of the events such hackathons visually and relatively we

implemented the tree map below figure (5-33). It contains 4 zoomable levels, the scaled rectangles

according to the rate of events. The first level colors and shades are definite the regions in the Middle East

and North Africa and. The second level for the cities. Next level shows the amount of events themes of

the clicked city. Finally, the amount of the event that support which gender in this theme.

Users can see straight away a different relationship to the numbers. They can literally see them. But more

importantly, it shows them patterns and connections between numbers that would otherwise be scattered

across multiple websites and social medias.

Figure 5-33: Tree map visualization chart

Page 97: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

86

Figure (5-34) is a visualization chart that can bring insights for the sponsors and the organizers to find

patterns and connections for all the sponsors of the events in the Middle East and North Africa region.

This kind of diagram is called a bubble chart. the bubbles size corresponds to sponsors rate as regards to

the collected data. And you can hover over the sponsor's bubbles to see the most relevant events categories

they sponsored. Furthermore, it helps event organizer to discover the appropriate sponsors for the

organized event.

Figure 5-34: Bubble chart visualization for events’ sponsors.

The interactive radial chart in figure (5-35) represents the number of the events in each city in the Middle

East and North Africa region, while you can hover the mouse over the radials to explore the number of the

events in each city. Additionally, it helps to discover the community interest for each city in participation

in time-bounded events .

Page 98: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

87

Figure 5-35: Radial chart visualization for trend event among cities.

Maps are based on our physical world. We create maps using abstract shapes and colors to reveal

geographic patterns and tell stories. At Sanea’a, we leverage data visualization to better understand the

growth of hackathons as shown in figure (5-36), is dynamic visualization map to visualize the growth of

hackathon phenomenon between 2014 and 2018 in the Middle East and North Africa region. It aims to

provide you with a clear view of the extent of changes that can occur in just four years and expand the

thinking about the impact of this phenomenon on over the coming years.

The users are interested in the abstract data about which they have desire to understand, the user don’t

have sufficient pre-knowledge about that data. Hence for the exploration, analysis, and for the

representation of data or information visualization interactive techniques are exceptionally momentous.

The challenge in information visualization is to provide data visually in order to the user effectively

understand the information for which the user is looking for, for this purpose provide interaction

mechanism that make is possible to manipulate visualization effectively and effortlessly as probable.

Page 99: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

88

Figure 5-36: Growth of hackathon phenomenon chart visualization among MENA

Figure 5-37: Growth of hackathon phenomenon chart visualization between 2014-2018

Page 100: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

89

Users can interact with interfaces or visualization chart in different ways:

• Progress bar “story telling”: In this chart, we focus to connect the data with words and then through a

story-like form, it would take the users through the analysis process. It gives a completely different picture

of the data and even addresses the different concerns of different users, helping users draw meaningful

conclusions.

Figure 5-38: Progress bar

• Zoom in and Zoom out or Zooming: Sometimes user interfaces need to bring it closer in order to view

of contents clear or in details. The content display of user interface must not be each user’s choice, so

required fair scaling techniques which enable user to make it according to their wish. User toggle on

or off over the map to view more statistical details for specified city by hover the mouse over bubbles

on the map or over the bar chart, as shown in figure (5-39).

Figure 5-39: User interaction

Page 101: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

90

• Filtering: enable users to dynamically adjust amount of information to display, means to decrease or

increase information quantity that need to display, and focus on information of interest. User can

interactive selection of data entities or subset or part of whole data , that is interest to the user. This is

useful to view detail information about the selected entities, highlight entities that are covered or

hidden, cluster entities that are related and extracting entities that may be use in future [24]. This

technique enable user to quickly adjust query parameters and instantaneously view filtered results in

the visualization in real time, as shown in figure (5-40).

Figure 5-40: Filter dataset according to the user needs

These visual representations of time-bounded events make it easy for users to perceive salient aspects of regional

distribution of events as well as the density of events across time. The visualizations augment the cognitive

reasoning process with perceptual reasoning through color-coded visual representations of these time-bounded

events and support relatively easy perceptual inferences of relationships that are otherwise more difficult to

induce. Visualizing information allow us to see the patterns and connections that matter and then designing that

information to, so it makes more sense, or it tells a story, or allows us to focus only on the information that's

important. Data is the kind of ubiquitous resource that we can shape to provide new innovations and new insights.

5.3.6 Sixth phase: Integrating all the previous parts

The final phase of implementation, integrate physical and logical components of the website.

Additionally, deploying and updating the database on the global host.

Page 102: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

91

Page 103: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

92

Chapter 6: Testing

After Sanea’a implementation was completed and its component were integrated, a testing phase was conducted.

The purpose of this test is to evaluate the system’s compliance with specified requirements. In testing phase the

behavior of whole platform is tested as defined by the scope of the development project. platform testing should

investigate both functional and non-functional requirements of the test, which in turn will help to identify errors

position and vulnerabilities areas.

6.1 Test Plan

Test plan is a very important step. It ensures that we conform to a specific path, on the course of which we

are going to develop the software. Test planning determines the list tasks and milestones which will be

used to track the progress of process. Where a successful test is a test that makes the system perform

incorrectly and so exposes a defect in the system, here we create main test plan to test our system by

different strategy.

Test scope: Testing will cover both of the database component and the platform features, functionality

and performance. We will test the system using the following testing strategies as shown in the table below

(unit, functional and acceptance testing).

Test version: The platform tested several times during the implementation, but this consider the first

formal documented testing version.

6.1.1 Test objectives

• Find as many errors as possible.

• Find many bugs that a user may face in the future.

• Makes you feel confident that the platform will work perfectly as desired.

• Help in finding how the requirement does match the implementation.

• Having a details description of sent information and the expected outcome.

• Discovers problems that may show up to users while using the website.

• Setting set of acceptance for the built website.

• Improve the quality of platform.

Page 104: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

93

6.1.2 Platform testing life cycle

During designing and development Sanea’a platform we

followed Agile methodology also in testing phase we used

Agile Testing is a software testing practice that follows the

principles of agile software development.

Agile Testing involves all members of the project team, with

special expertise contributed by testers. Testing is not a

separate phase and is interwoven with all the development

phases such as requirements, design, coding and test case

generation. Testing takes place simultaneously through the Figure 6-1: Agile testing methodology

Development Life Cycle (Figure:6-1) show the life cycle of Agile testing [18].

6.1.3 Platform testing strategy

The figure declare testing strategy for Sanea’a platform the first

one is unit testing we used black box for testing the integration

between the interface and the database ,the second plan test is the

functional of platform including the database and the interface

separately, the third one is testing Graphical User Interface testing

involves checking the screens with the controls like menus,

buttons, icons, and all types of bars - toolbar, menu bar, dialog

boxes and windows, etc. Last one is the acceptance testing which is a

level of software testing where a system is tested for acceptability.

6.1.4 Black box testing plan

Black box testing involves testing the integration of the database with the interfaces.

Verifying outgoing data

(data comes from database to

represent at the interface )

Verifying incoming data

(data that entered through that interface

and stored at the database)

Task Duration Task Duration

Apply the process of data

retrieval cases from the

database in more than

one request

3 days

Apply the process of

enter the data retrieval

from the interface to the

database in more than

one request

3 days

Table 6 - 1: Black box testing plan

Testing strategy

Unit

Testing

Functional

Testing

GUI

Testing

Acceptance

Testing

Figure 6-2: Platform testing strategy

Page 105: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

94

6.1.5 Main test plan

Database Testing

Testing strategy Feature to be tested Test activities Duration

Unit

1. Individual tables

2. Constraint and independence

between tables

3. Attribute size

4. Operating system

compatibility

5. Database Max size

6. Procedures validation

7. Type validation

Checking the validity of

all database components

by applying different test

case

2 Day

Acceptance

1. Accessibility

2. Navigation

3. Appearance

4. Operating system

compatibility

Test the interface and

database performance to

reach acceptance results of

ease of use

4 Days

Platform Testing

Testing strategy Feature to be tested Test activities Duration

Functional

All platform features:

1. Registration

2. Export dataset from different

charts.

3. Dynamic data visualizations

4. Control panel system

administration

5. User dashboard for review and

update of data entry

6. Direct contact with the Sanea’a

team

7. Log out

Checking the validity

of all platform functions

by applying different test

cases

3 Days

Non-functional

“Graphical User

Interface”

1. Responsive interfaces for

different screens

2. Navigation between internal

webpages

3. Appearance

4. Consistency of webpages

content

5. Usability

Test platform interfaces to

reach acceptance results of

ease of use

2 Days

Table 6-2 : Main test plan

Page 106: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

95

6.2 Test Cases

6.2.1 Black box test cases

No Test cases Pass/

Fail

Type of

raised

error

Attempted solutions

1. Open the platform Pass

None

Load platform correctly

2. Retrieve events information from database Pass Retrieve event data correctly

3. Retrieve user data from database Pass Retrieve user data succeed

4. Retrieve admin data from database Pass Retrieve admin data succeed

5. Control panel for the system administration Pass Successful

6. Add new event information correctly

Pass Add new information in

database succeed

7. Login Pass Logged in

8. Logout Pass Logged out

9. Sign in Pass Signed in

Table 6-3: Black box test cases

6.2.2 Database test cases

The database is a software subsystem which provides an efficient way to store user data and allows

requesting it via a structured query. Not only does it stores the critical business information but also

functions as the backbone of an entire application. Hence, database testing is essential for software testers

to ensure the system is working correctly. Database testing is a means to validate the data stored in the

database, objects controlling data, and the functionality wrapped around it. The databases use objects to

manage data like tables for storage, views for representation, and functions/triggers for manipulation.

Page 107: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

96

No Test cases Pass/ Fail

Type of

raised

error

Attempted solutions

1.

Database

schema

Table names Pass

None

All table name set correctly

2. Field names Pass All field name set correctly

3. Data types Pass

Length and data type of keys

and indexes are maintained

as per requirement.

4. Size of each attribute Pass All size is suitable field

name.

5. Primary keys Pass All primary keys were set

correctly.

6. Foreign keys Pass

All foreign keys between

tables set correctly and

completely indexed for easy

retrieval and search.

7.

Data

Mapping

Check whether the

fields in the UI/front-

end forms are mapped

consistently with the

corresponding fields in

the database tables.

Pass None

All of the entered data are

stored in the database, that

error messages appear when

the wrong entry is given, and

that the data is forwarded to

a declared database. The

new entry is assigned a

unique id, which can be used

to access this information

later.

8.

Check if the a

corresponding CRUD

(Create, Retrieve,

Update and Delete) is

Pass None

platform users can perform

their accessibility correctly

and efficiently.

Page 108: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

97

invoked and whether

the invoked action in

itself is successful or

not.

9. Data

integrity

This means that

following any of the

CRUD operations, the

updated and most

recent values/status of

shared data should

appear on all the forms

and screens.

Pass None

Updated values appears

consistently the same in

different screen.

10.

Trigger

Updates the data

correctly once they

have been executed

Pass

None All CRUD operations work

in correct manner.

11.

Validation of the

required

Update/Insert/Delete

triggers functionality

in the realm of the

application under test.

Pass

12. Stored

Procedures

Perform an operation

from the front end (UI)

of the application and

check for the execution

of the stored procedure

and its results.

Pass None

All retrieve data from

database tables able to

upload data and retrieve

easily in case of requesting.

13. Field

constraints

Perform a front-end

operation which

exercises the database

object condition.

Pass None

The results are correct after

validating the constraints

with SQL queries.

14.

Accessibility

Check the

authorization of the

required user to

perform only those

levels of actions which

are required by the

application.

Pass None

All the users have required

levels of access on the

specified database as

required by the business

specifications.

Page 109: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

98

Table 6-4: Database test cases

6.2.3 Functional test cases

6.2.3.1 User test cases

• Test case 1: Register

No. Test Cases

Pass/

Fail

Type of

raised error Attempted Solution

1. Username field empty. Pass

None

Function work correctly,

user can’t create account if

missing one of these fields.

2. Email field empty. Pass

3. Password field empty. Pass

4. Re-password field empty. Pass

5. The email has already existed Pass

Success, platform check if

user insert a registered

email before.

6. The username has already existed Pass Platform check if user insert

a username used before.

7. Password not match Pass

Function work correctly,

platform check if user insert

password and re-password,

but they didn't match.

8. Validate entry email Pass Succus

9. Validate entry password Pass Succus

10. Password encryption Pass Encryption the password.

11. Send activation link by email Pass Notification by email to the

user for active his account.

Table 6-5: User registration test cases

• Test Case 2: Login

This test case illustrates different scenarios the user may go through when he inserts his information

to login to the platform

15. Data secured from

unauthorized access Pass None

Page 110: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

99

Precondition: users should already have an account.

No. Test Case Pass/ Fail

Type of

raised error Attempted solutions

1. Email and password are correct Pass

None

Platform check if user insert

his email and password in

each field correctly.

2. The password or email are not correct Pass

Platform check if user insert

his email or password are not

correctly.

3. Password field empty Pass Platform check if user left

the password field.

4. Email field empty Pass Platform check if user left

the email field.

Table 6-6: User login test cases

• Test Case 3: Forgot password

This test case illustrates different scenarios the user may go through when forget his password.

No. Test Case

Pass/

Fail

Type of

raised error Attempted solutions

1. Email field empty Pass

None

Function work correctly,

platform check if user left

the email field.

2. Validate entry email Pass Platform check if user insert

correct email for his account.

3. Send reset password link by email Pass Notification by email to the

user to reset his password

Table 6-7: User forget password test cases

• Test Case 4: Contact us test cases

No. Test Case Pass/ Fail Type of

raised error Attempted solutions

1. Validate email address before sending. Pass

Successfully.

2. Email subject should not be blank. Pass Platform check if user left

the email subject field.

Page 111: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

100

3. Email sender name should not be blank. Pass

None

Platform check if user left

the sender name field.

4. Receive Email from user in correct

manner. Pass

Message received

successfully.

5. Check that the user can send a message. Pass Message sent successfully.

Table 6-8: Contact us test cases

• Test Case 5: User profile

No

. Test Case Pass/ Fail

Type of

raised error Attempted solutions

1. Add new event Pass

None

Add new event information

correctly.

2. Update entry events Pass Succus, user can update

entry events information.

3. View entry events Pass

Retrieve entry events

information from database

correctly.

4. Logout Pass Logged out.

Table 6-9: User profile test cases

6.2.3.2 Admin test case

• Test Case 1: Control panel system administration

No. Test Case Pass/ Fail Type of

raised error Attempted solution

1. Login to admin dashboard Pass

Succus, only authorized

users can login

2. Add new events information Pass Add new event information

correctly.

3. Update events information Pass Succus, admin can update

any events information.

4. View events information Pass Succus, admin can review

any events information.

Page 112: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

101

5. Delete events information Pass None Succus, admin can delete

any events information.

6. Visualize dataset of events information Pass

Succus, admin can visualize

new events information to

the platform.

7. Logout from admin dashboard Pass Logged out

Table 6-10: Control panel system administration test cases

6.2.3.3 Exploration and visualization dataset test cases

• Test Case 1: Spatial and temporal visualization chart

No. Test Case Pass/ Fail Type of

raised error Attempted solutions

1. Load the chart . Pass

None

Chart work normally as well

quickly.

2. Retrieve event information from

database. Pass Retrieve data correctly.

3. Zoom-in and zoom-out in each MENA

countries and cites. Pass Successful

4. Filter the events information based on

event themes. Pass Filter work correctly

5.

Exploring the data sets across a timeline

using a lever/slider to move from one-

time frame to another.

Pass Slider work correctly

6. Tooltip for each pin Pass Successful

7. Brief description about each event when

user click on the pin Pass

Retrieve event information

from database correctly

8. All chart layers and features connected Pass All layers and features for

each event work normally

9. Data correlation and relationships

among variables. Pass Successful

10. Ease of use for novice Pass

User be able to examine

data and find patterns,

distributions, correlations.

Page 113: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

102

11. Data storytelling. Pass

Users be able to select data

elements and filters, and

then highlight and modify

options to change data

perspectives

Table 6-11: Spatial and temporal visualization chart test cases

• Test Case 2: Statistical charts (Tree map, Bar chart , Radiable chart, Doughnut chart , Bubble chart)

No. Test Case Pass/ Fail Type of

raised error Attempted solutions

1. Load the chart Pass

None

Chart work normally as well

quickly.

2. Retrieve data from JSON file Pass Retrieve data correctly

3. Move to next level in the chart Pass Work correctly

4. Move to previews level in the chart Pass Work correctly

5. Tooltip for each element Pass Tooltip work correctly

6. legend of the chart Pass Successful

7. All chart layers and features connected Pass Successful

8. Data correlation and relationships

among variables. Pass

Successful

9. Ease of use for novice Pass

User be able to examine

data and find patterns,

distributions, correlations.

10. Data storytelling Pass

Users be able to select data

elements and filters, and

then highlight and modify

options to change data

perspectives

Table 6-12: Statistical visualization charts test cases

• Test Case 3: Middle East and North Africa map visualization chart

No. Test Case Pass/ Fail Type of

raised error Attempted solutions

Page 114: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

103

1. Load the chart Pass

None

Chart work normally as well

quickly

2. Retrieve event information from JSON Pass Retrieve data correctly

3. Zoom-in and zoom-out in each MENA

counties and cites. Pass

Successful

4. Tooltip for each pin Pass Tool tip work correctly

5. legend of the chart Pass Successful

6. All chart layers and features connected Pass All layers and features for

each event work normally

7. Data correlation and relationships

among data. Pass

Successful

8. Ease of use for novice Pass

User be able to examine

data and find patterns,

distributions, correlations.

9. Data storytelling Pass

Users be able to select data

elements and filters, and

then highlight and modify

options to change data

perspectives

Table 6-13: MENA map visualization chart test cases

• Test Case 4: Integration between three different charts

No. Test Case Pass/ Fail Type of

raised error Attempted solutions

1. Load the chart Pass

Chart work normally as well

quickly

2. Retrieve event information from

database and JSON file Pass

Retriever data

3.

Filter the data based on:

1- Selected type of events

2- Selected country

Pass

Successful

4. All three charts work together Pass Work correctly

5. Brief description about organizations

and sponsors in the region Pass

Retrieve data correctly

Page 115: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

104

6. Tooltip for each pin Pass

None

Successful

7. Reset the chart Pass Work correctly

8. All chart layers and features connected Pass All layers and features for

each event work normally

9. Data correlation and relationships

among data. Pass

Successful

10. Ease of use for novice Pass

User be able to examine

data and find patterns,

distributions, correlations.

11. Data storytelling Pass

Users be able to select data

elements and filters, and

then highlight and modify

options to change data

perspectives

Table 6-14: Integration between three different charts test cases

6.2.4 Non-Functional (Graphical User Interface) test cases

• Test Case 1: Overview

No. Test Case Pass/ Fail Type of

raised error Attempted solutions

1. All required objects, elements, fields,

buttons, labels and links are available. Pass

None

Successful

2. Page title of each page. Pass Successful

3. URLs of each page. Pass Successful

4. Buttons follow the platform standards

for size and position. Pass Successful

5.

Confirmation messages should be

displayed before performing any update

or delete operation.

Pass Successful

Table 6-15: GUI overview test cases

• Test Case 2: Appearance

No. Test Case Pass/ Fail Type of

raised error Attempted solutions

Page 116: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

105

1. Web page background color

distraction free & correct color Pass

None

Successful

2. Color of the warning messages should

be tested Pass

Successful

3. Hyperlink colors standard according to

platform Pass

Successful

4. Web page background color

distraction free & correct color Pass

Successful

Table 6-16: GUI appearance test cases

• Test Case 3: Consistency of webpages content

No. Test Case Pass/ Fail Type of

raised error Attempted solutions

1. Content alignment Pass

None

Successful

2. Screen prompts specified in the correct

screen font Pass Successful

3. Spelling and grammar for the content

of platform webpages is correct Pass Successful

4. Terminologies used in platform

webpages are clear to the public user Pass Successful

Table 6-17: GUI consistency of webpages content test cases

• Test Case 4: Navigation between internal webpages

No. Test Case Pass/ Fail Type of

raised error Attempted solutions

1. Tabs loading time Pass

None

All tabs loaded on time

2. Scroll bar is displayed when required Pass Successful

3. Screens accessible via buttons on this

screen be accessed correctly Pass Successful

4. User can access to home on every

single page Pass Successful

Table 6-18: GUI navigation test cases

• Test Case 5: Usability

Page 117: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

106

No. Test Case Pass/ Fail Type of

raised error Attempted solutions

1. Users find easily what they are looking

for Pass

None

All tabs loaded on time

2. Platform responsive and readable for all

screen resolution Pass Successful

3.

Test for the functionality of all the

controls like buttons, labels, check

boxes, radio buttons, text boxes, etc.

Pass Successful

4. Platform printed without cutting off the

text Pass Successful

Table 6-19: GUI usability test cases

6.3 Test Result

6.3.1 Summary result of black box testing

The results arranged to match the numerical order of the previous cases black box plan, the test result

represent each case after the error fixed.

Verifying outgoing data

(data comes from database to

represent at the interface)

Verifying incoming data

(data that entered through that interface

and stored at the database) All the stored data in the database are retrieved

correctly when its requested, and easily without

any messing up or tampered parts and stored in

the exact field inside the database. And the

validation message shows correctly as expected.

All the entered data across up the interface

normally and stored in the designed field inside

the database with the ability to be retrieved

only by authorized requested. And for

untheorized users the message will be shown

that nothing is retrieved, and the information

entered is wrong.

Case Result

1. The platform URL link open faster and loading operation done successfully without delay

or platform hanging or crash.

2. Retrieve events data correctly.

Page 118: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

107

3. All retrieve data from user information table able to upload data and retrieve easily in case

of requesting.

4. All retrieve data from admin information table able to upload data and retrieve easily in

case of requesting.

5. All features of controls for system administrator work correctly.

6. Add events information from user interface to the event table able to upload data and

retrieve easily in case of requesting.

7. Logged in

8. Logged out.

9. Open platform

Table 6-20: Summary result of black box testing

6.3.2 Summary result of main plan testing

The results arranged to match the numerical order of the previous main plan test, the test result represent

each test strategy after the error fixed.

Test strategy Result

Unit

All database components set correctly including : Tables, field names, data

type, size of each attribute.

Database MAXSIZE is suitable to project.

Platform in the back-end (server-side) work correctly.

Functional

Full registration process is valid.

Log in as admin works accurate and correctly.

Log in as end-user works accurate and correctly.

Manage as admin works accurate and correctly.

Manage as end-user works accurate and correctly.

Page 119: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

108

Non-Functional

Response time: when users request a functional requirements, the platform

should respond rapidly.

Navigation: the platform help the user to navigate easily through the

webpages and guide to navigate easily.

Appearance: Looking pleasant or even attractive, often promoting

confidence in its use.

Consistency: platform content free from mistake and having the values that

the user expects.

Usability: Platform is easy for the user to become familiar with, and achieve

their objective

Table 6-21: Summary result of main plan testing

The result of testing after applying important testing such as unit testing, system testing and acceptance

testing. Sanea’a platform has become free of errors preforming all the functional and non-functional

requirements and be able to retrieve data in an efficient way on a friendly user interfaces application and

allowing multiple approved users to use the platform at the same time working correctly and available at

any time.

6.4 Usability and Social Impact

6.4.1 Social Impact

As described above in how our platform harnessing the massive data of time-bounded events and

facilitates obtaining the historical information of such an event by soliciting contributions from

society in an effortless way.

Themes from technology-centric and social-centric hackathons are often aligned with global trends.

Data-driven analytics from our Sanea’a platform suggest that time-bounded events in the MENA

region contribute beyond producing digital artifacts, with building capacity and technical expertise,

building community and expanding social networks, accelerating the technology innovation lifecycle

and exposing participants to different modes of design thinking, and shaping cross-domain identities

for the human capital in these regions.

Page 120: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

109

The motivation to participates in hackathons is an important element in the innovation eco-system.

Therefore, the analytical visualization in the platform motivate people to participate in hackathons,

leading to connect with like-minded people in the technology sector and seek opportunities for

meaningful contributions to digital innovation. Analytics-driven recommendations derived from

these insights can help the stakeholders including analysts, researchers and decision makers. Also

simplified for the organizer to plan for the next event.

Users are navigating through a dense information, coming across a beautiful graphic, Charts and

graphs have evolved into not just tools to detect patterns but also as vehicles to communicate ideas.

In our MENA Hackathon platform, data graphics are used to enhance exploratory search scenarios

with a different lens on the same dataset, whereas other times the graphics tell the entire story by

navigating through the graphic landscapes.

6.4.2 Usability and user acceptance

Sanea’a team attempted to address all the components of the events and achieved the requirements

enhanced from UX design done earlier (personas and behavioral architypes) to meet the user’s

satisfaction.

This table below investigates the results of an acceptance of 4 stakeholders: technology expert, a

graphic designer, hackathon organizer and business incubator measuring both perceived aesthetic as

well as the efficiency and effectiveness of retrieval tasks across a set of more than 5 different data

visualization techniques. The data visualizations represent a different component of hackathons, which

has been normalized in terms of color, typography and layout balance. This evaluation test measured

parameters such as Accessibility, Navigation, Accuracy, Response Time and Appearance.

Page 121: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

110

User Evaluation

Users

Accessibility Navigation Response Time Appearance

Good Medium Low Good Medium Low Good Medium Low Good Medium Low Good Medium Low

User A √ √ √ √ √

User B √ √ √ √ √

User C √ √ √ √ √

User D √ √ √ √ √

Table 6-22: User evaluation

The website is freely accessible over the world wide web network it can be reached in any time through

a laptop, phone or tablet, friendly to use, users can navigate through the site very easily. Sanea’a team

and some volunteers contribute to insert a massive data into the platform more than 100 records, the

content are reliable according to the enhanced concept where the data were openly editable but now

the content verified manually by the admins of the website once record successfully verified it directly

goes for visualization live on the server, the main issue is the burdened with a verification process .

And one of the future plans is to develop the system to perform this process systematically using

modern techniques.

Moreover, the project has been evaluated under a college committee and some professors from the

conferences, competitions and exhibition that has been participated in. It shows a good expression and

we harness their feedbacks to develop our system.

One of the common problems associated with measuring the usability of information visualizations is

understanding human’s visual perception and cognitive processing in interacting with dynamic data

graphs. Hence, the team proposing a future plan is to establish a framework of eye tracking metrics

related to interacting with information visualizations, inspired by research methodologies originally

developed for analyzing graphic visualizations, explore eye-tracking methods that measure various

static and dynamic aspects of visual perception, and their relations to underlying cognitive processes.

Page 122: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

111

The eye fixations and visual scanning patterns will allow us to analyze and quantify what information

visualization elements viewers encode, retrieve, and recall from memory.

Page 123: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

112

Page 124: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

113

Chapter 7: Conclusions

The increasingly digitized, distributed and disintermediated future of the technology industry in the

MENA region is predicted to have hackathons, hackers and potentially agile models of development

embedded as a core part of its growth strategy. Overall, time-bounded events in this region appear to

interest communities because of the opportunities for rapid collocation and the allotted time and space for

working intensively with teams in modes that are not often supported in their day-to-day environments of

work, leisure or study.

The contribution of this project outlines the trends and issues relevant to hackathons in the MENA region

and focuses on how insights can be sought by dynamically exploring information visualizations that are

crowd-sourced from the community. This project has shed light on insights that can be drawn from

collaborative development of digital systems in a concentrated time period.

Themes from technology-centric and social-centric hackathons are often aligned with Data-driven

analytics from our Sanea’a platform suggest that time-bounded events in the MENA region contribute

beyond producing digital artifacts, with building capacity and technical expertise, building community

and expanding social networks, and exposing participants to different modes of design and shaping cross-

domain multidisciplinary identities. Future directions for research include reporting insights from the

typology of hackathons in the regions and the trends in spatial and temporal dynamics of these time-

bounded events.

7.1 Evaluation

Working on Sanea’a platform was a great chance to explore the development environment. Furthermore,

it improved our skills in programming, self-learning, team working, analyzing problems, research skills

and decision-making.

In this project, the objective listed below were achieved:

1. Develop an Arabic version of user interface.

2. Allow user to visualize the phenomenon of historical and upcoming time-bounded events in the

geographically scope of the MENA region which embeds information visualizations that can be

explored spatially and temporally.

3. The platform is a crowdsourced event by allowing public user to add new events.

4. Design and develop more than 5 data-driven analytics charts for decision making by addressing

Page 125: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

114

the main components of time bounded events (i.e. date, time, technology used, themes, and prizes,

gender and number of participants) for allow user to explore the data to gain insights in different

levels, scales and view the data geospatially.

5. Platform provide secure registration system to allow user to sign in /log in.

6. Allow user to edit /view all events information they add it.

7. Allow administrator to login in administrator control panel.

8. Allow administrator to add/visualize new events information.

9. Allow administrator to edit/delete/view all events information in database by develop CRUD

application used to manipulate data in the database.

10. Allow user and administrator to log out.

7.2 Future work

There are many features we planning to add it into our platform, such as:

1. Develop an English version of user interface.

2. Validate new events information automated.

3. Make platform prediction to user for best place, time, theme...etc. to organize events by using data

mining techniques.

4. Design and develop more dynamic interactive visualization charts.

Page 126: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

115

REFERENCES

[1] N. H. Khalifa, Q. V. Nguyen, S. Simoff, and D. Catchpoole, “Interaction Visualisation of Complex

Genomic Data with Game Engines,” 2017 21st International Conference Information Visualisation (IV),

2017.

[2] T. Plank and M. Helfert, “Interactive Visualization and Big Data - A Management

Perspective,” Proceedings of the 12th International Conference on Web Information Systems and

Technologies, 2016.

[3] S. Almishari, N. Salamah, M. Alwan, N. Alkhalifa, and A. Al-Wabil, “The Rise of Hackathon-Led

Innovation in the MENA Region: Visualizing Spatial and Temporal Dynamics of Time-Bounded Events,”

Social Computing and Social Media. Applications and Analytics Lecture Notes in Computer Science, pp.

367–377, 2017.

[4] Briscoe, G. and C. Mulligan (2014). "Digital Innovation: The Hackathon Phenomenon." London:

Creativeworks London.

[5] Frey, F. J., and Luks, M. (2016). The Innovation-Driven Hackathon – one Means for accel-erating

Innovation. Proceedings of the 21st European Conference on Pattern Languages of Programs (p. N.A.).

N.A.: EuroPLoP ’16.

[6] Dictionary by Merriam-Webster: America's most-trusted online dictionary,” Merriam-Webster.

[Online]. Available: https://www.merriam-webster.com/. [Accessed: 10-Apr-2018].

[7] . Chen and H. Zhou, “Research and application of dynamic and interactive data visualization based

on D3,” 2016 International Conference on Audio, Language and Image Processing (ICALIP), 2016.

[8] S. Lee, J.-Y. Jo, and Y. Kim, “Performance testing of web-based data visualization,” 2014 IEEE

International Conference on Systems, Man, and Cybernetics (SMC), 2014.

[9] A. Draghici, T. Agiali, and C. Chilipirea, “Visualization system for human mobility analysis,” 2015

14th RoEduNet International Conference - Networking in Education and Research (RoEduNet NER),

2015, IEEE Computer Society.

[10] Chen and H. Zhou, “Research and application of dynamic and interactive data visualization based

on D3,” 2016 International Conference on Audio, Language and Image Processing (ICALIP), 2016.

Page 127: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

116

[11]S. Ian, Software engineering, 9th ed. 2011.

[12] Buschmann,F.,Meunier,R.,Rohnert,H.,Sommerlad,P.andStal,M.(1996).“Pattern-Oriented Software

Architecture”. John Wiley and Sons. ISBN 0-471-95869-7.

[13] Shklar,L.and Rosen,R.(2003).“Web Application Architecture: Principles,Protocols and Practices”.

John Wiley and Sons. ISDN 0-471-48656-6.

[14]User Interface Elements | Usability.gov. [online] Usability.gov. Available at:

https://www.usability.gov/how-to-and-tools/methods/user-interface-elements.html [Accessed 24 Nov.

2017].

[15] BusinessDictionary.com. (2017). What is user interface? definition and meaning. [online] Available

at: http://www.businessdictionary.com/definition/user-interface.htm [Accessed 8 Dec. 2017].

[16]T. Malone, R. Laubacher and C. Dellarocas, "Harnessing Crowds: Mapping the Genome of Collective

Intelligence", 2009.

[17] Pirkka, R. (2011) '', User-Centered Design in Agile Software Development Harvard Business Review”.

Available at: http://tampub.uta.fi/bitstream/handle/10024/82310/gradu04854.pdf; (Accessed: April 2011)

[18] (2018). Agile Testing Overview. [online] Available at

https://www.tutorialspoint.com/agile_testing/agile_testing_overview.htm [Accessed 8 Apr. 2018].

[19] “Acceptance Testing,” Software Testing Fundamentals, 03-Mar-2018. [Online]. Available:

http://softwaretestingfundamentals.com/acceptance-testing/. [Accessed: 10-Apr-2018].

[20] “UI & GUI Testing | Beginners Guide for User Interface Testing,” Ranorex. [Online]. Available:

https://www.ranorex.com/resources/testing-wiki/gui-testing/. [Accessed: 10-Apr-2018].

[21] “Agile Testing – Effective, Sharp and Accurate Test Methodology ,” Software Testing Solution Blog, 23-Feb-

2016. [Online]. Available: http://softwaretestingsolution.com/blog/agile-testing-effective-sharp-and-accurate-

test-methodology/. [Accessed: 10-Apr-2018].

[22] T. M. Connolly and C. E. Beg, Database systems: a practical approach to design, implementation,

and management. Boston: Pearson, 2015.

[23] Behavioral Archetypes,” Smashing Ideas, 16-Nov-2017. [Online]. Available:

https://smashingideas.com/behavioral-archetypes/. [Accessed: 10-Apr-2018].

Page 128: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

117

[24] Muzammil,K. and Sarwar, K. (2011) '', Data and Information Visualization Methods, and

Interactive Mechanisms: A Survey, 34(), pp. [Online]. Available

at: https://pdfs.semanticscholar.org/4ff1/f2fff62e899f4b9f507b2eb4bb297b7febc2.pdf(Accessed: ).

Page 129: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

118

Appendix A: Project Management Plan

Team Communication Information

Name Email ID

Hailah Al-Qaffary [email protected] 433007288

Maha Al-Nasrallah [email protected] 433006866

Taghreed Al-Kammash [email protected] 434004631

Amal Al- Robayea [email protected] 434003622

Project Communication Matrix

Communication Type Objective of

Communication

Format

( Method ) Frequency Audience

Selecting project Registering and

selecting projects. Face to

face

Once 2/5/2017

Project team,

Supervisor

Kickoff meeting Introduction of project ,

and shaping our idea. Once 25/9/2017

Project team meeting

Review project status

with project team,

divide the tasks and

share ideas .

Face to

face and

conference

call

Twice a week Project team

Project status meeting Report the status of the

project to supervisor.

Face to

face

Weekly Project team,

Supervisor

Topic presentation Explain and clarification

of the project. Once 25/10/2017

Project team,

Supervisor,

Committee

Final graduation

(submission of project

proposal)

Document in accordance

to the requirement of

GP.

Hard copy Once 12/4/2018

Project team,

Supervisor,

Committee,

Coordinators

Page 130: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

119

Project Publication Management

Contest

name

iHSI International

Conference on Intelligent

Human System Integration

URF-RTC 4rd Annual

Undergraduate Research Forum

URC 10th Annual

Undergraduate Research Conference

On Applied Computing

The 2st National Computing

Competition

EMC-Dell Envision The Future

Held at The JW Marriott Marquis Dubai

Prince Sultan University

Zayed University King Saud University

Host city,

country

Dubai , UAE Riyad, Saudi

Arabia Dubai , UAE Riyad, Saudi Arabia Dubai , UAE

Abstract

submission 5th Nov, 2017 18 Feb, 2018 20 Mar, 2018 15 Dec ,2017

Acceptance

notification 18 Oct , 2017 31 Dec, 2017 11 Mar, 2018 30 Mar, 2018 20 Feb, 2018

Design

layout

submission

ــــــــــــــــــ 6th Apr, 2018 ــــــــــــــــــ ــــــــــــــــــ ــــــــــــــــــ

Final

submission

1 Nov , 2017 1 Mar, 2018 25 – 26 Apr, 2018 1 Apr, 2018 25th Jul, 2018

Held on 7 – 9 Jan , 2018 13-14 Mar,2018 25 – 26 Apr, 2018 25 – 26 Apr, 2018 4 Sep, 2018

Submission

details

Paper “Personas and Behavioral Archetypes in

User Research: Insights from UX Design in

Crowd Sourcing Platforms for

Hackathons and Time-Bound

Events”

Paper (20 Min)

URF abstract

book

Poster Poster and video Open source

project

Page 131: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

120

Gantt Chart

Team

Members Color

H

M

T

A

All

members

Page 132: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

121

Page 133: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

122

Contingency and Risk Mitigation Plan

Anticipated risks Contingency Plan

1 Retreat team members Increased collaboration and information sharing on

the team.

2 Misaligned expectations and scope

creep

Set prioritize functions for a website and define the

initial scope of a site based on those prioritize to

keep the project quality high.

3 Requirements inflation Constant involvement of customers and

developers.

4 Platform interfaces not responding

for different screen sizes

Use Bootstrap patterns and practices when

building the platform, to get responsive web

platform for different devices.

5 Platform got hacked Backup version of website and make security

measures up to date.

Methodology

After examining the existing methodologies for designing crowdsourcing platform, we selected to

and Agile Software Development process to follow the design of the “Sanea'a” platform.

For the related methodology

• Early testing gives higher quality and less defects.

• Team self-assessment in every sprint provide early and regular process improvement.

• Iterative life-cycle is associated with lower risk and better success, productivity and defect rete.

• Iterative development accommodates and provokes early change which is suitable for software

product development.

• Risks are mitigated and discovered early as risk-driven iterative development forces taking the

hardest features, issues and problem first.

Agile life -cycle

The Agile methodology supports flexible and creative processes prescriptive processes. Nonetheless, the

iterative and incremental life-cycle of an agile project is a defined process that require discipline to follow.

The process is composed of self-contained mini projects (sprints) and release. Each sprint iterations can

vary from 2 to 4 weeks. In other word, agile projects usually run multiple sprints before the software is

released, and the project can be divided into multiple releases that each have their own scope and schedule.

Page 134: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

123

Agile sprint iterations

1. Concept & prototyping sprint:

2. System analysis sprint:

Discovering

In this phase, a primary study for project is done to identify the problem, requirements,

goals and define the project scope and to create communication plan, schedule to deliver

project plan.

Design In this phase, we shall design system features to distinguish between our system and similar

systems.

Develop

In this phase, we will prototype the system design and specify the functional and non-

functional requirements by analyzing the characteristic and behave of our main stakeholders

to refine the website based on their needs and requirements.

Test In this phase, summarizes the system’s perceived readiness.

Discovering

In this phase, we need to understand and empathize with our users’ needs and their behavioral

patterns so that we can anticipate how they will interact with our system. Personas are

fictional characters, representing slices of our customer base. These semi-fictional

representations of our prototypical customer are developed based on customer demographics,

along with our own understanding of their motivations and needs. Additionally, a primary

Page 135: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

124

3. System architecture sprint:

4. Implementation sprint:

studying of the system by examining its component parts and their interactions. To organize

information gathered during requirements determination into a meaningful representation of

process, data, and logic views of the information systems.

Design In this phase, we shall design some scenarios in which the persona has needs to use the system

to create a more plausible environment.

Develop In this phase, we shall use collaborative toolkit to help us to build behavioral archetypes

based on the market profiles of our target audience

Test

In this phase, after designing relevant scenarios and motivational mindsets that influence the

behavior of our target audience, we will have the basis for behavioral archetypes. These initial

behavioral archetypes will help us to evaluate behavioral commonalities and differences

amongst our target audience that help us to determine which solutions or features to focus on.

Discovering

In this phase , we defines the structure, behavior, and more views of a system. A system

architecture primarily concentrates on the internal interfaces among the system's

components or subsystems, and on the interface(s) between the system and its external

environment, especially the user.

Design

In this phase, we shall design models and diagrams to visually represent a system that we

want to build, for better understanding the functionality of a system, data flow, set of actions,

services, structure of database, stored data and functions that the system needs to perform.

Develop In this phase, we shall develop the informational content of the elements comprising a system,

the relationships among those elements, and the rules governing those relationships.

Test In this phase, we shall test the prototype that we created to insure its initial success.

Discovering

In this phase, understand the need arises for interactive information visualizations to aid in

the processing, comprehension, tracking, and retention of data on time-bounded events in

static, animated, dynamic and interactive visuals

Design

In this phase, we shall design charts for data visualizations in different patterns to provide a

better understanding to the users while navigating through the different datasets through the

portal. Each chart provides different views and explores depending on the user needs.

Develop

In this phase, we shall be producing interactive and dynamic data visualization by using (d3.js

library) that could allow users to navigation through the platform by choosing between

searching, exploring or interacting with the different components and visualizations.

Test

In this phase, we shall test interactive platform that users can explore the data to gain insights

from the data visualizations and analysis. The idea is to trigger the sense of search and

exploration for the user needs.

Page 136: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

125

5. Testing sprint:

Appendix B: Personas Card

Discovering

Before Sanea’a platform launch, it undergoes a thorough testing process to ensure that the

platform is working in the manner in which it was intended. There are four main stages of

testing that need to be completed before a program can be cleared for use: unit testing,

integration testing, system testing, and acceptance testing.

Design

In this phase, we shall apply verification and validation procedures that are used together for

checking that a system meets requirements and specifications and that it fulfills its intended

purpose.

Develop

First, apply unit testing where the program is submitted to assessments that focus on specific

units or components of the software to determine whether each one is fully functional. The

main aim of this endeavor is to determine whether the platform functions as designed.

The next level, Integration testing allows individuals the opportunity to combine all of the

units within a program and test them as a group. This testing level is designed to find interface

defects between the modules/functions. The goal at this level is to evaluate whether the

system has complied with all of the outlined requirements and to see that it meets Quality

Standards.

After that , apply system testing is very important because it verifies that the platform meets

the technical, functional, and business requirements that were set by the personas.

Test

The final level, acceptance testing is conducted to determine whether the system is

ready for release. Once this process has been completed and the software has passed,

the platform will then be launch on the world wide web.

Page 137: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

126

Page 138: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

127

Page 139: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

128

Page 140: DYNAMIC D VISUALIZATION IN A C PLATFORM FOR H T -B E … · for her continuous support, encouragement, vision, guidance, advice, trust, invaluable ... socio-cultural and contextual

129