sheetal report

Upload: sourabh-dashora

Post on 04-Apr-2018

223 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/31/2019 Sheetal Report

    1/84

    APPRAISAL MANAGEMENT SYSTEM

    REPORT

    Submitted in fulfillment of the

    Requirement for the award of the Degree

    Master of Computer application (M.C.A)

    Of

    Banasthali University

    (Organization: GirnarSoft Pvt. Ltd.)

    Supervised by: Submitted by:

    Mr.Vikas Sonwal Sheetal Maheshwari

    Project Guide MCA VI sem

    1

  • 7/31/2019 Sheetal Report

    2/84

    Acknowledgement

    I express my deep sense of gratitude to my project guideMr. Vikas Sonwal for his expert

    guidance throughout the period of this project.

    I also express my sincere thanks to Mr. Amit Jain, for giving me an opportunity to carry

    out my training in his esteemed Company.

    I also express my intimate thanks to my friends for their valuable and precious help

    during this project and to all those people who are directly or indirectly related with this

    project.

    Sheetal Maheshwari

    MCA VI sem

    2

  • 7/31/2019 Sheetal Report

    3/84

    Preface

    Industrial training is must for each and every student and especially for technical students

    for successive completion of their studies. The study remains incomplete without having

    the practical knowledge of what we have gone through theory. It is rather important for

    every student to be practical along with his theoretical knowledge. Today there is a need

    of more perspective and systematic alignment of a student along with his knowledge.

    Without having any lagging effect of a student should have admirable knowledge of the

    practical field. Enclosures regarding this field should be made with every respect and

    viewpoint.

    So I conclude that industrial visit is most important for each and every student along withtheoretical knowledge.

    Sheetal MaheshwariMCA VI sem

  • 7/31/2019 Sheetal Report

    4/84

    Table of Content

    Sr.No Title Pg.No

    1 Company Profile1.1. Company Overview1.2 Founders of company1.3 Services of company

    5568

    2 Introduction2.1 Project Title2.2. Purpose2.3 Scope2.5 Technologies

    1010101112

    3 Overall Description3.1 Project Planning3.2 Feasibility study3.3 Product Perspective3.4 Technical Details3.5 Technologies Used

    151515171819

    4 Design4.1 Use Case4.2 Database Structure

    4.3 Table Description4.4 Data Flow Diagrams

    272730

    3035

    5 Performance Appraisal5.2 Organizational Strategy and Performance Appraisal

    5.3 Appraisal process

    434344

    6 Project Snapshots 49

    7 Module Description7.1 Ranking Report

    7.2 Module DFDS

    7.3 Module Snapshots

    6060

    6365

    8 Testing8.1 METHODOLOGY USED FOR TESTING

    8.2 TESTING TECHNIQUES

    727274

    9 Maintenance 76

    10 Bibliography 77

  • 7/31/2019 Sheetal Report

    5/84

    1

  • 7/31/2019 Sheetal Report

    6/84

    GirnarSoft Company Profile

    1.1 Overview of company :

    GirnarSoft holds the expertise in Product Development and partners with the world's

    most innovative companies to accelerate great software products using the unique

    Business Value Approach.

    GirnarSoft has a team of experts whose full time research effort goes on to solve real

    world problems using various optimization and search algorithms. This service aims to

    help customers make well informed decisions for their organization. This covers an

    umbrella of product services in various verticals like manufacturing, logistics, revenue

    management, scheduling, planning etc. The expertise lies in modeling the real world

    problems into math models and finding feasible solutions to real world problems

    involving resource constraints and resource availability. Under this service comes our

    Supply Chain Management Solution. Supply Chain Management solutions help you in

    creating strategic differentiation and operational superiority by configuring and

    implementing solutions that are aligned with the elements of your competitive strategy.

    Our Supply Chain Management solutions and services help manage and optimize the

    many facets of Supply Chain Planning, Sourcing & Procurement, Inventory

    Optimization, Warehouse Management, Logistics, Demand Forecasting and Supply

    Chain Integration.

    Companys key differentiator is the expertise their team carries in the areas of

    Optimization, SCM consulting, domain expertise in various SCM industry.

  • 7/31/2019 Sheetal Report

    7/84

    Here are the key areas covered:

    Strategic planning

    Supply chain management

    Pricing and revenue management

    Logistics and site location Optimization

    Scheduling

    Inventory analysis

    Forecasting

    GirnarSoft mission-

    Creating Business Value for Product Companies with innovative end-to-end

    solutions throughout the product lifecycle.

    1.2 Founders of company :

    Amit Jain :

    Amit Jain, CEO and CoFounder of GirnarSoft, is an IIT Delhi graduate of 1999. Worked

    in Industry for 8 years before he started GirnarSoft. Started his career with Trilogy an

    Austin based company and grew from a developer role to product manager under

    leadership of Joe Liemandt (CEO Trilogy), Steve Bell (CEO & CoFounder

    Shangby.com), and Jim Abolt(VP HR Trilogy). CoFounded GirnarSoft with Anurag Jain,

    the passion of starting a company and doing innovations is what led him to form

    GirnarSoft. The common thing across all GirnarSoft's launches is the experience he has

    gained in SEO, Viral Marketing, community building. This forms the key to success of

    all products we have launched. Aims to build a billion dollar company and works with

    passion and commitment to make it happen.

    Specialties - Customer Acquisition, Product Management, Internet Marketing, people

    management, WebServices architecture and design, SEO, Link Building.

    http://www.girnarsoft.com/services/business-value/seo-sem-service.htmhttp://www.girnarsoft.com/services/business-value/viral-marketing-service.htmhttp://www.girnarsoft.com/services/business-value/seo-sem-service.htmhttp://www.girnarsoft.com/services/business-value/seo-sem-service.htmhttp://www.girnarsoft.com/services/business-value/viral-marketing-service.htmhttp://www.girnarsoft.com/services/business-value/seo-sem-service.htm
  • 7/31/2019 Sheetal Report

    8/84

    AnuragJain:

    Anurag Jain, CEO & CIO of CarDekho and CoFounder of GirnarSoft, is an IIT Delhi

    graduate with a 5 year Integrated Masters Degree in Mathematics and Computing (1997-

    2002). Started his career with an internship at Induslogic in 2001 during his final year,

    and then worked as an Operations Research specialist. Worked with i2 Technologies and

    then Sabre Holdings in the past and was responsible for ideation, innovation and

    development of the core algorithms in the engines that power the OR products at these

    companies. These products model any business problem into a mathematical abstraction

    and solve it using the math model using advanced OR techniques. CoFounded GirnarSoft

    with Amit Jain. Being an entrepreneur was a dream that he always cherished.

    The passion to build a company that thinks for the 'consumers' and believes in innovation

    is what excites him everyday. Having a diverse portfolio and making them all successful

    is what he believe in! Aims to build a billion dollar company by the worth of Company's

    own products.

    Specialties - Operations Research, Customer Acquisition, Innovation, Thinking out of

    the box, Product Management, Internet Marketing, SEO, Link Building, Leadership andVision: Can steer teams to orient themselves and work towards achieving a common

    goal. Makes the big picture clear to everyone involved in the team and makes them real

    business owners in all aspects rather than doing just 'their piece of work'.

    http://www.girnarsoft.com/services/business-value/operations-research-service.htmhttp://www.girnarsoft.com/services/business-value/seo-sem-service.htmhttp://www.girnarsoft.com/services/business-value/operations-research-service.htmhttp://www.girnarsoft.com/services/business-value/seo-sem-service.htm
  • 7/31/2019 Sheetal Report

    9/84

    1.3 Products & Services:

    GirnarSoft offers variety of services to fulfill client needs and to ensure a focused effort

    to accomplish business goals.

    Services are broadly classified into two categories:-

    - Business Value Services

    - Product Services

    Business Value Services cater to addressing a specific business goal. With our vast

    experience in the field of e-commerce we have innovated and developed expertise in

    various specific areas which impact the bottom line of our customers directly. Be it a

    business goal to have more people register after landing on homepage or getting the page

    to be listed higher in search engines, or knowing which of the leads are more likely to

    close, or doing low cost customer acquisition using viral techniques - Its all addressed

    under these services. Primary services offered in this domain are:

    Conversion Service

    Lead Scoring Service

    SEO/SEM Service

    Viral Marketing Service

    Web Analytics Service

    Operations Research Service

    Product Services cater to development of a product and seeing it emerge successfully

    though various lifecycles of the product. Varieties of services are offered to ensure the

    product takes the shape envisioned and is successfully implemented and maintained

    through its lifecycles. Be it conceptualizing a product, which involves deep expertise in

  • 7/31/2019 Sheetal Report

    10/84

    innovation, or developing it to spec, on time with quality, or maintaining the

    giant product you have - Its all addressed under these services:

    Product Conceptualization Service

    Product Development Service

    Product Maintenance Service Migration and Porting Service

    GirnarSoft BI Services

    - Customer Service Analytics and enterprise-wide strategy (Identify threats, opportunities

    and market trends)

    - Customize delivery methods (including portals, feeds, APIs, publishing & hosted

    solutions)

    - BI solutions for compliance to federal laws

    - Design solutions for your business problems using a hands-on, practical approach

    - Develop customized BI software packages

    - Data Warehousing including Warehouse Design & Implementation

    - Executive Dashboards

  • 7/31/2019 Sheetal Report

    11/84

    2. Introduction:

    2.1 About Appraisal Management System :

    Performance appraisal is the process of obtaining, analyzing and recording information

    about the relative worth of an employee. The focus of the performance appraisal is

    measuring and improving the actual performance of the employee and also the future

    potential of the employee. Its aim is to measure what an employee does

    .

    According to Flippo, A prominent personality in the field of Human resources,

    performance appraisal is the systematic, periodic and an impartial rating of an

    employees excellence in the matters pertaining to his present job and his potential for a

    better job." Performance appraisal is a systematic way of reviewing and assessing the

    performance of an employee during a given period of time and planning for his future.

    2.2 Objectives of Appraisal Management System:

    To review the performance of the employees over a given period of time.

    To judge the gap between the actual and the desired performance

    Self assessment by employee

    Understanding strength and weakness.

    Identifying potential.

    Better understanding between appraised and appraiser.

  • 7/31/2019 Sheetal Report

    12/84

    Recognizing achievements.

    Setting goal.

    Improved organizational performance.

    2.3 Scope of Appraisal Management System :

    The scope of any performance appraisal should include the following : provide

    employees with a better understanding of their role and responsibilities; increase

    confidence through recognizing strengths while identifying training needs to improveweaknesses; improve workingrelationshipsand communication between supervisors

    and subordinates; increase commitment to organizational goals; develop employees into

    future supervisors; assist in personnel decisions such as promotions or allocating

    rewards; and allow time for self-reflection, self-appraisal and personal goal setting.

    2.4 The benefits from the solution :

    Benefits of Employee Performance Appraisal System includes :

    Planning work and setting expectations,

    Continually monitoring performance,

    Developing the capacity to perform,

    Periodicallyrating performance in a summary fashion, and

    Rewarding good performance

    Performance management is the systematic process by which an organization involves its

    employees, as individuals and members of a group, in improving organizational

    effectiveness in the accomplishment of organization mission and goals.

    http://www.ehow.com/relationships-and-family/http://www.ehow.com/relationships-and-family/http://www.ehow.com/relationships-and-family/http://www.opm.gov/perform/overview.asp#5http://www.opm.gov/perform/overview.asp#4http://www.opm.gov/perform/overview.asp#2http://www.opm.gov/perform/overview.asp#1http://www.opm.gov/perform/overview.asp#1http://www.opm.gov/perform/overview.asp#3http://www.ehow.com/relationships-and-family/http://www.opm.gov/perform/overview.asp#5http://www.opm.gov/perform/overview.asp#4http://www.opm.gov/perform/overview.asp#2http://www.opm.gov/perform/overview.asp#1http://www.opm.gov/perform/overview.asp#3
  • 7/31/2019 Sheetal Report

    13/84

    It is a powerful tool to calibrate, refine and reward the performance of the

    employee. It helps to analyze his achievements and evaluate his contribution towards the

    achievements of the overall organizational goals.

    2.5) Technologies Language and platform used:

    Various technologies used are :

    Struts Spring

    JSP

    AJAX

    JQUERY

    JDBC

    JAVASCRIPT

    HTML

    CSS

    2.6) Challenges of Appraisal Management System :

    In order to make a performance appraisal system effective and successful, an

    organization comes across various challenges and problems. The main challenges

    involved in the performance appraisal process are:

    Determining the evaluation criteria

    Identification of the appraisal criteria is one of the biggest problems faced by the top

    management. The performance data to be considered for evaluation should be carefully

  • 7/31/2019 Sheetal Report

    14/84

    selected. For the purpose of evaluation, the criteria selected should be in

    quantifiable or measurable terms

    Create a rating instrument

    The purpose of the performance appraisalprocess is to judge the performance of the

    employees rather than the employee. The focus of the system should be on thedevelopment of the employees of the organization.

    Lack of competence

    Top management should choose the evaluators carefully. They should have the required

    expertise and the knowledge to decide the criteria accurately.

    Errors in rating and evaluation

    Many errors based on the personal bias like stereotyping, halo effect (i.e. one trait

    influencing the evaluators rating for all other traits) etc. may creep in the appraisal

    process. Therefore the rater should exercise objectivity and fairness in evaluating and

    rating the performance of the employees.

    Resistance

    The appraisal process may face resistance from the employees and the trade unions forthe fear of negative ratings. Therefore, the employees should be communicated and

    clearly explained the purpose as well the process of appraisal. The standards should be

    clearly communicated and every employee should be made aware that what exactly is

    expected from him/her. Constructive criticism can help improve performance, but there is

    a fine line between providing helpful feedback and upsetting an employee. Management

    should always make sure to recognize and reward excellent performance to avoid coming

    off as too negative. Employees who work hard and take pride in their work will have a

    hard time correctly utilizing the feedback if none of their accomplishments or positive

    contributions are noticed and appreciated.

  • 7/31/2019 Sheetal Report

    15/84

    2.7) Pre-requisites for effective and successful Appraisal Management

    System :

    The essentials of an effective performance system are as follows:

    Documentation means continuous noting and documenting the performance. It

    also helps the evaluators to give a proof and the basis of their ratings.

    Standards / Goals the standards set should be clear, easy to understand,

    achievable, motivating, time bound and measurable.

    Practical and simple format - The appraisal format should be

    simple, clear, fair and objective. Long and complicated formats are time consuming,

    difficult to understand, and do not elicit much useful information.

    Evaluation technique An appropriate evaluation technique should be selected;

    the appraisal system should be performance based and uniform. The criteria for

    evaluation should be based on observable and measurable characteristics of the behavior

    of the employees.

    Communication Communication is an indispensable part of the performance

    appraisal process. The desired behavior or the expected results should be communicated

    to the employees as well as the evaluators. Communication also plays an important role

    in the review or feedback meeting.

    Feedback The purpose of the feedback should be developmental rather than

    judgmental. To maintain its utility, timely feedback should be provided to the employees

    and the manner of giving feedback should be such that it should have a motivating effect

    on the employees future performance.

  • 7/31/2019 Sheetal Report

    16/84

    3. Overall description:

    Describes the general factors that affect the product and its requirements

    3.1 Project planning:

    After analyze the requirement of the system in this phase first we plan to create the

    layouts of the system and get the approval from the client. After getting client approval

    we can start work on it.

    After create layouts we start work on the functionality and also for the designing of the

    system when it completes it goes into the testing phase.

  • 7/31/2019 Sheetal Report

    17/84

    3.2 Feasibility study:

    If a project is seen to be feasible from the results of the study, the next logical step is to

    proceed with it. The research and information uncovered in the feasibility study will

    support the detailed planning and reduce the research time.

    A well-researched and well-written feasibility study is critical when making "Go/No Go"

    decisions regarding entry into new businesses.

    3.2.1 Economic Feasibility :

    Economic analysis is the most frequently used method for evaluating the effectiveness of

    a new system. More commonly known as cost/benefit analysis, the procedure is to

    determine the benefits and savings that are expected from a candidate system and

    compare them with costs. If benefits outweigh costs, then the decision is made to design

    and implement the system.

    3.2.2. Technical Feasibility :

    This involves questions such as whether the technology needed for the system exists,

    how difficult it will be to build, and whether the firm has enough experience using that

    technology. The assessment is based on an outline design of system requirements in

    terms of Input, Processes, Output, Fields, Programs, and Procedures. This can be

    quantified in terms of volumes of data, trends, frequency of updating, etc. in order to

    estimate whether the new system will perform adequately or not.

    3.2.3 Behavioral Feasibility :

    http://en.wikipedia.org/wiki/Cost-benefit_analysishttp://en.wikipedia.org/wiki/Cost-benefit_analysis
  • 7/31/2019 Sheetal Report

    18/84

    People are inherently resistant to change, and computers have been known to

    facilitate change. All estimates should be made of how strong a reaction the user staff is

    likely to have toward the development of a computerized system. It is common

    knowledge that computer installation has something to do with turnover, transfers,

    retraining, and changes in employee job status. Therefore, it is understandable that the

    introduction of a candidate system requires special effort to educate, sell, and train the

    staff on new ways of conducting business.

    The feasibility study should be carried out before money is committed to the project (and

    before the organization starts to work towards new social, org., and technical

    arrangements).

    Also, the feasibility of a project should be monitored throughout the development process

    (e.g. after the completion of major development stages).

    Problems:

    Difficulty of forecasting consequences of alternatives

    Disbelief in such a traditional justification of projects

    3.3 .Product Perspective:

    3.3.1 Admin functionality :

    Various Admin functionality includes:

    Admin can upload any project data file to the system.

    Admin can export the ownership records to CSV(Comma Separated Values)

    format.

  • 7/31/2019 Sheetal Report

    19/84

    Admin can view the record of all the projects, their ID, team, cost,

    partner, service type, expected delivery date, etc.

    Admin can register and save project ownership.

    Admin can view productivity report for all employees.

    Admin can view top ranking report for all employees.

    Admin can add new employee record along with his personal details and can also

    edit or delete existing records.

    Admin can add an external client and the assigned external projects.

    Admin can change his as well as any of the employee's password.

    3.3.2 Employee's functionality :

    Various Employee's functionality includes :

    Employee can register and save project ownership.

    Employee can view his productivity report as well as productivity report for all

    employees.

    Employee can view top ranking report for all employees.

    Employee can change his password.

    3.4 . Technical details :

    3.4.1. Hardware Requirements:

    Processor : 2.2 GHz or above RAM : 512 MB

    Hard Disk Space: 100 MB

  • 7/31/2019 Sheetal Report

    20/84

    3.4.2. Software Requirement

    3.4.2.1 Server :

    Apache Application Server

    Apache Tomcat Web Server

    Java 1.5 or above

    MySQL 5.0 or above

    3.4.2.2 Client :

    Mozilla 4.0 compatible browser

    3.4.3. Software Technology/Frameworks :

    3.4.3.1. FrontEnd:

    HTML 4.1

    JavaScript

    JQuery 1.7

    Struts 1.2

    Ajax

    3.4.3.2 BackEnd :

    J2SE 1.5

    Spring 2.0

    MySQL 5.0

    3.4.3.3 IDE :

    EasyEclipse Server Java 1.2.2

    3.4.4) User Characteristics:

    Every user should be comfortable of working with computer and net browsing. He musthave basic knowledge of English and also have some technical knowledge.

  • 7/31/2019 Sheetal Report

    21/84

    3.5. Technologies used :

    3.5.1) Struts Framework:

    The model contains the business logic and interact with the persistance storage to store,

    retrive and manipulate data.

    The view is responsible for dispalying the results back to the user. In Struts the view

    layer is implemented using JSP.

    The controller handles all the request from the user and selects the appropriate view to

    return. In Struts the controller's job is done by the ActionServlet.

  • 7/31/2019 Sheetal Report

    22/84

    The following events happen when the Client browser issues an HTTP

    request.

    The ActionServlet receives the request.

    The struts-config.xml file contains the details regarding

    the Actions, ActionForms,ActionMappings and ActionForwards.

    During the startup the ActionServelet reads the struts-config.xml file and creates

    a database of configuration objects. Later while processing the request

    the ActionServlet makes decision by refering to this object.

    When the ActionServlet receives the request it does the following tasks.

    Bundles all the request values into a JavaBean class which extendsStruts ActionForm class.

    Decides which action class to invoke to process the request.

    Validate the data entered by the user.

    The action class process the request with the help of the model component. The model

    interacts with the database and process the request.

    After completing the request processing the Action class returns an ActionForward to

    the controller.

    Based on the ActionForward the controller will invoke the appropriate view.

    The HTTP response is rendered back to the user by the view component.

    In web.xml, we also need to specify the mapping of application URLs to this servlet. In

    the below code any URL with .do extension calls the ActionServlet to handle the request.

    ActionServlet

    org.apache.struts.action.ActionServlet

  • 7/31/2019 Sheetal Report

    23/84

    config

    /WEB-INF/struts-config.xml

    ActionServlet

    /*.do

    To carry out an appropriate action for a particular request, the ActionServlet is

    configured using Action Mappings in the struts-config.xml file. An Action Mapping

    specifies a fully qualified Action class name that should be invoked when a URL

    matching its path is requested.

    An example of struts-config.xml

  • 7/31/2019 Sheetal Report

    24/84

    3.5.2) Spring Framework:

    Using the Spring Framework, one can integrate low-level APIs such as JDBC or high-

    level frameworks such as Hibernate into an application using the same technique -

    Dependency Injection..

    The Spring Frameworkis an open source application framework for the Java platform.

    We have used basically two frameworks namely

    1.) Spring Bean Injection

    2.) Spring JDBC Abstraction

    Spring Bean Injection

    Objects can be obtained by means ofDependency lookup orDependency injection.

    Dependency lookup is a pattern where a caller asks the container object for an object with

    a specific name or of a specific type.Dependency injection is a pattern where the

    container passes objects by name to other objects, via either constructors, properties, or

    factory methods.

    Spring JDBC Abstraction

    DBC support in the Spring Framework is part of the data access/persistence (also

    known as DAO) support provided by the frameworkThe most important feature of DAO

    support is consistency. The following are the two ways in which the Spring Frameworkprovides consistency:

    1. Consistency in Exception Hierarchy

    2. Consistency in Abstract classes

  • 7/31/2019 Sheetal Report

    25/84

    Consistency in Exception Hierarchy: The Spring Framework provides a

    translation from technology-specific exceptions such as Hibernate-related exceptions or

    JDBC-related exceptions by having its own hierarchy of data access-related exceptions.

    The DataAcessException class forms the root of this hierarchy. These exceptions are run-time exceptions instead of checked exceptions (such as Hibernate's proprietary excep-

    tions). This helps the developer to handle the non-recoverable errors in the appropriate

    layer instead of handling them at DAO level.

    Consistency in Abstract classes: The Spring Framework provides a set of abstract class-

    es that one can extend (not implement). There is one abstract class each for various data

    persistence technologies. These abstract classes have methods that can be used to set the

    required configurable properties that are specific to each technology. The main abstractclasses are:

    JdbcDaoSupport, which is the super class for accessing data using JDBC. You

    must provide a DataSource instance to it. This class, in turn, provides the Jd-bcTemplate instance, created from the supplied DataSource instance, to the sub-

    class.

    HibernateDaoSupport, which is the super class for Hibernate data access ob-jects. One has to supply an instance of SessionFactory and in turn, it provides aninstance of the HibernateTemplate class.

    The following events happen when the Client browser issues an HTTP request :

    When any request arrives, web.xml file is read first. The example of web.xml is as

    follows :

    com.girnarsoft.utils.ContextListener

    action

    org.apache.struts.action.ActionServlet

    config/WEB-INF/struts-config.xml

  • 7/31/2019 Sheetal Report

    26/84

    action

    *.do

    Here the first entry in web.xml is of listener class. The job of listener class is to

    read the applicationContext.xml file and according to the dependencies of bean

    defined in it, create the object of every bean using XmlBeanFactory class of springframework.

    The example ofapplicationContext.xml is as follows :

  • 7/31/2019 Sheetal Report

    27/84

    Now for every request of type *.do, the control goes to action servlet which reads struts-

    config.xml file to carry out appropriate action for every request.

    An example ofstruts-config.xml :

  • 7/31/2019 Sheetal Report

    28/84

    3.5.3) MySQL :

    MySQL is a database. A database is a data storage feature. It can be used to store, sort,

    arrange, and display information. MySQL is a functional feature on it's own. MySQL is

    most commonly used for Webapplications and for embedded applications and has

    become a popular alternative toproprietary database systems because of its speed andreliability. MySQL can run on UNIX,Windowsand Mac OS.

    Data Types:

    Many data types:

    signed/unsigned integers 1, 2, 3, 4, and 8 bytes long, FLOAT, DOUBLE, CHAR,

    VARCHAR, TEXT, BLOB, DATE, TIME, DATETIME, TIMESTAMP, YEAR, SET,

    ENUM

    Fixed-length and variable-length records.

    MySQL is a relational database management system.

    A relational database stores data in separate tables rather than putting all the data in one

    big storeroom. This adds speed and flexibility. The SQL part of MySQL stands for

    Structured Query Language. SQL is the most common standardized language used to

    access databases and is defined by the ANSI/ISO SQL Standard.

    MySQL software is Open Source.

    Open Source means that it is possible for anyone to use and modify the software.

    Anybody can download the MySQL software from the Internet and use it without paying

    anything. If you wish, you may study the source code and change it to suit your needs.

    The MySQL Database Server is very fast, reliable, and easy to use.

    MySQL Server was originally developed to handle large databases much faster than

    existing solutions and has been successfully used in highly demanding production

    environments for several years. Although under constant development, MySQL Server

    http://www.webopedia.com/TERM/M/application.htmlhttp://www.webopedia.com/TERM/M/application.htmlhttp://www.webopedia.com/TERM/M/Proprietary.htmlhttp://www.webopedia.com/TERM/M/Proprietary.htmlhttp://www.webopedia.com/TERM/M/UNIX.htmlhttp://www.webopedia.com/TERM/M/UNIX.htmlhttp://www.webopedia.com/TERM/M/Microsoft_Windows.htmlhttp://www.webopedia.com/TERM/M/Microsoft_Windows.htmlhttp://www.webopedia.com/TERM/M/Mac_OS.htmlhttp://www.webopedia.com/TERM/M/application.htmlhttp://www.webopedia.com/TERM/M/Proprietary.htmlhttp://www.webopedia.com/TERM/M/UNIX.htmlhttp://www.webopedia.com/TERM/M/Microsoft_Windows.htmlhttp://www.webopedia.com/TERM/M/Mac_OS.html
  • 7/31/2019 Sheetal Report

    29/84

    today offers a rich and useful set of functions. Its connectivity, speed, and

    security make MySQL Server highly suited for accessing databases on the Internet.

    4 .Design

    4.1 Use Cases :

    1). Actors

    Administrator

    Employee

    2). Functions:

    Upload Project Data File

    Export Ownership Records

    Show Project Records

    Save Project Ownership

  • 7/31/2019 Sheetal Report

    30/84

    Employee Productivity Report

    \Employee Top Ranking Report

    External Client Record

    External Project Record

    Manage Employee Record

    Change User Password

    ADMIN

    Upload project

    data file

    Export ownership

    records

    DatabaseShow project data

  • 7/31/2019 Sheetal Report

    31/84

    Save project

    ownership

    View employee

    productivity report

    View employee

    ranking report

    Manage record &

    change password

    Save projectownership

    View employeeproductivity report

    Database

    External Projects/

    Clients

  • 7/31/2019 Sheetal Report

    32/84

    EMPLOYEE

    4.2 Database Structure :

    The project consist of eight database tables to store the information of user details,

    project details, client details , external project details , ownership details , ownership

    history ,employee manager details.

    4.3 Table Description :

    1) employee table :

    View employee

    ranking report

    Change user

    password

  • 7/31/2019 Sheetal Report

    33/84

    Field Name DataType Not Null

    employeeId VARCHAR(50) Yes

    Email VARCHAR(100) Yes

    Password VARCHAR(45) Yes

    firstName VARCHAR(50) Yes

    lastName VARCHAR(50) Yes

    Role INTEGER Yes

    security Code VARCHAR(45) Yes

    isDeleted TINYINT(1) Yes

    deletionDate TIMESTAMP Yes

    Primary Key of this table is employeeId because every employee in the company

    has a unique id which is different from every other employee.

    2)projects_master_table :

    Field Name DataType Type

    projectNumber INTEGER Yes

    projected VARCHAR(100) Yes

    submissionId VARCHAR(100) Yes

    batchDate DATE No

    serviceType VARCHAR(100) Yes

    partner VARCHAR(100) Yes

    partnerLead VARCHAR(100) Yes

    Cost FLOAT(10,2) Yes

    Status VARCHAR(100) Yes

    needATC INTEGER Yes

  • 7/31/2019 Sheetal Report

    34/84

    expectedDelivery DATE No

    expectedRedelivery DATE No

    expectedValidation DATE No

    expectedCancel DATE No

    expectedRebut DATE No

    projectName VARCHAR(1000) Yes

    awardAt DATE No

    actualDelivery DATE No

    actualValidation DATE No

    consumeAt DATE No

    category VARCHAR(100) Yes

    team VARCHAR(100) Yes

    bundleSubmissionId INT No

    Primary Key of this table is projectId because every project in the company has a unique

    id which is different from every other project.

    3) employee_manager_table :

    Field Name DataType Not Null

    employeeId VARCHAR(50) Yes

    projectId VARCHAR(50) Yes

    Primary Key of this table is employeeId

    4) project_ownership_master :

    Field Name DataType Not Null

  • 7/31/2019 Sheetal Report

    35/84

    projectId VARCHAR(100) Yes

    employeeId VARCHAR(100) Yes

    managerId VARCHAR(100) Yes

    sharePercentage INT Yes

    ownershipType VARCHAR(100) Yes

    ownershipAssignerId VARCHAR(100) Yes

    ownershipDate TIMESTAMP Yes

    There are two primary keysprojected and employeeId.

    5.) external_project_table

    Field Type Data Type Not Null

    projecteId INT YesprojectName VARCHAR(100) Yes

    clientId INT Yes

    startDate TIMESTAMP Yes

    endDate TIMESTAMP Yes

    cost DOUBLE Yes

    status VARCHAR(100) Yes

    6.) client_details_table

    Field Type Data Type Not Null

    clientId INT Yes

    name VARCHAR(200) Yes

    contactPerson VARCHAR(100) Yes

    contactNumber VARCHAR(20) Yes

    address VARCHAR(500) Yes

    isDeleted TINYINT(1) Yes

    deletionDate TIMESTAMP Yes

  • 7/31/2019 Sheetal Report

    36/84

    7.) project_ownership_history_table

    Field Type Data Type Not Null

    projecteId INT Yes

    employeeId INT Yes

    managerId INT Yes

    sharePercentage INT Yes

    ownershipType VARCHAR Yes

    ownershipAssignerId INT Yes

    historyDate TIMESTAMP Yes

  • 7/31/2019 Sheetal Report

    37/84

    4.4 DFD (Data Flow Diagram)

    Send request function

    parameters

    Response

    Context Level DFD

    UI

    Action

    User Database

  • 7/31/2019 Sheetal Report

    38/84

    Description of Context Level DFD :

    This shows the flow of data on the context level. The user interacts with the application

    through a form.

    E request function

    parameter

    result response

    values List

    bean

    UserAction

    Action form

    service

  • 7/31/2019 Sheetal Report

    39/84

    Query dto

    Level 1.1

    Description of Level 1.1 DFD

    A user interact to application through presentation layer, jsp pages. From jsp pages the

    request or the information is send to the particular action occurred, the action call the

    desired form and send the values to the service. The service calls the DAO and DAO

    send request as query to the database server the database returns the information to DAO

    and through action and form the response is returned to the requested page by the user.

    4.2) DFD :

    4.2.1 Dfd of Appraisal Management System :

    \ login with id, password login with id, password

    DAO

    database

    AdminEmployee

    AppraisalManagement

    System

  • 7/31/2019 Sheetal Report

    40/84

    get required info get required info

    0 - Level DFD

    CSV file File data uploaded

    Exported as CSV file Ownership data

    Complete project details Project data from uploaded CSV

    Request(start & end date, team) Ownership data saved

    Ownership saved

    AMS Database

    Request(start & end date) start & end date

    Ranking report Ranking data

    Request (emp_id, start emp_id, start & end date

    & end date )

    Admin

    1)Upload

    file

    2)Export

    ownership

    3)Show

    data

    4)Save

    ownership

    5) Top

    Ranking

    report

    6)Productiv

    ity report

  • 7/31/2019 Sheetal Report

    41/84

    Productivity report Productivity data

    Add/Edit/Delete employee Add/Edit/Delete parameters

    Employee added/edited/deleted Data added/edited/deleted

    User id, old pass, new pass User id, old pass, new pass

    Password changed New password save

    Add/Edit External Project/Clients A Add/Edit External Projects/Clients

    Request(start & end date, team) Ownership data saved

    Ownership saved

    Request(start & end date) start & end date

    Ranking report Ranking data

    AMS Database

    Request (emp_id, start emp_id, start & end date

    & end date )

    Productivity report Productivity data

    User id, old pass, new pass New password saved

    1).Save project

    ownership

    (Shared/ non-

    shared

    2).Top

    ranking

    report

    3).Producti

    ity report

    4).ChangeUser

    password

    Employee

    7)Manage

    record

    8)Change

    password

    9)External

    Projects/

    Clients

  • 7/31/2019 Sheetal Report

    42/84

    Password changed

    1- Level DFD (High level dfd)

    4.2.2 Data Flow Diagram (DFD) :

    DFD is a logical data model or process that is made to describe the origin of the data and

    the destination where the data out of the system, where data is stored, the process that

    produces the data and the interaction between the data stored and the process is imposed

    on data.

    DFD are often used to describe a system that already exists or the new system will be

    developed logically without considering the physical environment where the data flows,

    or where data are stored.

  • 7/31/2019 Sheetal Report

    43/84

    DFD is a tool that is used in the system development methodology is structured. Excess

    primary data flow approach, namely:

    1. Freedom from the implementation of technical systems.

    2. Understanding more about the relation to one another in the system and subsystem.

    3. Communicate knowledge of the system with the user through the data flow diagram.

    4. Analyzing the proposed system to determine whether the data and processes

    required are defined.

    Besides, there are additional advantages, namely:

    1. Can be used as a useful exercise for analyst, so it can better understand the relation to

    one another in the system and subsystem.

    2. Differentiate the system from the environment by placing boundaries.

  • 7/31/2019 Sheetal Report

    44/84

    3. Can be used as a device to interact with users.

    4. Allows analyst describe each component used in the diagram.

    4.2.3 Balancing in the DFD :

    Flow of data into and out of a process must be the same as the flow of data into

    and out of the details of the process on the level / levels below

    Name of the data flow into and out of the process must match the name of the flow

    of data into and out of the details of the process .

    Number and name of an entity outside the process must be equal to the number of

    names and entities outside of the details of the process

    The issues that must be considered in the DFD which have more than one level:

    o There should be a balance between input and output of one level and next level

    o Balance between level 0 and level 1 at the input / output of stream data to or from

    the terminal on level 0, while the balance between level 1 and level 2 is seen on the

    input / output of stream data to / from the process concerned

    o Name of the flow of data, data storage and terminals at each level must be the

    same if the object same

    4.2.4 Restrictions in DFD :

    Flow data may not be from outside the entity directly to other outside entities without

    going through a process

  • 7/31/2019 Sheetal Report

    45/84

    Flow data may not be from the savings directly to the data to outside entities

    without going through a process

    Flow data may not be saving the data directly from the savings and other data without

    going through a process.

    Flow of data from one process directly to the other without going through the process ofsaving data should / be avoided as much as possible.

  • 7/31/2019 Sheetal Report

    46/84

    5.Performance Appraisal:

    5.1 Organizational Strategy and Performance Appraisal :

    The performance appraisal system serves many organizational objectives and goals.

    Besides encouraging high level of performance, the evaluation system is useful in

    identifying employees with potential, rewarding performance equitably. And determining

    employees' needs for development. These are all the activities that should support the

    organizations strategic orientation. Although these activities are clearly instrumental in

    achieving corporate plans and long-term growth, typical appraisal systems in most

    organizations have been focused on short-term goals.

    From the strategic management point of view, organizations can be grouped into three

    categories defenders, prospectors and analyzers. Performance appraisal has definite roles

    in all the three strategies.

    Typically, defenders have a narrow and relatively stable product-market domain.

    Because of this narrow focus, these organizations seldom need to make major adjustments

    in their technology. Structure or methods of operations. They devote primary attention to

    improving the efficiency of their existing operations. Because of the emphasis on buildingskills within the organization, successful defenders use

    performance appraisal for identifying training needs. Performance appraisal is usually

    more behaviour oriented.

    Organizations with a prospector strategy continuously search for different product and

    market opportunities. In addition, these organizations regularly experiment with potential

    responses to new and emerging environmental trends. Prospectors are often the

    harbingers of change. Because of the emphasis on skills identification and acquisition of

    human resources from external sources, as opposed to skills building with the

    organization, prospectors often use the performance appraisal as a means of identifying

  • 7/31/2019 Sheetal Report

    47/84

    staffing needs. The emphasis is on results. Finally, the focus is on division and

    corporate performance evaluation as they compare with other companies during the same

    evaluation period. Organizations with an analyzer strategy operate in two types of

    product-.market domains. One domain is stable while the other is changing. In their more

    innovative areas, managers watch their competitors closely and rapidly adopt the ideas

    that appear promising. In general, analyzers use cost effective technologies for stable

    products and project or matrix technologies for new product. Analyzers tend to

    emphasize both skill building and skill acquisition and employ extensive training

    programmes. Thus, these organizations attempt to identify both training as well as

    staffing needs. The appraisal systems are considered at the individual, group and

    divisional levels. Finally, successful analyzers have a tendency to examine current

    performance with past performance within the organization. Cross-sectional comparisons

    (comparisons amongcompanies) may also occur.

    Whatever the category, a performance appraisal system has strategic importance to a

    firm in three ways:

    1. Feedback mechanism,

    2. Consistency between organizational strategy and job behaviour, and

    3. Consistency between organizational values and job behaviour.

    5.2 Appraisal process :

    Each step in the process is crucial and is arranged logically. Many organizations mak

    every effort to approximate the ideal process, resulting in first-rate appraisal systems.

    Unfortunately, many others fail to consider one or more of the steps and, therefore, have

    less-effective appraisal system.

    Various steps of appraisal process are :

    Objectives of Appraisal

  • 7/31/2019 Sheetal Report

    48/84

    Establish job Expectation

    Design an appraisal performance

    Performance interview

    Use appraisal data for appropriate purposes

    1. Objectives of Appraisal :

    Objectives of appraisal include effecting promotions and transfers, assessing training

    needs, awarding pay increases, and the like. The emphasis in all these is to correct

    problems. Theses objectives are appropriate as long as the approach in appraisal is

    individual. In the systems approach, appraisal aims at improving the performance,

    instead of merely assessing it. In this approach the emphasis is not on individual

    assessment and rewards or punishments. But it is on how work the work system affects

    an individuals. In order to use a systems approach, managers must learn to appreciate the

    impact that systems levels factors have on individual performance and subordinates must

    adjust to lack of competition among individuals. Thus, if a systems approach is going to

    be successful, the employee must believe that by working towards shared goals, everyone

    will benefit.

    2. Establish Job Expectations :

    The second step in the appraisal process is to establish job expectations. This includes

    informing the employee what is expected of him or her on the job. Normally, a discussion

    is held with his or her superior to review the major duties contained in the job place of

    formal performance evaluation.

    3. Design Appraisal Programme :

    Designing an appraisal programme poses several questions which we need to answers.They are: -

    1. Formals versus informal appraisal

  • 7/31/2019 Sheetal Report

    49/84

    2. Whose performance is to be assessed?

    3. Who are the raters?

    4. What problems are encountered?

    5. How to solve the problems?

    6. What should be evaluated?

    7. When to evaluate?

    8. What methods of appraisal are to be used?

    4. Performance interview :

    Performance interview is another step in the appraisal process. Once appraisal has beenmade of employees, the raters should discuss and review the performance with the

    ratees, so that they will receive feedback about where they stand in the eyes of superior.

    Feedback is necessary to effect improvement in performance, especially when it is

    inadequate.

    Specifically, performance interview has three goals:

    (i) to change behavior of employees whose performance does not meet organisational

    requirements or their own personal goals.

    (ii) To maintain the behaviour of employees who perform in an acceptable manner and

    (iii) to recognize superior performance behaviours so that theywill be continued.

    5.Use of appraisal data :

    The final step in the evaluation process is the use of evaluation data. The data and

    information generated through performance evaluation must be used by the HR

    department.

  • 7/31/2019 Sheetal Report

    50/84

    What is Performance Management?

    Performance Management is a system and process that link the organization's

    goals and strategies to individual and team performance so as to increase organizational

    effectiveness. It is a joint process that involves both line managers and their direct reports

    ("subordinates") who jointly identify common goals/objectives which correlate to the

    higher goals of the organization. This process results in the establishment of written

    performance expectations (a Performance Agreement) - later used as measures for

    feedback and performance appraisals/reviews. Performance Management is THE WAY

    to get OVERALL GRIP on what should be happening at all levels in an organization, and

    then measuring whether it is indeed happening the way intended. And where this is

    not materializing, to identify the cause/s and implement corrective action/s. It is a much

    wider concept than the Performance Appraisal/Review. The latter is only one part ofPerformance Management (stage 3 in a 4-stage process) Performance Management

    consists of FOUR STAGES: This model is aligned with the WORK NEEDS of

    individual employees, which are as follows: To provide for the above needs of an

    employee, let's consider what should happen at each stage of the Performance

    Management Cycle:

    1. Planning Performance:

    Performance Measures (Goals, Objectives, Targets, KPI's, Competencies, etc.) for

    individual employees (at all levels) are jointly discussed and agreed during one-on-one,

    face-to-face meetings with their direct line managers. These are put into a formal, written

    Performance Agreement for each staff member. (Performance Agreements can also be

    drawn up for entire work teams in organizations where teamwork is paramount.)

    2. Managing Performance:

    During this stage, employees implement/execute their agreed Objectives/KPI's. They

    manage their own performance, assisted by line managers who should aim at removing

    performance obstacles in the work environment and providing the necessary resources,

  • 7/31/2019 Sheetal Report

    51/84

    training and coaching. Line managers are also responsible for integrating and

    co-ordinating (horizontally and vertically) the Objectives/KPI's of all their

    employees/units/teams, monitoring their performance, taking corrective action, and doing

    joint problem solving as and when necessary. The leadership, motivation, feedback,

    reinforcement and support they need to provide throughout are of utmost importance.

    Managing Performance is an ongoing activity that actually runs through all phases of the

    Performance Management Cycle. It is the Golden Thread of Performance Management.

    3. Reviewing Performance: During formal Performance Appraisal/Review Interviews,

    employees and their line managers discuss (and assess) how well the agreed Objectives/KPI'shad been achieved and specified Competencies demonstrated. Problem areas are identified

    and corrective measures put in place, including possible coaching and training that the

    jobholder needs. Depending on the type of organization and its management philosophy, the

    frequency of Performance Appraisals may be any of 1, 2, 3, 4, 6, or 12-monthly (AppraisalSmart caters for all these options).

    4. Rewarding Performance: The actual RATING of performance (how well each

    Objective/KPI had been achieved and Competencies demonstrated) forms part of thePerformance Appraisal/Review Interview. Rewarding people for good performance takes the

    form of monetary incentives or rewards (performance-based pay such as bonuses and/orsalary adjustments). However, the power of non-monetary rewards, such as praise and

    recognition, should not be ignored and need to enjoy much more emphases than it generallydoes.

  • 7/31/2019 Sheetal Report

    52/84

    6.Project Snapshot:

    1) Login Window

  • 7/31/2019 Sheetal Report

    53/84

    3.) Admin Menu Window

  • 7/31/2019 Sheetal Report

    54/84

    3.) Upload CSV File Module

  • 7/31/2019 Sheetal Report

    55/84

    4.) Show Data Window

  • 7/31/2019 Sheetal Report

    56/84

  • 7/31/2019 Sheetal Report

    57/84

    5.) Save Ownership Window

  • 7/31/2019 Sheetal Report

    58/84

    6.) Productivity Report

  • 7/31/2019 Sheetal Report

    59/84

    7.) Manage Employee

  • 7/31/2019 Sheetal Report

    60/84

  • 7/31/2019 Sheetal Report

    61/84

    8.) Change Password

    9.) External Project

  • 7/31/2019 Sheetal Report

    62/84

  • 7/31/2019 Sheetal Report

    63/84

    10.) External Client

  • 7/31/2019 Sheetal Report

    64/84

    11) Ranking Report

  • 7/31/2019 Sheetal Report

    65/84

    MODULE DESCRIPSION

    Ranking Report

    Ranking Report describes all about the rank performance of all the

    employees in a particular time period taken as an input (Start Date and End

    Date).

    Further we perform the operation to generate own project list of all the

    employees. After getting all the owned projects of particular employee wegenerate individuals performance summary. We calculate the performance

    summary of each employee by its own projects list.

    In this our projects have following categories and their compatibility value

    with A:

    Category Equal to how many A

    A 1A

    B 2A

    C 4AD 6A

    E 10A

    We check the project owned by employee that holds a type of

    category shown as above, according to that its share percentage is

    calculated for Attempted Share Percentage. Attempted is the total

    share percentage of the project that owned by employee.

    After successful calculation of attempted we calculate how manyprojects are completed successfully in this period by that employee and

    then we add particular share percentage according to project category.

  • 7/31/2019 Sheetal Report

    66/84

    We repeat the above said process for each employee to get a

    cumulative report for every employee.

    This gives us employee performance summary and finally we calculate the

    final rank of the employee in FinalA as:

    FinalA = Total Successful - (Total Attempted Total Successful)

    Charts

    Why Charts and Graphs?

    Graphs and Charts is the most efficient method for displaying in-

    formation in a simple manner. Using this form of representation

    helps it's viewers to understand and interpret the information more

    easily and efficiently, which otherwise could be a very difficultand tedious process. All forms of Graphs and Charts embodies

    some Visual content in the representation.

    In this module 3DpieCharts hae been used to display the rank in

    visual manner.

    List of Employees displayed on page has a link with a name of the

    employee which generates 3DPieChart for employee which

    shows successful and attempted projects.

    To understand the above process here is an example of an employ-

    ee with its projects list and its performance calculation :

    Projects List:

    ProjectName

    ProjectStatus

    ProjectCategory

    ServiceType

    Team SharePer-

  • 7/31/2019 Sheetal Report

    67/84

    cent-

    age

    FDDS-DC-

    10940-SSG-

    2011 Ford

    Cutaway-Commercial

    Trunk(64158)

    In

    Progress

    B Applica-

    tionMoni-

    toring

    /Operation

    Support

    FDDS 0

    Its Performance Summary is :

    Project Category AttemptedA[X] SuccessfulA[X]

    A*1 0.0 0.0

    B*2 1.2 1.2

    C*4 0.0 0.0D*6 0.0 0.0

    E*10 0.0 0.0

    Total Eq.A 1.2 1.2

    So now the FinalA after deduction =1.2

    And the Chart for its is :

  • 7/31/2019 Sheetal Report

    68/84

    DFD FOR RANKING REPORT

  • 7/31/2019 Sheetal Report

    69/84

    Request for report Request for report

    Generates report Generates Report

    0 - Level DFD

    Ranking

    ReportAdmin Employee

  • 7/31/2019 Sheetal Report

    70/84

    Project

    Level 1 DFD

    AMS

    List

    Service

    DAO

    (Ownership+Pro ect

    Database

    ADMIN

    ACTION

    RankingReport

    &

    RankingChart

    Start Date

    &

    End Date

    Start Date&

    End Date

  • 7/31/2019 Sheetal Report

    71/84

    SCREEN-SHOTS

    Date Selectors for selecting Period in which rank

    to be calculated

  • 7/31/2019 Sheetal Report

    72/84

    List of employees According to their Ranks

  • 7/31/2019 Sheetal Report

    73/84

    Splited List

  • 7/31/2019 Sheetal Report

    74/84

  • 7/31/2019 Sheetal Report

    75/84

  • 7/31/2019 Sheetal Report

    76/84

  • 7/31/2019 Sheetal Report

    77/84

    Chart with Attempted and Successful Share

    Ranking

  • 7/31/2019 Sheetal Report

    78/84

    Chart with no successful projects

  • 7/31/2019 Sheetal Report

    79/84

    8 .TESTING

    Testing is the major quality control measure used during software development. Its

    basic function is to detect errors in the software. During requirement analysis and

    design, the output is a document that is usually textual and non-executable. After thecoding phase, computer programs are available that can be executed for testing

    purpose. This implies that testing not only has to uncover errors introduced during the

    previous phase. Thus, the goal of testing is to uncover requirement, design and coding

    errors in the programs. Consequently, different levels of testing are used.

    The starting point of testing is unit testing. In this, a module is tested separately and is

    often performed by the coder himself simultaneously along with the coding of the

    module. The purpose is to exercise the different parts of the module code to detectcoding errors. After this, the modules are gradually integrated to eventually from the

    entire system. During integration of the modules, integration testing is performed to

    detect design errors by focusing on testing the inter-connection between the modules.

    After the system is put together, system testing is performed. Here the system is testedagainst the system requirements to see if all the requirements are met and if system

    performs as specified by the requirements. Finally, acceptance testing is performed to

    demonstrate to the client, on the real-life data of the client, the operation of the system.

    5.1 METHODOLOGY USED FOR TESTING:

    There are many strategies that can be used to test the software. At one extreme,

    a software team could wait until the system is fully constructed and then conduct tests

    on the overall system in hoes of finding errors. This approach, although appealingsimply does not work. It will result in buggy software that disappoints the customer

    and end-user. At the other extreme, a software engineer could conduct tests on a daily

    basis, whenever any part of the system is constructed. This approach, although lessappealing to many, can be very effective.

  • 7/31/2019 Sheetal Report

    80/84

    A testing strategy that is chosen by most software teams falls between the two

    extremes. It takes an incremental view of testing, beginning with the testing of

    individual program units, moving to tests designed to facilitate the integration of theunits, and culminating with tests that exercise the constructed system. Each of these

    classes of tests is described as follows:

    Unit Testing:

    Unit testing focuses verification effort on the smallest unit of software design-the software component or module. Using the component-level design description as a

    guide, important control paths are tested to uncover errors within the boundary of the

    module. The relative complexity of tests and the errors those tests and the errors those

    tests uncover is limited by the constrained scope established for unit testing. The unittest focuses on the internal processing logic and data structures within the boundaries

    of a component. This type of testing can be conducted in parallel for multiple formultiple components. The module is tested separately and is often performed by thecoder himself simultaneously along with the coding of the module. The purpose is to

    exercise the different parts of the module to detect coding errors.

    Integration Testing:

    Integration testing is a systematic technique for constructing the software

    architecture while at the same time conducting tests to uncover errors associated with

    interfacing. The objective is to take unit tested components and build a program

    structure that has been dictated by design. The modules are gradually integrated toeventually from the entire system. During integration of the modules, integration

    testing is performed to detect design errors by focusing on testing the interconnectionbetween the modules.

    Regression Testing:

    Each time a new module is added as part of integration testing, the software

    changes. New data flow paths are established, new I/O may occur and new control

    logic is invoked. These changes may cause problems with functions that previouslyworked flawlessly. In the context of an integration testing strategy, regression testing

    is the e-execution of some subset of tests that have already been conducted to ensurethat changes have not propagated unintended side effects.

  • 7/31/2019 Sheetal Report

    81/84

    System Testing:

    System testing is actually a series of different tests whose primary purpose is to

    fully exercise the computer-based system. Although each test has a different purpose,

    all work to verify that system elements have been properly integrated and perform

    allocated functions.

    Testing is an extremely critical and time-consuming activity. It requires proper

    planning of the overall testing process. Frequently, the testing process start with a testplan that identifies all the testing related activities that must be performed and

    specifies the schedule, allocates the resource and specific guidelines for testing. The

    test plan specifies conditions that should be tested, different units to be tested and themanner in which the modules will be integrated together. Then for different test units,

    a test case specification document is produced, which lists all the different test cases.

    Together with the expected results during the testing of the unit, the specified test

    cases are executed and the actual result is compared with the expected output.

    Considering the process from a procedural point of view, testing within the context ofsoftware engineering is actually a series of four steps that are implementedsequentially. Initially, tests focus on each component individually, ensuring that if

    functions properly as unit, hence, the name unit testing. Unit testing makes heavy use

    of white-box testing techniques, exercising specific paths in modules control structureto ensure complete coverage and maximum error detection.

    TESTING TECHNIQUES:

    As the foal of testing is to detect any errors in the programs, different flavor of

    testing are often used. Unit testing are used to test a module or a small collection of

    modules and the focus is on detecting coding errors in modules. During integrationtesting modules recombined into sub system, which are then tested. The foal here is to

    test the system design. In system testing and acceptance testing, the entire system is

    tested. The foal here is to test the fulfillment of the requirement. Structural testing canbe used for unit testing while at higher level mostly functional testing is used.

    The primary objective for test case design is to derive a set of test that has the highestlikelihood for uncovering errors in the software. To accomplish this objective, two

    different categories of test case design techniques are used White Box Testing and

    Black Box Testing.

    BLACK BOX TESTING:

  • 7/31/2019 Sheetal Report

    82/84

    Aims to test a given programmers behavior against its specification or

    components without making any references to the internal structure of the program to

    the algorithm used. Therefore, the source code is not needed. We study the system by

    examining its input and related outputs. The key is to devise that have a higherlikelihood of causing outputs that reveals the presence of defeats. We use experience

    and knowledge of the domain to identify such test cases. Black Box Testing is rarely

    exhaustive and sometimes fails to reveals corruption defeats caused by wired

    combination of inputs.

    WHITE BOX TESTING:

    Used as an important primary testing approach. Code is tested using code scripts,

    drivers, stubs etc., which is employed to directly, interface with it and drive the code.The tester can analyze the code and use the knowledge about the structure of a

    component to drive test data. This testing is based on the knowledge of structure ofcomponent.

    Experienced software developers often say testing never ends it just gets transferred

    from you (the software engineer) to your customer. Every time your customer uses theprogram, a test is being conducted. By applying test case design, the software engineer

    can achieve more complete testing and thereby uncover and correct the highest

    number of errors before the customer tests begin.

    Testing Life Cycle:

    Test Design

    Test Plan

    Test Cases

  • 7/31/2019 Sheetal Report

    83/84

    10.Maintenance

    Once the complete system is tested then the system is delivered to the customer who will

    implement it on its organization site. After delivery, any modification or changes can be

    made to help in maintenance. This is the complete software development life cycle. This

    is the basic general process which is followed to developed each software product .Basis

    of various process models are the above mentioned sequential steps only and as the result

    of their cycles ,the complete software will be developed.

    Test Execution

    Refined Product

  • 7/31/2019 Sheetal Report

    84/84

    10.Bibliography

    Software Engineering by Sommerville.

    Java server Programming by Subrahmanyam Allamaraju, SPD Publications.

    http://publib.boulder.ibm.com

    http://docs.sun.com