You are on page 1of 71

A

PROJECT REPORT
ON
“MAILING SYSTEM”
In the partial fulfillment of the Requirement for the award of the degree
of
MASTER OF COMPUTER SCIENCE
IN

(Session: 2019-2021)

INTERNAL SUPERVISOR EXTERNAL SUPERVISOR

Mrs. Kirti Saneja Mr. DEEPAK KAUSHIK

(Asst. Prof in Dept. of Computer Science) (Digital media hawk private limited)

SUBMITTED BY

Name – RAKESH
Rollno. 91600602001
M.Sc (C.S) - 4 th sem
Bhiwani-127021, (Haryana)
CERTIFICATE

This is to certify that project report entitle “MAILING SYSTEM” done by MR.
RAKESH, Roll No. 91600602001 of Vaish college, Department Of Management
& Computer Science, Bhiwani towards partial fulfillment of the requirements for
the award of the degree of M.Sc (Computer Science) is a bonafide record of the
work carried out by his under My Supervision and Guidance.

Signature of Project Supervisor Signature of Candidate

Mrs. Kirti Saneja


Assistant Professor in computer science
(Vaish College, Bhiwani)

Page 1
ACKNOWLEDGEMENT

I take this opportunity to express my profound gratitude and deep regards to my


guide “Mrs. Kirti Saneja (Asst. Prof.) ” for her exemplary guidance, monitoring
and constant encouragement throughout the course of this thesis. The blessing,
help and guidance given by her time to time shall carry me a long way in the
journey of life on which I am about to embark.
I also take this opportunity to express a deep sense of gratitude to Dr. Promila
Suhag, Director of self-finance Department Vaish College Bhiwani for her
cordial support, valuable information and guidance, which helped me in
completing this task through various stages.
I am also grateful to my Instructor “Mr. Deepak Kaushik” of Digital Media
Hawk Private Limited for his cooperation during my training. Every employee of
the company helped me as a part of their team.
I am obliged to staff members of Computer Science Department, for the valuable
information provided by them in their respective fields. I am grateful for their
cooperation during the period of my Project. Lastly, I thank almighty, my parents,
brother, sisters and friends for their constant encouragement without which this
assignment would not be possible.

Date: Rakesh
Place: Bhiwani Roll No. 91600602001
(Department of Computer Science)

Page 2
Index
Page No.
1. Introduction ………………………………………………………5-11
1.1 Company Profile
1.2 Overview Of Project
1.3 Scope of the Project
2. Project / Problem Selection ………………………………………12-16
2.1 Module
2.2 Gantt chart
2.3 Pert chart
3. System study Feasibility Study……………………………………17-22
3.1 Existing Project with their Limitation
3.2 Proposed Project with Objective
3.3 Feasibility Study
3.3.1 Operational Feasibility
3.3.2 Technical Feasibility
3.3.3 Economical Feasibility
3.3.4 Behavioral Feasibility
4. System Requirement and Analysis………………………………23-40
4.1 Hardware and Software Requirements
4.2 Technologies Used
4.3 System Analysis
5. System Design……………………………………………………41-52
5.1 System Designs
5.2 Data Flow Diagrams
5.3 Use Case Diagram
Page 3
5.4 ER Diagram
5.5 Table
5.6 Coding
5.7 Design

6. Testing…………………………………………………………….53-56
7. Implementation……………………………………………………57-61
8 Maintenance……………………………………………………….62-65
9. Conclusion………………………………………………………...66-68
10 Bibliography & References…………………………………………..69

Page 4
INTRODUCTION
&
(COMPANY PROFILE)

Page 5
1.1 COMPANY PROFILE

Article I. DIGITAL MEDIA HAWK PRIVATE LIMITED

Company Registered Name: DMH Enterprises OPC Pvt. LTD.

GST NO.06AAHCD5276H1Z1

CIN:U93090HR2019OPC083765

Head Office : Ist Floor, Virat Honda, Near Spice Hotel, Shankarpur Road ,
Selequi, UK 248197
Branch Office : : Near PC Jewellers, sector-14 Old Delhi-Gurugram road,122001

Branch Office: House No. 319A/34, Circular Road, (Map)

LogOn: www. digitalmediahawk.com

Email: contact@digitalmediahawk.com

Voice: +91-8383862320

DMH Technologies is one of the fastest growing software solution, technical consultancy
and knowledge outsourcing company situated in India with offices at UK, Gurugram,
Rohtak. DMH start its carrier from rohtak and now its business has been spread in
multiple areas. DMH start DMH deals in various kinds of software development,
trainings and services solutions in different technologies. Our services include software
development, web development, software testing and software training.

Page 6
DMH is one of the largest Smart School education provider company in Northern India,
established at Rohtak, Haryana since 2010. PTC Circle is a fast-growing, empowering
technology-driven company working in education sector. We offer full product lifecycle services
from architecture, design, development and integration to implementation and quality sup

To be a world class player in providing large & mature software solutions to the most
complex requirements of the customers with highest levels of integrity, professionalism &
technological capabilities. To provide every possible service to our clients with full satisfaction
under one roof. Our Mission is to deliver optimal solution's with quality and services at
reasonable prices. For us customer satisfaction is given top place. We are very friendly in our
dealings to the customers and it helps us retain existing clients and expand customer circle. We
always try to improve the quality of our products by exploring innovative ideas.
DMH Technologies has established itself with these 3 independently successful
divisions:
● Software Development
● Software Training
● Software Services
Article II.
DMH - SEDC has evolved into a self-sufficient facility which has the expertise
and dynamics to expand at short notice to meet deadlines and honour commitments while
providing solutions that adhere to stringent Quality Control measures.
DMH - SEDC is of the firm belief that an order or a deal is not the end of a
Transaction but the beginning of a long term relationship with the client. DMH - SEDC
has good expertise in the fields of Software Development, Multimedia, Banking, Web
Design, Engineering Services and E-commerce & Automation. We are a group of highly
motivated team with ability to innovate and Strong desire to excel. Mainly we are dealing
in as follows:
● Customize Software Solution
● Website Designing
● Website Development

Page 7
● Web application Development
● Search Engines Optimization
● Web Promotion
● Blog Creation
● Website Marketing
● Schools Management Solutions
● Colleges Management Solution
● Universities Management Solution
● Small Medium Enterprises Management Solutions
● Industries Management Solutions
● Corporate Management Solutions
● Product Development
● Domain Registration & Hosting
● Payroll Software
● System Integration
● Out Sourcing

Page 8
1.2 OVERVIEW OF PROJECT

Here, you will learn what email is, how it compares to traditional mail, and how email addresses
are written. We'll also discuss various types of email providers and the features and tools they
include with an email account.

A decisive role can be played by communication in promoting human development in today's


new climate of social change and of all the different communication technologies available,
email is considered as one of the most pervasive forms of communication. However all these
technologies can be of no use to the people who are visually impaired as all activities that can be
performed on the computer are based on visual perception 285 million people are estimated to be
visually impaired worldwide: 39 millionaire blind. Therefore it becomes necessary to make
available internet facilities for communication for them also. This paper aims to develop Text
based email system for visually challenged people to use email system as efficiently as normal
user. The system will not let the user to make the use of keyboard instead will work on speech to
text conversion and vice-versa. The complete system is based on Text-to-speech and Speech-to-
text API’s

In today's information age, computer has become an


integral part of our daily life. Much of the communication takes place through the internet.
Internet is considered as a major storage of information. No single work can be completed
without the help of Internet. And out of all the available communication technologies, email is
one of the most common and popular medium of communication especially in the business
world. The number of worldwide email accounts continues to grow from over 4.1 billion
accounts in2014 to over 5.2 billion accounts by the end of 2018. The total number of worldwide
email users, including both business and consumer users, is also increasing from over2.5 billion
in 2014 to over 2.8 billion in 2018.

The key opinion kept into consideration while developing the proposed system was accessibility.
If such applications will be developed then that will be used efficiently by any one whether he is
able or disable. The most common mail services that we are using in our day to day life
cannot be used by visually impaired people. This is because thecommon mail services do not

Page 9
provide any facility so that the person in front can hear out the content of the screen andthey can
perform their operations easily. For a visually impaired person using a computer for the first time
is not that convenient as it is for a normal user though it is user

Different Operations performed in BILLING project are:

 Mail Compose

 Inbox

 Outbox

 Trash

 Draft

 Friend List

Objectives

1. Notoriety, one of the main objectives of email marketing


2. Loyalty
3. Capturing New Client
4. Interacting with the users
5. Increasing sales
6. Getting to know the client better

Page 10
1.3 Scope of Project

This project aims at developing a web based mail client that server the user to send and receive
mail through send mail as (MTA) message transport and IAMP as the message delivery agent.
This exiting user are needed to authentication their identity and then they permitted to check
their mail in their mailbox. Also they can send mail. Organize mail across the folder and can
delete the necessary mail from mailbox. A good user interface has been provided for performing
all these task easily.

Page 11
2. Project / Problem Selection

Page 12
Module:

Systems design is the process of defining the architecture, components, modules, interfaces, and
data for a system to satisfy specified requirements. Systems design could see it as the application
of systems theory to product development. There is some overlap with the disciplines of systems
analysis, systems architecture and systems engineering.

Designing is the most important part of software development. It requires a careful planning and
logical thinking on the part of the designer. Designing the software means to Plan how the
various parts of the software are going to meet the desired goals. It should be done with utmost
care because if the phase contains any error then it is going to effect the performance of the
system as a result it may take more processing time, more of coding and extra workload.

Module:
Modules are divided into Three parts.

 ADMIN

 User

Module:1

Login and Administration

Admin Can Perform Following Operation

1) Login
2) Manage User
3) Compose Mail

Page 13
4) Inbox
5) Sent Mail
6) Save Mail
7) Delete Mail
8) Log Out

Module: 2
User
1) Registration
2) Login
3) Compose Mail
4) Inbox
5) Sent Mail
6) Save Mail
7) Delete Mail
8) Log Out

2.2 GANTT CHART:

 Gantt chart is a project scheduling technique. Progress can be represented


easily in a Gantt chart, by coloring each milestone when completed. The
project will start in the month of Feb and end in first week of May.

Page 14
Feb March April may

Page 15
2.3 Pert Chart

Page 16
3. SYSTEM STUDY / FEASIBILITY STUDY

Page 17
3. 1 Existing Project With Limitation

Several systems have been built to provide improvements over traditional e-mail systems.
Several companies offer email server products based on database storage . DB Mail offers
programs that enable the possibility of storing and retrieving mail messages from a database . It
claims that the system performs faster queries, scales better, and provides better flexibility than
file-based storage, but it offers little reasoning or evidence to support these claims.

1) delayed transactions
2) consumed much time for calculation
3) inaccurate reports.

3.2 Proposed System With Intended Object

This project aims at developing a web based mail client that server the user to send and
receive mail through send mail as (MTA) message transport and IAMP as the message
delivery agent. This exiting user are needed to authentication their identity and then they
permitted to check their mail in their mailbox. Also they can send mail. Organize mail
across the folder and can delete the necessary mail from mailbox. A good user interface
has been provided for performing all these task easily.

3.3 Feasibility study


This phase is where the project lifecycle begins. Feasibility study is done so that an ill-conceived
system is recognized early in definition phase. Depending on the result of the initial
investigation, the survey is expanded to more detailed feasibility study. A feasibility study is a

Page 18
test of system proposal according to its work ability impact on the organization, ability to meet
the users need and effective user or resources.
Prior to stating whether the system we have to develop is feasible or not we believe that we
should emphasize on what is implied by the word “Feasibility”. Feasibility is the measure of how
beneficial or practical the development of the system will be to the organization. It is a
preliminary survey for the systems investigation. It aims to provide information to facilitate a
later in-depth investigation.

Types of Feasibility Study


There are various measures of feasibility that helps to decide whether a particular project is
feasible or not. These measures include

 Operational Feasibility
 Technical Feasibility
 Economical Feasibility
 Behavioral Feasibility

Each of these types will be explained in detail throughout the project report

3.3.1 OPERATIONAL FEASIBILITY

A proposed system is beneficial only if it can be turned into an information system that will meet
the operational requirements of an organization. A system often fails if it does not fit within
existing operations and if users resist the change.

Important issues a systems developer must look into are:


• Will the new system be used if implemented in an organization?

Page 19
• Are there any major barriers to implementation or is proposed system accepted without
destructive resistance?

The whole purpose of computerizing the Merchant Management is to handle the work much
more accurately and efficiently with less time consumption. There will be additional work to be
completed, because now the Pay Commerce Company will have to maintain database of both
their merchants as well as their Customers.
Compared to the semi-computerized system the chances of avoiding errors in a computerized
system is much higher because the user need not stress himself unnecessarily resulting in
recklessness. Unlike the semi-computerized system there would be backup data for all the
information concerning the daily transactions occurred within the organization.
Another important fact to be regarded is the security control, which is handled by the system.
Since data regarding each Customer and the Organization is confidential, security is a key issue.
Information falling into the wrong hands could jeopardize the entire organization. Unlike in
semi-computerized systems
The proposed system offers adequate control to protect the organization against fraud and
embezzlement and guarantees the accuracy and Security of data and information. This is handled
by the system providing individuals with separate login names and passwords.
The new system is user-friendlier, which enables the end-user to complete his/her work
efficiently and accurately with interest. After taking the above fact into consideration we can
state the operating of the proposed system within the organization is feasible.

In this phase of the feasibility study the following two main topics exists.
• Technical Performance Aspect and
• Acceptance within the organization
Technical performance aspect is explained in the technical feasibility report and there is no new
information is needed in this to explain it again, but as for the acceptance within the organization
the following points are important and those are explained according to the topics
Whether the system provides right information to the right place?

Page 20
In the current system which is the semi computerized system the information may be lost in the
process of sending from one place to another. This is mainly due to human interaction in the
process of the transferring information from one place to another.
Whether the new system affects the current users in the system?
The new proposed system will affect the users in the following areas
• Accuracy
• Efficiency
• Productivity
• Robustness
• Lesser time consuming

3.3.2 TECHNICAL FEASIBILITY


Based on the outline design of the system requirements in terms of inputs, output, procedures,
the technical issues raised during technical feasibility include:
• Does the necessary technology exist to do what is proposed?
• Does the proposed equipment have the technical capacity to hold the data required to use in
the new system?
• Adequate responses provided by the proposed system?
• Is the system flexible enough to facilitate expansion?
• Is there any technical guarantee of accuracy, reliability, ease of access and data security?
The system developer’s task is to view needed capabilities in light of currently available
technology. Our site works hand in hand with high technology. A database has to be maintained
in order to update and backup data whenever required.

3.3.3 ECONOMICAL FEASIBILITY


In making recommendations a study of the economics of the proposed system should be made.
Even though finding out the costs of the proposed project is difficult we assume and estimate the
costs and benefits as follows. According to the computerized system we propose, the costs can
be broken down in two categories.
• Costs associated with the development of the system.

Page 21
• Costs associated with operating the system.

3.3.4 BEHAVIORAL FEASIBILITY


People are inherently resistant to change and computer has been known to facilitate changes. An
estimate should be made of how strong the user is likely to move towards the development of
computerized system. These are various levels of users in order to ensure proper authentication
and authorization and security of sensitive data of the organization.

Page 22
4. SYSTEM REQUIREMENTS
&
ANALYSIS

Page 23
4. HARDWARE AND SOFTWARE REQUIREMENTS

Article III. This project is a web application that is developed in C# .NET .


Having Microsoft SQL Server 2008 as back end.
Article IV.
1. Microsoft SQL Server 2008: Microsoft Visual Studio is an integrated development
environment (IDE) from Microsoft. It is used to develop console and graphical user
interface applications along with Windows Forms applications, web sites, web applications,
and web services in both native code together with managed code for all platforms supported
by Microsoft Windows, Windows Mobile, Windows CE, .NET Framework, .NET Compact
Framework and Microsoft Silverlight.
Article V. 2.Visual Studio coding:
Article VI. Includes a code editor supporting IntelliSense as well as code refactoring. The
integrated debugger works both as a source-level debugger and a machine-level debugger. Other
built-in tools include a forms designer for building GUI applications, web designer, class
designer, and database schema designer. It accepts plug-ins that enhance the functionality at
almost every level—including adding support for source-control systems
(like Subversion and Visual SourceSafe) and adding new toolsets like editors and visual
designers for domain-specific languages or toolsets for other aspects of the software
development lifecycle (like the Team Foundation Server client: Team Explorer).

4.1 Input Design (c#):

ASP.NET is a Web application framework developed and marketed by Microsoft to

allow programmers to build dynamic Web sites, Web applications and Web services.

Hardware Interface:

Client Side:
Google Chrome
Processor : Pentium IV 2.0 and above.
RAM : 1 GB
Processor : Pentium IV 2.0 and above.
RAM : 1 GB

Page 24
Disk space : 4GB

Software Interface:

Client Side: .NET Framework, Web Browser, Windows XP/2000/7/8/10


Web Server: NET Framework, Web Browser, Windows XP/2000/7/8/10
Data Base Server: Microsoft SQL Server 2008 R2

. Constraints:

User interface is only in English i.e. no other language option is


available . User can login only with his assigned username and password i.e. no guest facility is
available.

4.2 TECHNOLOGIES USED


• C#
• Ado.Net
• SQL Server 2008
• Repeater
• Window API

.NET
The .NET Framework is a software framework developed by Microsoft that runs primarily
on Microsoft Windows. It includes a large library and provides language interoperability (each
language can use code written in other languages) across several programming languages.
Programs written for the .NET Framework execute in a software environment (as contrasted
to hardware environment), known as the Common Language Runtime (CLR), an application

Page 25
virtual machine that provides services such as security, memory management, and exception
handling. The class library and the CLR together constitute the .NET Framework.

The .NET Framework's Base Class Library provides user interface, data access, database
connectivity, cryptography, web application development, numeric algorithms, and network
communications. Programmers produce software by combining their own source code with the
.NET Framework and other libraries. The .NET Framework is intended to be used by most new
applications created for the Windows platform. Microsoft also produces anintegrated
development environment largely for .NET software called Visual Studio.

Asp.Net
ASP.NET is a server-side Web application framework designed for Web development to
produce dynamic Web pages. It was developed by Microsoftto allow programmers to build
dynamic web sites, web applications and web services. It was first released in January 2002 with
version 1.0 of the.NET Framework, and is the successor to Microsoft's Active Server
Pages (ASP) technology. ASP.NET is built on the Common Language Runtime(CLR), allowing
programmers to write ASP.NET code using any supported .NET language. The
ASP.NET SOAP extension framework allows ASP.NET
components to process SOAP messages.

C#.

C# is first component base c family language launched with .net framework in year 2000. C# is
designed to be a platform-independent language in the tradition of Java (although it is
implemented primarily on Windows). It's syntax is similar to C and C++ syntax, and C# is
designed to be an object-oriented language. There are, for the most part, minor variations in
syntax between C++ and C#. Main has no return type, there are no semicolons after class names,
there are some (to C++ programmers) strange decisions regarding capitalization - such as the
capitalization of Main. Other a few differences, the syntax is often the same. This decision is
reasonable, in light of the fact that C syntax has been used with several other languages - notably
Java.

Page 26
Similar to Java, C# does not support multiple inheritance; instead it provides Java's
solution: interfaces. Interfaces implemented by a class specify certain functions that the class is
guaranteed to implement. Interfaces avoid the messy dangers of multiple inheritance while
maintaining the ability to let several classes implement the same set of methods.

C#, as part of the .NET framework, is compiled to Microsoft Intermediate Language


(MSIL), which is a language similar to Java's bytecode. MSIL allows C# to be platform
independent and runs using just in time compiling. Therefore programs running under .NET gain
speed with repeated use. Furthermore, because the other languages that make up the .NET
platform (including VB and Cobol) compile to MSIL, it is possible for classes to be inherited
across languages. The MSIL, like bytecode, is what allows C# to be platform independent.

The potential for C# is great if the .NET platform succeeds. C# is designed to take advantage of
the design of .NET, and Microsoft has poured a great deal of money into .NET

ADO.NET

ADO.NET is a set of computer software components that programmers can use to access data
and data services based on disconnected DataSets and XML. It is a part of the base class
library that is included with the Microsoft .NET Framework. It is commonly used by
programmers to access and modify data stored in relational database systems, though it can also
access data in non-relational sources. ADO.NET is sometimes considered an evolution
of ActiveX Data Objects (ADO) technology, but was changed so extensively that it can be
considered an entirely new product
ADO.NET provides consistent access to data sources such as Microsoft SQL Server, as well as
data sources exposed through OLE DB and XML. Data-sharing consumer applications can use
ADO.NET to connect to these data sources and retrieve, manipulate, and update data.
ADO.NET cleanly factors data access from data manipulation into discrete components that can
be used separately or in tandem. ADO.NET includes .NET Framework data providers for

Page 27
connecting to a database, executing commands, and retrieving results. Those results are either
processed directly, or placed in an ADO.NET DataSet object in order to be exposed to the user in
an ad-hoc manner, combined with data from multiple sources, or remoted between tiers. The
ADO.NET DataSet object can also be used independently of a .NET Framework data provider to
manage data local to the application or sourced from XML.
The ADO.NET classes are found in System.Data.dll, and are integrated with the XML classes
found in System.Xml.dll. When compiling code that uses the System Data namespace, reference
both System.Data.dll and System.Xml.dll. For an example of compiling an ADO.NET
application using a command line compiler, see ADO.NET Sample Application.
ADO.NET provides functionality to developers writing managed code similar to the
functionality provided to native COM developers by ADO.

SQL Server
Microsoft SQL Server is a relational database management system developed by Microsoft . As
a database, it is a software product whose primary function is to store and retrieve data as
requested by other software applications, be it those on the same computer or those running on
another computer across a network (including the Internet). There are at least a dozen different
editions of Microsoft SQL Server aimed at different audiences and for different workloads
(ranging from small applications that store and retrieve data on the same computer, to millions of
users and computers that access huge amounts of data from the Internet at the same time). Its
primary query languages are T-SQL and ANSI SQL.
SQL Server 2008
SQL Server 2008 was released on August 6, 2008 and aims to make data management self-
tuning, self organizing, and self maintaining with the development of SQL Server Always
On technologies, to provide near-zero downtime. SQL Server 2008 also includes support
for structured and semi-structured data, including digital media formats for pictures, audio, video
and other multimedia data. In current versions, such multimedia data can be stored
as BLOBs (binary large objects), but they are generic bitstreams. Intrinsic awareness of
multimedia data will allow specialized functions to be performed on them. According to Paul
Flessner, senior Vice President, Server Applications, Microsoft Corp., SQL Server 2008 can be a

Page 28
data storage backend for different varieties of data: XML, email, time/calendar, file, document,
spatial, etc as well as perform search, query, analysis, sharing, and synchronization across all
data types.

Other new data types include specialized date and time types and a Spatial data type for location-
dependent data.http://en.wikipedia.org/wiki/Microsoft_SQL_Server - cite_note-iWeek-15 Better
support for unstructured and semi-structured data is provided using the new FILESTREAM data
type, which can be used to reference any file stored on the file system. Structured data and
metadata about the file is stored in SQL Server database, whereas the unstructured component is
stored in the file system. Such files can be accessed both via Win32 file handling APIs as well as
via SQL Server using T-SQL; doing the latter accesses the file data as a BLOB. Backing up and
restoring the database backs up or restores the referenced files as well. SQL Server 2008 also
natively supports hierarchical data, and includes T-SQLconstructs to directly deal with them,
without using recursive queries.

The Full-text search functionality has been integrated with the database engine. According to a
Microsoft technical article, this simplifies management and improves performance.

Spatial data will be stored in two types. A "Flat Earth" (GEOMETRY or planar) data type
represents geospatial data which has been projected from its native, spherical, coordinate system
into a plane. A "Round Earth" data type (GEOGRAPHY) uses an ellipsoidal model in which the
Earth is defined as a single continuous entity which does not suffer from the singularities such as
the international dateline, poles, or map projection zone "edges". Approximately 70 methods are
available to represent spatial operations for the Open Geospatial Consortium Simple Features for
SQL, Version 1.1.

SQL Server includes better compression features, which also helps in improving scalability. It
enhanced the indexing algorithms and introduced the notion of filtered indexes. It also
includesResource Governor that allows reserving resources for certain users or workflows. It
also includes capabilities for transparent encryption of data (TDE) as well as compression of
backups. SQL Server 2008 supports the ADO.NET Entity Framework and the reporting tools,
replication, and data definition will be built around the Entity Data Model. SQL Server
Reporting Services will gain charting capabilities from the integration of the data visualization
products from Dundas Data Visualization, Inc., which was acquired by Microsoft. On the

Page 29
management side, SQL Server 2008 includes the Declarative Management Framework which
allows configuring policies and constraints, on the entire database or certain tables,
declaratively. The version of SQL Server Management Studio included with SQL Server 2008
supports IntelliSense for SQL queries against a SQL Server 2008 Database Engine. SQL Server
2008 also makes the databases available via Windows PowerShell providers and management
functionality available as Cmdlets, so that the server and all the running instances can be
managed from Windows PowerShell.

JQuery
jQuery is a fast, small, and feature-rich JavaScript library. It makes things like HTML document
traversal and manipulation, event handling, animation, and Ajax much simpler with an easy-to-
use API that works across a multitude of browsers. With a combination of versatility and
extensibility, jQuery has changed the way that millions of people write JavaScript.
jQuery is a lightweight, "write less, do more", JavaScript library.
The purpose of jQuery is to make it much easier to use JavaScript on your website.
jQuery takes a lot of common tasks that require many lines of JavaScript code to accomplish,
and wraps them into methods that you can call with a single line of code.
jQuery also simplifies a lot of the complicated things from JavaScript, like AJAX calls and DOM
manipulation.
The jQuery library contains the following features:
HTML/DOM manipulation
CSS manipulation
HTML event methods
Effects and animations
AJAX
Utilities
AJAX

AJAX = Asynchronous JavaScript and XML.

AJAX is a technique for creating fast and dynamic web pages.

Page 30
AJAX is about updating parts of a web page, without reloading the whole page.

AJAX allows web pages to be updated asynchronously by exchanging small amounts of data
with the server behind the scenes. This means that it is possible to update parts of a web page,
without reloading the whole page.

Ajax is not a single technology, but a group of technologies. HTML and CSS can be used in
combination to mark up and style information. The DOM is accessed with JavaScript to
dynamically display, and allow the user to interact with, the information presented. JavaScript
and the XMLHttpRequest object provide a method for exchanging data asynchronously between
browser and server to avoid full page reloads.

Classic web pages, (which do not use AJAX) must reload the entire page if the content should
change.

Examples of applications using AJAX: Google Maps, Gmail, Youtube, and Facebook tabs.

4.3 SYSTEM ANALYSIS


System analysis is the process of studying the business processors and procedures, generally
referred to as business systems, to see how they can operate and whether improvement is needed.
This may involve examining data movement and storage, machines and technology used in the
system, programs that control the machines, people providing inputs.

Investigation Phase
The investigation phase is also known as the fact-finding stage or the analysis of the current
system. This is a detailed study conducted with the purpose of wanting to fully understand the
existing system and to identify the basic information requirements. Various techniques may be
used in fact-finding and all fact obtained must be recorded. A thorough investigation was done in
every effected aspect when determining whether the purposed system is feasible enough to be
implemented.

Page 31
Investigation
As it was essential for us to find out more about the present system, we used the following
methods to gather the information: -
• Observation: - Necessary to see the way the system works first hand.
• Document sampling: - These are all the documents that are used in the system. They
are necessary to check all the data that enters and leaves the system.
• Questionnaires: - These were conducted to get views of the other employees who are
currently employed in the system.

Analysis of the Investigation


Strengths of the System
• No complex equipment: - The equipment that is used is very
simple and no special skills have to be mastered to be able to operate the system.
Therefore no training is required for the employees.
• Low cost: - There is little money spent in maintaining the present system
other than buying the necessary office equipment and the ledgers .

Constraints and Limitations


The constraints and limitation within a system are the drawbacks that occur during the
implementation of the system. These limitations and constraints can crop up in almost every
system; the most important fact is to find a way to overcome these problems.
Software design is the first of three technical activities – design, code generation, and test that
are required to build and verify the software. Each activity transforms information in manner that
ultimately results in validated computer software.
The design task produces a data design, an architectural design, an interface design and
component design. The design of an information system produces the details that clearly describe
how a system will meet the requirements identified during system analysis. The system design
process is not a step by step adherence of clear procedures and guidelines. When I started
working on system design, I face different types of problems; many of these are due to
constraints imposed by the user or limitations of hardware and software available. Sometimes it

Page 32
was quite difficult to enumerate that complexity of the problems and solutions thereof since the
variety of likely problems is so great and no solutions are exactly similar however the following
consideration I kept in mind during design phased.

The Analysis phase, defines the requirements of the system, independent of how these
requirements will be accomplished. This phase defines the problem that the customer is trying to
solve. The deliverable result at the end of this phase is a requirement document. Ideally, this
document states in a clear and precise fashion what is to be built. This analysis represents the
``what'' phase. The requirement document tries to capture the requirements from the customer's
perspective by defining goals and interactions at a level removed from the implementation
details.
The requirement document may be expressed in a formal language based on mathematical logic.
Traditionally, the requirement document is written in English or another written language.
The requirement document does not specify the architectural or implementation details, but
specifies information at the higher level of description. The problem statement, the customer's
expectations, and the criteria for success are examples of high-level descriptions. There is a
fuzzy line between high-level descriptions and low-level details.
Sometimes, if an exact engineering detail needs to be specified, this detail will also appear in the
requirement document. This is the exception and should not be the rule. These exceptions occur
for many reasons including maintaining the consistency with other established systems,
availability of particular options, customer's demands, and to establish, at the requirement level,
a particular architecture vision. An example of a low-level detail that might appear in the
requirement document is the usage of a particular vendor's product line, or the usage of some
accepted computer industry standard, or a constraint on the image size of the application.
There is a fundamental conflict between high levels and low levels of detail. The requirement
document states what the system should accomplish, independent of many of the details. The
discovery process used in establishing the requirements during the analysis phase is best
described as a refinement process than as a levels-of-detail process.
Top-down and bottom-up approaches force a greater distinction between high levels and low
levels of detail. Interactive approaches lead to the refinement of those details.

Page 33
Traditionally, the requirement document describes the things in the system and the actions that
can be done on these things. Things might be expressed as objects in an object-based technology
where data and algorithms are hidden behind hierarchical-polymorphic methods. Alternatively,
things might be expressed as services accessing databases in a functional approach where data is
a fundamentally different concept than functions. In general, the description of things in the
system can be much more general and not confined to a particular technology. In a more general
sense, this document describes the ontology, that is the noun phrases and the verb phrases, that
will become the guidelines for defining the application specific protocol.
The requirement descriptions of the things in the system and their actions does not imply an
architecture design rather a description of the artifacts of the system and how they behave, from
the customer's perspective. Later, in the design phase, these requirement descriptions are mapped
into computer science based primitives, such as lists, stacks, trees, graphs, algorithms, and data
structures.
The description of the abstraction of the noun phrases and the verb phrases are not bound to the
use of a written human language. Most written human languages are too vague to capture the
precision necessary to build a system. Alternative descriptive mechanisms based on
mathematical logic are sometimes more suitable but much more difficult to accomplish.
Mathematical logic provides a scientific foundation for precisely expressing information.
However, frequently in the real world, a precise description is not attainable.
Again the requirement document should state in a clear and precise fashion what is to be built.
The definitive mechanism to author such a document, either formally or informally, has yet to be
developed, although reasonable success has been achieved with existing methods including
CASE tools and tools based on mathematical logic.

The main concepts of the analysis phase:


 What business requirements are
 How to gather business requirements
 Process modeling
 Data modeling
 Conceptual systems design

Page 34
Acceptance Criteria
Here acceptance criteria mean that what are the requirements to be implemented in out project so
that customer accepts it easily. So following are the main point to be cared to make our project
easily acceptable to our client.
The system should have the following features:
• User Friendly: System should be user friendly and user should not have any difficulty in
using.
• Consistency: The information should be represented in a consistent manner from one form
to another.
• Attractive: The form layouts should be attractive so as to attract as many viewers as
possible.
• Color Scheme: The color scheme should remain constant and no drastic changes in the color
scheme should be present in going from one form to another.
• Simple: Use of simple, top-down design should be employed.
• Cost Effective: It should be cost effective and should use as minimum space as possible.
• Faster: Access to the Web Site should be fast
• Text: Background does not interrupt the text and Text is big enough to read, but not too big.

SYSTEM DESIGN
System design is the process of developing specifications for a candidate system that meet the
criteria established in the system analysis. Major step in system design is the preparation of the
input forms and the output reports in a form applicable to the user.
The main objective of the system design is to make the system user friendly. System design
involves various stages as:
• Data Entry
• Data Correction
• Data Deletion
• Processing
• Sorting and Indexing
• Report Generation

Page 35
System design is the creative act of invention, developing new inputs, a database, offline files,
procedures and output for processing business to meet an organization objective. System design
builds information gathered during the system analysis

Characteristics of a Well Defined System


In design an efficient and effective system is of great importance to consider the human factor
and equipment that these will require to use. System analyst must evaluate the capabilities and
limitations of the personal and corresponding factors of the equipment itself.
The characteristics associated with effective system operations are:
• Accessibility
• Decision Making Ability
• Economy
• Flexibility
• Reliability
• Simplicity

4.4 DATA FIOW DIAGRAMS


In our DFD, we give names to data flows, processes, and data stores. Although the names
are descriptive of the data, they do not give details. So the following the DFD, our
interest is to build some structured place to keep details of the contents of data flow,
processes, and data store. A data dictionary is a structured repository of data about data. It
is a set of rigorous definition of all DFD data element and data structure.

DFD Symbols
In the DFD, there are four symbols,
• A Square defines a source (originator) or destination of system data.
• An Arrow identifies data flow- data in motion .It is pipeline through which information
flows.
• A circle or a bubble (or a oval bubble) represents a process that transforms incoming data
flow(s) into outgoing data flow(s)

Page 36
• An Open rectangle is a data store-data at rest, or temporary repository of data.

The DFD was first developed by “Larry Constatine” as a way of expressing system requirements
in a graphical form. A DFD, also referred to as a bubble chart has a purpose of clarifying system
requirements and identifying major transformations that will become the program in this system
design.

• A square defines a source of destination or system data.


• An arrow line identifies the data flow or data in motion. It is a pipeline through
which information flows.

• A circle or bubble represents a process transform incoming data flow in


to outgoing data flow.

• A horizontal line represents data stored or data at rest or a temporary


rest repository of data.

Page 37
• An open rectangle refers to the database storage

4.4.1 Data Flow Diagrams:

Page 38
4.5 Use case Diagram

Page 39
4.6 ER Diagram

Page 40
5. SYSTEM DESIGN

Page 41
5.1 TABLES

Copmose

Draft

Register

Page 42
Trash

5.2 Coding

Registration Page Coding


using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class register : System.Web.UI.Page


{
code obj;
protected void Page_Load(object sender, EventArgs e)

Page 43
{
obj = new code();
}
protected void btnRegister_Click(object sender, EventArgs e)
{
obj.query("insert into tbRegister
values('"+txtName.Text+"','"+txtEmail.Text+"','"+txtPwd.Text+"')
");
txtName.Text = "";
txtEmail.Text = "";
txtPwd.Text = "";
}
}

[Due To Security Reason Company Does not provide the coding


part]

The input to the Design Phase is the design document. During the coding phase, different
modules identified in the design document are coded according to the module specifications. The
Objectives of the coding phase is to transform the design of the system, as given by its module
specifications, into a high level languages and code and then unit this code. Software developers
adhere to some well defined and standard style of coding called coding standards. The reasons
for adhering to a standard coding style are the following.
It gives a uniform appearance to the codes written by different engineers.
It encourages good programming practices.
It encourages code understanding.

Coding Standards
• Rules for limiting the use of global.
• Content of the headers preceding codes for different modules.
• Errors return conventions and exception handling mechanisms.

Page 44
Code Walk-Through
It is an Informal technique for analysis of the code. A code walk through of a module is
undertaken after the coding of the module is complete. Here, after a module has been coded,
members of the development team selects some test cases and simulates execution of the by
hand.

Code Inspections
They aim explicitly at the discovery of commonly made errors. During which, the code is
examined for the presence of certain kinds of errors, in contrast to the hand simulation on code
execution as done in code walk-through.

Once the design is complete, most of the major decisions about the system have been made. The
goal of the coding phase is to translate the design of the system into code in a given
programming language. For a given design, the aim of this phase is to implement the design in
the best possible manner. The coding phase affects both testing and maintenance profoundly. A
well written code reduces the testing and maintenance effort. Since the testing and maintenance
cost of software are much higher than the coding cost, the goal of coding should be to reduce the
testing and maintenance effort. Hence, during coding the focus should be on developing that are
easy to write. Simplicity and clarity should be strived for, during the coding phase.

An important concept that helps the understandability of programs is structured programming.


The goal of structured programming is to arrange the control flow in the program. That is,
program text should be organized as a sequence of statements, and during execution, the
statements are executed in the sequence in the program.

For structured programming, a few single-entry-single-exit constructs should be used. These


constructs includes selection (if-then-else), and iteration (while - do, repeat - until etc). With
these constructs it is possible to construct a program as sequence of single - entry - single - exit
constructs. There are many methods available for verifying the code. Some methods are static in
nature that is, that is they do not involve execution of the code. Examples of such methods are
data flow analysis, code reading, code reviews, testing (a method that involves executing the

Page 45
code, which is used very heavily). In the coding phase, the entire system is not tested together.
Rather, the different modules are tested separately. This testing of modules is called "unit
testing". Consequently, this phase is often referred to as "coding and unit testing". The output of
this phase is the verified and unit tested code of the different modules.

Code is text written in a computer programming language. Such a language is specially designed
to facilitate the work of computer programmers, who specify the actions to be performed by a
computer mostly by writing source code, which can then be automatically translated to binary
machine code that the computer can directly read and execute. An interpreter translates to
machine code and executes it on the fly, while a compiler only translates to machine code that it
stores as executable files; these can then be executed as a separate step.

Most computer applications are distributed in a form that includes executable files, but not their
source code, which is only useful to a computer programmer who wishes to understand or
modify the program. Code is text written in a computer programming language. Such a language
is specially designed to facilitate the work of computer programmers, who specify the actions to
be performed by a computer mostly by writing source code, which can then be automatically
translated to binary machine code that the computer can directly read and execute. An interpreter
translates to machine code and executes it on the fly, while a compiler only translates to machine
code that it stores as executable files; these can then be executed as a separate step.
Most computer applications are distributed in a form that includes executable files, but not their
source code, which is only useful to a computer programmer who wishes to understand or
modify the program.
The source code which constitutes a program is usually held in one or more text files stored on a
computer's hard disk; usually these files are carefully arranged into a directory tree, known as a
source tree. Source code can also be stored in a database (as is common for stored procedures)
or elsewhere.
Source code also appears in books and other media; often in the form of small code snippets, but
occasionally complete code bases; a well-known case is the source code of PGP.
The notion of source code may also be taken more broadly, to include machine code and
notations in graphical languages, neither of which are textual in nature. An example from an
article presented on the annual IEEE conference on Source Code Analysis and Manipulation

Page 46
"For the purpose of clarity ‘source code’ is taken to mean any fully executable description of a
software system. It is therefore so construed as to include machine code, very high level
languages and executable graphical representations of systems.
The code base of a programming project is the larger collection of all the source code of all the
computer programs which make up the project.

5.3 DESIGN SCREEN SHOTS

Login Page

Page 47
Reset Page

Forgot Password

Page 48
Register

Compose

Page 49
Delete & Restore Mail

Draft

Page 50
Inbox

Outbox

Page 51
Reply

Trash

Page 52
6.TESTING

Page 53
The basic goal of the software development process is to produce software that has no errors or
very few errors. In an effort to detect errors soon after they are introduced, each phase ends with
verification activity such as a review.

As testing is the last phase before the final software is delivered, it has the enormous
responsibility of detecting any type of error that may in the software. Software typically
undergoes changes even after it has been delivered. And to validate that a change has not
affected some old functionality of software regression testing is performed

Test Stretegy
The system development life cycle involves the phases of testing and debugging after the
requirement analysis, designing and coding. The project in question was tested, debugged and
implemented successfully.

Two strategies of software testing adopted for the new system are as follows:
• Code testing
• Specification testing

Code Testing
Code testing was carried out to see the correctness of the logic involved and the correctness of
the modules. Tests were conducted based upon sample and live data as well. All the modules are
checked separately for assuming correctness and accuracy in all the calculations .

Specification Testing
It examines the specification stating about what program should do and how it performs under
various conditions. This testing strategy is better strategy since it focuses on the way the software
is expected to work.
Some other strategies are also used in the testing process and these are:

• Top-down testing: This approach tests high levels of system before detailed components.
This is appropriate when developing the system top-down and is likely to show up structural

Page 54
design errors early (and therefore cheaply). But this often has advantage that a limited,
working system is available early on. Validation (as distinct from verification) can begin
early. Its disadvantage is that stubs need to be generated (extra effort) and might be
impracticable if component is complex (e.g. converting an array into a linked list; unrealistic
to generate random list; therefore end up implementing unit anyway). Test output may be
difficult to observe (needs creation of artificial environment). This is not appropriate for OO
systems (except within a class).

• Bottom-up testing: This is opposite of top-down testing. This tests low-level units then
works up the hierarchy. Its advantages and disadvantages mirror those of top-down testing.
In this testing there is need to write test drivers for each unit. These are as reusable as the unit
itself. Combining top-down development with bottom-up testing means that all parts of
system must be implemented before testing can begin, which does not accord with
incremental approach discussed above. Bottom-up testing is less likely to reveal architectural
faults early on. However, bottom-up testing of critical low-level components is almost
always necessary. Appropriate for OO systems.

• Stress testing: Tests system's ability to cope with a specified load (e.g. transactions per
second). Tests should be planned to increase load incrementally. This type of testing goes
beyond design limit until system fails (this test is particularly important for distributed
systems like checking degradation of performance a s network traffic increases).

• Back-to-back testing: Comparison of test results from different versions of the system
(e.g. compare with prototype, previous version or different configuration). Process – Run
first system, saving test case results. Run second system, again saving its results. Compare
result files. The key point to be noted is that no difference does not mean no bugs. Both
systems may have made the same mistake.

• Defect testing: A successful defect test is a test that causes the system to behave
Page 55
incorrectly. Defect testing is not intended to show that a program meets its specification. If
tests do not show up defects it may mean that the tests are not exhaustive enough. Exhaustive
testing is not always practically applicable. Subset has to be defined (this should be part of
the test plan, not left to the individual programmer).

Test Cases Designed


The primary objective of test case design is to derive a set of tests that have the highest
likelihood of uncovering errors in software. The test case specification is the major activity in the
testing process. Careful selection of test cases that satisfy the criterion on approach specified is
essential for proper testing. Various characteristics of test cases that are required for portal are:

• A good test has a high probability of finding an error.


• A good test is not redundant.
• A good test should be “Best of Breed”.
• A good test should be neither too simple not too complex.

Page 56
7. IMPLEMENTATION

Page 57
7. IMPLEMENTATION

Implementation is the stage in the project where the theoretical design is turned into the working
system and is giving confidence to the new system for the users i.e. will work efficiently and
effectively. It involves careful planning, investigation of the current system and its constraints on
implementation, design of method to achieve the change over, an evaluation, of change over
methods. A part from planning major task of preparing the implementation is education of users.
The more complex system is implemented, the more involved will be the system analysis and
design effort required just for implementation. An implementation coordinating committee based
on policies of individual organization has been appointed. The implementation process begins
with preparing a plan for the implementation for the system. According to this plan, the activities
are to be carried out, discussions may regarding the equipment has to be acquired to implement
the new system
Implementation is the final and important phase. The most critical stage is in achieving a
successful new system and in giving the users confidence that the new system will work and be
effective. The system can be implemented only after thorough testing is done and if it found to
working according to the specification. This method also offers the greatest security since the old
system can take over if the errors are found or inability to handle certain types of transaction
while using the new system.
The major elements of implementation plan are test plan, training plan, equipment installation
plan, and a conversion plan.

There are three types of implementation


• Implementation of a computer system to replace a manual system.
• Implementation of a new computer system to replace an existing system.
• Implementation of a modified application to replace an existing one, using the same
computer.
Successful implementation may not guarantee improvement in the organization using the new
system, but improper installation will prevent it. It has been observed that even the best system
cannot show good result if the analysts managing the implementation do not attend to every
important detail. This is an area where the systems analysts need to work with utmost care.

Page 58
IMPLEMENTATION TOOLS
• Training personnel
• Conversion Procedures
• Post-implementation review

Training of Personnel involved with system


Even well designed system can succeed or fail because of the way they are operated and used.
Therefore, the quality of training received by the personal involved with the system in various
capacities helps or hinders and may even prevent the successful implementation of management
information system.

System Operators Training


Running of the system successfully depend on the personnel working in the Computer Centre.
They are Responsible for providing the necessary support. Their training must ensure that they
are able to handle all possible operations, both routine and extra-ordinary in nature.
If the system calls for the installation of new equipment, such as new computer system, special
terminals or different data entry machines, the operators training should include such
fundamentals as how to turn the equipment on and use it, how to power off and a knowledge of
what constitutes normal operations. The operators should also be trained on different type of
malfunctioning, how to recognize them and what steps should also be taken whenever they arise.

User Training
User may be trained on use equipment, particularly in the case where, e.g. a micro computer is in
use and individual involved is both operator and user. In such cases, user must be given training
on how to operate and user. In such cases, user must be given training on how to operator the
system also. Questions that may be trivial to the analyst, such as how to turn on a terminal, how
to insert a diskette into a micro-computer or when it is safe to turn off equipment without danger
of data loss are significant problems to new users who are not familiar.

Page 59
In most of the cases user training deals with the operation of the system itself, with proper
attention given to data handling techniques. It is imperative that users be properly trained in
methods of entering transaction, editing data, formulating inquiries, deleting and inserting of
records. No training is complete without familiarizing users with simple systems maintenance
activities. Weakness in any aspect of training may lead of awkward situation that creates user
frustration and error.

Conversion Methods
A conversion is the process of changing from the old system to the new one. It must be properly
planned and executed. Four methods are common in use. They are Parallel Systems, Direct
Conversion, Pilot System and Phase In method. Each method should be considered in the light of
the opportunities that it offers and problems that it may create. In general, system conversion
should be accomplished in shortest possible time. Long conversion periods create problems for
all persons involved including both analysts and users.

Parallel Systems
The most secure method of converting from an old to new system is to run both systems in
parallel. This method is safest one because it ensures that in case of any problem in using new
system, the organization can still fall back to the old system without the loss of time and money.

The Disadvantages Of Parallel Systems Approach Are:

• It doubles operating costs.


• The new system may not get fair trial.

Direct conversion:
This method converts from the old system to new system abruptly, sometimes over a weekend or
even overnight. The old system is used until a planned conversion day, when it is replaced by the
new system.

Page 60
Pilot System
Pilot approach is often preferred in the case of the new system which involves new techniques or
some drastic changes in organization performance. In this method, a working version of the
system is implemented in one part of the organization, such as a single work area or department.

Phase –IN- Method


This method is used when it is not possible to install a new system throughout an organization
all at once. The conversion of files, training of personnel or arrival of equipment may force the
staging of the implementation over a period of time, ranging from weeks to months.

Post Implementation Review


After the system is implemented and conversion is complete, a review should be conducted to
determine whether the system is meeting expectations and where improvements are needed. A
post implementation review measures the systems performance against predefined requirement.
It determines how well the system continues to meet the performance specifications.

Page 61
8. DOCUMENT / MAINTAINENCE

Page 62
8. MAINTENANCE

Maintenance includes all the activity after the installation of software that is performed to keep
the system operational. As we have mentioned earlier, software often has design faults. The two
major forms of maintenance activities are adaptive maintenance and corrective maintenance. It is
generally agreed that for large systems, removing all the faults before delivery is extremely
difficult and faults will be discovered long after the system is installed. As these faults are
detected, they have to be removed. Maintenance activities related to fixing of errors fall under
corrective maintenance.
Removing errors is one of the activities of maintenance. Maintenance also needed due to a
change in the environment or the requirements of the system. The introduction of a software
system affects the work environment. This change in environment often changes what is desired
from the system. Furthermore, often after the system is installed and the users have had a chance
to work with it for some time, requirements that are not identified during requirement analysis
phase will be uncovered. This occurs, since the experience with the software helps the user to
define the needs more precisely. There might also be changes in the input data, the system
environment and output formats. All these require modification of the software. The maintenance
activities related to such modification fall under adaptive maintenance.
Maintenance work is based on existing software, as compared to development work, which
creates new software. Consequently maintenance resolves around understanding the existing
software and spares most of their time trying to understand the software that they have to
modify. Understanding the software involves not only understanding the code, but also the
related documents. During the modification of the software, the effects of the change have to be
clearly understood by the maintainer since introducing undesired side effects in the system
during modification is easier.
To test whether those aspects in the system that are not supposed to be modified are operating as
they were before modification, regression testing is done. Regression testing involves executing
old test cases to test that no new errors have been introduced. Thus, maintenance involves
understanding the existing software (code and related documents), understanding the effects of

Page 63
change, making the changes - both to the code and documents, testing the new parts (changes),
and resetting of the old parts that were not changed.
Since often during development, needs of the maintainers are not kept in mind, little support
documents are produced during development to aid the maintainer. The complexity of the
maintenance task is coupled with the neglect of maintenance concerns during development
which makes maintenance the most cost effective activity in the life of a software product.
In the software life cycle, the maintenance phase is the last stage of the cycle. After software
passes the design stage and is implemented, the maintenance phase of the software life cycle
begins. Understanding the characteristics of the maintenance phase of the software life cycle
allows individuals tasked with analyzing the performance of the software after deployment to
correctly resolve issues that arise.

Characteristics of the Maintenance Phase


After software is up and running, it often requires continuous maintenance. In general, software
remains operational for an extended period of time after initial implementation and requires
regular maintenance to ensure that the software operates continually at peak performance levels.
During the maintenance phase of the software life cycle, software programmers regularly issue
software patches to address changes in the needs of an organization, to correct issues relating to
bugs in the software or to resolve potential security issues. Throughout the maintenance phase,
designers address issues that are discovered to prevent any hindrance to the expected
performance of the software or to add increased functionality to the software.

Responsibility for Performing Software Maintenance


Software maintenance tasks are typically performed by the designers of the software to address
issues discovered after deployment of the software program. As software developers address the
issues found in software programs, it falls to system operators to install the released patches.
Most commercially available software programs are regularly updated using downloads available
through the developer's online support site. System operators download updates as they are
released and install these to ensure continued performance of the software in accordance with the
original design parameters.

Page 64
Maintenance Phase Length
The maintenance phase lasts the longest of all phases of the software life cycle. The primary
reason that the maintenance phase last longest is the life of the software. Most software programs
remain in operation until they become obsolete due to changes in a user's needs or until the cost
of maintaining the software becomes prohibitive to future use of the software. Many designers
release newly designed replacement software programs while previous versions of their software
continue to undergo maintenance. Although the newest version of these software programs are
commercially available to computer users, the company continues to maintain previous versions
of the software and make patches available through Windows Update services for a specified
amount of time.

Microsoft Software Maintenance Phase Examples


Microsoft provides continual maintenance of existing software programs throughout the life of
the software through the Windows Update website. Although support for some products is
gradually phased out, the maintenance phase for Microsoft software typically covers a span of
several years. In the case of Microsoft Office 2007, updates to the software are released in
service packs. Support for each released service pack continues for up to 24 months after the
service pack is release

Maintenance Phase Conclusion


As software becomes cost-prohibitive to maintain and nears the end of the software life cycle,
software designers begin the process of developing new software to replace the existing
software. In many cases, the software development life cycles for programs may overlap. A
software developer may begin the initial phase of the new software life cycle even before the
release of the current version of software becomes commercially available. As computer systems
and the needs of end users of computer programs continue to change, software developers follow
a never-ending cycle of development for their most popular products.

Page 65
9. FUTURE SCOPE
&
CONCLUSION

Page 66
9.1 CONCLUSION
This chapter provides me an opportunity to do self-introspection of what value I have added to
my knowledge and skill set and to the project.

What value I have added to my knowledge

Domain Experience: CYBERTRACKSOFTWARE is working on various technologies.


Also the individual responsibilities are more. So, I have learnt a lot.

Exposure to entirely different technology: Working on .Net Framework for the first
time was a very enriching experience. I had never worked on this platform earlier. So it added to
my list of knowhow and the computer languages known to me.

Database Implementation: I had earlier made database but worked on SQL2008 for the
first time. I learnt many new things about database creation etc. We learn many things
theoretically as part of our curriculum but here I got a chance to apply my knowledge practically
and enhance it also at the same time.

Implementation of User Interface Layer (UI Layer): I have also designed the UI
layer that contains the web pages. Also it contains the Code Behind pages to implement the
programming logic.

Page 67
9.2 FUTURE SCOPE

There are large numbers of commercial Online Shopping websites offering large number of
products tailored to meet the shopping interests of large number of customers. These online
marketplaces have thousands of products listed under various categories. The development of the
proposed system is done keeping in view the problems in the existing system. The proposed
system will not only overcome the limitations of the present system but will also provide the
following characteristics.

 To reduce the paper work involved in managing the information regarding different
software’s.

 To reduce the time constraint that is just wasted because of manual work.

 To centralize all the data regarding software at one place.

 To maintain all steps involved from purchasing the software from its provider to make it
available to the clients.

 To generate various reports required by the administrator regarding software.

Page 68
10. BIBLIOGRAPHY
&
REFERENCE

Page 69
10. REFERENCES

Books
Wrox programmer to programmer Wrox Publication
SQL Server 2008 Microsoft Press

Websites
www.msn.com
www.google.com
www.daniweb.com
www.codeproject.com
www.csharpcorner.com

Page 70

You might also like