Training report
-
Upload
bhaskar-mangal -
Category
Engineering
-
view
203 -
download
1
Transcript of Training report
IMAGINATE
Project Report
Submitted to the Rajasthan Technical University, Kota
In partial fulfilment for the Degree of
(B.Tech)
Batch 2011-15
At
Vivekananda Institute of Technology, Jaipur
Sumitted By Guided By
Bhaskar Mangal Mr. Ankush Jain B.tech VII Semester
ACKNOWLEDGEMENT
The satisfaction that accompanies that the successful completion of any task would be
incomplete without the mention of people whose case less cooperation made it
possible, whose constant guidance and encouragement crown all efforts with success.
First of all, i am thankful to “RAJASTHAN TECHNICAL UNIVERSITY” for
putting this practical paper in curriculum, which provides real world experience
before degree completion.
We are grateful to our project guide Mr. Ankush Jain for the guidance, inspiration
and constructive suggestions that helpful us in the preparation of the project. We also
thank our college who has helped in successful completion of project.
His readiness to discuss all important matters at work deserves special attention.
We would also like to thank whole of the faculty of the organization for their
cooperation and important support.
(Bhaskar Mangal)
About Organization
A team of creative people which will do individual concept or idea creation for
every brand and offers custom web development and internet marketing services
bringing over 5-10 years of experience in designing as well in marketing..
We are Upcoming Training Specialist for upgrading the future of coming
generation with real time exposure focusing on gaining the reputation as a top
global provider for Quality computer Education.
We at stew at dedicate oue efforts towards providing in depth technical knowledge
from last 5 years as well as industrial exposure to candidate
Who want to utilize skills with us. We provide comprehensive IT training
in(.net,java,JSP,Mysql etc.) in many global delivery modals such as
online,onstie,offshore,in class that ans all the training.
Stew is established with the motto of providing interactive learning for all IT
related courses. This is an effective way to learn various software courses. Stew is
manned by real time trainers Who have lot of expertise and experience in their
respective fields. Our training happens in a live enviournment where the trainers
n student interact(1:1) and share notes to the trainers graphic tablet to provide very
closepersonalised tarining session.
We build up the candidates to focus on the real time requirements of the corporate
organisations, so that they build up themselves to reach the same and grab the
surprising opportunities to build the carrier.
Training: Girnar Technologies expert trainers approaches to all computer centers of
Rajasthan and provide project Based training there, with a motto of imparting the
qualitative and practical knowledge education among the technical students.
Development:
We have the extensive software development and custom software development
skills perfectly blended with the quality expertise that guarantees to take.
Introduction
Overview:
IMAGINATE is an online photo-sharing and social networking
Service that enables its users to take pictures, applies digital filters to them, and shares
them on a variety of social networking services. A distinctive feature is that it
confines photos to a square shape, similar to Instamatic and Polaroid images, in
contrast to the 4:3 aspect ratio typically used by mobile device cameras. Users are
also able to record and share pictures.
(a). Introduction to the technology used
1. Introducing JAVA
Java is a programming language created by James Gosling from Sun Microsystems
(Sun) in 1991. The first publicly available version of Java (Java 1.0) was released in
1995. Sun Microsystems was acquired by the Oracle Corporation in 2010. Oracle has
now for Java.
From the Java programming language the Java platform evolved. The Java platform
allows software developers to write program code in other languages than the Java
programming language which still runs on the virtual machine. The Java platform is
usually associated with the Java virtual machine and the Java core libraries.
2. Characteristics of JAVA
The PHP language revolves around the central theme of practicality. JAVA is about
providing the programmer with the necessary tools to get the job done in a quick and
efficient fashion. Five important characteristics make JAVA’s practical nature
possible:
• Familiarity
• Efficiency
• Security
• Flexibility
Efficiency
Efficiency is an extremely important consideration for working in a multiuser
environment such as the WWW. JAVA introduced resource allocation mechanisms
and more pronounced support for object-oriented programming, in addition to session
management features. Reference counting has also been introduced in the latest
version, eliminating unnecessary memory allocation.
Security
Users running programs:
Built- in security functionality protects you from malevolent programs (including
viruses), maintains the privacy of your files and information about you, and
authenticates the identity of each code provider. You can subject applications and
applets to security controls when you need to.
Developers:
You can use API methods to incorporate security functionality into your programs,
including cryptography services and security checks. The API framework enables you
to define and integrate your own permissions (controlling access to specific
resources), cryptography service implementations, security manager implementations,
and implementations. In addition, classes are provided for of your public/private key
pairs and public key certificates from people you trust.
Systems administrators, developers, and users:
JDK tools manage your key store (database of keys and certificates); generate digital
signatures for JAR files, and verify the authenticity of such signatures and the
integrity of the signed contents; and create and modify the policy files that define your
installation's security policy.
Free
The open source development strategy has gained considerable notoriety in the
software industry. The prospect of releasing source code to the masses has resulted in
undeniably positive outcomes for many projects, perhaps most notably Linux,
although the success of the Apache project has certainly been a major contributor in
proving the validity of the open source ideal. The same holds true for the
developmental history of JAVA, as users worldwide have been a huge factor in the
advancement of the JAVA project.
JAVA’s embracing of this open source strategy result in great performance gains for
users, and the code is available free of charge. Additionally, an extremely receptive
user community numbering in the thousands acts as “customer support,” providing
answers to even the most arcane questions in popular online discussion groups.
4. Comparing JAVA with other languages
Chris Shiflett posted some thoughts on PHP and Ruby on Rails which has
generated some interesting discussion. Chris divides programming languages into two
categories:
Flexible and powerful: PHP, C, C++, and Perl.
Structured and organized: Java, Ruby, and ASP.NET.
I don’t disagree with the cultural grouping. PHP’s cultural heritage is definitely in the
Unix programming, C/Perl camp as I suggested in building a culture of objects in
PHP and Why isn’t PHP the natural successor to Java?
I prefer to group languages in a different way.
4.1 Garbage Collection
To me, this is the single biggest language comparison issue. Managing memory is
orthogonal to the task most programmers are trying to accomplish. That’s a fancy way
of saying a waste of time. Additionally, memory management is easy to screw up.
Any process that relies on humans repeatedly doing something correctly is destined
for disappointment. Sure, there are tools that help avoid memory management bugs.
The best of these is to take it off the programmers plate entirely with garbage
collection and let the programmer concentrate on other things. Sure, there can be
resource usage and performance issues. However, for most cases computer hardware
is cheaper than computer programmers.
We can divide our languages along this axis:
Quickly runs: PHP, Java, Ruby, C#, Perl, Python, Smalltalk
Runs quickly: C, C++, Objective C, Delphi
Interestingly, this corresponds fairly closely with native executable versus virtual
machine.
4.2 Static or Dynamic Typing
The next most important axis of comparison is dynamic or static typing. In static
typing type information is associated with the variable. In dynamic typing type
information is associated with the value in the variable.
The benefit of dynamic typing is that you do not waste programmer time and attention
with typecasting (”static types get in my way”). The benefit of static typing is that the
compiler can catch certain errors (”The compiler finds my mistakes”).
Risk tolerant: PHP, Ruby, Python, Smalltalk, Perl
Risk averse: Java, C#
4.3 Scope
One should not underestimate the importance of this factor. Why is Java considered
so complicated? One reason is that it is designed to run on everything from servers to
cell phones, from desktops to dishwashers. It’s scope is impossibly general. Of
course, specialized tools such as Rails and JAVA are more productive for their sweet
spot applications.
General: Java, .NET
Specific: PHP, Rails.
4.4 Popularity
Popularity brings better tools, more available developers, better documentation, and
better productivity. Programming on a discontinued or rarely used platform is more
difficult.
Popular: PHP, .NET, Java
Rare: Python, Ruby, Smalltalk
4.5 Abstraction
Working at a higher level of abstraction allows the programmer to be more
productive. The computer industry has continuously been heading up the abstraction
scale without looking back. Professional programmers want to work with higher level
constructs because they are more expressive. One can get more done with less code.
The drawback is that higher level language features can require more programmer
skill to use well.
Simple: Java
Powerful: Ruby, Smalltalk, Lisp
I’m talking about the language, not the libraries when I basify Java as simple.
Dynamic versus static typing aside, I see the Java and PHP languages as similarly
expressive.
I have a lot of respect for Anders Hejlsberg and there is some serious innovation
going on in the C# world on this front. Java can barely keep up.
The Rails folks are fond of saying that Rails couldn’t be written without the
expressive features of the Ruby language. It would be interesting to get the opinions
of some of the cake developers on this idea.
HYPERTEXT MARKUP LANGUAGE (HTML):-
A simple markup language used to create hypertext documents that are
portable from one platform to another. HTML files are simple ASCII text files with
codes embedded (indicated by markup tags) to denote formatting and hypertext links
Many people who use HTML to create Web pages or other documents find
Notepad a useful tool for writing in HTML. Because Notepad supports only very
basic formatting, you cannot accidentally save special formatting in documents that
need to remain pure text. This is especially useful when creating HTML documents
for a Web page because special characters or other formatting may not appear in your
published Web page or may even cause errors.
Many word processors provide additional tools or converters to help you
create HTML documents. But, if you are creating simple pages or if you want to make
a few quick changes, Notepad opens files quickly. Also, Notepad shows all of the
HTML tags so you can troubleshoot your page. Not all word processors or converters
make the HTML code available.
JAVA SCRIPT:-
JavaScript is an object-oriented scripting language used to enable programmatic
access to objects within both the client application and other applications. It is
primarily used in the form of client-side JavaScript, implemented as an integrated
component of the web browser, allowing the development of enhanced user interfaces
and dynamic websites. JavaScript is a dialect of the ECMA Script standard and is
characterized as a dynamic, weakly typed, prototype-based language with first-class
functions.
CASCADING STYLE SHEET (CSS):-
Cascading Style Sheets (CSS) is used to describe the presentation semantics
(that is, the look and formatting) of a document written in a mark- up language. CSS
is designed primarily to enable the separation of document content (written in HTML
or a similar mark-up language) from document presentation, including elements such
as the layout, colours, and fonts.
BACK END DESIGN
MySQL SERVER:-
A database management system must be able to reliably manage a large
amount of data in a multi-user environment so that many users can concurrently
access the data. A database management system should also provide security and
failure recovery.
MySQL is the name of a database management system Developed by Apache
Software Foundation. Apache Software Foundation provides various software’s
related to web development; the biggest advantage is that all the software’s are free of
cost. MySQL is most popular database management tool. It provides better security
and data recovery against system failure.
MySQL works faster compared to other Database Management tools. Apache
Software Foundation provides GUI to work with MySQL, because of its GUI
environment it is very easy to understand any novice user can quickly learn MySQL
by using java MyAdmin developer. We can create databases and maintain it through
java MyAdmin developer. It provides GUI so it is easy to understand and learn.
MySQL is a database management system, which helps us to manage data
stored in a system database. Programming skills is not required to use MySQL as
database management system. Java MyAdmin hides all the complex tasks of
managing a database and gives a user-friendly way of managing a database.
Advantage of MySQL Workbench:-
Tested with a broad range of different compilers.
Works on many different platforms..
The MySQL Workbench Server design is multi- layered with independent
modules.
Fully multi-threaded using kernel threads. It can easily use multiple CPUs if
they are available.
Provides transactional and non-transactional storage engines.
Relatively easy to add other storage engines. This is useful if you want to
provide an SQL interface for an in-house database.
A very fast thread-based memory allocation system.
Very fast joins using an optimized one-sweep multi-join.
In-memory hash tables, which are used as temporary tables.
TABLE:
A database is a collection of data about a specific topic.
VIEWS OF TABLE:
We can work with a table in two types,
1. Design View
2. Datasheet View
Design View
To build or modify the structure of a table we work in the table design view. We
can specify what kind of data will be hold.
Datasheet View
To add, edit or analyses the data itself we work in tables datasheet view mode.
QUERY:
A query is a question that has to be asked the data. Access gathers data that answers
the question from one or more table. The data that make up the answer is either dynast
(if you edit it) or a snapshot(it cannot be edited).Each time we run query, we get latest
information in the dynast. Access either displays the dynast or snapshot for us to view
or perform an action on it, such as deleting or updating.
REPORT:
A report is used to view and print information from the database. The report can
ground records into many levels and compute totals and average by checking values
from many records at once. Also the report is attractive and distinctive because we
have control over the size and appearance of it.
Rational behind the Project --
(a) Operations of the project:
The following are the major operations of this portal:
Allows user to register.
User can view the Gallery.
User can view the top rated.
User can contact admin.
User can vote for good pictures.
Modules:
USER
ADMIN
Project Methodology
Information gathering:
Information gathering means collecting the information about the system which
you are working. The strategy consists of identifying information sources,
evolving a method of obtaining information from the identified sources and using
an information flow model of organization there are various information gathering
tools: Written and printed document Meeting with several perspective clients. By
doing meeting with perspective clients we came to know all their requirements
and problems hidden in the system. By meetings we have understood all the
requirements and functionality that they expect from questionnaires we asked
many questions related to te different types of competencies and how the tool will
give a positive response from the subordinate. In questionnaires we got the
complete scenario of the working and rules & regulations associated with their
system.
Analysis & Design
System requirement analysis:
Systems analysis is a process of collecting factual data, understand the processes
involved, identifying problems and recommending feasible suggestions for improving
the system functioning. This involves studying the business processes, gathering
operational data, understand the information flow, finding out bottlenecks and
evolving solutions for overcoming the weaknesses of the system so as to achieve the
organizational goals. System Analysis also includes subdividing of complex process
involving the entire system, identification of data store and manual processes.
The major objectives of systems analysis are to find answers for each business
process:
What is being done,
How is it being done,
Who is doing it,
When is he doing it,
Why is it being done and
How can it be improved?
It is more of a thinking process and involves the creative skills of the System
Analyst. It attempts to give birth to a new efficient system that satisfies the
current needs of the user and has scope for future growth within the
organizational constraints. The result of this process is a logical system design.
Systems analysis is an iterative process that continues until a preferred and
acceptable solution emerges.
Preliminary study is the process of gathering and interpreting facts ,using the
information for further studies on the system preliminary study is problem
solving activity that requires intensive communication between the system
users as system developers it does various feasibility studies.
System activities can be obtained, from which the decision about the strategies
to be followed for effective system study and analysis can be taken.
Interfaces
Functional Capabilities Performance Levels
Data Structures/Elements Safety Reliability
Security/Privacy Quality
Constraints and Limitations Process Model Used:
A software life cycle is the series of identifiable stages that a software product
undergoes during its lifetime .A software lifecycle model is a descriptive and
diagrammatic representation of the software life cycle .A life cycle model
represents all the activities required to make a software product transit through
its lifecycle phases .It also captures the order in which these activities are to be
taken.
Life Cycle Models:
There are various life cycle models to improve the software processes.
WATERFALL MODEL
PROTOTYPE MODEL
EVOLUTIONARY MODEL
SPIRAL MODEL
In the project, Waterfall model is followed.
Feasibility study:
Preliminary investigation examine project feasibility, the likelihood the system
will be useful to the organization. The main objective of the feasibility study is to test
the Technical, Operational and Economical feasibility for adding new modules and
debugging old running system. All system is feasible if they are unlimited resources
and infinite time. There are aspects in the feasibility study portion of the preliminary
investigation:
Technical Feasibility
Operation Feasibility
Economical Feasibility
3.1. Technical Feasibility
The technical issue usually raised during the feasibility stage of the investigation
includes the following:
Does the necessary technology exist to do what is suggested?
Do the proposed equipments have the technical capacity to hold the data required
to use the new system?
Will the proposed system provide adequate response to inquiries, regardless of the
number or location of users?
Can the system be upgraded if developed?
Are there technical guarantees of accuracy, reliability, ease of access and data
security?
Earlier no system existed to cater to the needs of ‘Secure Infrastructure
Implementation System’. The current system developed is technically feasible. It is a
web based user interface for audit workflow at NIC-CSD. Thus it provides an easy
access to the users. The database’s purpose is to create, establish and maintain a
workflow among various entities in order to facilitate all concerned users in their
various capacities or roles. Permission to the users would be granted based on the
roles specified. Therefore, it provides the technical guarantee of accuracy, reliability
and security. The software and hard requirements for the development of this project
are not many and are already available in-house at NIC or are available as free as
open source. The work for the project is done with the current equipment and existing
software technology. Necessary bandwidth exists for providing a fast feedback to the
users irrespective of the number of users using the system.
3.2. Operational Feasibility
Proposed projects are beneficial only if they can be turned out into information
system. That will meet the organization’s operating requirements. Operational
feasibility aspects of the project are to be taken as an important part of the project
implementation. Some of the important issues raised are to test the operational
feasibility of a project includes the following: -
Is there sufficient support for the management from the users?
Will the system be used and work properly if it is being developed and
implemented?
Will there be any resistance from the user that will undermine the possible
application benefits?
This system is targeted to be in accordance with the above-mentioned issues.
Beforehand, the management issues and user requirements have been taken into
consideration. So there is no question of resistance from the users that can undermine
the possible application benefits.
The well-planned design would ensure the optimal utilization of the computer
resources and would help in the improvement of performance status.
3.3. Economic Feasibility
A system can be developed technically and that will be used if installed must still be a
good investment for the organization. In the economical feasibility, the development
cost in creating the system is evaluated against the ultimate benefit derived from the
new systems. Financial benefits must equal or exceed the costs
DESIGN
Architectural Design:
A Systems Architect responsibilities includes the ability to create, review, and
update (don't forget this last one!) designs or blueprints to provide an overall
direction for the system, project, department, or enterprise. See what is a Systems
Architect? for more about the position.
These fundamentals of system design can go through various stages from the
initial project concept to the final plan prior to implementation. Not only is it
important to develop a design at each stage but it can also be a useful tool for
training and marketing of the concept. The age old saying "a picture is worth a
thousand words" still holds true. Each stage builds upon the previous stage in
detail allowing the individual to more completely understand the big picture and
then focus on the details as it progresses.
There is often confusion between each of these different types of designs. With
each one of these types of designs, you may need to develop more than one of
each depending on the target audience. For example, there may be a business view
conceptual design which may actually seem quite simple and only contains 5
boxes and a few lines and words. There may also be a single architectural
conceptual design or even multiple architectural designs (activity, state, and
collaboration conceptual design diagrams). Your project and target audience will
determine the need.
Conceptual Design
A conceptual design is an abstract or high level design which includes only the most
important components and entities. The main goal of a conceptual design is to provide
an understandable picture of the overall purpose of the proposed solution.
Components may include major technology systems, external systems that are
required for integration or overall functionality, high level data flow, and system
functionality. Think of this as the "black box" diagram where portions of the diagram
may be simply a technology component to-be-named-later but is identified with its
role and purpose.
Logical Design
A logical design is a more detailed design which includes all major components and
entities plus their relationships. The data flows and connections are detailed in this
stage. The target audience is typically developers or other systems architects.
However, it is possible to create logical designs for business purposes to ensure that
all components and functionality is accounted and well understood. Logical designs
do not include physical server names or addresses. They do include any business
services, application names and details, and other relevant information for
development purposes.
Physical Design
A physical design has all major components and entities identified within specific
physical servers and locations or specific software services, objects, or solutions.
Include all known details such as operating systems, version numbers, and even
patches that are relevant. Any physical constraints or limitations should also be
identified within the server components, data flows, or connections. This design
usually precludes or may be included and extended by the final implementation team
into an implementation design.
The UML (Unified Modeling Language) is also another method that can be explored
for design and definition for these and other designs. There are several diagram types
within the UML which could be developed at each one of these design stages. I'd be
interested to hear about your interest or experiences with development of these
designs or others similar to it. Also, some believe there should be various focus areas
such as the Microsoft Architecture format with business, application, technology, and
information views of each of these stages. This will depend on the maturity of your
company's architecture program and also the project scope and target audience for
your designs.
SNAPSHOTS:-
Admin-Panel
1. Admin Login
USER-Panel
1. Login & Signup-Form
2. Home-Page :-
3. About :-
4. Add Gallery:-
5. User Gallery:-
6. User Profile update :-
7. Top Rated With Hits:-
8 .Contact us
DATABASE-Panel
1. Gallery
2. Login Details
3. User Details
Testing and Implementation
Testing Overview
Software testing is any activity aimed at evaluating an attribute or capability of a
program or system and determining that it meets its required results. Although crucial
to software quality and widely deployed by programmers and testers, software testing
still remains an art, due to limited understanding of the principles of software.
The difficulty in software testing stems from the complexity of software: we cannot
completely test a program with moderate complexity. Testing is more than just
debugging. The purpose of testing can be quality assurance, verification and
validation, or reliability estimation. Testing can be used as a generic metric as well.
Correctness testing and reliability testing are two major areas of testing. Software
testing is a trade-off between budget, time and quality.
Levels of Testing
The basic levels of testing are:
1. Unit Testing
2. Integration Testing
3. System Testing
4. Acceptance Testing
The levels of testing attempt to detect different types of faults. The relation of faults
introduces in different phases and the different levels.
Black-box testing
The black-box approach is a testing method in which test data are derived from the
specified functional requirements without regard to the final program structure. It is
also termed data-driven, input/output driven or requirements-based testing. Because
only the functionality of the software module is of concern, black-box testing also
mainly refers to functional testing a testing method emphasized on executing the
functions and examination of their input and output data. The tester treats the software
under test as a black box only the inputs, outputs and specification are visible, and the
functionality is determined by observing the outputs to corresponding inputs. In
testing, various inputs are exercised and the outputs are compared against
specification to validate the correctness. All test cases are derived from the
specification. No implementation details of the code are considered.
White-box testing
Contrary to black-box testing, software is viewed as a white-box, or glass-box in
white-box testing, as the structure and flow of the software under test are visible to the
tester. Testing plans are made according to the details of the software implementation,
such as programming language, logic, and styles. Test cases are derived from the
program structure. White-box testing is also called glass-box testing, logic-driven
testing or design-based testing.
There are many techniques available in white-box testing, because the problem of
intractability is eased by specific knowledge and attention on the structure of the
software under test. The intention of exhausting some aspect of the software is still
strong in white-box testing, and some degree of exhaustion can be achieved, such as
executing each line of code at least once (statement coverage), traverse every branch
statements (branch coverage), or cover all the possible combinations of true and false
condition predicates (Multiple condition coverage).
Unit Testing
The primary goal of unit testing is to take the smallest piece of testable software in the
application, isolate it from the remainder of the code, and determine whether it
behaves exactly as you expect. Each unit is tested separately before integrating them
into modules to test the interfaces between modules. Unit testing has proven its value
in that a large percentage of defects are identified during its use.
The most common approach to unit testing requires drivers and stubs to be written.
The driver simulates a calling unit and the stub simulates a called unit. The
investment of developer time in this activity sometimes results in demoting unit
testing to a lower level of priority and that is almost always a mistake. Even though
the drivers and stubs cost time and money, unit testing provides some undeniable
advantages. It allows for automation of the testing process, reduces difficulties of
discovering errors contained in more complex pieces of the application, and test
coverage is often enhanced because attention is given to each unit.
Unit testing frameworks are most often third-party products that are not distributed as
part of the compiler suite. They help simplify the process of unit testing, having been
developed for a wide variety of languages. Examples of testing frameworks include
open source solutions such as the various code-driven testing frameworks known
collectively as and proprietary/commercial solutions.
It is generally possible to perform unit testing without the support of a specific
framework by writing client code that exercises the units under test and
uses assertions, exception handling, or other mechanisms to signal failure. Unit testing
without a framework is valuable in that there is a barrier to entry for the adoption of
unit testing; having scant unit tests is hardly better than having none at all, whereas
once a framework is in place, adding unit tests becomes relatively easy. In some
frameworks many advanced unit test features are missing or must be hand-coded.
Integration Testing
Integration Testing is the phase in software testing in which individual
software modules are combined and tested as a group.
It occurs after unit testing and before system testing. Integration testing takes
as its input modules that have been unit tested, groups them in larger
aggregates, applies tests defined in an integration test plan to those aggregates,
and delivers as its output the integrated system ready for system testing.
Integration testing is a logical extension of unit testing.
In its simplest form, two units that have already been tested are combined into
a component and the interface between them is tested. A component, in this
sense, refers to an integrated aggregate of more than one unit. In a realistic
scenario, many units are combined into components, which are in turn
aggregated into even larger parts of the program.
Integration Testing typically involves the following Steps:
Step 1: Create a Test Plan
Step 2: Create Test Cases and Test Data
Step 3: If applicable create scripts to run test cases
Step 4: Once the components have been integrated execute the test cases
Step 5: Fix the bugs if any and re-test the code
Step 6: Repeat the test cycle until the components have been successfully integrated.
System Testing is a level of the software testing process where a complete, integrated
system/software is tested.
The purpose of this test is to evaluate the system’s compliance with the specified
requirements.
ANALOGY
During the process of manufacturing a ballpoint pen, the cap, the body, the tail, the
ink cartridge and the ballpoint are produced separately and unit tested separately.
When two or more units are ready, they are assembled and Integration Testing is
performed. When the complete pen is integrated, System Testing is performed.
TASKS
System Test Plan
Prepare
Review
Rework
Baseline
System Test Cases
Prepare
Review
Rework
Baseline
System Test
Perform
System Security
Introduction
The protection of computer based resources that includes hardware, software,
data, procedures and people against unauthorized use or natural
Disaster is known as System Security.
System Security can be divided into four related issues:
Security
Integrity
Privacy
Confidentiality
SYSTEM SECURITY refers to the technical innovations and procedures applied
to the hardware and operation systems to protect against deliberate or accidental
damage from a defined threat.
DATA SECURITY is the protection of data from loss, disclosure, modification
and destruction.
SYSTEM INTEGRITY refers to the power functioning of hardware and
programs, appropriate physical security and safety against external threats such as
eavesdropping and wiretapping.
PRIVACY defines the rights of the user or organizations to determine what
information they are willing to share with or accept from others and how the
organization can be protected against unwelcome, unfair or excessive dissemination
of information about it.
CONFIDENTIALITY is a special status given to sensitive information in a
database to minimize the possible invasion of privacy. It is an attribute of information
that characterizes its need for protection.
SECURITY IN SOFTWARE
System security refers to various validations on data in form of checks and controls to
avoid the system from failing. It is always important to ensure that only valid data is
entered and only valid operations are performed on the system. The system employees
two types of checks and controls:
CLIENT SIDE VALIDATION
Various client side validations are used to ensure on the client side that only valid data
is entered. Client side validation saves server time and load to handle invalid data.
Some checks imposed are:
VBScript in used to ensure those required fields are filled with suitable data only.
Maximum lengths of the fields of the forms are appropriately defined.
Forms cannot be submitted without filling up the mandatory data so that manual
mistakes of submitting empty fields that are mandatory can be sorted out at the
client side to save the server time and load.
Tab- indexes are set according to the need and taking into account the ease of user
while working with the system.
SERVER SIDE VALIDATION
Some checks cannot be applied at client side. Server side checks are necessary to save
the system from failing and intimating the user that some invalid operation has been
performed or the performed operation is restricted. Some of the server side checks
imposed is:
Server side constraint has been imposed to check for the validity of primary key
and foreign key. A primary key value cannot be duplicated. Any attempt to
duplicate the primary value results into a message intimating the user about those
values through the forms using foreign key can be updated only of the existing
foreign key values.
User is intimating through appropriate messages about the successful operations
or exceptions occurring at server side.
Various Access Control Mechanisms have been built so that one user may not
agitate upon another. Access permissions to various types of users are controlled
according to the organizational structure. Only permitted users can log on to the
system and can have access according to their category. User- name, passwords
and permissions are controlled o the server side.
Future Scope
This Project has a wide scope in the following two areas -
1. If the project is owned by any company then they can use this web application for:-
Managing the jobs of their organization by online.
Availing the facility to Candidate to register them freely.
Availing the facility to Candidate of online exam.
Availing the facility to Company to get the information regarding to the every
candidate
2. If the project is owned by Job Consultancy then this web application can be
enhanced for:-
Managing the jobs of any organization by online.
Availing the facility to Candidate to register themselves for much company.
Availing the facility to companies to register for posting their jobs.
Hardware and Software Required
Software Requirement:
Operating System: Windows-8.
Toolkit : JAVA ECLIPSE JUNO
Front End : JAVA
Back End : MySQL Workbench
Hardware specification
Processor: - Intel Core i-3 processor, Core i5 processor.
RAM : - 1GB.
HD : - 50GB.
BIBLIOGRAPHY
FOR DEPLOYMENT AND PACKING ON SERVER
www.developer.com
FOR MySQL
www.oracle.com