SE-082 (SRE Assignment)

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 9

Software Requirements

Specification
for

Fake News Detector


Version 1.0

Prepared by

NAME Roll No. ROLE


Taber Bin Zameer SE - 082 Requirement Elicitation & Validation
Hassan-ur-Rehman SE - 062 Requirement Analysis & Specification

Instructor: Miss Shehnila Zardari

Date: 27th August’ 2020

Copyright © 1999 by Karl E. Wiegers. Permission is granted to use, modify, and distribute this document.
Software Requirements Specification for <Project> Page ii

Table of Contents
Table of Contents ..................................................................................................................... ii
1. Introduction ......................................................................................................................... 1
1.1 Purpose ....................................................................................................................................... 1
1.2 Intended Audience and Reading Suggestions............................................................................... 1
1.3 Product Scope ............................................................................................................................. 1
1.4 References .................................................................................................................................. 1
2. Overall Description ............................................................................................................. 1
2.1 Product Perspective..................................................................................................................... 1
2.2 Product Functions ....................................................................................................................... 1
2.3 User Classes and Characteristics ................................................................................................. 2
2.4 Operating Environment ............................................................................................................... 2
2.5 Design and Implementation Constraints ...................................................................................... 3
2.6 User Documentation ................................................................................................................... 3
2.7 Assumptions and Dependencies .................................................................................................. 3
3. External Interface Requirements ....................................................................................... 3
3.1 User Interfaces ............................................................................................................................ 3
3.2 Hardware Interfaces .................................................................................................................... 3
3.3 Software Interfaces ..................................................................................................................... 3
3.4 Communications Interfaces ......................................................................................................... 3
4. System Features ................................................................................................................... 4
4.1 Functional Requirements............................................................................................................. 4
5. Other Nonfunctional Requirements ................................................................................... 4
5.1 Performance Requirements ......................................................................................................... 4
5.2 Safety & Security Requirements.................................................................................................. 4
5.3 Software Quality Attributes......................................................................................................... 5
Appendix A: Glossary ............................................................................................................... 6
Software Requirements Specification for <Project> Page 1

1. Introduction
1.1 Purpose
The goal of the Fake News Challenge is to explore how artificial intelligence technologies,
particularly machine learning and natural language processing, might be leveraged to combat the
fake news problem. We believe that these AI technologies hold promise for significantly automating
parts of the procedure human fact checkers use today to determine if a story is real or a hoax.

1.2 Intended Audience and Reading Suggestions


The targeted audience for this product is not specifically any group of age. This product is for all
those who do not believe on any rumors, news, instantly that could be related to any political,
religious, cultural, social topic, and seeks only truth and wants the detailed of the origin of the news.
The intended audience could be the journalist, anchors, politicians, and all other media persons.

1.3 Product Scope


The scope of our product is to detect fake news from online articles using machine learning. Our
fake news detectors purely use linguistics features to detect fake news in content. By using different
machine learning models, we will detect fake news for better accuracy. Fake news has impact on
decision making of many people which could lead to serious mistakes.

1.4 References
▪ IEEE Std 830-1998 .IEEE Recommended Practice for Software Requirements
Specifications. IEEE Computer Society, 1998.

▪ http://www.scribd.com/doc/9138468/Software-Requirement-Specification-SrsMidtems

▪ http://www.processimpact.com/process_assets/srs_template.doc

2. Overall Description
2.1 Product Perspective
Analyzing and detecting fake news on the internet is one the hardest problem to be solved. Recently,
Fake News had been an important talk in general public and researchers due to online media outlets
like social media feeds, blogs and online newspaper. According to BBC survey, 79 percent of people
are worried about what is fake and real online. The survey of more than 16,000 adults was conducted
by Globescan. Globescan’s chairman Doug Miller said: “These poll findings suggest that the era of
‘fake news’ may be as significant in reducing the credibility of on-line information as Edward
Snowden’s 2013 National Security Agency (NSA) surveillance revelations were in reducing people’s
comfort in expressing their opinions online”. Apple’s stock took a temporary 10-point hit after a false
report surfaced on CNN’s iReport that Steve Jobs had a heart attack.
Software Requirements Specification for <Project> Page 2

In light of above incidents, we discover that fake news could have much more drastic effect even on
country`s economy. So, to minimize such news to create drastic effect, we have to verify fake news.
Purpose of our project is to detect fake news.

Block Diagram

2.2 Product Functions


• A URL of news article must be entered.
• NLP is performed on the text extracted from the URL and relevant features are extracted
from that NLP.
• News articles are classified as fake or authentic from the features extracted.
• Classified news is then checked to list of URLs with the output predicted (Fake/Authentic),
and then final result is predicted.

2.3 User Classes and Characteristics


Moderator: The moderator will be monitoring the rating submitted by the users, to maintain the
credibility of ratings.
Administrator: Will maintain the overall aspects of web application and will be responsible for giving
users appropriate roles and authority.
User: The main actor using the web application to analyze the URLs.
Software Requirements Specification for <Project> Page 3

2.4 Operating Environment


Python language and its Open Source libraries are used for the development purpose of the model,
which actually predicts the news then for the front-end of the website HTML/CSS/JS is used and for
the backend Flask is used. For the training purpose of the model, dataset is being scraped using
Beautiful Soup, a python library for web scraping.

2.5 Design and Implementation Constraints


• Our software will never assure authenticity of the result. For this, we need user feedback.
• Our software will only be available in English language and news article provided to the
software should also be in English language.
• We don’t have access to huge amount of data for training of machine learning model.
• Software will not work without any web browser or basic internet connection.

2.6 User Documentation


The user should have access to Internet and a browser to access the website. The user is assumed
to have a basic understanding of navigating the website and if they want to analyze the news should
paste the link, title and description on the placeholder of the website.

2.7 Assumptions and Dependencies


The version of browser accessing the website should be fairly recent and able to handle modern web
applications.

3. External Interface Requirements


3.1 User Interfaces
The user interface will be web based provided to user through a web browser then user will be
presented with a dashboard. The dashboard will consist of a header, sidebar menu and body. The
body will be consisting of dialogue box which will be used to get the input from user. There will be a
button to submit the query entered by user in the dialogue box, then it shows the result.

3.2 Hardware Interfaces


The application is dependent upon an internet connection either wired or wireless. Any device either
mobile or computer capable of running a browser is sufficient enough to access the web application
provided that they have internet connection.

3.3 Software Interfaces


This software does not require a particular Operating System (Windows, Mac, Linux, etc.) to run
but only a web browser and internet connection because it is a web application.
Software Requirements Specification for <Project> Page 4

3.4 Communications Interfaces


All types of web browsers support this product. Only internet connection will be required for the
communication purpose.

Class Diagram

4. System Features
4.1 Functional Requirements

• Take a valid news article URL from user.


• Extract relevant text from the URL, provided by the user, using Scrapy, Beautiful soup.
• Then we will extract relevant features from the text using NLP (Natural Language
Processing).
• Correctly classify news article as fake news or credible news using different machine learning
models/algorithms.
• Each user can view all the recently processed and classified news articles and verify the
correctness of the classification by voting.
• After a predefined limit of time and number of votes we can verify that whether the software
classified a given news article correctly or not.
• We can then modify our classification if needed and add the news article in the training set
to improve accuracy of future predictions.

5. Other Nonfunctional Requirements


5.1 Performance Requirements
• The system should respond to a user query and return a result in less than 5 seconds.
• Web crawling should be done in fast time.
• Feature extraction must be done in milliseconds.
• Time taken by ML algorithms should be in milliseconds.
• System should be able to handle multiple simultaneous requests.
Software Requirements Specification for <Project> Page 5

5.2 Safety & Security Requirements


The website should be safe from any of the attacks. If the user provided any malicious link in the
placeholder of the link then it should identify it earlier and stop the execution/prediction of the news.
It should be safe from cross site scripting as well.

5.3 Software Quality Attributes


• Reliability: The software should be reliable to perform better and failure free.

• Performance: The provided result and accuracy should not less than 90% and reloading of
the website must be in milliseconds

• Availability: In terms of implementing of new version or adding any feature to the system,
the availability of the product must not take longer period of time.

• Portability: The software should install, deployed, accessed and managed simply.

• Maintainability: The software should be developed in such a way that it can be maintained
by any developer.
Software Requirements Specification for <Project> Page 6

Appendix A: Glossary
A
Availability……………………………………………………………………………………….…...Page # 5
Accuracy…………………………………………………………………...………………………..Page# 04
Artificial Intelligence………………………………………………………………………………..Page # 01
Analysis………………….…………………………………………………..……………………...Page # 02
Assumptions………………………………………………………………………………………..Page # 03
B
Beautiful Soup…………………………………………............................................................Page # 02
Browser…………………………………………......................................................................Page # 03
C
Class Diagram……………………………………………………………………………………...Page # 03
Context Model……………………………………………………………………………………...Page # 02
D
Data flow Diagram………………………………………………………………………………….Page # 03
Detection……….………………………………………………………………............................Page # 04
Dependencies……………………………………………………………………..……………….Page # 04
Dashboard……………………………………………………………………..............................Page # 05
E
Efficiency……………………..……………………………………………………………………..Page # 04
Existing system………………………………….………………………………………………….Page # 04
External Interface Requirements……………………………….………………………………...Page # 05

F
Functional Requirements……………………………………………………….………………...Page # 05

G
General Constraints………………………………………………………………………………..Page # 07

H
Hardware Interface………………………………………………………………………………...Page # 11
Hardware Limitations……………………………………………………………………………...Page # 07

I
Software Requirements Specification for <Project> Page 7

Intended audience…………………………………………………………………………………Page # 05
Introduction……………………………………………………………………………..…………..Page # 04

N
Non - Functional requirements…………………………………………………………………....Page # 05

O
Operating Environment………………………………………………………………….………....Page #05
Overall Description…………………………………………………………….…………………..Page # 03
Overview………………………………………………………………………………………..…..Page # 04

P
Performance………………………………………………………………………………….…….Page # 03
Portability……………………………………………………………………....…………………...Page # 02
Product Perspective…………………………………………………………………...…………..Page # 05
Proposed system………………………………………………………………...………………...Page # 04
Purpose…………………………………………………………………………….……………….Page # 04

R
References…………………………………………….……………………………………………Page # 05
Reliability…………………………………………………………………...……………………….Page # 03

S
Scope of project…………………………………………………………………………………....Page # 03
Security……………………………………………….…………………………………………….Page # 04
Security Risks…………………………………………………………….………………………...Page # 05
Sequence Diagram…………………………………………………………………………..…....Page # 03
Software Interface……………………………………………………………...……………….....Page # 02
System Requirements………………………………………………………………………..…...Page # 04

U
Usability……………………....………………………………………………………………….....Page # 03
User classes and characteristics………………………………………………………………….Page # 04
User Interface……………………………………………………………………………...……….Page # 04

You might also like