Page 1
A
PROJECT REPORT
On
CONTENT MANAGEMENT SYSTEM
Developed at
MOGAE DIGITAL Pvt. Ltd.
Submitted in partial fulfillment of requirement for the award of the degree
Master of Computer Application
Submitted by
Mr. Vinit Kumar
Roll No: 1128214030
(Batch 2011-14)
Under The Guidance of
Mr. Tinku Singh
(Assistant Professor)
JP INSTITUTE OF ENGINEERING & TECHNOLOGY, MEERUT
Approved by A.I.C.T.E. Affiliated to Uttar Pradesh Technical University,
Lucknow
Batch: 2011-2014
Page 2
TABLE OF CONTENTS
CERTIFICATE…...………………………… III
DECLARATION………………………………… IV
ACKNOWLEDGEMENT……………………. V
CHAPTER 1: ( INITIATING)
1.1 INTRODUCTION………………………… 1
1.2 OBJECTIVES OF THE PROJECT………… 4
1.3 PROFILE OF ORGANIZATION ………… 6
CHAPTER 2: (SYSTEM DESIGN)
2.1 SYSTEM DEVELOPMENT ………………… 9
2. 2SYSTEM OVERVIEW...................................... 11
2. 3EXISTING SYSTEM........................................... 17
2. 4 PROPOSED SYSTEM................................................ 18
CHAPTER 3: (ANALYSIS & DESIGN)
3.1 SYSTEM DESIGN…………… ……………….. 35
3.2 DATA FLOW DIAGRAM………………………… 37
3.3 ENTITY RELATIONSHIP DIAGRAM.................. 44
3.4 MODULES &DATABASE DESIGN......................... 50
CHAPTER 4: (FORM DESIGN)
4.1 FORMS ……………………………………………….……..…….……. 75
CHAPTER 5: (TESTING)
Page 2
Page 3
5.1 TESTING AND IMPLEMENTATION ………………………………… 85
CHAPTER 6: ( BIBLIOGRAPHY)
6.1 CONCLUSION……………………………………………….…… 95
6.2 REFERENCES................................................................................ 96
6.3 APPENDICES.................................................................................
BIBLIOGRAPHY 109
Page 3
Page 5
CERTIFICATE
This is to certify that this Project Report entitled “Content Management System” submitted by
Vinit Kumar, having Roll No 1128214030 in the partial fulfillment, for the award of degree of
Master of Computer Application from JP INSTITUTE OF ENGINEERING & TECHNOLOGY,
Meerut, affiliated to UTTAR PRADESH TECHNICAL UNIVERSITY, Noida; is carried out by
him/her under my supervision.
The matter embodied in this Project Work has not been submitted earlier for award of any
degree or diploma in any university/institution to the best of our knowledge and belief.
(Mr.Tinku Singh) (Dr. Sanjeev KumaSharma)
Assistant Professor Head of the Department (CSE/IT/MCA)
Date: __/__/____
Page 5
Page 6
DECLARATION
I hereby declare that this submission is my own work and that, to the best of our knowledge and
belief, it contains no material previously published or written by another person nor material
which to a substantial extent has been accepted for the award of any other degree or diploma of
the university or other institute of higher learning, except where due acknowledgment has been
made in the text.
Signature
Name:- VInit Kumar
Roll No:-1128214030
Date
Page 6
Page 7
ACKNOWLEDGEMENT
It gives us a great sense of pleasure to present the report of the Project Work, undertaken
during. M.C.A 3rd Year .We owe special debt of gratitude to Mr. Tinku Singh( Assistant
Professor), Department of Master of Computer Application, JP Institute of Engineering &
Technology, Meerut for his constant support and guidance throughout the course of our work.
His sincerity, thoroughness and perseverance have been a constant source of inspiration for us.
It is only his cognizant efforts that our endeavors have seen light of the day.
I also take the opportunity to acknowledge the contribution of Prof. (Dr.) Sanjeev Kumar
Sharma, Dean (Academics & Research) and Head Department of CSE/IT/MCA, Department
of Computer Application, JP Institute of Engineering & Technology, Meerut for his full support
and assistance during the development of the project.
We also do not like to miss the opportunity to acknowledge the contribution of all
faculty members of the department for their kind assistance and cooperation during the
development of our project.
Page 7
Page 8
Abstract
A Web Content Management System (WCMS) is a web application that facilitates a
group of users, usually from different departments in an enterprise, to collaboratively
maintain and organise the content of a website in an effective manner.
.Almost every enterprise these days needs a website to communicate with customers,
partners, shareholders, and so on, providing up-to-date information on the enterprise, its
products and services. Increasingly, commercial activities and order transactions are
conducted on enterprise websites.
The objectives of this system are:
Accurate content.
Quick creation of new publications.
Centralized and shared content.
Page 8
Page 9
Problem Definition:
Ideally this should be somebody who has experience in writing and editing online copy. However, the most important thing is that this person feels confident in editing copy, and has the authority to remove inappropriate material.
This person will also require a vision for the site and in particular what personality it should be projecting.The combination of occasional users and new employees, means that most organisations need a long term strategy for training people in the use of their content management systems.
We have found that a series of short video tutorials covering key functionality works much better than training sessions or intimidating manuals.
Planning Of the Projects:
The platform where you are going to develop is one the most important thing. All coding, whatsoever, especially CMSs, should be created as a platform-independent software. This means that your code can be used in any operating system and in any common environment (and for any purpose). In this we specially should be very carefully because if we create too platform-restricted software, you may not share (or sell) it too well.
We need to consider to the needs of the public. Depending on whether we are making a free GNU based software for the public or simply making something we can sell, we need to consider all potential needs of your users. People have strange needs, sometimes very strange, so make your CMS very flexible.
Page 9
Page 10
Scope of the Solution :
Create new pages with ease, without having to upload files or worry about layout consistency. With our CMS, you only need to edit the content of the page, the layout is applied automatically.
Automatically handle updates to key areas. When publishing new pages, features like drop down navigations, preview text and sitemaps are all updated automatically.
Turn features on or off more easily and without managing code or uploading files. Want a contact form to appear on this page? Just click the checkbox and its there.
Module based design means the CMS can be customised to add new features quickly. This includes a shopping cart, eCommerce solutions, a blog, news systems, FAQ pages, email marketing and more! Almost any feature you can think of can be added to the CMS for easy website management.
Page 10
Page 12
PART-I
ORGANIZATION PROFILE
&
INTRODUCTION
Page 12
Page 13
Chapter 1:- Organization Profile
MOGAE DIGITAL Pvt. Ltd.MOGAE DIGITAL Pvt. Ltd., having its Corporate Offices at Gurgaon, is a company started
by a group of professionals with vision to excel in the field of IT and IT Related Services,
like, training, software development, consultancy, placements etc. We are India's largest
producer of mobile comics, mobile greetings and other IP. Our major stakeholders - The
Mogae Group and ASTRO are established power houses of the industry providing both the
guidance as well as the institutional backing required any start up to 'hit the ground running'.
ASTRO is Malaysia's leading cross-media group with a significant presence in DTH TV
services and commercial radio since 1996 and is currently broadcasting over 100 pay-TV
channels across Malaysia and Brunei.
The MOGAE DIGITAL Pvt. Ltd. is one among IT education leaders, which features among
Top Global IT training companies. It has played a pioneering role in taking computer
learning to the masses. It has spent over years in innovating, refining and fine tuning its
offerings to the needs of students, professionals and employees. Our suit of education
programs encompass every kind of learner from a young person taking his first step into the
world of computers, to a student seeking a career in IT, to a professional gaining cutting-edge
professional skills.
.
Page 13
Page 14
Chapter 2:- Introduction & Overview of project
2.1 INTRODUCTION
A content management system (CMS) is a system used to manage the content of a Web site.
Typically, a CMS consists of two elements: the content management application (CMA) and
the content delivery application (CDA). The CMA element allows the content manager or
author, who may not know Hypertext Markup Language (HTML), to manage the creation,
modification, and removal of content from a Web site without needing the expertise of
a Webmaster. The CDA element uses and compiles that information to update the Web site.
The features of a CMS system vary, but most include Web-based publishing, format
management, revision control, and indexing, search, and retrieval. A CMS system indexes all
data within an organization. Individuals can then search for data using keywords, which the
CMS system retrieves.
Two factors must be considered before an organization decides to invest in a CMS. First, an
organization's size and geographic dispersion must be considered especially if an
organization is spread out over several countries. For these organizations, the transition to
CMS is more difficult. Secondly, the diversity of the electronic data forms used within an
organization must be considered. If an organization uses text documents, graphics, video,
audio, and diagrams to convey information, the content will be more difficult to manage.
Page 14
Page 15
2.2 OBJECTIVE OF THE PROJECT
The main objectives of the Content Management System are:
All objects are contained and controlled within the same contextual folder
hierarchy.
Devolve content creation throughout the institution regardless of contributors’
skills
Enable the creation, management, and usage of standardised metadata.
Consolidate the current technology environment wherever possible .
.
Page 15
Page 16
2.3 OVERVIEW
The definition of a CMS is an application (more likely web-based), that provides capabilities
for multiple users with different permission levels to manage (all or a section of) content, data
or information of a website project, or internet / intranet application.
Managing content refers to creating, editing, archiving, publishing, collaborating on,
reporting, distributing website content, data and information.
An example of a CMS application is a Web Application that provides the following
administration, control panel or website management functionalities:
Create, Edit, Publish, Archive web pages
Create, Edit, Publish, Archive articles
Create, Edit, Publish, Archive press releases
Create, Edit, Publish, Archive blogs
Add / Edit events into an Event Calendar
Add / Edit Inventory (products), description, product specifications, prices, photos, etc.
Enter, Edit, or View orders and print packing slips and invoices
View reports and statistics site data
Create and Edit system users which have different permission levels to different section(s) of
the above administration
There are total four modules of the Bug Tracking System as follows:
Module 1:- MO
Module 2:- Subscription
Module 3:- Daily
Page 16
Page 17
Technology Used:
Jsp,Servlet
Tools Used :
Eclipse Helios, MySql, MacroMedia Dreamweaver8
Page 17
Page 18
PART-II
INITIAL STUDY
&
FEASIBILITY
ANALYSIS
Page 18
Page 19
Chapter 3:- Initial Study
3.1 INTRODUCTION
Before attempting to qualitatively analyze current CMS applications, an exact
definition of what a quality CMS actually is needs to be concretely defined.
What tools and features are necessities in the development of a CMS? What
principles must a CMS exhibit in order to be labeled as high quality.
Classification Scheme
There are many different contributing factors to the overall quality of a CMS. Since
requirements necessary for a CMS are so varied, a specific classification scheme was
obtained that has worked nicely to group CMS requirements into specific groups depending
on their function.
Content creation Content management Publishing Presentation Contract and Business
Page 19
Page 20
Chapter 4:- Software Requirement Specification
4.1 SYSTEM’S REQUIREMENT
Requirement analysis is a Software Engineering task that bridges the gap between
the system level requirements and software design. Here we identify and document
the need of users. During the requirement analysis we find the following functional
and non-functional requirements of users.
4.1.1 SOFTWARE REQUIREMENTS
Operating System : Windows XP/7
User Interface : HTML/DHTML, CSS
Client-side Scripting : JavaScript
Programming Language : Java
Web Applications : J2EE
IDE/Workbench : Eclipse Helios
Database : MySql / Oracle / MS Access
Server Deployment : Apache tomcat
Used Tools : Macromedia Dreamweaver8
Page 20
Page 21
4.1.2 HARDWARE REQUIREMENTS
Processor : Pentium IV
Hard Disk : 40 GB
RAM : 256MB
4.2 USER’S REQUIREMENT
4.2.1 FUNCTIONAL REQUIREMENT
Login/Logout:
Page 21
Purpose To Login into the Content Management System
Input Username, Password
Processing Check the validity of the user in database
Outputs Enters into the Home Page
Page 22
Update Priority:
:
4.2.2 NON FUNCTIONAL REQUIREMENT
There are normally those requirements that are not concerned with the specific
function delivered by the system. Many non-functional requirements relate to
the system as a whole rather than individual system features. The following
non-functional requirements have been gathered during the requirement
analysis.
Reliability:
System should be reliable for the software it refers to the mean-time-
between-failures.
Storage:
As the system is being developed for storing and managing the content
as it comes, so the system should be capable of storing huge amount of
data.
Response Time:
System should be capable of providing the fast response to its users.
Page 22
Purpose To update the type or KEYDWORD of any priority
Input Click on the priority id and click on update button
Processing Priority type is updated in the database
Outputs Level of the KEYWORD is updatd
Page 23
Chapter 5:- Feasibility Analysis
5.1 PRELIMINARY INVESTIGATION
The first step in system development life cycle is to determine the feasibility of the
system. The purpose is to evaluate project request. It is collection of information that
that helps committee members to evaluate the merits of the requested project and
make an informed judgment about the feasibility of the proposed project.
5.2 FEASIBILITY STUDY
5.2.1 ECONOMIC FEASIBILITY
Economic feasibility attempts 2 weigh the costs of developing and
implementing a new system, against the benefits that would accrue from
having the new system in place. This feasibility study gives the top
management the economic justification for the new system.
A simple economic analysis which gives the actual comparison of costs and
benefits are much more meaningful in this case. In addition, this proves to be a
useful point of reference to compare actual costs as the project progresses.
There could be various types of intangible benefits on account of automation.
These could include increased customer satisfaction, improvement in product
quality better decision making timeliness of information, expediting activities,
improved accuracy of operations, better documentation and record keeping,
faster retrieval of information, better employee morale.
Page 23
Page 24
5.2.2 TECHNICAL FEASIBILITY
Evaluating the technical feasibility is the trickiest part of a feasibility study.
This is because, .at this point in time, not too many detailed design of the
system, making it difficult to access issues like performance, costs on (on
account of the kind of technology to be deployed) etc. A number of issues
have to be considered while doing a technical analysis.
Understand the different technologies involved in the proposed system before
commencing the project we have to be very clear about what are the
technologies that are to be required for the development of the new system.
Find out whether the organization currently possesses the required
technologies. Is the required technology available with the organization?
5.2.3 OPERATIONAL FEASIBILITY
Proposed project is beneficial only if it can be turned into information systems
that will meet the organizations operating requirements. Simply stated, this
test of feasibility asks if the system will work when it is developed and
installed. Are there major barriers to Implementation? Here are questions that
will help test the operational feasibility of a project:
Is there sufficient support for the project from management from
users? If the current system is well liked and used to the extent that
persons will not be able to see reasons for change, there may be
resistance.
Are the current business methods acceptable to the user? If they are
not, Users may welcome a change that will bring about a more
operational and useful systems.
Page 24
Page 25
Have the user been involved in the planning and development of the
project?
Early involvement reduces the chances of resistance to the system and in general and
increases the likelihood of successful project.
Since the proposed system was to help reduce the hardships encountered. In
the existing manual system, the new system was considered to be operational
feasible.
Page 25
Page 26
PART-III
SYSTEM ANALYSIS
&
DESIGN
Page 26
Page 27
Chapter 6:- System Analysis
6.1 INTRODUCTION
The purpose of this phase is to analyze the system requirement allocated to the
software. The basic requirements of the projects should deliver to the customer as per
software development plans.
6.2 DATA FLOW DIAGRAM
A Data Flow Diagram (DFD) is a graphical technique that depicts information flow
and the transforms that are applied as data move from input to output.
Data flow diagram is a logical model of a system. The model does not depend on
hardware, software, and data structure or file organization. It only shows the data
flow between modules to module of the entire system. Data flow diagrams can be
completed using only four notations as follows,
Data Flow:
Data move in a specific direction from an origin to destination. The data flow is a
“packet” of data.
Process:
People, procedures or devices that produce data. The physical component is not
identified.
Page 27
Page 28
Source or Destination of Data:
External sources or destinations of data, which may be people or organizations or
other entities.
Data Source:
Here a process references the data in the system
Page 28
Page 29
6.2.1 CONTEXT LEVEL DIAGRAM
CMS Details
Fig. 6.1 Context Level DFD for BTS
Page 29
User
CMS
Page 30
6.2.2 First Level DFD
CMS DETAILS
A1: User id, Password
Fig. 6.2 First Level DFD for CMS
ENTITY RELATIONSHIP DIAGRAM
Page 30
User
Authorized User
Login
CMS
Page 31
7.2.1 INTRODUCTION
It consists of a collection of basic objects called entities and of relationships among
the objects. An entity is a real world thing or object that is distinguishable from other
object.
Page 31
User
Password
Login
Admin login
Home Page
Wrong
PasswordFill Correct Field
User name
password
Select
Category
MO Daily
Subscription
Page 32
Chapter 7:- System Design
7.1 INTRODUCTION
The design of a product should take all necessary inputs from the analysis phase and
yield an artifact, which eases and minimizes the iteration at the implementation phase.
The designer should consider the following features before finalizing the designs.
Verification
Completeness
Consistency
Efficiency
Traceability
Understandability
SCHEMA DESIGN
Page 32
Page 33
1) Login_Details Table
Column Name Data Type Constraints
Loginid Varchar(45) Primary key
Password Varchar(45) Not null
First name Varchar(45) Not null
Last Name Varchar(45) Not null
Login Type Varchar(45) Not null
Login Status Varchar(45) Not null
Reg date DateTime Not null
Sec_ques_id Integer
Sec_ans Varchar(45)
First_login DateTime
Pass_modied_date DateTime
2)Keyword Table
Column Name Data Type Constraints
Keyword id Integer Primary key
Keyword type Varchar(45) Not null
7.8 DEPLOYMENT DIAGRAM
Page 33
Page 36
Part-IV
IMPLEMENTATION
TESTING
&
CONCLUSION
Page 36
Page 37
Chapter 8:- Implementation
8.1 IMPLEMENTATION TOOLS
8.1.1 JAVA TECHNOLOGY
Initially the language was called as “oak” but it was renamed as “Java” in 1995. The
primary motivation of this language was the need for a platform-independent (i.e.,
architecture neutral) language that could be used to create software to be embedded in
various consumer electronic devices.
Java is a programmer’s language.
Java is cohesive and consistent.
Except for those constraints imposed by the Internet environment, Java gives
the programmer, full control.
Finally, Java is to Internet programming where C was to system programming.
Java Virtual Machine (JVM)
Beyond the language, there is the Java virtual machine. The Java virtual machine is an
important element of the Java technology. The virtual machine can be embedded
within a web browser or an operating system. Once a piece of Java code is loaded
onto a machine, it is verified. As part of the loading process, a class loader is invoked
and does byte code verification makes sure that the code that’s has been generated by
the compiler will not corrupt the machine that it’s loaded on.
Byte code verification takes place at the end of the compilation process to make sure
that is all accurate and correct. So byte code verification is integral to the compiling
and executing of Java code.
Page 37
Page 38
Java Source Java byte code JavaVM
Java .Class
Page 38
Page 39
8.1.3 JAVA SERVER PAGES
Java server Pages is a simple, yet powerful technology for creating and maintaining
dynamic-content web pages. Based on the Java programming language, Java Server
Pages offers proven portability, open standards, and a mature re-usable component
model .The Java Server Pages architecture enables the separation of content generation
from content presentation. This separation not eases maintenance headaches; it also
allows web team members to focus on their areas of expertise. Now, web page designer
can concentrate on layout, and web application designers on programming, with minimal
concern about impacting each other’s work.
FEATURES OF JSP
PORTABILITY
Java Server Pages files can be run on any web server or web-enabled application
server that provides support for them. Dubbed the JSP engine, this support involves
recognition, translation, and management of the Java Server Page lifecycle and its
interaction components.
COMPONENTS
It was mentioned earlier that the Java Server Pages architecture can include reusable
Java components. The architecture also allows for the embedding of a scripting
language directly into the Java Server Pages file. The components current supported
include Java Beans, and Servlets.
PROCESSING
A Java Server Pages file is essentially an HTML document with JSP scripting or tags.
The Java Server Pages file has a JSP extension to the server as a Java Server Pages
file. Before the page is served, the Java Server Pages syntax is parsed and processed
into a Servlet on the server side. The Servlet that is generated outputs real content in
straight HTML for responding to the client.
Page 39
Page 40
ACCESS MODELS:
A Java Server Pages file may be accessed in at least two different ways. A client’s
request comes directly into a Java Server Page. In this scenario, suppose the page
accesses reusable Java Bean components that perform particular well-defined
computations like accessing a database. The result of the Beans computations, called
result sets is stored within the Bean as properties. The page uses such Beans to
generate dynamic content and present it back to the client.
In both of the above cases, the page could also contain any valid Java code. Java
Server Pages architecture encourages separation of content from presentation.
STEPS IN THE EXECUTION OF A JSP APPLICATION :
1. The client sends a request to the web server for a JSP file by giving the name of the
JSP file within the form tag of a HTML page.
2. This request is transferred to the JavaWebServer. At the server side JavaWebServer
receives the request and if it is a request for a jsp file server gives this request to the
JSP engine.
3. JSP engine is program which can under stands the tags of the jsp and then it converts
those tags into a Servlet program and it is stored at the server side. This Servlet is
loaded in the memory and then it is executed and the result is given back to the
JavaWebServer and then it is transferred back to the result is given back to the
JavaWebServer and then it is transferred back to the client.
Page 40
Page 41
8.1.4 JAVASCRIPT
JavaScript is a script-based programming language that was developed by Netscape
Communication Corporation. JavaScript was originally called Live Script and
renamed as JavaScript to indicate its relationship with Java. JavaScript supports the
development of both client and server components of Web-based applications. On the
client side, it can be used to write programs that are executed by a Web browser
within the context of a Web page. On the server side, it can be used to write Web
server programs that can process information submitted by a Web browser and then
update the browser’s display accordingly
Even though JavaScript supports both client and server Web programming, we prefer
JavaScript at Client side programming since most of the browsers supports it.
JavaScript is almost as easy to learn as HTML, and JavaScript statements can be
included in HTML documents by enclosing the statements between a pair of scripting
tags
<SCRIPTS>.. </SCRIPT>.
<SCRIPT LANGUAGE = “JavaScript”>
JavaScript statements
</SCRIPT>
Here are a few things we can do with JavaScript:
Validate the contents of a form and make calculations.
Add scrolling or changing messages to the Browser’s status line.
Animate images or rotate images that change when we move the mouse over
them.
Detect the browser in use and display different content for different browsers.
Detect installed plug-ins and notify the user if a plug-in is required.
We can do much more with JavaScript, including creating entire application.
Page 41
Page 42
8.1.5 DATABASE
A database management system (DBMS) is computer software designed for the
purpose of managing databases, a large set of structured data, and run operations on
the data requested by numerous users. Typical examples of DBMSs include Oracle,
DB2, Microsoft Access, Microsoft SQL Server, Firebird, PostgreSQL, MySQL,
SQLite, FileMaker and Sybase Adaptive Server Enterprise. DBMSs are typically used
by Database administrators in the creation of Database systems. Typical examples of
DBMS use include accounting, human resources and customer support systems.
Originally found only in large companies with the computer hardware needed to
support large data sets, DBMSs have more recently emerged as a fairly standard part
of any company back office.
The DBMS accepts requests for data from the application program and instructs the
operating system to transfer the appropriate data.
When a DBMS is used, information systems can be changed much more easily as the
organization's information requirements change. New categories of data can be added
to the database without disruption to the existing system.
Organizations may use one kind of DBMS for daily transaction processing and then
move the detail onto another computer that uses another DBMS better suited for
random inquiries and analysis. Overall systems design decisions are performed by
data administrators and systems analysts. Detailed database design is performed by
database administrators.
Database servers are specially designed computers that hold the actual databases and
run only the DBMS and related software. Database servers are usually multiprocessor
computers, with RAID disk arrays used for stable storage. Connected to one or more
servers via a high-speed channel, hardware database accelerators are also used in
large volume transaction processing environments.
Page 42
Page 43
8.1.6 SQL (STRUCTURED QUERY LANGUAGE)
Structured Query Language (SQL) is the language used to manipulate relational
databases. SQL is tied very closely with the relational model.
In the relational model, data is stored in structures called relations or tables.
SQL statements are issued for the purpose of:
Data definition:
Defining tables and structures in the database (DDL used to create, alter and drop
schema objects such as tables and indexes).
Data manipulation:
Used to manipulate the data within those schema objects (DML Inserting, Updating,
Deleting the data, and Querying the Database).
A schema is a collection of database objects that can include: tables, views, indexes
and sequences
List of SQL statements that can be issued against an Oracle database schema are:
ALTER - Change an existing table, view or index definition (DDL)
AUDIT - Track the changes made to a table (DDL)
COMMENT - Add a comment to a table or column in a table (DDL)
COMMIT - Make all recent changes permanent (DML - transactional)
CREATE - Create new database objects such as tables or views (DDL)
DELETE - Delete rows from a database table (DML)
DROP - Drop a database object such as a table, view or index (DDL)
GRANT - Allow another user to access database objects such as tables or views
(DDL)
INSERT - Insert new data into a database table (DML)
No AUDIT - Turn off the auditing function (DDL)
REVOKE - Disallow a user access to database objects such as tables and views
(DDL)
Page 43
Page 44
ROLLBACK - Undo any recent changes to the database (DML - Transactional)
8.1.7 ECLIPSE IDE
Eclipse is an open-source software framework written primarily in Java. In its default
form it is an Integrated Development Environment (IDE) for Java developers,
consisting of the Java Development Tools (JDT) and the Eclipse Compiler for Java
(ECJ). Users can extend its capabilities by installing plug-ins written for the Eclipse
software framework, such as development toolkits for other programming languages,
and can write and contribute their own plug-in modules. Language packs are available
for over a dozen languages.
Architecture
The basis for Eclipse is the Rich Client Platform (RCP). The following components
constitute the rich client platform:
OSGi - a standard bundling framework
Core platform - boot Eclipse, run plug-ins
the Standard Widget Toolkit (SWT) - a portable widget toolkit
JFace - viewer classes to bring model view controller programming to SWT,
file buffers, text handling, text editors
the Eclipse Workbench - views, editors, perspectives, wizards
Eclipse's widgets are implemented by a widget toolkit for Java called SWT, unlike
most Java applications, which use the Java standard Abstract Window Toolkit (AWT)
or Swing. Eclipse's user interface also leverages an intermediate GUI layer called
JFace, which simplifies the construction of applications based on SWT.
Page 44
Page 45
8.1.8 APPLICATION SERVER
An application server is a software engine that delivers applications to client
computers or devices, typically through the Internet and using the Hypertext Transfer
Protocol. Application servers are distinguished from web servers by the extensive use
of server-side dynamic content and frequent integration with database engines.
Common features
Application server products typically bundle middleware to enable applications to
intercommunicate with dependent applications, like web servers, database
management systems, and chart programs. Some application servers also provide an
API, making them operating system independent. Portals are a common application
server mechanism by which a single point of entry is provided to multiple devices.
Java application servers
Page 45
Page 46
PART-V
SNAPSHOTS
Page 46
Page 56
PART-VI
TESTING
&
CONCLUSION
Page 56
Page 57
Chapter 9:- Testing
9.1 TESTING
Software Testing is the process used to help identify the correctness, completeness,
security, and quality of developed computer software. Testing is a process of technical
investigation, performed on behalf of stakeholders, that is intended to reveal quality-
related information about the product with respect to the context in which it is
intended to operate. This includes, but is not limited to, the process of executing a
program or application with the intent of finding errors. Quality is not an absolute; it
is value to some person. With that in mind, testing can never completely establish the
correctness of arbitrary computer software; testing furnishes a criticism or comparison
that compares the state and behavior of the product against a specification. An
important point is that software testing should be distinguished from the separate
discipline of Software Quality Assurance (SQA), which encompasses all business
process areas, not just testing.
There are many approaches to software testing, but effective testing of complex
products is essentially a process of investigation, not merely a matter of creating and
following routine procedure. One definition of testing is "the process of questioning a
product in order to evaluate it", where the "questions" are operations the tester
attempts to execute with the product, and the product answers with its behavior in
reaction to the probing of the tester[citation needed]. Although most of the intellectual
processes of testing are nearly identical to that of review or inspection, the word
testing is connoted to mean the dynamic analysis of the product—putting the product
through its paces. Some of the common quality attributes include capability,
reliability, efficiency, portability, maintainability, compatibility and usability. A good
test is sometimes described as one which reveals an error; however, more recent
thinking suggests that a good test is one which reveals information of interest to
someone who matters within the project community.
Page 57
Page 58
Introduction
In general, software engineers distinguish software faults from software failures. In
case of a failure, the software does not do what the user expects. A fault is a
programming error that may or may not actually manifest as a failure. A fault can also
be described as an error in the correctness of the semantic of a computer program. A
fault will become a failure if the exact computation conditions are met, one of them
being that the faulty portion of computer software executes on the CPU. A fault can
also turn into a failure when the software is ported to a different hardware platform or
a different compiler, or when the software gets extended. Software testing is the
technical investigation of the product under test to provide stakeholders with quality
related information.
Software testing may be viewed as a sub-field of Software Quality Assurance but
typically exists independently (and there may be no SQA areas in some companies).
In SQA, software process specialists and auditors take a broader view on software and
its development. They examine and change the software engineering process itself to
reduce the amount of faults that end up in the code or deliver faster.
Regardless of the methods used or level of formality involved the desired result of
testing is a level of confidence in the software so that the organization is confident
that the software has an acceptable defect rate. What constitutes an acceptable defect
rate depends on the nature of the software. An arcade video game designed to
simulate flying an airplane would presumably have a much higher tolerance for
defects than software used to control an actual airliner.
A problem with software testing is that the number of defects in a software product
can be very large, and the number of configurations of the product larger still. Bugs
that occur infrequently are difficult to find in testing. A rule of thumb is that a system
that is expected to function without faults for a certain length of time must have
already been tested for at least that length of time. This has severe consequences for
projects to write long-lived reliable software.
A common practice of software testing is that it is performed by an independent group
of testers after the functionality is developed but before it is shipped to the customer.
This practice often results in the testing phase being used as project buffer to
Page 58
Page 59
compensate for project delays. Another practice is to start software testing at the same
moment the project starts and it is a continuous process until the project finishes.
Another common practice is for test suites to be developed during technical support
escalation procedures. Such tests are then maintained in regression testing suites to
ensure that future updates to the software don't repeat any of the known mistakes.
It is commonly believed that the earlier a defect is found the cheaper it is to fix it.
Time Detected
Time Introduced Requirements Architecture Construction System
Test Post-Release
Requirements 1 3 5-10 10 10-100
Architecture - 1 10 15 25-100
Construction - - 1 10 10-25
In counterpoint, some emerging software disciplines such as extreme programming
and the agile software development movement, adhere to a "test-driven software
development" model. In this process unit tests are written first, by the programmers
(often with pair programming in the extreme programming methodology). Of course
these tests fail initially; as they are expected to. Then as code is written it passes
incrementally larger portions of the test suites. The test suites are continuously
updated as new failure conditions and corner cases are discovered, and they are
integrated with any regression tests that are developed.
Unit tests are maintained along with the rest of the software source code and generally
integrated into the build process (with inherently interactive tests being relegated to a
partially manual build acceptance process).
The software, tools, samples of data input and output, and configurations are all
referred to collectively as a test harness.
Page 59
Page 60
9.2 CONCLUSION
Bug tracking is a fundamental part of the Software Engineering lifecycle process.
Effective use of a bug tracking system will lead to a more structured approach through
the development lifecycle, resulting in a higher quality product while also reducing
development and support costs.
9.2.1 FINDINGS
The application has been loaded on the server and can be accessed. After
implementing the system in the organization its advantages were incomparable to the
present contemporary systems available in the market. The most admirable feature
founded was its simplicity in terms of application to the employees in the
organization.
9.2.2 LIMITATION
Only the admin level’s employees can access the system.
Once the employee is registered to a course cannot drop, without completing.
Communication problems: Sometimes the description of the content is poor,
or the developer misunderstands the problem.
Low robustness: The process doesn’t guarantee that the content will appear
same in the future.
9.2.3 FUTURE ENHANCEMENTS
It is not possible to develop a system that makes all the requirements of the user. User
requirements keep changing as the system is being used. Some of the future
enhancements that can be done to this system are:
As the technology emerges, it is possible to upgrade the system and can be
adaptable to desired environment.
Because it is based on object-oriented design, any further changes can be
easily adaptable.
Based on the future security issues, security can be improved using emerging
technologies.
Page 60
Page 61
BIBLIOGRAPHY
Core Java™ 2 Volume I – Fundamentals 7th Edition - Cay S. Hortsman
Pearson Education – Sun Microsystems Gary Cornell
Core Java™ 2 Volume II – Advanced - Cay S. Hortsman
Pearson Education – Sun Microsystems Gary Cornell
Head First Servlets & JSP - Eric Freeman
O’Reilly – SPD Elisabeth Freeman
The Book of JavaScript 2nd Edition - Thau
SPD
Effective Java – Programming Language Guide - Joshua Bloch
Pearson Education – Sun Microsystems
Java Database Best Practices - George Reese
O’Reilly – SPD
Page 61