Sunteți pe pagina 1din 85

THE TAGHAYYUR (News Portal)

SHIFA QUDDUS
M. BURHAN SIDDIQUE
ABDUL REHMAN
ZAIN ALI
MUHAMMAD SHAHBAZ

SESSION: 2014-2018

Roll No:
12804
12802
12823
12789
12822
DEPARTMENT OF INFORMATION TECHNOLOGY

GOVT. M.A.O COLLEGE LAHORE


i

THE TAGGAYYUR (NEWS PORTAL)

Submitted to GOVT. M.A.O COLLEGE (PUNJAB University) Lahore


In partial fulfillment of the requirements
For the award of degree of

Bachelors
IN
Information Technology

By
Shifa Quddus
M. Burhan Siddiqui
Abdul Rehman
Zain Ali
Muhammad Shahbaz

SESSION: 2014-2018

Roll No:

12804
12802
12823
12789
12822
DEPARTMENT OF INFORMATION TECHNOLOGY.

GOVT. M.A.O COLLEGE LAHORE.


ii

DECLARATION

Shifa Quddus Roll No. 9245, M. Burhan Siddiqui Roll No. 9203, Abdul Rehman Roll No.
9217, Zain Ali Roll No. 9240 and Muhammad Shahbaz Roll No. 9216 student of Government
M.A.O College Lahore. In the subject of session 2014-2018, hereby declare that the matter
printed in the thesis titled THE TAGHAYYUR (NEWS PORTAL) is our own work and has
not been printed, published and submitted as research work, thesis or publication in any form
in any University, Research Institution etc. in Pakistan or abroad.

___________________
Dated: ____________ Signatures of Deponent
iii

RESEARCH COMPLETION CERTIFICATE

Certified that the research work contained in this thesis titled THE
TAGHAYYUR (NEWS PORTAL) carried out and completed by Shifa Quddus Roll No.
9245, M. Burhan Siddiqui Roll No. 9203, Abdul Rehman Roll No. 9217, Zain Ali Roll
No. 9240 and Muhammad Shahbaz Roll No. 9216, Under my supervision.

Date Supervisor Signature


ZEESHAN SHABEER
Lecturer
Department of Information
Technology.
Govt. M.A.O College
Lahore.

Submitted Through:

Mr. Zeeshan Shabeer ________________________


Lecturer: Department of Information Controller of Examinations
Govt. M.A.O College
Technology, Lahore.
Govt. M.A.O College Lahore.
iv

Abstract

This project basically consists of modules that contain news, articles, blogs and descriptions from
around the world of various categories (Pakistan, World, Sports, Life Style, Weather, Politics,
Business, etc.). Every news description has a related video link which assures the reliability and
authenticity of the news. For the ease of the user to show the relatable and concise amount of
news, user have to sign up to generate a customized page.
v

Contents
CHAPTER 1 INTRODUCTION

1.1. INTRODUCTION 1
1.2. OBJECTIVES 1
1.3. PROBLEM STATEMENT 1
1.4. PROJECT SCOPE 2
1.5. CONSTRAINTS 2
1.6. TOOLS AND TECHNOLOGY 2

CHAPTER 2 LITERATURE REVIEW

2.1. EXISTING PRODUCTS 3


2.2. COMPARISON AND ANALYSIS 3

CHAPTER 3 REQUIREMENT SPECIFICATION

3.1 PURPOSE 4
3.2 STAKEHOLDERS LIST (ACTORS) 4
3.3 FUNCTIONAL REQUIREMENTS 4
FR01: Login to Admin & User Panel 4
FR02: User View 4
FR03: Manage News 5
FR04: Manage Pages 5
FR05: Manage Users 5
FR06: Manage Administrative User 5
FR07: Profile 5
FR08: Register 5
3.4 NON-FUNCTIONAL REQUIREMENTS 6
NFR01: Performance 6
NFR02: Documentation 6
lNFR03: Efficiency 6
NFR04: Maintainability 7
NFR05: Availability 7
vi

CHAPTER 4 PROJECT DESIGN

4.1. METHODOLOGY 8
4.2. DESIGN USE CASE 9
4.2.1. Use case for User Login 9
4.2.2. Use case for Favorite Page 11
4.2.3. Use case for Registration Process 13
4.2.4. Use case for User View 15
4.2.5. Use case for Admin Role w.r.t News 17
4.2.6. Use case for Admin Role w.r.t Pages 19
4.2.7. Use case to Admin Role w.r.t User 21
4.2.8. Use case for Admin Role w.r.t Super User Screen 23
4.2.9. Use case for Editor role w.r.t News 25
4.2.10. Use Case for Editor for Sub-Editor 27
4.2.11. Use case for Sub-Editor role w.r.t News Screen 29
4.2.12. Main Use Case Diagram 31
4.2.13. Use Case for Logout 32
4.3 ARCHITECTURE OVERVIEW 34
4.4 GANTT CHART 34

CHAPTER 5 IMPLEMENTATION

5.1. SYSTEM INTEGRATION 35


5.2. ACTIVITY DIAGRAMS 35
5.2.1. Activity Diagram for Admin/Editor/Sub-Editor/User Login 35
5.2.2. Activity Diagram for Favorite Page 36
5.2.3. Activity Diagram for Registration Process 37
5.2.4. Activity Diagram for User View 38
5.2.5. Activity Diagram for Admin Manage News 39
5.2.6. Activity Diagram for Admin Manage Pages 40
5.2.7. Activity Diagram for Admin Manage Users 41
5.2.8. Activity Diagram for Admin Manage Superuser Screen 42
5.2.9. Activity Diagram for Editor Manage News 43
5.2.10. Activity Diagram for Editor Manage Sub-Editor 44
5.2.11. Activity Diagram for Sub-Editor Manage News Screen 45
vii
5.3 SEQUENCE DIAGRAMS 46
5.3.1. Sequence Diagram for Admin News Screen 46
5.3.2. Sequence Diagram for Admin Page Screen 46
5.3.3. Sequence Diagram for Admin Page Administrative User 47
5.3.4. Sequence Diagram for Admin Super-User 47
5.3.5. Sequence Diagram for Editor News 48
5.3.6. Sequence Diagram for Editor Manage Sub-Editor 48
5.3.7. Sequence Diagram for Sub-Editor News 49
5.3.8. Sequence Diagram for General User 49
5.3.9. Sequence Diagram for User View Screen 50
5.4 ERD (ENTITY RELATION DIAGRAM) 51
5.5 DATABASE TABLES 52
5.6 USER INTERFACE 53
5.6.1 User Welcome Interface 53
5.6.2 User Menu 55
5.6.3 User Register 55
5.6.4 User Log In 56
5.6.5 User’s Customized Page 56
5.6.6 User’s Profile 57
5.6.7 Admin Welcome Interface 57
5.6.8 Admin Add News 58
5.6.9 Admin Edit News 58
5.6.10 Admin Manage User 59
5.6.11 Admin Edit User 59

CHAPTER 6 EVALUATION

6.1. UNIT TESTING 60


6.2. TEST CASES 61
6.2.1. Test Case for User Login 61
6.2.2. Test Case to Add News 62
6.2.3. Test Case to Edit News 63
6.2.4. Test Case to Add Page 64
6.2.5. Test Case to Edit Page 65
6.2.6. Test Case to Add administrative user 66
6.2.7. Test Case to Edit administrative user 67
6.2.8. Test Case to Add User 68
6.2.9. Test Case to Edit user 69
6.2.10. Test Case to Edit Profile 70
6.2.11. Test Case to Change Password 71
6.2.12. Test Case to Register 72
viii

CHAPTER 7 CONCLUSIONS & FUTURE WORK

7.1. PROBLEMS FACED 73


7.2. FUTURE WORK 73
7.3. CONCLUSION 73

7.4 Bibliography 74
1

Chapter 1

INTRODUCTION

1.1. Introduction
In the world where there are millions of news sources, a news website among
hundreds of them is not a big deal. Now a days, the real problem is authenticity and being
biased of their perspectives, not the accessibility. Our website will help solve these issues, by
providing a video link or a picture of every news and by giving neutral news and giving every
party’s perspective to let the user decide.

1.2. Objectives
This application was developed by keeping in mind the problems of the current news
world problems. Some of the main objectives of this system that made us develop this are as
follow:
• Create a positive youth’s vision
• Providing quality and authentic content.
• To be SMART (Specific, Measurable, Attainable, Relevant and Timely)

1.3. Problem Statement


This project is part of our FYP as we had limited time to learn our languages
(Bootsrap4, MongoDB and NodeJS) and implement the tools and techniques necessary for
the development of this system. It took great effort and long time to understand the
complexity of this language. There is possibility that many features can be added in this
current version of this system.
2

1.4. Project Scope


This project will consist of three phases the first one is that to take the attendance of
all the students, the second one is to monitor the attendance system and the third one is
attendance manipulation. The project will be created on its due date. This project will consist
of 9 web pages that includes:
• Home
• About Us
• Privacy Policy
• News Description
• News Section
• Sign Up
• Log In
• Change Password
• Users Profile
• Customized News Page

Project Deliverables:
• Scope statement
• Progress reports
• Issues reports
• Weekly meeting notes and progress
• Final product

1.5. Constraints
To use this system, one may or may not be familiar with computer knowledge and
they only should know how to use the website’s admin panel to edit the news. However, the
system is very easy to interact with (User-friendly).

1.6. Tools and Technology


For the development of this application following tools and technologies are used.

• NodeJS
• MongoDB
• Bootstrap4
• JavaScript
3

Chapter 2

LITERATURE REVIEW

2.1. Existing Products

There are many similar sites developed before for showing the current news but they do not
provide that much authenticity of news moreover they are too crowded with news that make
them less visually attractive. Plus, they don’t give the users choice to see news of a particular
section/type.

2.2. Comparison and Analysis


The previous systems serve the same purpose of providing current news, but with a
very boring interface, authenticity of news is very less, with no facility to create a customized
page for each user and not very user-friendly.
This system developed by us not only give a user-friendly interface but also will give
each user that sign up to the website a facility to create a customized page in which they only
get to see the news from the sections they like, they do not need to go through all the
unnecessary news to find their favorite section’s news. Our product also contains a very
colorful and attractive interface with video links and pictures to insure the authenticity.
4

Chapter 3

REQUIREMENT SPECIFICATION

3.1. Purpose
This chapter will serve as the unambiguous guide for the developers, users and
stakeholders of this system. The requirement analysis will help the software designers in
developing this system in accordance with the requirements gathered by requirement
elicitation. This chapter describes all functional and non-functional requirements necessary to
provide a complete and comprehensive description of the requirements necessary to design
and develop the corresponding system.

3.2. Stakeholders List (Actors)


Every system has some stakeholders and users who are interested in the development
of that system. This project has its own list of stakeholders and users. The list of stakeholders
for whom the development of this app will be beneficial are:
• News Editors
• Any staff members like, CEO, Editor, CNE, etc.

3.3. Functional Requirements

FR01: Login to Admin & User Panel


Req. No. Functional Requirements
FR01-01 The system shall allow the admin to use admin panel using the correct
username and password.
FR01-02 If the username and password are correct then the system should grant
access to user panel to the user.

FR02: User View


Req. No. Functional Requirements
FR02-01 Once the user has login to user panel, the system shall allow the user to
view the user panel.
FR02-02 There are multiple options available for users to choose.
5

FR03: Manage News


Req. No. Functional Requirements
FR03-01 The system shall allow the admin to add news.
FR03-02 The system shall allow the admin to edit news.
FR03-03 The system shall allow the admin to delete news.

FR04: Manage Page


Req. No. Functional Requirements
FR03-01 The system shall allow the admin to add Page.
FR03-02 The system shall allow the admin to edit Page.
FR03-03 The system shall allow the admin to remove Page.

FR05: Manage Users


Req. No. Functional Requirements
FR04-01 The system shall allow the admin to add User.
FR04-02 The system shall allow the admin to edit User.
FR04-03 The system shall allow the admin to remove User.

FR06: Manage Administrative User


Req. No. Functional Requirements
FR06-01 The system shall allow the admin to add Administrative User.
FR06-02 The system shall allow the admin to edit Administrative User.
FR06-03 The system shall allow the admin to remove Administrative User.

FR07: Profile

Req. No. Functional Requirements


FR07-01 The system shall allow the user to edit Profile information.
FR07-02 The system shall allow the user to change password.

FR08: Register

Req. No. Functional Requirements


FR08-01 The system shall allow the user to Register to the system.
6
3.4. Non-Functional Requirements

NFR01: Performance
Req. No. Non-Functional Requirements

NFR01-01 Average load time of the system must be less than 10 second.

NFR01-02 Average processing time taken by the system to process information should be
less than 60 seconds.
NFR01-03 System Mean Time to Failure should not be more than 60 seconds within 24
hours of use.

NFR02: Documentation

Req. No. Non-Functional Requirements

NFR02-01 Documentation must be complete in providing information about each and


every module and functionality provided by the system to help the
developers and interested stakeholders.

NFR02-02 The documentation must be easily accessible to the developers or field


experts if some problem arises to review the details and to find out
errors/bugs.
NFR02-03 The documentation must be written using minimal complex technical
terms, any technical terms used must be additionally defined at the end or
in the start of the document.
NFR02-04 The code must be readable and well-structured for future use.

lNFR03: Efficiency
Req. No. Non-Functional Requirements

NFR03-01 The system should utilize minimum resources of any system or web browser for
the processing of data or to access data.
7

NFR04: Maintainability
Req. No. Non-Functional Requirements

NFR05-01 The system should be changeable if some module needs to be modified without
effecting functionality of other modules, for this the system must have the concept
of modularity.
NFR05-02 The system should be open for reusability and testability to remove any bugs or
errors.
NFR05-03 The system should be extendable (i.e. adding new functionality in the system)
without effecting the functionality and performance of rest of the system.

NFR05: Availability
Req. No. Non-Functional Requirements

NFR06-01 The system must be available to use and to test 24/7.


8

Chapter 4

PROJECT DESIGN

4.1. Methodology
The methodology we selected for this project is “Agile Modeling”. This approach best suits
to our project as we can change the requirements according to our clients need once the client
review them and provide feedback regarding the functionality. And we can timely provide
the client with the prototype to satisfy client.
9

4.2. Design Use Case

4.2.1. Use case for User Login


Description:

Use Case ID: 1

Use Case Name: User Login

Actor: Admin, Editor, Sub-Editor and User.

Description: This use case for view the Login View.

Preconditions: User does not have the any rights.

Post conditions: User has logged in.

Flow of Activities: U1: User navigates to the Login screen and select Login Button.

S1: System displays the Login screen

Exceptions: ▪ Invalid username


▪ Invalid password
▪ Admin does not have a username and password for our
system
▪ Admin selects a function for which they are not allowed
access
▪ Admin makes no selection of function
10

Login System

Login

Admin
Editor

<<include>> <<include>>

<<include>>

Sub-Editor User name Role User


Password
11

4.2.2. Use case for Favorite Page

Description:

Use Case ID: 2

Use Case Name: Favorite Page

Actor: Admin, Editor, Sub-Editor and User.

Description: This use case is to view the Favorite Page.

Preconditions: User is logged in.

Post conditions: User has Favorite Page.

U1: User navigates to the Favorite Page and select Favorite


Flow of Activities: Button.

S1: Website displays the Favorite Page.

Exceptions: ■ User did not Register.

■ User makes no selection of Category. When registering


12

Favorite Page

News Based
On Interest

User
13

4.2.3. Use case for Registration Process

Description:

Use Case ID: 03

Use Case Name: Registration

Actor: General User

Description: This use case for account Registration.

Preconditions: User must be on Register page

Post conditions: After registration user must be registered to database successfully

U1: User navigates to the Registration screen and select


Flow of Activities: Registration Button.

S1: Website displays the Registration screen

■ User enter Name which is already in use.

Exceptions: ■ User do not write correct E-mail Address.

■ User enter E-mail address, which is already registered


14

Registration Process

User name

<<include>>

<<include>> password

Register <<include>>

General User Email


<<include>>

Interest
15

4.2.4. Use case for User View

Description:

Use Case ID: 04

Use Case Name: User View

Actor: General User

Description: This use case describe how User View looks.

Preconditions: User must be at Website

User can view Main page, Category page, Detail page, Login
Post conditions: page, Register page.

Flow of Activities: U1: User navigates to the Website.

S1: Website displays the User View


16

User View

Profile

News Detail

Main Page

Category News

General User

Login

Register
17

4.2.5. Use case for Admin role w.r.t News

Description:

Use Case ID: 05

Use Case Name: Admin Manage News

Actor: Admin

This use case is for view of Admin role w.r.t news. Admin can
add, update and delete News.
Description:

Preconditions: Amin must be logged in

Post conditions: Admin can Add news, Edit news, Update news

U1: Admin navigates to the Admin panel and add, update, delete
Flow of Activities: news.
S1: Website displays the News panel

Exceptions: ■Invalid username

■ Invalid password

■ Admin does not have a username and password for our website
18

Admin Roles:

Admin Role w.r.t News

Add News

Edit News

Admin

Delete News
19

4.2.6. Use case for Admin role w.r.t Pages

Description:

Use Case ID: 06

Use Case Name: Admin Manage Pages

Actor: Admin

This use case is for view of Admin role w.r.t pages. Admin can
add, update and delete Pages.
Description:

Preconditions: Admin must be logged in

Post conditions: Admin has page manage panel.

U1: User navigates to the mange page panel and add, update,
Flow of Activities: delete Pages.

S1: Website displays the manage page panel

Exceptions: ▪ Invalid username


▪ Invalid password
▪ Admin does not have a username and password for our
website
20

Admin Role w.r.t Pages

Add Page

Edit Page

Admin

Delete Page
21

4.2.7. Use case for Admin role w.r.t User

Description:

Use Case ID: 07

Use Case Name: Admin Manage users

Actor: Admin

This use case is for view of Admin role w.r.t users. Admin can
Description: add, update and delete Users.

Preconditions: Admin must be logged in

Post conditions: Admin has Users panel.

U1: User navigates to the User panel and add, update, delete
Flow of Activities: Users.
S1: Website displays the Users panel

Exceptions: ▪ Invalid username


▪ Invalid password
▪ Admin does not have a username and password for our
website
22

Admin Role w.r.t Users

Add User

Edit User

Admin

Delete User
23

4.2.8. Use case for Admin role w.r.t Superuser Screen

Description:

Use Case ID: 08

Use Case Name: Admin Manage superuser Screen

Actor: Admin

Description: This use case is for view of Admin role w.r.t superuser

Preconditions: Amin must be logged in

Post conditions: Admin can add, update and delete superusers.

U1: User navigates to the Superuser panel and select Add,


Flow of Activities: Update, Delete Button.

S1: Website displays the Superuser panel

Exceptions: ▪ Invalid username


▪ Invalid password
▪ Admin does not have a username and password for our
website
24

Admin Role w.r.t Superuser

User Name
Role

<<include>>
<<include>>
Password

<<include>>

Add super user


<<include>> Email

<<include>>
` Interest

Admin

Edit super user

Delete super user


25

4.2.9. Use case for Editor role w.r.t News

Description:

Use Case ID: 09

Use Case Name: Editor Manage news

Actor: Editor

Description: This use case is for view of News screen w.r.t Editor role.

Preconditions: Editor must be logged in

Editor can add, update and delete news.


Post conditions:

Flow of Activities: U1: User navigates to the News panel and select News Button.

S1: Website displays the News panel

Exceptions: ▪ Invalid username


▪ Invalid password
▪ Editor does not have a username and password for our
website
26

Editor Role w.r.t News

Add News

Edit News

Editor

Delete News
27

4.2.10. Use case for Editor for Sub-Editor

Description:

Use Case ID: 10

Use Case Name: Editor Manage Sub Editor

Actor: Editor

Description: This use case is for view of Editor role w.r.t sub editor.

Preconditions: Editor must be logged in

Post conditions: Editor can add, update and delete sub editor.

U1: User navigates to the sub editor panel and select add, update
Flow of Activities: and delete Button.

S1: Website displays the sub editor panel

Exceptions: ▪ Invalid username


▪ Invalid password
▪ Editor does not have a username and password for our
website
28

Editor Role w.r.t Sub Editor

Add Subeditor

Edit Subeditor

Editor

Delete Subeditor
29

4.2.11. Use case for Sub-Editor role w.r.t News Screen

Description:

Use Case ID: 11

Use Case Name: Sub-Editor Manage news

Actor: Sub-Editor

Description: This use case is for view of Sub-Editor role w.r.t news.

Preconditions: Sub-Editor must be logged in

Post conditions: Sub-Editor can add, update and delete News.

U1: User navigates to the sub editor panel and select add, update
Flow of Activities: and delete Button.

S1: Website displays the sub editor panel

Exceptions: ▪ Invalid username


▪ Invalid password
▪ Sub-Editor does not have a username and password for our
website
30

Sub-Editor Role w.r.t News

Add News

Edit News

Sub-Editor

Delete News
31

Use Case Diagram (1):

Manage user data

Manage content

Sub-Admin
Receive feedback

Manage Sub-
Admin
Admin

Sub-Editor
Manage Sub-
Editor

Editor

Browse news

Viewer

Sign up

Login
32

4.2.12 Use case for logout

Description:

Use Case ID: 13

Use Case Name: Logout.

Actor: Admin, Editor, Subeditor & General User

After done the all required activities the Admin Editor, Subeditor &
Description: General User can be logout.

Admin/ Editor / Subeditor / General User is already logged into the


Preconditions: system.

Post conditions: Navigate to the login screen.

U1: Admin// Editor / Subeditor / General User supplies the logout


Flow of Activities: command.

S1: System will do logout successfully.

Exceptions: ▪ NO internet connection.


33
34

4.3 Architecture Overview

For this the architecture we applied is 2-tier architecture.

4.4. Gantt Chart


35

Chapter 5

IMPLEMENTATION

5.1. System Integration


This project is consisting of two parts web-based and desktop-based parts. These parts
developed separately. Each part has its different functionalities and modules. These all
modules were integrated to form a complete subsystem. These subsystems web-based
application and desktop-based application combine result in the complete system. Which is
called system integration that is in running form and provide the expected output.

5.2. Activity Diagrams

5.2.1. Activity Diagram for Admin/Editor /Sub-Editor/User Login

Enter Username &


password

Is correct

No Incorrect
information

Yes

User view
36

5.2.2. Activity Diagram for Favorite Page

News Based on Interest


37

5.2.3. Activity Diagram for Registration Process

Registration

User Name

Password

E-mail

Interest
38

5.2.4. Activity Diagram for User View

User View

View

Detail News Main Page Category Login Registration


News
39

5.2.5. Activity Diagram for Admin Manage News

Admin Manage News

News

Add News Edit News Update News


40

5.2.6. Activity Diagram for Admin Manage Pages

Admin Manage Pages

Pages

Add Pages Edit Pages Update Pages


41

5.2.7. Activity Diagram for Admin Manage Users

Admin Manage Users

Users

Add Users Edit Users Update Users


42

5.2.8. Activity Diagram for Admin Manage Superuser Screen

Role

Admin Manage super Users

User Name

Super
User Password

E-mail
Add super Users Edit super Users Update super Users

Interest
43

5.2.9. Activity Diagram for Editor Manage News

Editor Manage News

News

Add News Edit News Update News


44

5.2.10. Activity Diagram for Editor Manage Sub-Editor

Editor Manage Sub-Editor

Sub-
Editor

Add Sub-Editor Edit Sub-Editor Update Sub-Editor


45

5.2.11. Activity Diagram for Sub-Editor Manage News Screen

Sub-Editor Manage News

News

Add News Edit News Update News


46

5.3. Sequence Diagrams


5.3.1. Sequence Diagram for (Admin News Screen)

Login News Add Edit Delete


Screen News News News

1: Enter Login Information

1.1: If info correct login successfully

1.2: If login info incorrect

1.3: Press Add button to add


News

1.4: Press Edit button to Edit


News

1.4: Press Delete button to Delete


News

5.3.2 Sequence Diagram for (Admin Page Screen)

Login Page Add Edit Delete


Screen Page Page Page

2: Enter Login Information

2.1: If info correct login successfully

2.2: If login info incorrect

2.3: Press Add button to add


News

2.4: Press Edit button to Edit


News

2.5: Press Delete button to Delete


News
47

5.3.3 Sequence Diagram for (Admin Page Administrative User)

Login Administrator Add Edit Delete


User Screen Administrator Administrator Administrator
User User User

3: Enter Login Information

3.1: If info correct login successfully

3.2: If login info incorrect

3.3: Press Add button to add


News

3.4: Press Edit button to Edit


News

3.5: Press Delete button to Delete


News

5.3.4 Sequence Diagram for (Admin Super-User)

Login Add Edit Delete


Super-User Super-User Super-User Super-User

4: Enter Login Information

4.1: If info correct login successfully

4.2: If login info incorrect

4.3: Press Add button to add


News

4.4: Press Edit button to Edit


News

4.5: Press Delete button to Delete


News
48
5.3.5 Sequence Diagram for (Editor News)

Login News Add Edit Delete


Screen News News News

5: Enter Login Information

5.1: If info correct login successfully

5.2: If login info incorrect

5.3: Press Add button to add


News

5.4: Press Edit button to Edit


News

5.5: Press Delete button to Delete


News

5.3.6 Sequence Diagram for (Editor Manage Sub-editor)

Login Manage Add Edit Delete


Sub-editor Sub-editor Sub-editor Sub-editor

6: Enter Login Information

6.1: If info correct login successfully

6.2: If login info incorrect

6.3: Press Add button to add


News

6.4: Press Edit button to Edit


News

6.5: Press Delete button to Delete


News
49
5.3.7 Sequence Diagram for (Sub-editor News)

Login News Add Edit Delete


Screen News News News

7: Enter Login Information

7.1: If info correct login successfully

7.2: If login info incorrect

7.3: Press Add button to add


News

7.4: Press Edit button to Edit News

7.5: Press Delete button to Delete News

5.3.8 Sequence Diagram for (General User)

Main Category News


page Page Detail Register Login

8: Browse News

8.1: When Select Category

8.2: Press News

8.3: Press register button to Register

8.4: Press Login button News to Login


50

5.3.9 Sequence Diagram for (User View Screen)

Login Favorite Profile Change


Page Category Edit Password Log out

9: Enter Login Information

9.1: If info correct move to favorite page

9.2: If login info incorrect

9.3: Successful
9.6: press button to change password
9.4: unsuccessful

9.5: Info correct

9.7: If press Logout

Name varchar (45)


Email varchar (45)
Username varchar (45)
Password varchar (45)
Category varchar (45)

Name varchar (45)


Email varchar (45)
Username varchar (45)
Password varchar (45)
Category varchar (45)
51

5.7 ERD (Entity Relation Diagram)


52

5.8 Database Tables:

Administrative_user Admin News Page


-name: String -name: String -title: String -title: String
-email: String -email: String -slug: String -slug: String
-username: String -username: String -desc: String -content: String
-password: String -password: String -category: String -Sorting: int
-role: String -role: String -image: String
-category: String -category: String -videolink: String
-date_time: String
category
-title: String
user -slug: String
-name: String
-email: String
-username: String
-password: String
-role: String
-category: String
53

5.9. User Interface

5.9.1 User Welcome Interface


54
55

5.9.2 User Menu

5.9.3 User Register


56

5.9.4 User Log In

5.9.5 User’s Customized Page


57
5.9.6 User’s Profile

5.9.7 Admin Welcome Interface


58
5.9.8 Admin Add News

5.9.9 Admin Edit News


59

5.9.10 Admin Manage User

5.9.11 Admin edit User


60

Chapter 6
EVALUATION

6.1. Unit Testing


Each functionality and class of this project is separately tested by the developer to avoid
any error or bug in the project. When a single class was completed the developer tested it well so
that when integrated with other class or being used with other classes and functionalities all kinds
of mistakes can be avoided. Moreover, when each module is tested individually as a unit there are
less chances of any error being introduce in the system in the later stages.
61
6.2. Test Cases

6.2.1. Test Case for User Login

Ref 4.2.1

Purpose Web page login functionality.

Prerequisite User must register to the system to be able to login.

Test data • Valid username and password.


• Invalid username and correct password
• Valid username and incorrect password
• Valid username and old password

Steps • Open url: in browser.


• Enter valid username and password.
• Press login button.

• Open url: in browser.


• Enter invalid username and correct password.
• Press login button.

• Open url: in browser.


• Enter valid username and incorrect password.
• Press login button.

• Open url: in browser.


• Enter valid username and old password.
• Press login button.

Expected Results • Admin not able to login to system.


• Admin successfully login to system.
Actual Results
• Admin successfully logged in.
• Username or password is incorrect.
Expected Results
• Admin not able to login to system
• Admin successfully login to system.

Actual Results
• Username or password is incorrect.
• Admin successfully logged in.

Status Pass
62

6.2.2. Test Case to Add News


Ref 4.2.5
Purpose To successfully add News.
Prerequisite Admin must login to the system to be able to manage News.
Test data • All fields of the form must be filled.
• Some fields are left blank (unfilled).
▪ Open the site and fill the desire fields to add the News.
▪ Fill all the fields required in the form to add News.
▪ Press send button.
▪ Open the site and click the desire fields to add the News.
▪ Some fields of the form are left empty.
▪ Press send button.
Steps
Expected Results ▪ News successfully added.
▪ Please complete all the fields.
▪ News title exists, choose another.

Actual Results ▪ News successfully added.


▪ Please complete all the fields.
▪ News title exists, choose another.

Status Pass
63

6.2.3. Test Case to Edit News

Ref 4.2.5
Purpose To successfully Edit News.
Prerequisite Admin must login to the system to be able to manage News.
Test data • All fields of the form must be filled.
• Some fields are left blank (unfilled).
Steps ▪ Open the site and click the desire option to add student.
▪ Fill all the fields required in the form to Edit News.
▪ Press send button.
▪ Open the site and click the desire option to Edit News.
▪ Some fields of the form are left empty.
▪ Press send button.
Expected Results ▪ News successfully Edited.
▪ Please complete all the fields.
▪ News title exists, choose another.
Actual Results ▪ • News successfully Edited.
▪ • Please complete all the fields.
• News title exists, choose another.
Status Pass
64

6.2.3. Test Case to Add Page.

Ref 4.2.5
Purpose To successfully Add Page.
Prerequisite Admin must login to the system to be able to manage Page.
Test data • All fields of the form must be filled.
• Some fields are left blank (unfilled).
Steps ▪ Open the site and click the desire option to add student.
▪ Fill all the fields required in the form to Add Page.
▪ Press send button.
▪ Open the site and click the desire option to Add Page.
▪ Some fields of the form are left empty.
▪ Press send button.
Expected Results • • Page successfully added.
• • Please complete all the fields.
• Page title exists, choose another.
Actual Results • • Page successfully added.
• • Please complete all the fields.
• Page title exists, choose another.
Status Pass
65

6.2.3. Test Case to Edit Page.

Ref 4.2.5
Purpose To successfully Edit Page.
Prerequisite Admin must login to the system to be able to manage Page.
Test data • All fields of the form must be filled.
• Some fields are left blank (unfilled).
Steps • Open the site and click the desire option to add student.
• Fill all the fields required in the form to Edit Page.
• Press send button.
• Open the site and click the desire option to Edit Page.
• Some fields of the form are left empty.
• Press send button.
Expected Results • Page successfully Edited.
• Please complete all the fields.
• Page title exists, choose another.
Actual Results • Page successfully Edited.
• Please complete all the fields.
• Page title exists, choose another.
Status Pass
66

6.2.3. Test Case to Add administrative user.

Ref 4.2.5
Purpose To successfully Add administrative user.
Admin must login to the system to be able to manage
Prerequisite administrative user.
Test data • All fields of the form must be filled.
• Some fields are left blank (unfilled).
Steps • Open the site and click the desire option to add student.
• Fill all the fields required in the form to Add
administrative user.
• Press send button.
• Open the site and click the desire option to
• Add administrative user
• Some fields of the form are left empty.
• Press send button.
Expected Results • administrative user successfully added.
• Please complete all the fields.
• Username or Email Already exists, choose another! .
Actual Results • Administrative user successfully added.
• Please complete all the fields.
• Username or Email Already exists, choose another!
Status Pass
67

6.2.4. Test Case to Edit administrative user.

Ref 4.2.5
Purpose To successfully Edit administrative user.
Admin must login to the system to be able to manage
Prerequisite administrative user.
Test data • All fields of the form must be filled.
• Some fields are left blank (unfilled).
Steps • Open the site and click the desire option to add student.
• Fill all the fields required in the form to Edit
administrative user.
• Press send button.
• Open the site and click the desire option to
• Edit administrative user.
• Some fields of the form are left empty.
• Press send button.
Expected Results • administrative user successfully Edited.
• Please complete all the fields.
• Username or Email Already exists, choose another! .
Actual Results • administrative user successfully Edited.
• Please complete all the fields.
• Username or Email Already exists, choose another!
Status Pass
68

6.2.3. Test Case to Add user.

Ref 4.2.5
Purpose To successfully Add user.
Prerequisite Admin must login to the system to be able to manage user.
Test data • All fields of the form must be filled.
• Some fields are left blank (unfilled).
Steps • Open the site and click the desire option to add student.
• Fill all the fields required in the form to Add user.
• Press send button.
• Open the site and click the desire option to
• Add user
• Some fields of the form are left empty.
• Press send button.

Expected Results • user successfully added.


• Please complete all the fields.
• Username or Email Already exists, choose another! .
Actual Results • user successfully added.
• Please complete all the fields.
• Username or Email Already exists, choose another!
Status Pass
69

6.2.4. Test Case to Edit user.

Ref 4.2.5
Purpose To successfully Edit user.
Prerequisite Admin must login to the system to be able to manage user.
Test data • All fields of the form must be filled.
• Some fields are left blank (unfilled).

Steps • Open the site and click the desire option to add student.
• Fill all the fields required in the form to Edit user.
• Press send button.
• Open the site and click the desire option to
• Edit user.
• Some fields of the form are left empty.
• Press send button.

Expected Results • user successfully Edited.


• Please complete all the fields.
• Username or Email Already exists, choose another! .
Actual Results • user successfully Edited.
• Please complete all the fields.
• Username or Email Already exists, choose another!
Status Pass
70

6.2.4. Test Case to Edit Profile.

Ref 4.2.5
Purpose To successfully Edit Profile.
Prerequisite User must login to the system to be able to manage Profile.
Test data • All fields of the form must be filled.
• Some fields are left blank (unfilled).

Steps • Open the site and click the desire option to add student.
• Fill all the fields required in the form to Edit Profile
• Press send button.
• Open the site and click the desire option to Edit Profile
• Some fields of the form are left empty.
• Press send button.

Expected Results • Profile successfully Edited.


• Please complete all the fields.
• Username exists, choose another! .
Actual Results • Profile successfully Edited.
• Please complete all the fields.
• Username exists, choose another!
Status Pass
71

6.2.4. Test Case to Change Password.

Ref 4.2.5
Purpose To successfully Change Profile Password.
Prerequisite User must login to the system to be able to Change Profile.
Test data • All fields of the form must be filled.
• Some fields are left blank (unfilled).

Steps • Open the site and click the desire option to Change pswd
• Fill all the fields required in the form to Change Password
• Press OK button.
• Open the site and click the desire option to Change
• Password
• Some fields of the form are left empty.
• Press OK button.

Expected Results • Profile Edited Successfully! .


• Please complete all the fields.
• Incorrect old Password
Actual Results • Profile Edited Successfully! .
• Please complete all the fields.
• Incorrect old Password
Status Pass
72

6.2.4. Test Case to Register.

Ref 4.2.5
Purpose To successfully Register.
Prerequisite User must login to the system to be able to Register.
Test data • All fields of the form must be filled.
• Some fields are left blank (unfilled).

Steps • Open the site and click the desire option to Register
• Fill all the fields required in the form to Register
• Press OK button.
• Open the site and click the desire option to Register
• Some fields of the form are left empty.
• Press OK button.

Expected Results • User Registered Successfully! .


• Please complete all the fields.
• Username or Email Already exists
Actual Results • User Registered Successfully! .
• Please complete all the fields.
• Username or Email Already exists
Status Pass
73

Chapter 7

CONCLUSIONS & FUTURE WORK

7.1. Problems faced


During the completion of this project we faced following some difficulties:
It was difficult understanding the connectivity of database with the website because of
the fact that we used Mongo DB and Node JS which are rather new languages that
PHP and .NET, not many people know about them so, it was a bit complex to learn
and implement.

7.2. Future work


We had planned to extend our work by adding new functionalities in future. Some of the
functionalities we had come up with are below:

• We’ll add a new language like, Urdu.


• Use AI to ease users more.
• Users will get their favorite news through email.

7.3. Conclusion
The project will deliver knowledge to its user and will help get updated. The users
don’t have to go through thousands of news to find the one they are interested in, they can
find it in a customized page for them. The video links and images will provide the proof to
the news and assures its authenticity.
Moreover, this will be a new generation to the boring news sites with options that give
users current knowledge without overloading.
74

7.4 Bibliography
1. (2017). Retrieved from code snippets: www.codesnippets.com
2. (2017). Retrieved from code project: www.codeproject.com
3. (2017). Retrieved from W3schools: www.W3schools.com
4. (2017). Retrieved from Lynda: www.lynda.com
5. (2017). Retrieved from Udemy: www.udemy.com
6. GitHub. (2017). Retrieved from www.github.com
7. MSDN. (2017). Retrieved from MSDN: www.msdn.com
8. Quora. (2017). Retrieved from www.quora.com
9. Stack overflow. (2017, 10 Monday). Retrieved from Stack
overflow: www.stackoverflow.com

S-ar putea să vă placă și