Project (UG)

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

A Project Report on

ADVANCED SECURE AND DEPENDABLE STORAGE SERVICES IN CLOUD


(DOMAIN: STUDENT RECORD)

In the partial fulfilment for the Award of the Degree of

BACHELOR OF COMPUTER APPLICATIONS

Submitted by

JABARULLAH S
(University Register No.: 20520U09019)

Under the Guidance of

Prof. K. P. SURESH KUMAR M.C.A., (SET)

DEPARTMENT OF COMPUTER APPLICATIONS

INDO-AMERICAN COLLEGE, CHEYYAR - 604407


(COLLEGE CODE: 205)
Permanently Affiliated to THIRUVALLUVAR UNIVERSITY, Vellore
Accredited by NAAC with ‘B’ Grade
Approved by AICTE
Recognised under section 2(f) of UGC Act

Month & Year: APRIL - 2023

1
INDO-AMERICAN COLLEGE, CHEYYAR- 604407
DEPARTMENT OF COMPUTER APPLICATIONS

CERTIFICATE

This is to certify that the project entitled “ADVANCED SECURE AND DEPENDABLE
STORAGE SERVICES IN CLOUD” with domain of STUDENT RECORD being submitted to the
THIRUVALLUVAR UNIVERSITY, VELLORE by JABARULLAH S (University Reg. No.:
20520U09019) for the fulfilment for the award of the degree of BACHELOR OF COMPUTER
APPLICATIONS is bonafide record of work carried out by him, under my guidance and supervision.

Prof. K. P. SURESH KUMAR


Signature of the Guide

Date:

Place:

Submitted for the viva - voce held on _________________

Examiners:

1.

2.

Prof. K. P. SURESH KUMAR


Head of the Department

2
ACKNOWLEDGEMENT

I sincere very thanks to Mr. A. RADHAKRISHNAN M.A., Vice – President & Secretary and
Prof. Dr. J. EZHILARASI M.Com., M.Phil., M.B.A., Ph.D., (NET) Principal of our college for
their scholarly guidance and valuable motivation throughout the project work as well as the
curriculum.

I would like to express my sincere gratitude to Prof. K. P. SURESH KUMAR M.C.A., (SET)
Head of the Department of Computer Applications, for appropriate support and encouragement
throughout the project.

Also I extend humble word of sincere gratitude to my project guide Prof. K. P. SURESH
KUMAR M.C.A., (SET) for his guidance, and constant encouragement to complete my project
work. It is privilege to thank the entire staff members of the Department of Computer Applications
without their valuable support and encouragement the completion of the project may not be
possible.

I express my heartful gratitude to my parents and my sister for their moral support, encouragement
and co-operation which led to successful completion of my project. I wish to thanks my dear
friends who have taken immense pain to get the quality work on my software project.

JABARULLAH S
(University Reg. No.: 20520U09019)
U09 - Department of Computer Applications
205 - Indo-American College, Cheyyar - 604407

3
TABLE OF CONTENT

Report No. Report Statements Page No.


(Content)
Vision Statement 5
1 Introduction 7
1.1 Abstract 9
1.2 Observation 11
2 Software Project Plan’s 13
2.1 Feasibilities 16
3 Software Requirement Specification 18
3.1 Requirements 19
4 System Requirement 20
4.1 Hardware
4.2 Software
5 System Analysis 25
5.1 Existing System
5.2 Proposed System
6 System Designs 27
6.1 Use Case
6.2 DFD
6.3 Sequential Figure
7 Construction 34
8 Testing 37
9 Coding 45
10 Screenshots 56
11 Conclusion 61
12 Future Enhancement 61
13 Bibliography 62

Processed & Verified by: Prof. K. P. SURESH KUMAR M.C.A., (SET)


Head of the Department
Department of Computer Applications

4
VISION STATEMENT

5
VISION STATEMENT

 Cloud computing provides the facility to provision virtual hardware, runtime


environment and services to a person having money.
 These all things can be used as long as they are needed by the user.
 The whole collection of computing system is transformed into collection of utilities,
which can be provisioned and composed together to deploy systems in hours rather
than days, with no maintenance cost.
 The long-term vision of a cloud computing is that IT services are traded as utilities
in an open market without technological and legal barriers.

STUDENT RECORD:

 The main purpose of Student Management System is to reduce the manual operation
required to maintain all the records of Students. And also generates the various reports
for analysis.
 The purpose of Student Management System is to perform Admission, Student
Details, Marks, and About Fees etc... It reduces the human effort by making
everything computerized.
 The main reason for choosing this topic is to reduce the time and complexity of
maintaining the records and also to easily perform the task of book keeping.
 It also helps in accurate maintenance of Student details.

6
INTRODUCTION

7
INTRODUCTION:

 In the future, we can imagine that it will be possible to find the solution that
matches with our requirements by simply entering out request in a global digital
market that trades with cloud computing services.
 Cloud Storage enable users to remotely store their data and enjoy the on-demand
high quality cloud applications without the burden of local hardware and
software management

CLOUD STORAGE:

 The cloud storage is a computer data storage model in which the data that is
digital in format is stored, and hence it is said to be on the cloud, in logical pools.
This physical storage consists of multiple servers which can be located in the
different parts of the country or may be in different parts of the world depends on
many factors.

ARCHITECTURE OF CLOUD STORAGE:

 In terms of interfaces the cloud storage is basically based on highly virtualized


technology which is more like broader cloud computing. It is possible to use cloud
storage services from an off-site provider (Amazon S3) or from an on-site
provider (ViON Capacity Services).

DATA SECURITY:

Data storage outsourcing increases the surface area of attack.

 It is processed at more locations after information has been dispersed, raising the
likelihood of unauthorised physical access to the data.

ACCESSIBILITY:

 Depending on how much a client is willing to invest on WAN bandwidth, outsourced


storage efficiency is likely to be lower than local storage.

8
ABSTRACT

9
ABSTRACT

Cloud storage enables users to remotely store their data and enjoy the on-demand high quality
cloud applications without the burden of local hardware and software management. Though
the benefits are clear, such a service is also relinquishing users' physical possession of their
outsourced data, which inevitably poses new security risks toward the correctness of the data
in cloud.
In order to address this new problem and further achieve a secure and dependable cloud
storage service, we propose in this paper a flexible distributed storage integrity auditing
mechanism, utilizing the homomorphic token and distributed erasure-coded data.

FEATURES OF STUDENT RECORD DETAILS STORED IN CLOUD:

Easy Report Generation-

The software helps to generate reports easily in required formats


 Data Search and Retrieval:
The system can help users to find and retrieve student’s data over a few clicks
 High Data Storage:
The system stores large amounts of data without hampering its functioning
 Role-Based Access:
The software offers role-based access to the teachers, students, and parents
 Attendance Management:
Attendance Management- It helps to record daily attendance automatically using a
biometric attendance system
 Easy to Use:
The system is easy to use and highly intuitive by all types of individuals

10
OBSERVATION

11
OBSERVATION:

 Storage correctness:

To ensure users that their data are indeed stored appropriately and kept intact all the
time in the cloud

 Fast localization of data error:

To effectively locate the malfunctioning server when data corruption has been
detected

 Dynamic data support:

To maintain the same level of storage correctness assurances even if users modify,
delete or append their data files in the cloud

 Dependability:

To enhance data availability against Byzantine failures, malicious data attacks

 Lightweight:

To enable users to perform storage correctness checks with minimum overhead

12
SOFTWARE PROJECT PLAN’S

13
SOFTWARE PROJECT PLAN:
A project is well-defined task, which is a collection of several operations done in order to
achieve a goal (for example, software development and delivery).
 Every project may have a unique and distinct goal.
 Project is not routine activity or day-to-day operations.
 Project comes with a start time and end time.

SOFTWARE PROJECT:

A Software Project is the complete procedure of software development from requirement


gathering to testing and maintenance, carried out according to the execution methodologies,
in a specified period of time to achieve intended software product.
MANAGING PROJECT:

 Defining and setting up project scope


 Managing project management activities
 Monitoring progress and performance
 Risk analysis at every phase
 Take necessary step to avoid or come out of problems
 Act as project spokesperson

SYSTEM PROJECT ESTIMATION (SYSTEM FEASIBILITY):

For an effective management accurate estimation of various measures is a must. With correct
estimation managers can manage and control the project more efficiently and effectively.
 Software size estimation:

Software size may be estimated either in terms of KLOC (Kilo Line of Code)
or by calculating number of function points in the software. Lines of code
depend upon coding practices and Function points vary according to the user
or software requirement.

 Effort estimation:

The managers estimate efforts in terms of personnel requirement and man-hour


required to produce the software. For effort estimation software size should be
known.

 Time estimation:

Once size and efforts are estimated, the time required to produce the software
can be estimated. Efforts required is segregated into sub categories as per the

14
requirement specifications and interdependency of various components of
software.

 Cost estimation:

This might be considered as the most difficult of all because it depends on


more elements than any of the previous ones. For estimating project cost, it is
required to consider -
o Size of software
o Software quality
o Hardware
o Additional software or tools, licenses etc.

FUNCTIONAL REQUIREMENTS:

Functional requirements in an SRS document (software requirements


specification) indicate what a software system must do and how it must function, they are
product features that focus on user needs.

 Authentication functions:

They concern the information users share with the system and their authentication
level.

 Audit tracking:

Audit tracking is the process of tracking critical data.

 External interfaces:

These functions concern the external interface of systems other than the main system.

 Searching/reporting requirements:

This section of requirements will tell you how users can search and retrieve data.

 Historical data:

You will have a growth of data if your database is dynamic, so you need to define
storage requirements to accommodate these data.

15
 Archiving:

System’s data may grow beyond your storage capacity, so the projects must have the
capability to archive the data for long-term storage.

 Database:

The elements and formats you should use when defining what data needs storing in a
system.

 Backup and recovery:

You will need this function in case your system crashes and wipes out all your data.

TECHNICAL FEASIBILITY:

The initial analysis (also known as preliminary analysis) helps decide whether the project is
worth undertaking from an economic and time perspective.

ECONOMIC FEASIBILITY:

For any system if the expected benefits equal or exceed the expected costs, the system can be
judged to be economically feasible. In economic feasibility, cost benefit analysis is done in
which expected costs and benefits are evaluated.
Economic analysis is used for evaluating the effectiveness of the proposed system.

OPERATIONAL FEASIBILITY:

The client-side has user friendly interface, which makes all the operational easy to use and no
extra training is needed

LEGAL FEASIBILITY:

In Legal Feasibility study project is analysed in legality point of view. This includes
analysing barriers of legal implementation of project, data protection acts or social media
laws, project certificate, license, copyright etc. Overall it can be said that Legal Feasibility
Study is study to know if proposed project conform legal and ethical requirements.

SCHEDULE FEASIBILITY:

In Schedule Feasibility Study mainly timelines/deadlines is analysed for proposed project


which includes how many times teams will take to complete final project which has a great
impact on the organization as purpose of project may fail if it can’t be completed on time.

16
SOFTWARE REQUIREMENT
SPECIFICATION

17
SOFTWARE REQUIREMENT SPECIFICATION:

 General description:

In this, general functions of product which includes objective of user, a user


characteristic, features, benefits, about why its importance is mentioned. It also
describes features of user community.

 Functional Requirements:

In this, possible outcome of software system which includes effects due to operation
of program is fully explained. All functional requirements which may include
calculations, data processing, etc. are placed in a ranked order.

 Interface Requirements:

In this, software interfaces which mean how software program communicates with
each other or users either in form of any language, code, or message are fully
described and explained. Examples can be shared memory, data streams, etc.

 Performance Requirements:

In this, how a software system performs desired functions under specific condition
is explained. It also explains required time, required memory, maximum error rate,
etc.

 Design Constraints:

In this, constraints which simply means limitation or restriction are specified and
explained for design team. Examples may include use of a particular algorithm,
hardware and software limitations, etc

 Non-Functional Attributes:

In this, non-functional attributes are explained that are required by software system
for better performance. An example may include Security, Portability, Reliability,
Reusability, Application compatibility, Data integrity, Scalability capacity, etc.

18
SYSTEM REQUIREMENTS

19
HARDWARE SPECIFICATION:

Processor : Intel ®
Hard Disk : 40 GB / above
RAM : 512 MB / above

SOFTWARE SPECIFICATION:

Operating System : Windows 10 / 11


Server Software : XAMPP

LANGUAGE USED:

Language : PHP (Database Connectivity)


Database : MySQL 5.x
User Interface Designs : HTML, CSS, JAVASCRIPT, JQUERY
Web Browser : Mozilla, Google Chrome
(Any one) IE8, Opera / Opera Mini

Suitable Servers : XAMPP, WAMP, MAMP, LAMP


(Any one)

20
STORING INFORMATION IN THE MINI
CLOUD SERVER
(Student Record)

21
MODULES:

The program consists of following modules:

1. LOGIN:

It’s a multiple login interface where you can login as ADMIN or as a


CLERK.

ADMIN:

The admin will have the privileges to access all the functions in the
applications.

CLERK:

The Clerk is restricted to some privileges of the application.

2. MANAGE STUDENT:

The Manage Student module will contain two Sub Modules, that is
Manage Existing Student and add new Student. In Manage Existing Student Module
we can manipulate the Existing Student Information’s and Update. In add new
Student Module we can add the new Student to the Database.

3. REPORT:

This Module Contains the All Reports related to the Students such as
Student Details, Marks of Student, Fees Information etc.. The Admin or the Clerk can
print the Reports.

4. SETTING:

In this Module every users can Change their password and the User Name.

5. BACK UP:

This module deals with backing up of data for future references or to recover the
database tables.

22
SYSTEM ANALYSIS
(Cloud based)

23
EXISTING SYSTEM:
 Cloud computing is the delivery information as a service, which shares data resources,
software, and data information that are provided to computers as a metered service
over a network.
 Cloud computing provides data access and data storage resources without requiring
cloud users.
 End users access cloud based applications through a web browser or a light weight
desktop or mobile app while the data are stored on servers at a remote location.
 Cloud application providers strive to provide better service and performance on end-
user computers.

PROPOSED SYSTEM:
 In cloud data storage system, user stores their data in the cloud.
 The correctness and availability of the data files stored on the distributed cloud
servers must be guaranteed.
 The key issues are to effectively detect unauthorized data modification and
corruption.
 The time, computation data resources, and even the related online burden of users
data are saved, by providing the extension of the proposed main scheme to support
third party auditing.
 In order to achieve the assurance of data storage correctness and also data error
localization simultaneously, our scheme relies on the recomputed verification tokens.
 The main idea is that before data file distribution, the user pre computes certain
number of verification tokens on individual vector.
 The proposed scheme achieves the integration of storage correctness insurance and
data error localization.
 Error localization is key prerequisite for eliminating errors in storage systems.
 It is also of critical importance to identify potential threats from external attacks. The
system also provide the extension of the proposed main scheme is to support the third-
party auditing, where users can safely delegate the data integrity checking tasks to
third party auditors and be worry-free to use the cloud storage services.

24
SYSTEM DESIGN’S

25
INTRODUCTION:

 Design is the first step in the development phase for any techniques and principles for
the purpose of defining a device, a process or system in sufficient detail to permit its
physical realization.
 Once the software requirements have been analyzed and specified the software design
involves three technical activities - design, coding, implementation and testing that
are required to build and verify the software.
 The design activities are of main importance in this phase, because in this activity,
decisions ultimately affecting the success of the software implementation and its ease
of maintenance are made. These decisions have the final bearing upon reliability and
maintainability of the system. Design is the only way to accurately translate the
customer’s requirements into finished software or a system.
 Design is the place where quality is fostered in development. Software design is a
process through which requirements are translated into a representation of software.
Software design is conducted in two steps. Preliminary design is concerned with the
transformation of requirements into data.

FLOW DIAGRAM:

26
DATA FLOW DIAGRAM 1:

DATA FLOW DIAGRAM 2:

27
DATA FLOW DIAGRAM 3:

DATA FLOW DIAGRAM 4:

28
DATA FLOW DIAGRAM 5:

29
SEQUENTIAL DIAGRAM:

30
USE CASE DIAGRAM:

31
TECHNOLOGIES USED
(Construction)

32
ABOUT TECHNOLOGIES:

HTML:

 The HyperText Markup Language or HTML is the standard markup language for
documents designed to be displayed in a web browser. It is often assisted by
technologies such as Cascading Style Sheets (CSS) and scripting languages such
as JavaScript.
 Web browsers receive HTML documents from a web server or from local storage
and render the documents into multimedia web pages. HTML describes the structure
of a web page semantically and originally included cues for its appearance.
 HTML elements are the building blocks of HTML pages. With HTML
constructs, images and other objects such as interactive forms may be embedded into
the rendered page. HTML provides a means to create structured documents by
denoting structural semantics for text such as headings, paragraphs, lists, links,
quotes, and other items. HTML elements are delineated by tags, written using angle
brackets. Tags such as <img /> and <input /> directly introduce content into the
page. Other tags such as <p> and </p> surround and provide information about
document text and may include sub-element tags. Browsers do not display the HTML
tags but use them to interpret the content of the page.
 HTML can embed programs written in a scripting language such as JavaScript, which
affects the behavior and content of web pages. The inclusion of CSS defines the look
and layout of content. The World Wide Web Consortium (W3C), former maintainer
of the HTML and current maintainer of the CSS standards, has encouraged the use of
CSS over explicit presentational HTML since 1997. A form of HTML, known
as HTML5, is used to display video and audio, primarily using
the <canvas> element, together with JavaScript.

JAVASCRIPT:
 JavaScript , often abbreviated as JS, is a programming language that is one of the
core technologies of the World Wide Web, alongside HTML and CSS. As of 2022,
98% of websites use JavaScript on the client side for webpage behavior, often
incorporating third-party libraries. All major web browsers have a
dedicated JavaScript engine to execute the code on users' devices.
 JavaScript is a high-level, often just-in-time compiled language that conforms to
the ECMAScript standard. It has dynamic typing, prototype-based object-orientation,
and first-class functions. It is multi-paradigm, supporting event-driven, functional,
and imperative programming styles. It has application programming interfaces (APIs)
for working with text, dates, regular expressions, standard data structures, and
the Document Object Model (DOM).
 The ECMAScript standard does not include any input/output (I/O), such
as networking, storage, or graphics facilities. In practice, the web browser or
other runtime system provides JavaScript APIs for I/O.

33
 JavaScript engines were originally used only in web browsers, but are now core
components of some servers and a variety of applications. The most popular runtime
system for this usage is Node.js.
 Although Java and JavaScript are similar in name, syntax, and respective standard
libraries, the two languages are distinct and differ greatly in design.
CSS:
 Cascading Style Sheets (CSS) is a style sheet language used for describing
the presentation of a document written in a markup language such
as HTML or XML (including XML dialects such
as SVG, MathML or XHTML). CSS is a cornerstone technology of the World Wide
Web, alongside HTML and JavaScript.
 CSS is designed to enable the separation of content and presentation,
including layout, colors, and fonts. This separation can improve content accessibility;
provide more flexibility and control in the specification of presentation
characteristics; enable multiple web pages to share formatting by specifying the
relevant CSS in a separate .css file, which reduces complexity and repetition in the
structural content; and enable the .css file to be cached to improve the page load speed
between the pages that share the file and its formatting.
 Separation of formatting and content also makes it feasible to present the same
markup page in different styles for different rendering methods, such as on-screen, in
print, by voice (via speech-based browser or screen reader), and on Braille-
based tactile devices. CSS also has rules for alternate formatting if the content is
accessed on a mobile device.
 The name cascading comes from the specified priority scheme to determine which
style rule applies if more than one rule matches a particular element. This cascading
priority scheme is predictable.
 The CSS specifications are maintained by the World Wide Web Consortium (W3C).
Internet media type (MIME type) text/css is registered for use with CSS by RFC
2318 (March 1998). The W3C operates a free CSS validation service for CSS
documents.
 In addition to HTML, other markup languages support the use of CSS
including XHTML, plain XML, SVG, and XUL. CSS is also used in GTK widget
toolkit.

JQUERY:
 jQuery is a JavaScript framework designed to simplify HTML DOM tree traversal
and manipulation, as well as event handling, CSS animation, and Ajax.[3] It is free,
open-source software using the permissive MIT License. As of Aug 2022, jQuery is
used by 77% of the 10 million most popular websites. Web analysis indicates that it is
the most widely deployed JavaScript library by a large margin, having at least 3 to 4
times more usage than any other JavaScript library.
 jQuery's syntax is designed to make it easier to navigate a document,
select DOM elements, create animations, handle events, and
develop Ajax applications. jQuery also provides capabilities for developers to

34
create plug-ins on top of the JavaScript library. This enables developers to
create abstractions for low-level interaction and animation, advanced effects and high-
level, theme-able widgets. The modular approach to the jQuery library allows the
creation of powerful dynamic web pages and Web applications.
 The set of jQuery core features—DOM element selections, traversal, and
manipulation—enabled by its selector engine (named "Sizzle" from v1.3), created a
new "programming style", fusing algorithms and DOM data structures. This style
influenced the architecture of other JavaScript frameworks like YUI v3 and Dojo,
later stimulating the creation of the standard Selectors API.
 Microsoft and Nokia bundle jQuery on their platforms. Microsoft includes it
with Visual Studio for use within Microsoft's ASP.NET AJAX and ASP.NET
MVC frameworks while Nokia has integrated it into the Web Run-Time widget
development platform.

PHP:

 Hypertext Pre-processor, is a widely used, general-purpose scripting language that


was originally designed for web development, to produce dynamic web pages.
 It can be embedded into HTML and generally runs on a web server, which needs to be
configured to process PHP code and create web page content from it.
 It can be deployed on most web servers and on almost every operating system and
platform free of charge.
 PHP was originally created by Rasmus Lerdorf in 1995 and has been in continuous
development ever since.
 The main implementation of PHP is now produced by The PHP Group and serves as
the de facto standard for PHP as there is no formal specification.
 PHP is free software released under the PHP License.
 PHP License, which is incompatible with the GNU General Public License (GPL)
because of restrictions on the use of the term PHP
 PHP has evolved to include a command line interface capability and can also be used
in standalonegraphical applications.

PHP USAGE:

 PHP is a general-purpose scripting language that is especially suited for web


development. PHP generally runs on a web server.
 Any PHP code in a requested file is executed by the PHP runtime, usually to create
dynamic web page content.
 It can also be used for command-line scripting and client-sideGUI applications.
 PHP can be deployed on most web servers, many operating systems and platforms,
and can be used with many relational database management systems.
 It is available free of charge, and the PHP Group provides the complete source code
for users to build, customize and extend for their own use.

35
MYSQL:

ABOUT MYSQL:

 There are a large number of database management systems currently available, some
commercial and some free.
These database systems are powerful, feature-rich software, capable of organizing and
searching millions of records at very high speeds.

Understanding Databases, Records, and Primary Keys

 Every Database is composed of one or more tables.


These Tables, which structure data into rows and columns, Impose organization on
the data. Every Database is composed

Standing Relationships and Foreign Keys(RDBMS):

 You already know that a single database can hold multiple tables.
In a Relational database management system(RDBMS), these tables can be linked to
each other by one or more common fields, called foreign keys.

What is Database administrator(DBA) ?

 Database administrator is the super user of database, he has unrestricted rights and
privileges to access database, grant permission to other database users.

What is Database user(DBU) ?

 Database user is the person who uses the database in a restricted privileges, provided
by database administrator.

Download MySQL Database:

 If you have installed PHP’s WAMP or XAMPP server, then mysql database already
exists. if you don’t have then download mysql database from
herehttp://www.mysql.com

36
SYSTEM TESTING

37
TESTING STRATEGY:
The testing phase is an important part of software development. It is the puterized system will
help in automate process of finding errors and missing operations and also a complete
verification to determine whether the objectives are met and the user requirements are
satisfied.

SOFTWARE TESTING IS CARRIED OUT IN THREE STEPS:

 The first includes unit testing, where in each module is tested to provide its
correctness, validity and also determine any missing operations and to verify whether
the objectives have been met. Errors are noted down and corrected immediately. Unit
testing is the important and major part of the project. So errors are rectified easily in
particular module and program clarity is increased. In this project entire system is
divided into several modules and is developed individually. So unit testing is
conducted to individual modules.
 The second step includes Integration testing. It need not be the case, the software
whose modules when run individually and showing perfect results, will also show
perfect results when run as a whole. The individual modules are clipped under this
major module and tested again and verified the results. This is due to poor interfacing,
which may results in data being lost across an interface. A module can have
inadvertent, adverse effect on any other or on the global data structures, causing
serious problems.
 The final step involves validation and testing which determines which the software
functions as the user expected. Here also some modifications were. In the completion
of the project it is satisfied fully by the end user.
MAINTENANCE AND ENVIRONMENT:
 AS the number of computer based systems, grieve libraries of computer software
began to expand. In house developed projects produced tones of
 thousand soft program source statements. Software products purchased from the
outside added hundreds of thousands of new statements. A dark cloud appeared on the
horizon. All of these programs, all of those source statements-had to be corrected
when false were detected, modified as user requirements changed, or adapted to new
hardware that was purchased. These activities were collectively called software
Maintenance.

38
 The maintenance phase focuses on change that is associated with error correction,
adaptations required as the software's environment evolves, and changes due to
enhancements brought about by changing customer requirements. Four types of
changes are encountered during the maintenance phase.
 Correction
 Adaptation
 Enhancement
 Prevention

CORRECTION:
Even with the best quality assurance activities is lightly that the customer will
uncover defects in the software. Corrective maintenance changes the software to
correct defects.
Maintenance is a set of software Engineering activities that occur after software has
been delivered to the customer and put into operation. Software configuration
management is a set of tracking and control activities that began when a software
project begins and terminates only when the software is taken out of the operation.
We may define maintenance by describing four activities that are undertaken after a
program is released for use:
 Corrective Maintenance
 Adaptive Maintenance
 Perfective Maintenance or Enhancement
 Preventive Maintenance or reengineering
Only about 20 percent of all maintenance work are spent "fixing mistakes". The
remaining 80 percent are spent adapting existing systems to changes in their external
environment, making enhancements requested by users, and reengineering an
application for use.
ADAPTATION:
Over time, the original environment (E>G., CPU, operating system, business rules, external
product characteristics) for which the software was developed is likely to change. Adaptive
maintenance results in modification to the software to accommodate change to its external
environment.

ENHANCEMENT:

As software is used, the customer/user will recognize additional functions that will provide
benefit. Perceptive maintenance extends the software beyond its original function
requirements.

39
PREVENTION:
Computer software deteriorates due to change, and because of this, preventive maintenance,
often called software re engineering, must be conducted to enable the software to serve the
needs of its end users. In essence, preventive maintenance makes changes to computer
programs so that they can be more easily corrected, adapted, and enhanced. Software
configuration management (SCM) is an umbrella activity that is applied throughout the
software process. SCM activities are developed to

SOFTWARE TESTING:

Testing is a process of executing a program with the indent of finding an error. Testing is a
crucial element of software quality assurance and presents ultimate review of specification,
design and coding.
System Testing is an important phase. Testing represents an interesting anomaly for the
software. Thus a series of testing are performed for the proposed system before the system is
ready for user acceptance testing.
A good test case is one that has a high probability of finding an as undiscovered error. A
successful test is one that uncovers an as undiscovered error.

TESTING OBJECTIVES:

 Testing is a process of executing a program with the intent of finding an error


 A good test case is one that has a probability of finding an as yet undiscovered error
 A successful test is one that uncovers an undiscovered error
Testing Principles
o All tests should be traceable to end user requirements
o Tests should be planned long before testing begins
o Testing should begin on a small scale and progress towards testing in large
o Exhaustive testing is not possible
o To be most effective testing should be conducted by a independent third
party

The primary objective for test case design is to derive a set of tests that has the highest
livelihood for uncovering defects in software. To accomplish this objective two different
categories of test case design techniques are used. They are
o White box testing
o Black box testing

WHITE-BOX TESTING:

 White box testing focus on the program control structure. Test cases are derived to
ensure that all statements in the program have been executed at least once during
testing and that all logical conditions have been executed.
40
BLACK-BOX TESTING:

Black box testing is designed to validate functional requirements without regard to the
internal workings of a program. Black box testing mainly focuses on the information domain
of the software, deriving test cases by partitioning input and output in a manner that provides
through test coverage. Incorrect and missing functions, interface errors, errors in data
structures, error in functional logic are the errors falling in this category.

TESTING STRATEGIES:

A strategy for software testing must accommodate low-level tests that are necessary to verify
that all small source code segment has been correctly implemented as well as high-level tests
that validate major system functions against customer requirements.

TESTING FUNDAMENTALS:

Testing is a process of executing program with the intent of finding error. A good test case is
one that has high probability of finding an undiscovered error. If testing is conducted
successfully it uncovers the errors in the software. Testing cannot show the absence of
defects, it can only show that software defects present.

TESTING INFORMATION FLOW:

Information flow for testing flows the pattern. Two class of input provided to test the process.
The software configuration includes a software requirements specification, a design
specification and source code.
Test configuration includes test plan and test cases and test tools. Tests are conducted and all
the results are evaluated. That is test results are compared with expected results. When
erroneous data are uncovered, an error is implied and debugging commences.

UNIT TESTING:

Unit testing is essential for the verification of the code produced during the coding phase and
hence the goal is to test the internal logic of the modules. Using the detailed design
description as a guide, important paths are tested to uncover errors with in the boundary of
the modules. These tests were carried out during the programming stage itself. All units of
Vienna SQLwere successfully tested.

41
INTEGRATION TESTING:

Integration testing focuses on unit tested modules and build the program structure that is
dictated by the design phase.

SYSTEM TESTING:

System testing tests the integration of each module in the system. It also tests to find
discrepancies between the system and it’s original objective, current specification and system
documentation. The primary concern is the compatibility of individual modules. Entire
system is working properly or not will be tested here, and specified path ODBC connection
will correct or not, and giving output or not are tested here these verifications and validations
are done by giving input values to the system and by comparing with expected output. Top-
down testing implementing here.

ACCEPTANCE TESTING:

This testing is done to verify the readiness of the system for the implementation. Acceptance
testing begins when the system is complete. Its purpose is to provide the end user with the
confidence that the system is ready for use. It involves planning and execution of functional
tests, performance tests and stress tests in order to demonstrate that the implemented system
satisfies its requirements.

Tools to special importance during acceptance testing include:

 Test coverage Analyzer – records the control paths followed for each test case.
 Timing Analyzer – also called a profiler, reports the time spent in various regions of
the code are areas to concentrate on to improve system performance.
 Coding standards – static analyzers and standard checkers are used to inspect code for
deviations from standards and guidelines.

TEST CASES:

Test cases are derived to ensure that all statements in the program have been executed at least
once during testing and that all logical conditions have been executed.

Using White-Box testing methods, the software engineer can drive test cases that
o Guarantee that logical decisions on their true and false sides.
o Exercise all logical decisions on their true and false sides.
o Execute all loops at their boundaries and with in their operational bounds.
o Exercise internal data structure to assure their validity.
o The test case specification for system testing has to be submitted for review
before system testing commences.

42
CODING

43
LOGIN:
<?php
session_start();
if(isset($_POST['submit'])){

include('../config/DbFunction.php');
$obj=new DbFunction();
$_SESSION['login']=$_POST['id'];
$obj->login($_POST['id'],$_POST['password']);
}

?>
<!DOCTYPE html>
<html lang="en">

<head>

<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="">
<meta name="author" content="">

<title>School Management Login </title>

<!-- Bootstrap Core CSS -->


<link href="../bower_components/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">

<!--MetisMenu CSS -->


<link href="../bower_components/metisMenu/dist/metisMenu.min.css" rel="stylesheet">

<!-- Custom CSS -->


<link href="../dist/css/sb-admin-2.css" rel="stylesheet">

<!-- Custom Fonts -->


<link href="../bower_components/font-awesome/css/font-awesome.min.css" rel="stylesheet"
type="text/css">
<link rel="stylesheet" type="text/css" href="../dist/css/jquery.validate.css" />
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
<script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->

</head>

<body>

44
<h2 align="center">Student Record Management System</h2>
<div class="container">
<br><br><br><br>

<div class="col-md-4 col-md-offset-4">

<div class="panel panel-primary">

<div class="panel-heading">
<h3 class="panel-title">Sign In</h3>
</div>
<div class="panel-body">
<form method="post">
<fieldset>
<div class="form-group">
<input class="form-control" placeholder="Login Id" id="id"name="id" type="text"
autofocus autocomplete="off">
</div>
<div class="form-group">
<input class="form-control" placeholder="Password" id="password"name="password"
type="password" value="">
</div>

<!-- Change this to a button or input when using this as a form -->
<input type="submit" value="login" name="submit" class="btnbtn-lgbtn-success btn-block">
</fieldset>
</form>
</div>
</div>
</div>
</div>
</div>

<!-- jQuery -->


<script src="../bower_components/jquery/dist/jquery.min.js"></script>

<!-- Bootstrap Core JavaScript -->


<script src="../bower_components/bootstrap/dist/js/bootstrap.min.js"></script>

<!-- Metis Menu Plugin JavaScript -->


<script src="../bower_components/metisMenu/dist/metisMenu.min.js"></script>

<!-- Custom Theme JavaScript -->


<script src="../dist/js/sb-admin-2.js"></script>
<script src="../dist/jquery-1.3.2.js" type="text/javascript"></script>
<script src="../dist/jquery.validate.js" type="text/javascript"></script>
<script type="text/javascript">

jQuery(function(){
jQuery("#id").validate({

45
expression: "if (VAL.match(/^[a-z]$/)) return true; else return false;",
message: "Should be a valid id"
});
jQuery("#password").validate({
expression: "if (VAL.match(/^[a-z]$/)) return true; else return false;",
message: "Should be a valid password"
});

});

</script>
</body>

</html>

DASHBOARD:

<?phpsession_start();

if (!(isset($_SESSION['login']))) {

header('location:../index.php');

<li>
<a href="#">
<div>
<strong>John Smith</strong>
<span class="pull-right text-muted">
<em>Yesterday</em>
</span>
</div>
<div>Lorem ipsum dolor sit amet, consecteturadipiscingelit. Pellentesqueeleifend...</div>
</a>
</li>
<li class="divider"></li>
<li>
<a class="text-center" href="#">
<strong>Read All Messages</strong>
<i class="fa fa-angle-right"></i>
</a>
</li>
</ul>
<!-- /.dropdown-messages -->
</li>
<!-- /.dropdown -->
<li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#">
<i class="fa fa-tasks fa-fw"></i><i class="fa fa-caret-down"></i>
</a>

46
<ul class="dropdown-menu dropdown-tasks">
<li>
<a href="#">
<div>
<p>
<strong>Task 1</strong>
<span class="pull-right text-muted">40% Complete</span>
</p>
<div class="progress progress-striped active">
<div class="progress-bar progress-bar-success" role="progressbar" aria-valuenow="40" aria-
valuemin="0" aria-valuemax="100" style="width: 40%">
<span class="sr-only">40% Complete (success)</span>
</div>
</div>
</div>
</a>
</li>
<li class="divider"></li>
<li>
<a href="#">
<div>
<p>
<strong>Task 2</strong>
<span class="pull-right text-muted">20% Complete</span>
</p>
<div class="progress progress-striped active">
<div class="progress-bar progress-bar-info" role="progressbar" aria-valuenow="20" aria-
valuemin="0" aria-valuemax="100" style="width: 20%">
<span class="sr-only">20% Complete</span>
</div>
</div>
</div>
</a>
</li>
<li class="divider"></li>
<li>
<a href="#">
<div>
<p>
<strong>Task 3</strong>
<span class="pull-right text-muted">60% Complete</span>
</p>
<div class="progress progress-striped active">
<div class="progress-bar progress-bar-warning" role="progressbar" aria-valuenow="60" aria-
valuemin="0" aria-valuemax="100" style="width: 60%">
<span class="sr-only">60% Complete (warning)</span>
</div>
</div>
</div>
</a>

47
</li>
<li class="divider"></li>
<li>
<a href="#">
<div>
<p>
<strong>Task 4</strong>
<span class="pull-right text-muted">80% Complete</span>
</p>
<div class="progress progress-striped active">
<div class="progress-bar progress-bar-danger" role="progressbar" aria-valuenow="80" aria-
valuemin="0" aria-valuemax="100" style="width: 80%">
<span class="sr-only">80% Complete (danger)</span>
</div>
</div>
</div>
</a>
</li>
<li class="divider"></li>
<li>
<i class="fa fa-twitter fa-fw"></i> 3 New
<a href="#">
<div>
<i class="fa fa-upload fa-fw"></i> Server Rebooted
<span class="pull-right text-muted small">4 minutes ago</span>
</div>
</a>
</li>
<li class="divider"></li>
<li>
<a class="text-center" href="#">
<strong>See All Alerts</strong>
<i class="fa fa-angle-right"></i>
</a>
</li>
</ul>
<!-- /.dropdown-alerts -->
</li>
<!-- /.dropdown -->
<li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#">
<i class="fa fa-user fa-fw"></i><i class="fa fa-caret-down"></i>
</a>
<ul class="dropdown-menu dropdown-user">
<li><a href="#"><i class="fa fa-user fa-fw"></i> User Profile</a>
<ul class="nav nav-second-level">
<li>
<a href="panels-wells.html">Panels and Wells</a>
</li>
<li>

48
<a href="buttons.html">Buttons</a>
</li>
<li>
<a href="notifications.html">Notifications</a>
</li>
<li>
<a href="typography.html">Typography</a>
<ul class="nav nav-second-level">
<li>
<a href="blank.html">Blank Page</a>
</li>
<li>
<a href="login.html">Login Page</a>
</li>
</ul>
<!-- /.nav-second-level -->
</li>
<div class="form-group">
<label>Text area</label>
<textarea class="form-control" rows="3"></textarea>
</div>
<div class="form-group">
<label>Checkboxes</label>
<div class="checkbox">
<input type="radio" name="optionsRadios" id="optionsRadios3" value="option3">Radio 3
</label>
</div>
</div>
<div class="form-group">
<label>Inline Radio Buttons</label>
<label class="radio-inline">
<input type="radio" name="optionsRadiosInline" id="optionsRadiosInline1"
value="option1" checked>1
</label>
<label class="radio-inline">
<input type="radio" name="optionsRadiosInline" id="optionsRadiosInline2"
value="option2">2
</label>
<label class="radio-inline">
<input type="radio" name="optionsRadiosInline" id="optionsRadiosInline3"
value="option3">3
</label>
</div>
<div class="form-group">
<label>Selects</label>
<select class="form-control">
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>

49
<option>5</option>
</select>
</div>
<div class="form-group">
<label>Multiple Selects</label>
<select multiple class="form-control">
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
</select>
</div>
<button type="submit" class="btnbtn-default">Submit Button</button>
<button type="reset" class="btnbtn-default">Reset Button</button>
</form>
</div>
<!-- /.col-lg-6 (nested) -->
<div class="col-lg-6">
<h1>Disabled Form States</h1>
<form role="form">
<fieldset disabled>
<div class="form-group">
<label for="disabledSelect">Disabled input</label>
<input class="form-control" id="disabledInput" type="text" placeholder="Disabled input"
disabled>
</div>
<div class="form-group">
<label for="disabledSelect">Disabled select menu</label>
<select id="disabledSelect" class="form-control">
<option>Disabled select</option>
</select>
</div>
<div class="checkbox">
<label>
<input type="checkbox">Disabled Checkbox
</label>
</div>
<button type="submit" class="btnbtn-primary">Disabled Button</button>
</fieldset>
</form>
<h1>Form Validation States</h1>
<form role="form">
<div class="form-group has-success">
<label class="control-label" for="inputSuccess">Input with success</label>
<input type="text" class="form-control" id="inputSuccess">
</div>
<div class="form-group has-warning">
<label class="control-label" for="inputWarning">Input with warning</label>
<input type="text" class="form-control" id="inputWarning">

50
</div>
<div class="form-group has-error">

DATABASE CONFIGURATION:

<?php
class Database {
private $_connection;
private static $_instance; //The single instance
private $_host = "localhost";
private $_username = "root";
private $_password = "";
private $_database = "schoolmanagement";
/*
Get an instance of the Database
@return Instance
*/
public static function getInstance() {
if(!self::$_instance) { // If no instance then make one
self::$_instance = new self();
}
return self::$_instance;
}
// Constructor
public function __construct() {
$this->_connection = new mysqli($this->_host, $this->_username,
$this->_password, $this->_database);

// Error handling
if(mysqli_connect_error()) {
trigger_error("Failed to conencto to MySQL: " .
mysqli_connect_error(),
E_USER_ERROR);
}
}
// Magic method clone is empty to prevent duplication of connection
private function __clone() { }
// Get mysqli connection
public function getConnection() {
return $this->_connection;
}
}

?>

51
SCREENSHOTS
(Project Outputs)

52
LOGIN PAGE:

CREATE COURSE:

53
STUDENT REGISTRATION DETAILS:

STUDENT REGISTRATION DETAILS UPDATE / VIEW:

54
COURSE REGISTRATION:

POP-UP MESSAGES:

55
COURSE SUBJECTS:

UPDATED DETAILS (SEMESTER VICE):

56
FUTURE ENHANCEMENT

57
FUTURE ENHANCEMENTS:

 This application avoids the manual work and the problems concern with it. It is an
easy way to obtain the information regarding the different scheduled information
that are currently issued.
 Well I have worked hard in order to present an improved website better than the
existing one’s regarding the information about the various activities. Still ,we
found out that the project can be done in a better way.

58
CONCLUSION OF THE PROJECT

59
CONCLUSION:

In conclusion, cloud computing is recently new technological development that has the
potential to have a great impact on the world. It has many benefits that it provides to it users
and businesses.
For example, some of the benefits that it provides to businesses, is that it reduces operating
cost by spending less on maintenance and software upgrades and focus more on the
businesses it self. But there are other challenges the cloud computing must overcome.

60
BIBLIOGRAPHY

61
BIBLIOGRAPHY:

Reference : "Cloud Computing: Concepts, Technology and


Architecture" by Thomas Erl and Ricardo Puttini
"Cloud Computing For Dummies" by Judith Hurwitz

Websites : https://www.iitms.co.in/blog/student-record-
management-system.html
https://www.intradyn.com/student-records-
management
https://www.academiaerp.com/blog/4-benefits-of-
student-record...

Web Tutorials : https://www.w3schools.com


https://www.w3schools.com/tags/tag_input.asp

TEXT BOOKS:

 “Essentials of Cloud Computing“–K.CHANDRASEKARAN– CRC Press Taylorand


Francis Group an Informal Business–2015.
 Cloud Computing–A Practical Approach for Learning and Implementation, A.
Srinivasan and Suresh, Pearson India Publications,2014

REFERENCE BOOKS:

 KaiHwang, GeoffreyC. Fox, JackG. Dongarra,“DistributedandCloudComputing,


FromParallelProcessing tothe Internet of Things”, Morgan Kaufman Publishers,2012.

62

You might also like