Problem Statement
Problem Statement
By
Debiprasad Mohapatra
Vashu Saroha
Problem Statement
Brief Descroption of the Current Problem
1
Challenges
Below mentions the challenges faced in economic data analysis
2
Solution
Below we propose a solution suited to cater to the current problem
3
Feasibility Study
Below we propose a Feasibility Study suited to cater to the current problem
4
Feasibility Study
Below we propose a DFD suited to cater to the current problem
The Data Flow Diagram (DFD) for the Cognito web application illustrates the flow of data within the system,
focusing on key components: Users, File Upload, Analysis, and Macro Indicators. Users interact with the system to
upload data files, which are stored in the system’s storage and linked to the database. The Analysis module allows
users to input prompts, analyze the uploaded data, and obtain results. Additionally, the Macro Indicators module
provides access to economic indicators like GDP and inflation, which can be compared or analyzed alongside user
data. The system generates and returns insights, forecasts, and comparative analyses to the user interface.
5
Use Cases
Below we mention the usescases of this model.
6
Graphical User Interface
Below we mention the GUI of this model.
7
Design and
Implementation
ER Diagram
Below we mention the ER Diagram of this model.
The database schema comprises seven interconnected tables designed for a data analysis system. The Users
table forms the foundation, storing user credentials and roles. DataFiles tracks uploaded files, while
ValidationLogs monitors file validation status. AnalysisRequests and AnalysisResults handle data analysis
workflows, storing request details and outcomes respectively. MacroeconomicIndicators maintains economic
data independently. Finally, AuditLogs tracks system activities for security. The schema implements referential
integrity through foreign key relationships, with cascading deletes ensuring data consistency. Primary keys use
auto-incrementing integers, and timestamps track creation and modification times across tables.
10
Archetectural Design
Below we mention the Archetectural Design of this model.
11
Project Management
Gantt Chart
Below we mention the Project Gantt of this model.
Complexity Weighting
14
Function Point Analysis
Below we mention the VFA & FA of this model.
VAFs
FP={UAF*0.65+(0.01*Total VAF}
FP={61*0.65+(0.01*Total VAFs)}
FP=39.99~ 40
15
Risk Management and Analysis
Below we mention the potential Risks associated with this model.
Risk Categories
Technical risks in the project encompass several key
categories. Database risks include configuration errors, data
corruption, or inefficiencies during transactions or backups.
Security risks involve vulnerabilities in data handling,
encryption, and authentication mechanisms, potentially
enabling unauthorized access. Code quality and testing risks
arise from logical flaws, unoptimized code, and insufficient
testing, leading to bugs and performance issues. Scalability
and performance risks threaten the system’s ability to
handle increased traffic, causing slow performance or
crashes. Dependency risks stem from vulnerabilities in third-
party libraries. Additionally, deployment risks and API risks
can result in downtime, insecure data exposure, or degraded
system performance.
16
Risk Management and Analysis
Below we mention the Impact Analysis of this model.
Impact Analysis
The project faces several technical risks, each with
varying levels of impact and likelihood. Database risks
have a high impact and medium likelihood, making
them a high priority. Security risks are deemed critical
due to their high likelihood and severe consequences.
Code quality and testing risks are medium in both
impact and likelihood, resulting in a medium priority.
Scalability and performance risks are critical, with a
high likelihood of occurrence. Dependency risks and
API risks both carry high impact and medium
likelihood, making them high priorities. Deployment
risks, though high in impact, are less likely, ranking as
medium priority.
17
Risk Management and Analysis
Below we mention the Mitigation Strategies.
Mitigation Strategies
To mitigate project risks, secure database credentials, automate
connection testing, and use ACID-compliant databases with
regular backups and replication. Enhance security by enforcing
encryption, HTTPS, OAuth 2.0, and multi-factor authentication.
Ensure code quality with static analysis, peer reviews, and
automated testing frameworks like Pytest and Selenium.
Optimize scalability and performance using load balancers,
caching, and CDNs while profiling for bottlenecks. Manage
dependencies by monitoring vulnerabilities, locking versions,
and automating updates with tools like Dependabot.
Standardize deployments using Docker, CI/CD pipelines, and
staging validations. Protect APIs with authentication, input
validation, and performance monitoring through tools like
Postman and Swagger.
18
Testing
Testing
Below we mention the Various Test Cases of this model.
Test Cases
21
Testing
Below we mention the Flow Graph of this model.
Flow Graph
22
Testing
Below we mention the Cyclometric Complexity of this model.
Cyclometric Complexity