Sei sulla pagina 1di 32

MAILING SERVICE WITHIN COMPANY 1

Chapter 1

INTRODUCTION

1.1 Project Description


The Mailing Service is software, which improves the communication between the admin
and all the employees of that company. By this software, it is easy to share the ideas and
files. It speeds up the communication in an organization. Transfer of thoughts and files
can be done with the admin, when the admin is present in some other location other than
the company. It also searches the messages or files which is communicated between
admin and employees.
The major advantage of the proposed system is,
1 It’s online, so that information is available anytime.
2. High integrity and security.
3. Ability to incorporate newly available data.
4. It is user friendly
5. Speed and accuracy is increased
6. Fully automated.
7. Security is associated with user authentication
8. Duplication of information is curbed.

1.1.1 Aim of The Project


● An interesting part of the project is to reduce the cost of employee communications
in a company or organization.

● To support and help for all employees in the organization and admin. Both can
communicate with filtered options for key skills, experience of the employee, job
title and Email Id.

1.2 Company Profile


CIP Technologies is a service provider of embedded technologies. Web‐based
Development & Web based Software development Solutions, Mobile Application
Development, Graphic Design and Animation (2D‐3D). They have the experience &
expertise to enable complicated Business solutions. Their efficient and experienced team
is greatest resource. Intellect’s infrastructure houses a team of young and competitive
MAILING SERVICE WITHIN COMPANY 2

professionals having experience in embedded technologies & software development who


are dedicated to providing high‐end solution to our clients.

The Company Products and Services are user friendly with easy controls and are of
superior specifications. They are always proactive to fulfill client’s needs and
requirements to the best possible extent of their satisfaction.
The Company manage interactive sessions with clients throughout the project
development. They follow complete development life cycle by dividing all the processes
in different phases like Requirements gathering & Analysis, Designing, Development‐I,
Development‐II, Testing, Live, Deployment and Maintenance. They also provide choice
for Languages selection to the client. Providing best quality work in time is our only
motto. Best support to client and lifetime relationship with them is our main goal.

At CIP Technologies Pvt Ltd They strongly believe that their website is the entry for all
their prospects and customer in moving one step forward in ordering their products and
services. Their website plays a pivotal role in protecting their company’s brand and
vision. It is the first point of online interaction for many prospective customers. They turn
their website into a platform so all their transactions convert from visits to orders.
Maintaining and having a best and elegant web design always gives you an added
advantage over your competitors. They provide their clients, the perfect platform to reach
out globally through Internet. This is where They CIP Technologies Pvt Ltd steps in and
provides a best of class design to set the competitive edge.
MAILING SERVICE WITHIN COMPANY 3

Chapter 2
LITERATURE SURVEY

The basic problem is that the employees in the organization communicate or make
correspondence only through post as their units are located in isolated areas. This method
of communication is very time-consuming in nature and it is not reliable. So the solution
for this problem is to develop communication channel that meets the need of the
organization.

2.1 Existing System and Proposed System


Existing System
The company uses the Sanchez application which is a single user system to find the
employee information.
● The important and the most significant drawback is that the system is manual. There
are errors due to carelessness or oversight that may result in loss to the data and as to
the organization. For an organization, time is very important factor.
● The employee information are stored in the Sanchez application which is like a excel
sheet. This makes it impossible to search for company information in such a long
table manually and to add a new query if the searched query is not available.

Proposed System
The mailing service in a company is designed to eliminate all the drawbacks of the
existing system. The system is part of a large HRMS Application and shall be responsible
for maintaining information about employees,
● Positions,
● Company benefits,
● Departments,
● New recruit checklists,
● Employee achievements,
● Warnings,
● Evaluation reports,
MAILING SERVICE WITHIN COMPANY 4

● Education & training,


● Administration,
● Work changes and several ad hoc reports.

2.2 Feasibility Study


Feasibility Study is an essential part of any project and project association. Understanding
completely what a project will deliver is critical to its success. This may sound like
common sense, but unexpectedly it's an area that is frequently given far too little
attention.

Many projects start with the barest heading list of requirements, only to find later the
customers' needs have not been properly understood.

One-way to avoid this problem is by producing a statement of requirements. This paper is


a channel to the main necessities of this application. It gives
● A brief requirement arrangement for management purposes.
● A statement of key objectives - a "cardinal points" specification.
● A clarification of the environment in which the system will work.
● Environment information and orientation to other relevant material.
● Information on most important design constraints.

The contents of the statement of requirements should be stable or change relatively


slowly. Once you have created your statement of necessities, ensure the customer and all
other stakeholders sign-up to it and understand that this and only this will be delivered.
Finally, ensure you have cross-referenced the necessities in the statement of requirements
with those in the project definition report to ensure there is no mismatch.

2.3 Tools and Technologies Used


2.3.1 PHP Technology
The PHP Hypertext Preprocessor (PHP) is a programming language that allows web
developers to create dynamic content that interacts with databases. PHP is basically used
for developing web based software applications. This tutorial helps you to build your base
with PHP.

PHP started out as a small open source project that evolved as more and more people
found out how useful it was.
MAILING SERVICE WITHIN COMPANY 5

Rasmus Lerdorf unleashed the first version of PHP way back in 1994.
● PHP is a recursive acronym for "PHP: Hypertext Preprocessor".
● PHP is a server side scripting language that is embedded in HTML. It is used to
manage dynamic content, databases, session tracking, even build entire e-commerce
sites.
● It is integrated with a number of popular databases, including MySQL, PostgreSQL,
Oracle, Sybase, Informix, and Microsoft SQL Server.
● Server-side scripting. This is the most traditional and main target field for PHP. You
need three things to make this work. The PHP parser is a web server and a web
browser. You need to run the web server, with a connected PHP installation. You can
access the PHP program output with a web browser, viewing the PHP page through
the server. See the installation instructions section for more information.
● Command line scripting. You can make a PHP script to run it without any server or
browser. You only need the PHP parser to use it this way. This type of usage is ideal
for scripts regularly executed using cron (on *nix or Linux) or Task Scheduler (on
Windows). These scripts can also be used for simple text processing tasks. See the
section about Command line usage of PHP for more information.
● PHP is probably not the very best language to write windowing applications, but if
you know PHP very well, and would like to use some advanced PHP features in your
client-side applications you can also use PHP-GTK to write such programs. You also
have the ability to write cross-platform applications this way. PHPGTK is an
extension to PHP, not available in the main distribution. If you are interested in PHP-
GTK, visit its own website [http://gtk.php.net/].
PHP can be used on all major operating systems, including Linux, many Unix variants
(including HP-UX, Solaris and OpenBSD), Microsoft Windows, Mac OS X, RISC OS,
and probably others [1].

2.3.2 HTML

HTML or Hypertext Markup Language is the standard markup language used to


create web pages.

HTML is written in the form of HTML elements consisting of tags enclosed in angle


brackets (like <html>). HTML tags most commonly come in pairs like <h1> and </h1>,
although some tags represent empty elements and so are unpaired, for example <img>.
MAILING SERVICE WITHIN COMPANY 6

The first tag in a pair is the start tag, and the second tag is the end tag (they are also
called opening tags and closing tags).
The purpose of a web browser is to read HTML documents and compose them into
visible or audible web pages. The browser does not display the HTML tags, but uses the
tags to interpret the content of the page. HTML describes the structure of a website
semantically along with cues for presentation, making it a markup language rather than
a programming language.

HTML elements form the building blocks of all websites. HTML allows images and
objects to be embedded and can be used to create interactive forms. It provides a means to
create structured documents by denoting structural semantics for text such as headings,
paragraphs, lists, links, quotes and other items. It can embed scripts written in languages
such as JavaScript which affect the behavior of HTML web pages.

2.3.3 CSS
Stands for "Cascading Style Sheet", Cascading style sheets are used to format the layout
of Web pages. They can be used to define text styles, table sizes, and other aspects of
Web pages that previously could only be defined in a page's HTML. CSS helps Web
developers to create a uniform look across several pages of a Web site. Instead of
defining the style of each table and each block of text within a page's HTML, commonly
used styles need to be defined only once in a CSS document. Once the style is defined in
cascading style sheet, it can be used by any page that references the CSS file. Plus, CSS
makes it easy to change styles across several pages at once. For example, a Web
developer may want to increase the default text size from 10pt to 12pt for fifty pages of a
Web site. If the pages all reference the same style sheet, the text size only needs to be
changed on the style sheet and all the pages will show the larger text. While CSS is great
for creating text styles, it is helpful for formatting other aspects of Web page layout as
well.

2.3.4 phpMyAdmin
PhpMyAdmin is a free software tool written in PHP, intended to handle the
administration of MySQL over the Web. PhpMyAdmin supports a wide range of
operations on MySQL, MariaDB and Drizzle. Frequently used operations (managing
databases, tables, columns, relations, indexes, users, permissions, etc) can be performed
MAILING SERVICE WITHIN COMPANY 7

via the user interface, while you still have the ability to directly execute any SQL
statement [3].
.

2.3.5 MySQL
MySQL pronounced either "My S-Q-L" or "My Sequel," is an open source relational
database management system. It is based on the structure query language (SQL), which is
used for adding, removing, and modifying information in the database. Standard SQL
commands, such as ADD, DROP, INSERT, and UPDATE can be used with MySQL.

MySQL can be used for a variety of applications, but is most commonly found on Web
servers. A website that uses MySQL may include Web pages that access information
from a database. These pages are often referred to as "dynamic," meaning the content of
each page is generated from a database as the page loads. Websites that use dynamic Web
pages are often referred to as database-driven websites.

Many database-driven websites that use MySQL also use a Web scripting language
like PHP to access information from the database. MySQL commands can be
incorporated into the PHP code, allowing part or all of a Web page to be generated from
database information. Because both MySQL and PHP are both open source, the
PHP/MySQL combination has become a popular choice for database-driven websites [1].

2.4 Hardware and Software Requirements

Hardware Requirements
We need a minimum hardware requirement that would help the performance of the
application is better. The table 2.2 shows the hardware requirement to develop the
mailing service within company application.

Table 2.2: Hardware Requirements

Hardware type Specification


MAILING SERVICE WITHIN COMPANY 8

Computer processor Pentium-IV


Hard disk 20GB or More
RAM 256MB(min)
Speed 1.1 GHZ

Software Requirements
It is very necessary to analyze the requirement of the software. The table 2.2 shows the
software requirement to develop the bulk mailer application. The tool may not work if the
following software requirements are not met.

Table 2.3: Software Requirements

Operating System Windows 7/8, Windows XP


Application Server Wamp
Front-End PHP
Databases MS SQL
Tools Dreamweaver/ Zend Studio
MAILING SERVICE WITHIN COMPANY 9

Chapter 3

SOFTWARE REQUIREMENTS SPECIFICATION

Software Requirement Specification (SRS) is the starting step for development activities.
It is the medium through which the client and user needs are accurately specified by
producing the requirement specification document, which describes the external behavior
of the proposed software.

Software requirements specification (SRS) – a requirements specification for a software


system is a complete description of the behavior of a system to be developed and may
include a set of use cases that describe interactions the users will have with the software.
Software requirement is a sub-field of software engineering that deals with the elicitation,
analysis, specification, and validation of requirements for software.

This allows the developer to understand the systems functions to be carried out and
performance levels to be obtained and corresponding interface to be established. The SRS
(Software Requirement Specification) plays a vital role in designing a project. SRS means
the requirements need for project designing and developing. The entire information,
which is needed for the project is specified in it.

The basic purpose of software requirement specification is to bridge the communication


gap between the client, the user and the developers. SRS goes as input to the designing
phase of the project, because to design a project, first we have to know the detailed
structure of the project, that is nothing but SRS, which tells about the project or task, then
proceed to designing phase.

The SRS provides means for translating the ideas in the minds of the clients, into formal
documents.

3.1 Users
MAILING SERVICE WITHIN COMPANY 10

This application is basically used to generate query based on the management and user
requirement. The users are provided with credentials and connection to the particular
database .It provides graphical user interface where it displays query as an output. It will
be useful for users who are not comfortable in writing queries. The application is
available to the management and users 24/7 within the organization.
3.2 Functional Requirements
Introduction
In software engineering, a functional requirement defines a function of a system or its
component. A function is described as a set of inputs, the behavior, and
outputs. Functional requirements may be calculations, technical details, data manipulation
and processing and other specific functionality that define what a system is supposed to
accomplish. Behavioral requirements describing all the cases where the system uses the
functional requirements are captured in use cases. Functional requirements are supported
by non-functional requirements, which impose constraints on the design or
implementation. Functional requirements specify particular results of a system. This
should be contrasted with non-functional requirements which specify overall
characteristics such as cost and reliability. Functional requirements drive the application
architecture of a system.

Requirements in Scope
● Knowledge about Wamp server
● Knowledge about how SQL queries are parsed and generated
● Knowledge about PHP
● The application should be able to generate any SQL query and report based on the
requirement and table creation scripts

Requirements out of Scope


Project allocation to the users

User Interface
1. Simple and easy to understand.
2. Use of proper navigation technique

Processing
MAILING SERVICE WITHIN COMPANY 11

● The software should be able to fulfill all the requirement of the client and work in an
efficient manner.
● This system is responsible for generating SQL query.
● The application should be restricted by an intended user id and password, so that the
application is not being mishandled.

3.3 Non-Functional Requirements


In systems engineering and requirements engineering, a non-functional requirement is
a requirement that specifies criteria that can be used to judge the operation of a system,
rather than specific behaviors. This should be contrasted with functional requirements that
define specific behavior or functions. The plan for implementing functional requirements
is detailed in the system design. The plan for implementing non-functional requirements
is detailed in the system architecture.

Broadly, functional requirements define what a system is supposed to do whereas non-


functional requirements define how a system is supposed to be. Functional requirements
are usually in the form of "system shall do <requirement>", while non-functional
requirements are "system shall be <requirement>".

Non-functional requirements are often called qualities of a system. Other terms for non-
functional requirements are "constraints", "quality attributes", "quality goals", "quality of
service requirements" and "non-behavioral requirements". Informally these are sometimes
called the "utilities", from attributes like stability and portability. Qualities, that are non-
functional requirements, can be divided into two main categories

● Execution qualities, such as security and usability, which are observable at run time.
● Evolution qualities, such as testability, maintainability, extensibility and scalability,
which are embodied in the static structure of the software system.

● Performance Requirements
Requirements about resources required response time, transaction rates, throughput,
benchmark specifications or anything else having to do with performance.
MAILING SERVICE WITHIN COMPANY 12

● Operating Constraints
List any run-time constraints. This could include system resources, needed software,
people etc.

● Platform Constraints
Discuss the target platform. Be as specific or general as the user requires. If the user
doesn't care, there are still platform constraints.

● Accuracy
Requirements about the accuracy and precision of the data. Beware of 100%
requirements; they often cost too much.

● Modifiability
Requirements about the effort required to make changes in the software. Often, the
measurement is personnel effort.

● Portability
The effort required to move the software to a different target platform. The measurement
is most commonly person-months or % of modules that need changing.

● Reliability
Requirements about how often the software fails. The measurement is often expressed in
MTBF (mean time between failures). The definition of a failure must be clear. Also, don't
confuse reliability with availability which is quite a different kind of requirement.  Be
sure to specify the consequences of software failure, how to protect from failure, a
strategy for error detection, and a strategy for correction.

● Security
One or more requirements about protection of your system and its data. The measurement
can be expressed in a variety of ways (effort, skill level, time ...) to break into the system. 
Do not discuss solutions (e.g. passwords) in a requirements document.

● Usability
Requirements about how difficult it will be to learn and operate the system. The
requirements are often expressed in learning time or similar metrics.
MAILING SERVICE WITHIN COMPANY 13

● Legal
There may be legal issues involving privacy of information, intellectual property rights,
export of restricted technologies, etc.

● Maintainability
The application will be used for a long time, it must be easy to maintain and easy to
incorporate future changes. The design if the system should be module based and
changing the design of the one module should not affect the proper operation of the
module.

Chapter 4

SYSTEM DESIGN

4.1 System Perspective


Software engineering paradigm can be as a set of methods, tools and procedures that is
used to develop software. Software Development is usually characterized by a series of
stages depicting the various tasks involved in the development process. The Figure below
illustrates the classic software life cycle that is most widely used for the procedure-
oriented development. The classic life cycle is based on the underlying model commonly
referred to as “Spiral model”.

4.1.1 Spiral Model


The spiral model is similar to the incremental model, with more emphasis placed on risk
analysis. The spiral model has four phases: Planning, Risk Analysis, Engineering and
Evaluation. A software project repeatedly passes through these phases in iterations (called
Spirals in this model). The baseline spiral starting in the planning phase, requirements are
gathered and risk is assessed. Each subsequent spiral builds on the baseline spiral [11].

● Planning Phase
Requirements are gathered during the planning phase. Requirements like ‘BRS’ that is
‘Business Requirement Specifications’ and ‘SRS’ that is ‘System Requirement
specifications’.
MAILING SERVICE WITHIN COMPANY 14

● Risk Analysis
In the risk analysis phase, a process is undertaken to identify risk and alternate
solutions.  A prototype is produced at the end of the risk analysis phase. If any risk is
found during the risk analysis then alternate solutions are suggested and implemented.

● Engineering Phase
In this phase software is developed, along with testing at the end of the phase. Hence
in this phase the development and testing is done.

● Evaluation Phase
This phase allows the customer to evaluate the output of the project to date before the
project continues to the next spiral.
MAILING SERVICE WITHIN COMPANY 15

Figure 4.1: Spiral model

Advantages of Spiral Model


● High amount of risk analysis hence, avoidance of Risk is enhanced.
● Good for large and mission-critical projects.
● Strong approval and documentation control.
● Additional Functionality can be added at a later date.
● Software is produced early in the software life cycle.

4.1.2 Design Overview


The heart of the software development cycle is the translation and refinement of the
requirements into code. Software architects transform the requirements for each specified
feature into a high-level design. As part of this process, they determine which subsystems
MAILING SERVICE WITHIN COMPANY 16

and modules are required and how they interact or communicate. The broad, high-level
design is then refined into a detailed low-level design. This transformation involves much
information gathering and detective work.
Low-level designs, or coding units, are then created from the high-level design for each
subsystem and module that needs to be included or changed. Each coding unit specifies
the changes to be made to the existing files, new or modified entry points, and any file
that must be added, as well as other changes. After document reviews and approvals, the
coding may begin. After coding phase, testing of unit and integrated modules have to be
done.

Chapter 5
DETAILED DESIGN
MAILING SERVICE WITHIN COMPANY 17

5.1 Use Case Diagram


Use case is a description of set of sequence of actions that a system performs that yields
an observable result of value to a particular actor. A use case is used to structure the
behavioral things in a model. A use case is realized by collaboration. Graphically use
case is rendered as an ellipse with solid lines, usually including only its name.
A use case diagram is a graph of actors, a set of use cases enclosed by a system boundary,
communication (participation) associations between the actors and users and
generalization among use cases. The use case model defines the outside (actors) and
inside (use case) of the system’s behavior.

5.1.1 Use Case Diagram for Admin

Figure 5.1: Use Case Diagram for Admin

The use case diagram is a virtual representation of district business functionality in a


system. The Figure 5.1 shows the use case diagram, the operation that can be performed
by Admin.
MAILING SERVICE WITHIN COMPANY 18

5.2 Activity Diagram


The purpose of activity diagram is to provide a view of flows and what is going on inside
a use case or among several classes. Activity diagram can also be used to represent a
class’s method implementation. A token represents an operation. An activity is shown as
a round box containing the name of the operation. An outgoing solid arrow attached to the
end of activity symbol indicates a transition triggered by the completion.

5.2.1 Activity Diagram for Admin

The
Activity diagram represents the activities carried out by the Admin. To perform any
action Admin has to login to this application. The Figure 5.2 shows the Activity diagram
for Admin. It describes the overall functionality of Admin.

5.3 Database Design


A database design is a collection of stored data organized in such a way that the data
requirements are satisfied by the database. The general objective is to make information
MAILING SERVICE WITHIN COMPANY 19

access easy, quick, inexpensive and flexible for the user. There are also some specific
objectives like controlled redundancy from failure, privacy, security and performance.
A collection of relative records make up a table. To design and store data to the needed
forms database tables are prepared. Two essential settings for a database are:
● Primary key: - The field that is unique for all the record occurrences.
● Foreign key: - The field used to set relation between tables. Normalization is a
technique to avoid redundancy in the tables.

Figure 5.3: Database Design

5.3.1ER-Diagram
The relation upon the system is structured through a conceptual ER- Diagram, which not
only specifics the existential entities but also the standard relations through which the
system exists and the cardinalities that are necessary for the system state to continue. The
entity Relationship Diagram (ERD) depicts the relationship between the data objects.
The ERD is the notation that is used to conduct the date modeling activity the attributes of
each data object noted is the ERD can be described resign a data object descriptions.
The set of primary components that are identified by the ERD are
MAILING SERVICE WITHIN COMPANY 20

1. Data object.
2. Relationships.
3. Attributes.
4. Various types of indicators.

ER-Diagram for Entire Process

Figure 5.3.1: ER-Diagram for Mailing Service

The primary purpose of the ERD is to represent data objects and their relationships. The
relative simplicity and pictorial clarity of this diagramming technique may well account
in large part for the widespread use of ER model.

Chapter 6
IMPLEMENTATION

Introduction
MAILING SERVICE WITHIN COMPANY 21

Implementation is the stage of the project where the theoretical design is turned into a
working system. At this stage the main work load, the greatest upheaval and the major
impact on the existing system shifts to the user department. If the implementation is not
carefully planned or controlled, it can cause chaos and confusion and may also mislead
the end-users.

Implementation includes all those activities that take place to convert from the old system
to the modified or updated one. The new system may be totally replacing an existing
manual or automated system or it may be a major a reliable system to meet the
organization requirements. Successful implementation may not guarantee improvement in
the organization using the new system, but improper installation will prevent it.

The process of putting the developed system in actual use is called system
implementation. This includes all those activities that take place to convert from the old
system to the new system. The system can be implemented only after through testing is
done and if it is found to be working according to the specifications. The system
personnel check the feasibility of the system.

The most crucial stage is achieving a new successful system and giving confidence on the
new system for the user that it will work efficiently and effectively. It involves careful
planning, investigation of the current system and its constraints on implementation,
design implemented, the more involved will be the system analysis and the design effort
just for implementation.

The system implementation has three main aspects. They are education and training,
system testing and changeover.

The implementation stage involves following tasks:


● Careful planning.
● Investigation of the system and constraints.
● Design of the staff in the changeover phase.
● Evaluation of the changeover method.

The method of implementation and the time scale to be adopted are found out initially.
Next the system is tested properly and the same time users are trained in the new
procedures.

The existing system also has been implemented with many advanced functionalities and
features. This is done by implementing a formal project change procedure that strictly
MAILING SERVICE WITHIN COMPANY 22

controls project scope to avoid confusion, wrong expectations and the possibility of the
project failure. The existing system also requires frequent reviews of all changes that are
done, to ensure all requirements are dealt with in an expeditious manner and to protect the
integrity of the project plan.

During implementation of Mailing Service within Company we are considered following


criteria which are required:
● Platform
Requires Windows XP or above version
● Front End
PHP Technology
● Back End
PhpMyAdmin
● Software Required
Wamp Server

6.1 Screen Shots

Login Page
MAILING SERVICE WITHIN COMPANY 23

Figure 6.1: Login Page

Login page contains username and password fields for the user to login into the home
page. The Figure 6.1 shows the Login page for user. Here both the admin and employee
can login with their own login credentials. If they forgotten their password can access
their account using forgot password link. Also new user can register to this software by
registration.

User Inbox
MAILING SERVICE WITHIN COMPANY 24

Figure 6.2: User Inbox

The user inbox contains all the received mails from the admin and other details about the
mail. The Figure 6.2 shows the employee home page, where the employee can view and
update the profile. Employee can also view the details about hot jobs. Here employee can
send mails to the admin or can view all the received mails from the admin.
MAILING SERVICE WITHIN COMPANY 25

Figure 6.3: Hot Jobs

Hot job contains the job role, description, candidate summary and posted date. The Figure
6.3shows the hot job page, where the employee and candidate can view the available job
descriptions which are posted by the admin. The eligible employees and candidates can
apply for that job.
MAILING SERVICE WITHIN COMPANY 26

Dashboard

Figure 6.4: Dashboard

Dashboard contains the details of total job posted, total candidates, total jobs applied and
total employees. The Figure 6.4 shows the dashboard page, where the admin can view the
details of posted jobs, candidates, employees and so on. Here the admin can also
change/reset the current password.
MAILING SERVICE WITHIN COMPANY 27

Chapter 7
SOFTWARE TESTING

Introduction
Software testing is an investigation conducted to provide stakeholders with information
about the quality of the product or service under test. Software testing can also provide an
objective, independent view of the software to allow the business to appreciate and
understand the risks of software implementation. Test techniques include, but are not
limited to, the process of executing a program or application with the intent of finding
software bugs (errors or other defects).

Testing is a process, which reveals errors in the program. It is the major quality measure
employed during software development. During testing, the program is executed with a
set of test cases and the output of the program for the test cases is evaluated to determine
if the program is performing as it is expected to perform [5].

7.1 Types of Testing


These types of tests are usually written by developers as they work on code to ensure that
the specific function is working as expected [6].

7.1.1 Unit Testing


This unit testing discusses its attention on a part of software called a module. This testing
ensures to validate the software within a particular area of the software. This unit testing
verifies detailed design description as a guide, important control paths, and helps to
recover errors within the boundary of the module. This testing checks the first module to
assure as that the data flow prop hunterly into and out of the unit under test. The data
structure is examined to ensure that the data stored temporarily maintains its integrity
during all steps in an algorithm execution. The boundary region for the module under
consideration is tested to ensure the module operates properly and that all the paths in the
control structure are exercised. To ensure all statement in the module are executed at least
once and finally all error handling. Paths are tested to see message are intelligent, when
the testing correspond to errors is encountered to provide enough description to assist in
MAILING SERVICE WITHIN COMPANY 28

the location of the cause of the error. The test carried out during the programming stage
and each module is found to be working satisfactorily. The test case specification for
system testing has to be submitted for review before the system testing commences.

7.1.2 Functional Testing


This case is involved by exercising the code with nominal input values for which the
expected results are known. This test was done on each module, say for at the tour
advance the sub system level, the subsystem values given as input for which the
corresponding subsystem. The output was verified with the existing manual system. The
functional test was carried out at all levels.

7.1.3 Integration Testing


This is to develop an incremental strategy that will limit the complexity of interactions
among components as they are added to the system, developing an implementation and
integration schedule that will make the modules available when needed. In this test,
groups of the program modules are tested together to determine if they interface properly.
This is done incrementally as they are developed until the program system is tested. In
integration testing the product is tested to confirm our view of it at the specification and
architectural design stage. Functional testing techniques are mainly used in the integration
testing. During integration, we choose portions of the structure tree of the software to put
together. Each sub-tree should have some logical reason for being tested: it is either
implementing system function or part of the code essential to the function of the rest of
the product.

7.1.4 Validation Testing


Computer input procedures are designed to detect errors in the data at a lower level of
detail which is beyond the capability of the control procedures. These are combined with
the design of the input process itself, reading the data from the user. At the culmination of
this, software is completely assembled as package interfacing errors which have been
uncovered and corrected as validation succeeded when the software function in a manner
that can be reasonably expected by the customer. Software Validation is achieved through
a series of black box tests that demonstrates conformity with the requirement. Black box
testing method focuses on the Functional requirement of the software.
MAILING SERVICE WITHIN COMPANY 29

7.1.5 Black Box Testing


In this strategy some test cases are generated as input conditions that fully execute all
functional requirements for the program. This testing has been uses to find errors in the
following categories:
● Incorrect or missing functions
● Interface errors
● Errors in data structure or external database access
● Performance errors
● Initialization and termination errors.
In this testing only the output is checked for correctness,
The logical flow of the data is not checked.

7.1.6 White Box Testing


In this the test cases are generated on the logic of each module by drawing flow graphs of
that module and logical decisions are tested on all the cases. It has been uses to generate
the test case
In the following cases:
● Guarantee that all independent paths have been executed.
● Execute all logical decisions on their true and false Sides.
● Execute all loops at their boundaries and within their operational bounds
● Execute internal data structures to ensure their validity.
MAILING SERVICE WITHIN COMPANY 30

Chapter 8
CONCLUSION

This project Mailing Service Within Company is to reduce the cost of employee
communications in a company or organization and it works fine with all browsers tested.
An interesting part of the project is to support and help for all employees in the
organization and admin. Both can communicate with filtered options for key skills,
experience of the employee, job title and Email Id.
The project Mailing Service Within Company concludes that the increased user
communication, cost effective for the organization or company, easy interface, advanced
search filters to give the feel of a mailing service of a third party services which are
already available.
MAILING SERVICE WITHIN COMPANY 31

Chapter 9
FUTURE ENHANCEMENT

There is chance of reusability of codes in other environment even in different platforms.


Its present features can be enhanced by some simple modification in the codes so as to
reuse it in the changing scenario. Some existing features can be updated.

Scope of Future Application


● To develop an android version for this application.
● To add new features as and when we require.
● To update it next version.
● There is flexibility in all the modules.
MAILING SERVICE WITHIN COMPANY 32

BIBLIOGRAPHY

[1] Beginning PHP and MySQL from Novice to Professional 4 th edition by W. Jason
Gilmore.

[2] PHP and MySQLIn Easy Steps by Mike McGrath.

[3] PHP: The Complete Reference by Steven Holzner.

[4] Elmasri and Navathe: Fundamentals of Database Systems, 5th Edition, Pearson
Education, 2007.

[5] I an Sommerville: Software Engineering, 8thEdition, Pearson Education, 2007.

[6] Roger.S.Pressman: Software Engineering-A Practitioners approach, 7 th Edition,


McGraw Hill,2007.

[7] PankajJalote: An Integrated Approach to Software Engineering, 3rd Edition,


NarosaPublishingHouse, 2005.

[8] Robert W. Sebesta: Programming the World Wide Web, 4 thEdition, Pearson
education, 2008.

[9] M. Deitel, P.J. Deitel, A. B. Goldberg: Internet & World Wide Web How to
Program, 3rdEdition,Pearson education, 2004.

[10] Chris Bates: Web Programming Building Internet Applications, 3rd Edition, Wiley
India, 2006.

[11] http://istqbexamcertification.com/what-is-spiral-model-advantagesdisadvantages-
and-when-to-use-it/

[12] http://www.tutorialscollection.com/jquerytutorial-a-jquery-guide-for-beginners-
with-examples/

Potrebbero piacerti anche