Professional Documents
Culture Documents
PROJECT REPORT ON
“SOCIAL MEDIA SITE USER MANAGEMENT SYSTEM”
CERTIFICATE
(PRAJAKTA KALGAONKAR)
PGT Comp Science
Examiner:
Name: ___ _ _ __
Signature:
TABLE OF CONTENTS
1. Acknowledgement 01
2. Introduction 02
4. Proposed system 03
6. Phases of SDLC 05
7. Source Code 10
8. Output 16
9. Testing 28
11. Bibliography 34
ACKNOWLEDGEMENT
Secondly, I would also like to thank my parents and friends who helped
me a lot in finishing this project within the limited time frame.
Debshri Chatterjee
XII-F
INTRODUCTION
A social media user management system is a software that is designed to
manage the functions related to user management of a social media site. It
is used to maintain large records of users. It helps the admin or the
database administrator or manager to maintain the database of new and
existing users, any kind of user information, search users, get user insights,
update user information, edit information, retrieve information, user login
and sign up, accurate data about users, analytics, etc.
All the difficulties of managing a bulky and complicated user database for
social media sites have been rectified through various easiest and simplest
database management softwares.
SYSTEM DEVELOPMENT LIFE CYCLE (SDLC)
The systems development life cycle is a project management technique that
divides complex projects into smaller, more easily managed segments or
phases. Segmenting projects allows managers to verify the successful
completion of project phases before allocating resources to subsequent
phases.
Initiation Phase
The initiation phase is the beginning of the project. In this phase, the idea
for the project is explored and elaborated. The goal of this phase is to
examine the feasibility of the project. In addition, decisions are made
concerning who is to carry out the project, which party (or parties) will be
involved and whether the project has an adequate base of support among
those who are involved.
The Concept Development Phase activities are inputs into the development
of the ITPR, which is a required output of this phase.
Planning Phase
The planning stage (also called the feasibility stage) the phase in which
developers will plan for the upcoming project. It helps to define the
problem and scope of any existing systems, as well as determine the
objectives for their new systems. By developing an effective outline for the
upcoming development cycle, they'll theoretically catch problems before
they affect development. And help to secure the funding and resources they
need to make their plan happen.
Perhaps most importantly, the planning stage sets the project schedule,
which can be of key importance if development is for a commercial product
that must be sent to market by a certain time.
Analysis Phase
The analysis stage includes gathering all the specific details required for a
new system as well as determining the first ideas for prototypes.
Developers may:
User interfaces
System interfaces
Network and network requirements
Databases
They’ll typically turn the SRS document they created into a more logical
structure that can later be implemented in a programming language.
Operation, training, and maintenance plans will all be drawn up so that
developers know what they need to do throughout every stage of the cycle
moving forward.
Once complete, development managers will prepare a design document to
be referenced throughout the next phases of the SDLC.
Development Phase
The development stage is the part where developers actually write code
and build the application according to the earlier design documents and
outlined specifications.
This is where Static Application Security Testing or SAST tools come into
play.
Product program code is built per the design document specifications. In
theory, all of the prior planning and outlined should make the actual
development phase relatively straightforward.
Developers will follow any coding guidelines as defined by the organization
and utilize different tools such as compilers, debuggers, and interpreters.
Programming languages can include staples such as Python, C++, PHP, and
more. Developers will choose the right programming code to use based on
the project specifications and requirements.
Testing Phase
The software must be tested to make sure that there aren’t any bugs and
that the end-user experience will not negatively be affected at any point.
During the testing stage, developers will go over their software with a fine-
tooth comb, noting any bugs or defects that need to be tracked, fixed, and
later retested.
It’s important that the software overall ends up meeting the quality
standards that were previously defined in the SRS document.
Depending on the skill of the developers, the complexity of the software,
and the requirements for the end-user, testing can either be an extremely
short phase or take a very long time.
Maintenance Phase
The SDLC doesn’t end when software reaches the market. Developers must
now move into a maintenance mode and begin practicing any activities
required to handle issues reported by end-users.
Furthermore, developers are responsible for implementing any changes
that the software might need after deployment.
This can include handling residual bugs that were not able to be patched
before launch or resolving new issues that crop up due to user reports.
Larger systems may require longer maintenance stages compared to
smaller systems.
Disposition Phase
The Disposition Phase is the end of an information system’s life cycle. The
information system is formally retired according to organizational needs,
laws and regulations, and the Disposition Plan. The disposition activities
ensure that the information system is terminated in an orderly manner and
that vital information about the system is preserved according to
applicable records management regulations and policies for future access.
The decision to proceed with the Disposition Phase is based on
recommendations and approvals from an In-Process Review during the
Operations and Maintenance Phase.
SOURCE CODE
import pandas as pd
import matplotlib.pyplot as plt
import datetime
import time
def menu():
print()
print("******************************************************************************")
print(" Welcome To Social Media Site User Management System ")
print("******************************************************************************")
print(" Menu ")
print(" ************************************* ")
print()
print(" -> Data Analysis:")
print(" 1) Reading file without index")
print(" 2) Reading file with new column names")
print(" 3) Sorting the values in ascending order of Names")
print(" -> Data Visualization:")
print(" 4) Line plot")
print(" 5) Bar Plot")
print(" 6) Horizontal Bar Plot")
print(" -> Data Manipulation:")
print(" 7) Extracting the middle row from the file ")
print(" 8) Reading 4 records from top and 6 from bottom of the file")
print(" 9) Duplicate file with new user-defined name")
print(" 10) Replacing NaN values with zeroes")
print(" 11) Create a CSV file with data frame ")
print(" 12) Read previously created CSV file " )
print()
print("******************************************************************************")
menu()
if opt==1:
no_index()
elif opt==2:
new_colnames()
elif opt==3:
sort_val_asc()
elif opt==4:
line_plot()
elif opt==5:
bar_plot()
elif opt==6:
horizon_bar_plot()
elif opt==7:
middle_row()
elif opt==8:
top_bottom()
elif opt==9:
duplicate()
elif opt==10:
fill_nan()
elif opt==11:
create_csv()
elif opt==12:
reading_prev_csv()
else:
time.sleep(1)
print("Invalid input! Please choose a valid option (1 to 12)")
time.sleep(1)
continue
#Menu
#if opt==1:
#if opt==2:
#if opt==3:
#if opt==4:
#if opt==5:
#if opt==6:
#if opt==7:
#if opt==8:
#if opt==9:
#if opt==10:
#if opt==11:
#if opt==12:
#if ch is No (N/n):
TESTING
Software Testing is an empirical investigation conducted to provide
stakeholders with information about the quality of the product or service
under test, with respect to the context in which it is intended to operate.
Software Testing also provides an objective, independent view of the
software to allow the business to appreciate and understand the risks at
implementation of the software. Test techniques include, but are not
limited to, the process of executing a program or application with the
intentof finding software bugs.
Specification Based-Testing
Specification-based testing aims to test the functionality of software
according to the applicable requirements. Thus, the tester inputs data into,
and only sees the output from, the test object. This level of testing usually
requires thorough test cases to be provided to the tester, who then can
simply verify that for a given input, the output value (or behaviour), either
"is" or "is not" the same as the expected value specified in the test case.
Specification-based testing is necessary, but it is insufficient to guard
against certain risks.
• api testing - Testing of the application using Public and Private APIs.
For example, the test designer can create tests to cause all statements in
the program to be executed at least once.