Actual Project Documentation

download Actual Project Documentation

of 80

Transcript of Actual Project Documentation

  • 8/2/2019 Actual Project Documentation

    1/80

    PROJECT DOCUMENTATION

    Introduction Of project

    Financial Accounting in today's business world, is concerned with collecting,

    recording, evaluating and communicating the result of monitory transactions

    having some specific purpose and value. Every organization maintain their

    accounting information system to know their market value, revenue condition,

    asset value, sale value and profit/loss, to identify problems and taking business

    decisions at any point in time.

    Development of a Budget And Fund Monitoring System for medium sized

    organization is accumulation and maintenance of the day-to-day financial

    transactions under appropriate heads as instructed by the business firm. The system

    must let the accountant to create various accounting heads. Based on the recorded

    transactions, system should generate accurate reports, which would reflect the

    gross amount allocated after the end of financial year. In addition all possible

    reports that would be demanded out of the Fund Allocation system should be

    generated.

    The realization of the goals of the Vision 2020 requires, among other things, a

    growth-oriented and sustainable public finance environment. Sound fiscal policy

  • 8/2/2019 Actual Project Documentation

    2/80

    can yield the amount of resources appropriate to the program. However, an

    improvement in public services and expanded state development programs depend

    crucially on an increase in the efficiency of public expenditure and the

    effectiveness with which financial resources are used.

    Emphasis is being placed on mainstreaming communication planning within the

    Programme of Work and Budget formulation exercise, to ensure effective links

    between communication activities and key programmes, and to involve

    decentralized offices more fully in the process. Understanding and responding to

    the expectations of key target audiences - including government decision-makers,

    bilateral donors, multilateral agencies, international financing institutions,

    technical counterparts, the scientific and research community, non-governmental

    and civil society organizations, the private sector and medium-sized agricultural

    producers - will remain a priority.

    Modernization of the Revenue Sectors has being the top priority of the

    Government, so the State Unit took up the challenge of computerizing the

    Treasuries of all the State Districts and the Budget Directorate.

  • 8/2/2019 Actual Project Documentation

    3/80

    Company Profile

    Corporate Profile:

    Established in March 1988, as a Scientific Society of the Department of

    Information Technology (formerly, Dept. of Electronics), Ministry of

    Communications and Information Technology (formerly, Ministry of Information

    Technology), Government of India, The Centre for Development of Advanced

    Computing (C-DAC), is primarily an R & D institution involved in the design,

    development and deployment of advanced Information Technology (IT) based

    solutions.

    In a little over a decade since inception, C-DAC has developed and supplied

    a range of high performance parallel computers, known as the PARAM

    series of supercomputers. C-DAC's development activities in this area have

    been mission oriented and driven by its mission objectives, both in

    technology and application developments.

    Over the years, C-DAC has diversified its activities to address requirements

    in various areas, consequently, our expertise also extends to other advanced

    areas of Information Technology, enabling IT based solutions in areas like

    Financial and Capital market simulation and modeling,Network and Internet

    http://www.cdac.in/html/param.asphttp://www.cdac.in/html/about/mission.asphttp://www.cdac.in/html/finance/finidx.asphttp://www.cdac.in/html/nisg/nis.asphttp://www.cdac.in/html/param.asphttp://www.cdac.in/html/about/mission.asphttp://www.cdac.in/html/finance/finidx.asphttp://www.cdac.in/html/nisg/nis.asp
  • 8/2/2019 Actual Project Documentation

    4/80

    Software, Healthcare, Real Time Systems, eGovernance, Data Warehousing,

    Digital library, Artificial Intelligence and Natural language processing.

    As part of its development activities C-DAC has been awarded a number of

    sponsored R & D projects, by the Department of Information Technology,

    Department of Official Language (DOL), Department of Science and

    Technology (DST), Department of Scientific and Industrial Research

    (DSIR), Department of Culture, Department of Biotechnology etc.

    Vision Of C-DAC:

    To emerge as the premier R&D Institution for the design, development and

    deployment of world class IT solutions for economic and human advancement.

    Mission Of C-DAC:

    The Mission Statement as defined below, reflects the fabric and

    character of C-DAC and integrates in the fulfillment of C-DAC's Vision.

    http://www.cdac.in/html/nisg/nis.asphttp://www.cdac.in/html/medinfo/mercury.asphttp://www.cdac.in/html/rtsg/rtsgidx.asphttp://www.cdac.in/html/egovidx.asphttp://www.cdac.in/html/nisg/nis.asphttp://www.cdac.in/html/medinfo/mercury.asphttp://www.cdac.in/html/rtsg/rtsgidx.asphttp://www.cdac.in/html/egovidx.asp
  • 8/2/2019 Actual Project Documentation

    5/80

    To carve out a niche in the global arena of advanced Information

    Technology and enhance our brand image.

    To continue to create and deploy the finest talent in our quest for

    further expanding the frontiers of High Performance Computing and

    Communication Technologies and its applications.

    To achieve rapid and effective spread of knowledge by overcoming

    language barriers using Natural Language oriented computing and

    Multimedia Technologies.

    To share our vast reservoir of experience for education and knowledge

    enrichment in the field of Information Technology.

    To utilize the intellectual property thus generated, bring benefits of

    Information Technology to Society, by converting it into an exciting

    business opportunity and establishing a self-sustaining and wealth

    creating operation.

    Work Environment:

    C-DAC's focus on diversity in research and work creates a competitive

    advantage for our customers, our employees, and our company.

    Every day, at all levels of C-DAC's business, we strive to create an

    environment of trust and respect, where each individual is included and

    valued. This environment enables all C-DAC members to develop and

    contribute to their full potential.

  • 8/2/2019 Actual Project Documentation

    6/80

    The Human Resource group in C-DAC is continuously involved in

    effectively implementing its philosophy of employee centric policies, a great

    learning platform, freedom to think, evolve and implement and an informal

    work culture that is second to none. Thus creating a conducive work

    environment to facilitate the C-DAC employees to develop and contribute in

    keeping with the stated Vision & Mission objectives of C-DAC.

    C-DAC is committed to conducting its business in an ethical, socially

    responsible and environmentally sustainable manner. This commitment is

    consistent with our corporate objectives and is essential to continued

    business success.

  • 8/2/2019 Actual Project Documentation

    7/80

    Context Of The Project

    The Government recognizes the need to strengthen its financial management

    framework to achieve overall fiscal discipline and better resource allocation

    and use. This requires measures to :

    (i) provide accurate and timely financial information on the

    actual and budgeted revenue.

    (ii) reconcile and identify variations between planned and

    achieved outputs and other performance indicators.

    Financial and performance information should be designed to fill the needs

    of the various users of this information project and program implementers,

    those carrying out the monitoring functions, decision makers, and the public

    at large. For this, as well as effective public service delivery, it is necessary

    that the line departments are endowed with greater functional freedom and

    more important, held accountable for the delivery of services and

    performance. The day-to-day financial management intervention by the

    Finance Department on behalf of the departments should yield place to a

    partnership based on allocation of resources, and utilization of resources,

    with the latter job firmly in the hands of the line departments. Towards this

    end, the Departments would be delegated enhanced financial powers, and

    would over the medium term be held responsible for payments, accounting

    and accountability.

  • 8/2/2019 Actual Project Documentation

    8/80

    Each and every department and all their administrative units perform certain

    core regulatory, promotional, developmental or technical functions relevant

    to each one of them. In addition, all of them need certain common support

    services to enable them to perform their respective core functions. Such

    support functions are housekeeping, security, maintenance, and logistical

    support etc. as well professional services. Whenever there is a need for such

    services, the government will permit the administrative departments and

    units to outsource these services.

    Each department will designates a senior officer to serve as advisor (without

    line responsibilities or financial auditing authority) to the head of department

    on management and efficiency issues, impact of department operations, and

    analysis of policies and program implementation and utilization of benefits.

    In parallel, the internal organization of departments will be modernized and

    streamlined.

    The main purposes of such a framework are to provide a realistic estimate of

    the margin of resources available to finance the new programs needed to

    implement new policies, and prevent expenditure from exceeding available

    resources. It is during the annual budget preparation process that new

    Sectoral policies should be established, and the available margin of

    resources allocated to departments accordingly. Thereafter, the programs

    implementing those policies would themselves become on-going programs

    and their funding needs would be systematically provided for in the

    medium-term framework.

  • 8/2/2019 Actual Project Documentation

    9/80

    Existing System

    In the existing system, there are at least two layers engaged in the

    verification of documents one in the department and another in the

    Treasury. The costs of the latter operations remain to be justified in terms of

    effectiveness. An alternative is to decentralize, selectively these payment

    operations, other than payroll and pensions, in the departments.

    Allocation of resources should be in line with the targets set. Inadequate

    allocation leads to insufficient infrastructure. Funds transfer should be based

    on performance with specific focus.

    It has been observed that many Corporate Organizations are unable to fully

    utilize the fund allocated to them. The improper use of fund leads to serious

    problems that ultimately hamper the Corporate-planning goal that it has set

    forth. It is also required that allocated fund should be utilized within the time

    frame to achieve the goal of the organization.

  • 8/2/2019 Actual Project Documentation

    10/80

    Drawbacks Of Existing System

    The present system faces the following drawbacks:

    It does not enable proper coordination among different signing

    authorities.

    There is a lack of fingertip information about the current status of the

    allocated fund etc.

    It has also been found that there is a need of transparency among the

    signing authority to make the entire system workable.

    Till now, treasuries have been maintaining manually grant-wise budget

    sanctions released from the departments. This leads to a pooling of the

    grants and it becomes difficult for the treasury to maintain the expenditure

    record in a particular scheme. Hence, a computerized Budget Control

    System has been developed to overcome this problem and help the treasury

    in maintaining accurate records.

    Proposed System

    The proposed system is aimed to overcome all the above-mentioned problems. The

    present system is manual one and it is in adequate to cater the need of growing client

  • 8/2/2019 Actual Project Documentation

    11/80

    database. The new system will be an Internet solution, supported by an intranet

    application.

    To ensure proper monitoring, the operations that will be computerized from the outset

    and establish an online system with simultaneous access to the Department of

    Finance.

    The major objective of the Project was to bring transparency between the

    money allocation to the departments and the actual receipts and payments. In

    addition, envisage of an accurate and speedy accounting pattern, proper

    budgeting, timely reporting etc.

    The purpose of the proposed system is to rectify the above-mentioned problems. It

    provides a computerized solution for mapping the financial activities of the

    organization facilitating an efficient coordination among the signing authorities .To

    achieve the above task the development work can be categorized in two segments.

    The accounting of transactions and reporting on them frequently, has to be facilitated

    by the recent efforts to strengthen treasury and pay accounts offices. The future in this

    regard would be including that the department would be entrusted with accounting

    responsibility. A network system would be established linking the computers of

    departments, giving enhanced freedom to the line departments to levy, collect, and

  • 8/2/2019 Actual Project Documentation

    12/80

    utilize user charges is done within the overall framework of the accounting framework

    of the consolidated Fund of the government.

    The project has aimed at co-relating money allocated, to the actual payments

    and receipts in the case of each department. This would also lend

    transparency to all government transactions. Coverage that computerization

    would introduce several other invigorating factors such as an accurate and

    speedy accounting pattern, proper budgeting and timely reporting.

    Structure of the Proposed System

    Study of the Existing

    System

    Problem Identification

    Fund Monitoring System

    Intranet Application Internet Application

    Oracle 8i, Developer 2000

  • 8/2/2019 Actual Project Documentation

    13/80

    Intranet Application :

    This application will run on local office network and enable fund allocation.

    Internet based Application:

    This application will enhance the over all process to facilitate the following

    objectives

    Online bill submission

    Online request for monetary aid

    Online payment

  • 8/2/2019 Actual Project Documentation

    14/80

    The Project has been taken up in a phased manner and the main components

    include :

    (i) State Annual Budget Grant This module describes the budget

    amount for the current year for a specific organization.

    Monitoring of the contingency fund, which is spent

    throughout the year for expenditures is computerized.

    (a) It also enables the management to allot various entitlements to

    the executives of different categories. It equips the executives

    with financial power required for business transactions.

    (b)The funds allocated to the executives are further distributed to

    the departments.(c) Plan-wise distribution of the funds are also commenced by the

    entitled executives.

    (ii) Fund Manager - Each department designates a senior officer to

    serve as advisor with responsibilities and financial auditing

    authorities to head the department on management and

    efficiency issues, impact of department operations, and

    analysis of policies and program implementation and

    utilization of benefits.

  • 8/2/2019 Actual Project Documentation

    15/80

    (iii) Monitoring Of Expenses - The Organizations tentatively

    categorizes the expenses into two parts, one being the Planned

    Expenses and the other being the General Expenses. Planned

    Expenses being the amount spent on specific entitled projects.

    The executive is required to submit the bills of the expenses

    incurred during transaction. The bills include fooding,

    lodging, tours and travels and purchase expenses.

    (iv) Fund Re-Allocation/ Cancellation This module has been

    developed to monitor the budget release, once it is approved

    by the signing authority. It deals with sending as well as

    processing of request for monetary aid. It includes emails sent

    by the executives to their superiors. Processing results in

    acceptance or rejection of monetary request based on certain

    grounds.

    Based on request processing results the executives sanction

    fund and payment is made with the help of core banking. Core

    banking enables the executives to bear the transaction

    expenses by transferring money directly to the concerned

    party in tie up with the executives organization for corebanking or through the executives account.

    (v) Budget Control System This user-friendly software having

    modular approach has been developed with an objective of

  • 8/2/2019 Actual Project Documentation

    16/80

    helping the management with timely data for monitoring of

    expenditures on schemes and also to secure itemized control

    on expenditure.

    Feasibility Study

    Feasibility study is a study carried out to select the best system that meets

    performance requirements. This entails identification, description, and

    evaluation of candidate systems and selection of the best system for the job.

    Many feasibility studies are disillusioning for both users and analysts. First,

    the study often presupposes that when the feasibility document is being

    prepared, the analyst is in a position to evaluate solutions. Second, most

    studies tend to overlook the confusion inherent in the system development.

    The most successful system projects are not necessarily the biggest or most

    visible in a business but rather those that truly meet user expectations.

    Feasibility Considerations:

    There are basically three considerations involved in the feasibility analysis:

    economic feasibility, technical feasibility, and behavioral feasibility.

  • 8/2/2019 Actual Project Documentation

    17/80

    Economic Feasibility:

    The most frequently used method is the Economic Feasibility for evaluating

    the effectiveness of a candidate system. Most 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

    system. Otherwise, further justification or changes in the proposed system is

    made if it is to have a chance of being approved. This method improves theaccuracy at each phase of the system life cycle.

    Technical Feasibility :

    Technical feasibility centers around the existing computer system and to

    what extent it can support the proposed addition. It involves financial

    considerations to accommodate technical enhancements. If the budget is a

    serious constraint, then the project is judged not feasible.

    Behavioral Feasibility :

  • 8/2/2019 Actual Project Documentation

    18/80

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

    to facilitate change. An estimate 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 installations have something

    to do with turnover, transfers, retaining 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.

    Steps In Feasibility Study :

    Feasibility study involves eight steps:

    a) Formation of a project team and appointment of a project leader.

    b) Preparation of System Flowcharts.

    c) Enumeration of potential candidate systems.

    d) Description and identification of characteristics of candidate Systems.

    e) Determination and evaluation of performance and cost effectiveness

    of each candidate system.

    f) Judgment of system performance and cost data.

    g) Selection of best candidate system.

    h) Preparation and reporting of final project directive to management.

    Formation of project team and appointment of a project leader

  • 8/2/2019 Actual Project Documentation

    19/80

    Projects are planned to occupy a specific time period, ranging from several

    weeks to months. The concept to form a team is that future system users

    should be involved in its design and implementation. Their knowledge and

    experience in the operations area are necessary for the success of the system.

    The team consists of analysts and user staff to devise a solution to the

    problem.

    The senior systems analyst who is the most experienced analyst in the team

    is appointed as the project leader. Regular meetings are scheduled to keep up

    the momentum and accomplish the mission.

    Preparation of System Flowcharts

    Information oriented charts and data flow diagrams prepared in the initial

    investigation are reviewed at this time. The charts bring up the importance of

    inputs, outputs and data flow among key points in the existing system.

    Enumeration of potential candidate systems

  • 8/2/2019 Actual Project Documentation

    20/80

    This step identifies the candidate systems that are capable of producing the

    outputs included in the generalized flowcharts. This requires a

    transformation from logical to physical system models. Another aspect of

    this step is consideration of the hardware that can handle the total system

    requirements. An important aspect of hardware is processing and main

    memory.

    Description and identification of characteristics of candidate Systems

    From the candidate systems considered, the team begins a preliminary

    evaluation in an attempt to reduce them to a manageable number. Technical

    knowledge and expertise in the hardware/software area are critical for

    determining what each candidate system can and cannot do.

    Determination and evaluation of performance and cost effectiveness

    of each candidate system

  • 8/2/2019 Actual Project Documentation

    21/80

    Each candidate systems performance is evaluated against the system

    performance requirements set prior to the feasibility study. Whatever the

    criteria, there has to be a close match as practicable, although tradeoffs are

    often necessary to select the best system.

    The cost encompasses both designing and installing the system. It includes

    user training, updating the physical facilities, and documenting. System

    performance criteria are evaluated against the cost of each system to

    determine which system is likely to be the most cost of each system to

    determine which system is likely to be the most cost effective and also meets

    the performance requirements.

    Costs are more easily determined when the benefits of the system are

    tangible and measurable.

    Judgment of system performance and cost data

    In some cases, the performance and cost data for each candidate system

    show which system is the best choice. This outcome terminates the

  • 8/2/2019 Actual Project Documentation

    22/80

    feasibility study. Certain procedures are applied to weigh a candidate system

    such as assigning a weighting factor to each evaluation criterion based on

    the criterions effect on the success of the system, assigning a quantitative

    rating to each criterions qualitative rating, multiplying the weight assigned

    to each category by the relative rating to determine the score, and summing

    the score column for each candidate system.

    Selection of best candidate system

    The system with the highest total score is judged the best system. Most

    feasibility studies select from more candidate systems. The criteria

    chosen and the constraints are also more complex.

    Preparation and reporting of final project directive to management

    The culmination of the feasibility study is a feasibility report directed to

    management. The report is a formal document for management use, brief

    enough to provide the basis for system design. Analysts usually decide on

    a format that suits the particular user and system. Most reports, however ,

  • 8/2/2019 Actual Project Documentation

    23/80

    begin with a summary of findings and recommendations, followed by

    documented details.

    The report contains the following sections:

    (i) Cover letter briefly indicates to management the nature, general

    findings, and recommendations to be considered .

    (ii) Table Of Contents specifies the location of the various parts of the

    report management quickly.

    (iii) Overview is a narrative explanation of the purpose and scope of

    the project, the reason for undertaking the feasibility study and thedepartments involved or affected by the candidate system.

    (iv) Detailed Findings outline the methods used in the present system.

    The systems effectiveness and efficiency as well as operating

    costs are emphasized.

    (v) Economic justification details point-by-point cost comparisons and

    preliminary cost estimates for the development and operation of

    the candidate system.

    (vi) Recommendations and Conclusions suggest to management the

    most beneficial and cost-effective system

    (vii) Appendixes document all memos and data compiled during the

    investigation. They are placed at the end of the report for

    reference.

    System Design

  • 8/2/2019 Actual Project Documentation

    24/80

    The process of design involves conceiving and planning out in the mind.

    In the software system design, there are three distinct types of activities:

    external design, architectural design, and detailed design. Architectural

    design and detailed design are collectively referred to as internal design.

    External design of software involves conceiving, planning out, and

    specifying the externally observable characteristics of a software product.

    These characteristics include user display and report formats, external data

    sources and data sinks, and the functional characteristics, performance

    requirements, and high level process structure for the product. External

    design begins during the analysis phase and continues into the design phase.

    Requirements definition is concerned with specifying the external,

    functional, and performance requirements for a system, as well as exception

    handling. External design is concerned with refining those requirements and

    establishing the high level structural view of the system.

    Internal design involves conceiving, planning out, and specifying the

    internal structure and processing details of the software product. The goals

    of internal design are to specify internal structure and processing details, to

    record design decisions and indicate why certain alternatives and trade-offs

    were chosen, to elaborate the test plan, and to provide a blueprint for

    implementation, testing, and maintenance activities. The work products ofinternal design include a specification of architectural structure, the details

    of algorithms and data structures and the test plan.

  • 8/2/2019 Actual Project Documentation

    25/80

    Architectural design is concerned with refining the conceptual view of the

    system, identifying internal processing functions, decomposing high-level

    functions into sub-functions, defining internal data streams and data stores,

    and establishing relationships and inter-connections among data functions,

    data streams, and data stores.

    Detailed design include specification of algorithm that implement the

    functions, concrete data structures that implement the data stores, the actual

    interconnections among functions and data structures, and the packagingscheme for the system.

    Normalization:

    A process known, as normalization is a technique used to group attributes in ways that

    eliminates problems. More specifically, the goals of normalization are to minimize

    redundancy and functional dependency. Functional dependency occurs when the value

    of one attribute can be determined from the value of another attribute. The attribute

    that can be determined is said to be functionally dependant on the attribute that is the

    determinant. By definition, all non-key attributes will be functionally dependant on

    the primary key in every relation. When one attribute of a relation does not uniquely

    define another attribute, but limits it to as set of pre-defined values, it is called a multi-

    valued dependency. A partial dependency exists when an attribute of a relation is

    functionally dependant on only one attribute of a concatenated key. Transitive

  • 8/2/2019 Actual Project Documentation

    26/80

    dependency occurs when a non-key attribute is functionally dependant on one or more

    other non-key attributes in the relation

    Relations are normalized so that when relations in a database are to be altered during

    the lifetime of the database, we do not lose information or introduce inconsistencies.

    The type of alterations needed for relations are:

    Insertion of new data values to a relation. This should bepossible without being forced to leave blank fields for

    some attributes.

    Deletion of a tuple, a row of a relation. This should be

    possible without losing vital information unknowingly.

    Updating or changing a value of an attribute of a tuple.

    This should be possible without exhaustively searching

    all the tuples in the relation.

    Ideal relations after normalization should have the following properties so that the

    problems do not occur for relations in the (ideal) normalized form :

    No data value should be duplicated in different rows

    unnecessarily.

    A value must be specified for every attribute in a row.

  • 8/2/2019 Actual Project Documentation

    27/80

    Each relation should be self-contained. In other words, if a

    row is deleted, important information should not be

    accidentally lost.

    When a row is added to a relation, other relations in the

    database should not be affected.

    A value of an attribute in a tuple in a relation may be

    changed independent of other tuples in the relation and

    other

    The idea of normalizing relations to higher and higher normal forms is to attain the

    goals of having a set of ideal relations. To determine whether a relation schema is in

    one of the desirable normal forms, we need additional information about the real-

    world enterprise that we are modeling with the database.

    In the process of enhancing the tables in a more normalized form we get higher

    normal forms as 1NF, 2NF, 3NF, BCNF, 4NF, 5NF. Each form is an improvement

    over the earlier form. A higher normal form relation is asub-set of lower normal form.

    The higher normalization steps are based on three important concepts:

    Dependence among attributes in a relation.

    Identification of an attribute or a set of attributes as the

    key of a relation.

    Multivalued dependency between attributes.

  • 8/2/2019 Actual Project Documentation

    28/80

    First Normal Form:

    The first of the normal forms imposes a very basic requirement on relations, unlike

    the other normal forms, it does not require additional information such as functional

    dependencies.

    A domain is atomic if elements of the domain are considered to be individual units.

    We say that a relation schema is in First Normal Form

    (1NF) if the domains of all attributes of the relation are atomic.

    To normalize a relation with composite attributes they need to be converted to

    individual attributes. The normalization step consists of first identifying fields within

    a composite attribute as individual attributes. After doing this common attributes for a

    composite attribute are duplicated, as many times as there are lines in the composite

    attribute.

    Thus, 1NF removes dependency of non-key attribute on part of a multi-

    attribute

    Second Normal Form:

  • 8/2/2019 Actual Project Documentation

    29/80

    A relation is said to be in 2NF if it is in 1NF and non-key attributes are functionally

    dependent on the key attributes. Further, if the key has more than one attribute then no

    non-key attributes should be functionally dependent upon a part of the key attributes.

    Thus, 2NF removes dependency of non-key attributes on other non-key attributes.

    Boyce-Codd Normal Form

    If an attribute of a composite key is dependent on an attribute of the other composite

    key, a normalization called BCNF is needed. A relation schema R is in BCNF with

    respect to a set F of functional dependencies if, for all functional dependencies in F+

    (closure of F) of the form , where R, at least one of the following holds

    o is a trivial functional dependency

    o is a super key for schema R.

    A database design is in BCNF if each member of the set of relation schemas that

    constitutes the design is in BCNF. To determine whether these schemas are in BCNF,

    we need to determine what functional dependencies apply to them.

    Often testing of a relation to see if it satisfies BCNF can be simplified:

  • 8/2/2019 Actual Project Documentation

    30/80

    To check if a nontrivial dependency causes a

    violation of BCNF, compute + (the attribute closure of

    ), and verify that it includes all attributes of relation

    schema R.

    To check if a relation schema R is in BCNF, it suffices to

    check only the dependencies in the given set of F for

    violation of BCNF, rather than check all dependencies in

    F+ (closure of F).

    Thus, BCNF removes more than one dependent multi-valued dependency from

    relation by spitting relation.

    Third Normal Form:

    There are relational schemas where a BCNF decomposition cannot be dependency

    preserving. For such schemas, we have two alternatives if we wish to check if an

    update violates any functional dependencies:

    Pay the extra cost of computing joins to test for violations.

    Use an alternative decomposition, third normal form/

    Third Normal Form normalization will be needed where all attributes in a relation

    tuple are not functionally dependent only on the key attribute. A table is said to be in

  • 8/2/2019 Actual Project Documentation

    31/80

    3NF if it is in 2NF and no non-key attribute is functionally dependent on any other

    non-key attribute.

    Since BCNF requires that all nontrivial dependencies be of the form , where is

    a super key. 3NF relaxes this constraint slightly by allowing nontrivial functional

    dependencies whose left side is not a super key.

    A relation schema R is in third normal form (3NF) with respect to a set F of functional

    dependencies if, for all functional dependencies in F+ of the form , where R

    and R, at least one of the following holds:

    o is a trivial dependency

    o is a super key for R

    o Each attribute A in - is contained in a candidate key for

    R.

    Thus, 3NF removes dependency of an attribute of a multi attribute key on an attribute

    of another (overlapping) multi attribute key.

    Fourth Normal Form:

  • 8/2/2019 Actual Project Documentation

    32/80

    Some relation schemas, even though they are in BCNF, do not seem to be sufficiently

    normalized, in the sense that they still suffer from the problem of repetition of

    information.

    To deal with this problem, we must define a new form of constraint, called a multi-

    valued dependency. Use of multi valued dependencies to define a normal form for

    relation schemas. This normal form, called fourth normal form (4 NF) is more

    restrictive than BCNF.

    A data base design is in 4NF if each member of the set of relation schemas that

    constitutes the design is in 4NF.The definition of 4NF differs from the definition of

    BCNF in only the use of multi-valued dependencies instead of functional

    dependencies. Every 4NF schema is in BCNF. If a schema R is not in BCNF, then

    there is a nontrivial functional dependency.

    Thus, 4NF adds one relation relating attributes with multi-valued dependency to the

    two relations with multi-valued dependency.

    Fifth Normal Form

  • 8/2/2019 Actual Project Documentation

    33/80

    Reduce fourth normal form entities to fifth normal form (5NF) by removing

    pairwise cyclic dependencies (appearing within composite primary keys

    with three or more component attributes) to three or more parent entities.

    This concentrates on problems that arise by representing associations

    between multiple entities with interdependencies. Making it 5NF consists of

    adding parent tables, one for each meaningful combination that has children

    in the original table. A table with such information is 5NF if the information

    cannot be represented in multiple smaller entities alone

    Domain Key Normal Form

    "A key uniquely identifies each row in a table. A domain is the set of

    permissible values for an attribute. By enforcing key and domain

    restrictions, the database is assured of being freed from modification

    anomalies."

    This appears to differ from the other normal forms in that it does not seek to

    introduce additional tables, but rather ensures that columns are restricted to

    valid values.

  • 8/2/2019 Actual Project Documentation

    34/80

    Data Flow Diagrams:

    Data flow diagrams or the bubble charts are directed graphs in which the

    nodes specify processing activities and the arcs specify data items

    transmitted between processing nodes. Data flow diagrams can be used at

    any desired level of abstraction. A data flow diagram might represent data

    flow between individual statements or blocks of statements in a routine, data

    flow between sequential routines, data flow between concurrent processes,

    or data flow in a distributed computing system where each node represents ageographically remote processing unit.

    Data flow diagrams specify data sources and data sinks, data stores,

    transformations to be performed on the data, and the flow of data between

    sources, sinks, transformations, and stores. A data store is a conceptual data

    structure, in the sense that physical implementation details are suppressed

    only the logical characteristics of data are emphasized on a data flow

    diagram. Data sources, data sink and transformations are depicted by

    rectangles, and data stores by open-ended rectangles. The arcs in a data flow

    diagram specify flow of data. They are labeled with the names of data items

    whose characteristics are specified in the data dictionary.

    Data flow diagrams are excellent mechanisms for communicating with

    customers during requirements analysis, they are also widely used for

  • 8/2/2019 Actual Project Documentation

    35/80

    representation of external and top-level internal design specifications. In

    latter situations, data flow diagrams are quite valuable for establishing

    naming conventions and names of system components such as systems, files,

    and data links.

    The DFD model uses a very limited number of primitive symbols,

    which are described below:

    External entity Process Data store

    Data flow Output

  • 8/2/2019 Actual Project Documentation

    36/80

    Primitive symbol used for constructing DFDs

    Function symbol. A function is represented using a circle. This

    symbol is called a processor or bubble.

    External entity symbol. A rectangle represent an external entity

    such as a librarian, a library member etc. the external entities are

    essentially those physical entities which are external to the software

    system and interact with the system by inputting data to the system or

    by consuming the data produced by the system.

    Data flow symbol.A directed arc or an arrow is used as a data flow

    symbol. A data flow symbol represents the data flow occurring

    between two process or between an external entity and a process in

    the direction of the data flow arrow.

    Data store symbol. Open boxes are used to represent data stores.

    A data store represents a logical file , a data structure or a physical file

    on disk.

  • 8/2/2019 Actual Project Documentation

    37/80

    Dataflow diagram

    Bill Submission

    Monetary Queries

    Monetary Request Fund Allocation

    Payment

    Abstract Level DFD (Level 0 DFD)

    E

    C

    U

    T

    I

    V

    E

    e

    c

    AN

    A

    G

    E

    M

    E

    N

    T

    E

    0

    Fund

    Monitoring

    System

  • 8/2/2019 Actual Project Documentation

    38/80

    LEVEL 1 DFD

    Modules And Descriptions:

    (i) State Annual Budget Grant This module describes the budget

    amount for the current year for a specific organization. Monitoring

    FundFund

    Allocation

    Process

    Fund Distribution

    Process

    Bill

    Submission

    Process

    Si nin Authorit

    Allocation DetailsEm lo ee Dtata File

    Allocation Data File

    Allocation ID

    Auth Id

    Bill No

    Ex anse Doc

    Ex anse Details

    Expanse

    12

    3

    Report

    Fund

    Request

    Proposal

    ProposalID

    Proposal RefusalData File

  • 8/2/2019 Actual Project Documentation

    39/80

    of the contingency fund, which is spent throughout the year for

    expenditures is computerized.

    a. It also enables the management to allot various entitlements to

    the executives of different categories. It equips the executives

    with financial power required for business transactions.

    b. The funds allocated to the executives are further distributed to

    the departments.

    c. Plan-wise distributions of the funds are also commenced by theentitled executives.

    (ii) Fund Manager - Each department designates a senior officer to

    serve as advisor with responsibilities and financial auditing

    authorities to head the department on management and

    efficiency issues, impact of department operations, and

    analysis of policies and program implementation and

    utilization of benefits.

    (iii) Monitoring Of Expenses - The Organizations tentatively

    categorizes the expenses into two parts, one being the Planned

    Expenses being the amount spent on specific entitled projects and

    the other the Non- Planned Expenses which specify amount spent

    as general expenses . The executive is required to submit the bills

  • 8/2/2019 Actual Project Documentation

    40/80

    of the expenses incurred during transaction. The bills include

    fooding, lodging, tours and travels and purchase expenses.

    (iv) Fund Re-Allocation/ Cancellation This module has been

    developed to monitor the budget release, once it is approved by the

    signing authority. It deals with sending as well as processing of

    request for monetary aid. It includes emails sent by the executives

    to their superiors. Processing results in acceptance or rejection of

    monetary request based on certain grounds.

    Based on request processing results the executives sanction fund and

    payment is made with the help of core banking. Core banking

    enables the executives to bear the transaction expenses by

    transferring money directly to the concerned party in tie up with the

    executives organization for core banking or through the executives

    account.

    (v) Budget Control System This user-friendly software having

    modular approach has been developed with an objective of

    helping the management with timely data for monitoring ofexpenditures on schemes and also to secure itemized control

    on expenditure.

  • 8/2/2019 Actual Project Documentation

    41/80

    Data Dictionary:

    A Data Dictionary is used to define and record data elements, and processing

    logic representations, such as decision tables and structured English, are

    used to specify algorithmic processing details. Processing logic

    representations are used to precisely specify processing sequences in terms

    that are understandable to customers and developers. Entries in a data

    dictionary include the name of the data item, and attributes such as the data

    flow diagrams where it is used, its purpose, where it is derived from, its subitems, and any notes that may be appropriate. Each named data item on each

    data flow diagram should appear in the data dictionary. Data Dictionaries

    can be used in conjunction with structure charts to specify data attributes and

    data relationships.

    The details of the tables and its structures are explained as below:

    State Annual Budget Grant: This module describes the budget

    amount for the current year for a specific organization. To understand

    this module we specify further three divisions namely

    Budget amount for the current year.

    Department wise fund distribution

    Plan wise fund distribution

  • 8/2/2019 Actual Project Documentation

    42/80

    The Budget amount for the current year has being specified by the

    relation Fund_allocation. This table has the attributes Year, Amount, and

    Balance Amount. The attribute year describes the year for which the amount

    is being allocated. The attribute Amount specifies the amount being

    sanctioned by the treasury for the organization. The last attribute Balance

    amount denotes amount left as balance after being used for the specified

    objectives.

    The department wise fund distribution is a sub module, which gives the

    details on how the allocated amount can be distributed to the various

    departments. Additional information about the departments can be inferred

    from the table dept. This table gives information of the department number

    and their respective department names This has been specified in the table

    Dept_fund. The attributes related to this table and their descriptions are

    given as below:

    Deptno Organizations are composed of various

    departments, each of which is responsible for performing a

    definite task as directed by the governing body. To

    differentiate each department from the other to avoid

    ambiguity a distinct identification is given to each

    department. Normally, the number given to each department

    is enough fro the identification of a particular department.

    This number is commonly is known as the department

    number to any Organization.

  • 8/2/2019 Actual Project Documentation

    43/80

    Amt_allocated To have any work done financial support is

    main constraint for the completion of the job in an effective

    manner. This attribute specifies the amount allocated to each

    department for the job. The job is expected to be completed

    within the margin of the allocated fund. If in the cases of

    extra expenses the case is considered.

    DOA This is an abbreviation for the term Date Of

    Allocation. It signifies the date on which the transaction of

    allocation of fund for the job to a particular department was

    done. This attribute only gives the detail of timing related to

    the fund allocation.

    Propo_exp - A tentative marginal amount is set in order to

    present the proposed expences to the senior executives. This

    amount is set keeping in mind the overall expences to be

    made in the relevance to the project work To be undertaken.

    Amt_distr - It is a well-known fact that the organisation

    contains several executives and several managers working

    under them. The project under study considers that each of

  • 8/2/2019 Actual Project Documentation

    44/80

    the individuals whether an executive or a manager has some

    or the other signing rights. In other words, they can further

    distribute the allocated amount to the employees working

    under them. This attribute defines the amount for which the

    perticular employee has the signing rights.

    Act_exp - It is a common phenomena that any amount

    considered as an expenditure is presented in rounded form.

    The actual amount to be expended is represented by this

    attribute.

    Last_updt It specifies the date on which the updation has

    been done. It enables the users to view and infer current

    information.

    Over_exp This attribute specifies the over expenses which

    have incurred while working on the project due to higher

    price hikes on the products required by the department. This

    event seldom occurs because a thorough study is done prior to

    request of the fund.

    The attributes of the table dept and their explanation are given below:

  • 8/2/2019 Actual Project Documentation

    45/80

    Deptno A department number is assigned to each

    department of the organization to be uniquely identifiable. In

    this table the department number acts as a primary key.

    Dname A name is allotted to each department. The

    department name given is usually related to the work to be

    performed by the department.

    The Plan wise fund distribution is another sub module, which

    considers the amount to be spent on the plans undertaken by the

    organization. With the normal functioning of the organization there are

    situations when the authority decides upon the enhancement or extra

    curriculum of the organization inmates or expansion of their work area. This

    results in evolution of various plans to be commenced for the desiredsubjects. The help of two tables, which are plan and dept_vs_plan, can

    explain this sub module. The attributes of the given tables have been stated

    below with appropriate explanation. Starting with the table plan:

    Plan_no With a number of plans being implemented in the organization,

    each plan needs to be identified uniquely. In this table the attribute plays as a

    primary key identifying each plan running in the organization.

  • 8/2/2019 Actual Project Documentation

    46/80

    Plan_nm The plan name acts as a sub-ordinate to the plan number. With

    plan name it makes an easy identification of the plan. It may happen that the

    plan name may be same but covering different areas of concern.

    Fund_amt The amount being given to departments to carry over the plan is

    termed as the fund amount for the plan. This amount is totally spent on the

    growth as well as implementation of the plan for the organization.

    Eno A plan is always handled and managed properly if an individual heads

    it. This individual is a recognized employee of the organization chosen by

    the governing body. Under his control all the steps related to implementation

    of the plan is done. This attribute gives the identification of that employee

    by providing his identity number.

    Another table explaining the concept of plan wise fund distribution

    is the table dept_vs_plan. This table gives detail of the departments working

    on that plan and the amount on which to implement the plan. The attributes

    of the table are as follows along with their explanation.

    Dept_no This attribute gives the information

    regarding the department that will be working on a particular

    plan. The attribute gives the number of the department. It is

  • 8/2/2019 Actual Project Documentation

    47/80

    possible that more than one department can work on the a

    particular plan.

    Plan_no The attribute plan number signifies as to which

    department will be working on which plan.

    Plan_amt Plan amount relates to the amount given to

    the department working on the particular plan. As referred

    earlier that it may happen more than one department may

    handle one plan. This attribute specifies the amount given to

    each department working in collaboration to implement that

    plan.

    Fund Manager: This module describes the authorities of the employees of

    the organization. To a certain limit employees are given the signing rights

    for a particular amount. Describing the statement it can be explained that an

    employee can sanction money to his sub-ordinate to carry out some work to

    a limit of particular amount only. This module has been represented in the

    table emp_auth, which shows that which employees have the rights of how

    much amount. The attributes of the table and explanation are given as below:

  • 8/2/2019 Actual Project Documentation

    48/80

    Eno Since the table gives the employee

    details it is necessary to uniquely identify each employee

    and his signing rights. The employee number in this table

    does the job of identifying each employee of the

    organization. Thus the employee number in this table is the

    primary key.

    Ename The attribute shows the name of

    the employee. It may be possible that there may be two

    people with same name but their identification can be done

    through their identity number.

    Dept_no Gives the information on the

    department number to which the employee belongs.

    Under_emp In any organization the

    hierarchy of employee stature exists. The head works as a

    senior to all his sub-ordinates controlling and taking

    appropriate decisions for the department. This attribute givesthe information regarding who heads the particular

    employee or under whom is this employee acting as a sub-

    ordinate.

  • 8/2/2019 Actual Project Documentation

    49/80

    Amt_allocated The attribute refers to the

    amount allocated to the particular employee.

    DOA The date of allocation specifies

    the date on which the allocation transaction was made. It

    acts as an additional information for the allocation details.

    Emp_active It may happen in many

    cases that the signing authority may be debarred from his

    authorities due to some valid reasons. In such cases the

    authorities assigned to him are taken away leaving him

    inactive. The attribute, thus is a kind of report as to whether

    the employee is still retaining his powers or is inactive at the

    current time period.

    Amt_validity Certain organizations

    follow a rule of validating the amount allocated to the

    employee. This means that the amount has to be used within

    the stated time period and its expenses are to be reported

    within that time limit.

  • 8/2/2019 Actual Project Documentation

    50/80

    Docket_no Each employee keeps the

    record of his transactions intact for future reference. This

    attribute somewhat serves this purpose. It specifies the

    number in which the user keeps his records.

    Amt_used From the amount allocated to

    the employee some amount is used up for the specified

    purposes. His attribute keeps the record of the amount used.

    Monitoring Of Expenses: The Organizations categorizes

    the expenses into two distinct divisions, one being the

    Planned Expenses which is the amount spent on specific

    entitled projects and the other is the Non-Planned Expense

    which comes under general expenses. The executive isrequired to submit the bills of the expenses incurred

    during transaction. The bills include fooding, lodging,

    tours and travels and purchase expenses.

    Fund Re-allocation / Cancellation: This module has

    been developed to monitor the budget release, once it is

    approved by the signing authority. It deals with sending as

    well as processing of request for monetary aid. It includes

    emails sent by the executives to their superiors. Processing

  • 8/2/2019 Actual Project Documentation

    51/80

    results in acceptance or rejection of monetary request

    based on certain grounds.

    Based on request processing results the executives sanction fund and

    payment is made with the help of core banking. Core banking enables the

    executives to bear the transaction expenses by transferring money directly to

    the concerned party in tie up with the executives organization for core

    banking or through the executives account. The table giving the details

    related to the matter is fund_proposal whose attributes and explanation are

    as follows:

    Prop_no The proposal number plays the primary key

    for the table. Each proposal can be identified uniquely

    through this attribute.

    P_date The proposal date specifies the day on which

    the proposal was requested. It provides with additional

    information regarding the proposal made.

    Eno This attribute specifies the employee number who

    makes a request for the proposal for the allocation of the

    fund.

  • 8/2/2019 Actual Project Documentation

    52/80

    Entity Relationship Diagram:

    Tables And Structures:

    The tables constructed for this system are as follows:

    TNAME TABTYPE CLUSTERID

    ------------------------------ ------- ---------

    Bill_subm TABLE

    Bill_subm_detail TABLE

    Dept TABLE

  • 8/2/2019 Actual Project Documentation

    53/80

    Dept_fund TABLE

    Dept_vs_plan TABLE

    Emp_auth TABLE

    Fund_allocation TABLE

    Fund_proposal TABLE

    Plan TABLE

    1) Table Bill_subm

    Name Null? Type

    ------------------------------- -------- ----

    Bill_no NOT NULL NUMBER(3)

    Deptno NUMBER(3)

    Eno VARCHAR2(7)

    Bill_amt NUMBER(10,2)

    Sub_dt DATE

    Ref_plan_no NUMBER(3)

  • 8/2/2019 Actual Project Documentation

    54/80

    Bill_des VARCHAR2(50)

    2) Table - Bill_subm_detail

    Name Null? Type

    ------------------------------- ------- ----

    Bill_no NUMBER(3)

    Particlars VARCHAR2(35)

    Amt NUMBER(10,2)

    Ref_bill_no VARCHAR2(5)

    Bill_dt DATE

    Sl_no NUMBER(3)

    3) Table Dept

    Name Null? Type

    ------------------------------- -------- ----

    Deptno NOT NULL NUMBER(3)

    Dname VARCHAR2(30)

  • 8/2/2019 Actual Project Documentation

    55/80

    4) Table Dept_fund

    Name Null? Type

    ------------------------------- -------- ----

    Deptno NUMBER(3)

    Amt_allocated NUMBER(10,2)

    Doa DATE

    Propo_exp NUMBER(10,2)

    Amt_distr NUMBER(10,2)

    Act_exp NUMBER(10,2)

    Last_updt DATE

    Over_exp NUMBER(10,2)

    5) Table Dept_vs_plan

    Name Null? Type

    ------------------------------- ------- ----

  • 8/2/2019 Actual Project Documentation

    56/80

    Deptno NUMBER(3)

    Plan_no NUMBER(3)

    Plan_amt NUMBER(10,2)

    6) Table - Emp_auth

    Name Null? Type

    ------------------------------- -------- ----

    Eno NOT NULL VARCHAR2(7)

    Ename VARCHAR2(15)

    Deptno NUMBER(3)

    Under_emp VARCHAR2(4)

    Amt_allocated NUMBER(10,2)

    Doa DATE

    Emp_active CHAR(1)

    Amt_validity DATE

    Docket_no VARCHAR2(5)

    Amt_used NUMBER(10,2)

  • 8/2/2019 Actual Project Documentation

    57/80

    7) Table - Fund_allocation

    Name Null? Type

    ------------------------------- -------- ----

    Year NUMBER(4)

    Amt NUMBER(10,2)

    Amt_bal NUMBER(10,2)

    8) Table - Fund_proposal

    Name Null? Type

    ------------------------------- -------- ----

    Prop_no NOT NULL NUMBER(5)

    P_date DATE

    Eno VARCHAR2(7)

    Amt_request NUMBER(10,2)

  • 8/2/2019 Actual Project Documentation

    58/80

    Prop_type CHAR(1)

    Plan_no NUMBER(3)

    Other_info VARCHAR2(15)

    Appr_rem VARCHAR2(15)

    Rej_rem VARCHAR2(15)

    App_amt NUMBER(10,2)

    App_final CHAR(1)

    9)Table - Plan

    Name Null? Type

    ------------------------------- -------- ----

    Plan_no NOT NULL NUMBER(3)

    Plan_nm VARCHAR2(30

    Fund_amt NUMBER(10,2)

    Eno VARCHAR2(7)

  • 8/2/2019 Actual Project Documentation

    59/80

    Tools And Platform:

    Input Screen

    A . Form For The Main Screen.

  • 8/2/2019 Actual Project Documentation

    60/80

    B. Input/ View Department Form where funds are distributed

  • 8/2/2019 Actual Project Documentation

    61/80

    C. Form for Fund allocation Entry Screen.

  • 8/2/2019 Actual Project Documentation

    62/80

    D. Form For Signing Authority

  • 8/2/2019 Actual Project Documentation

    63/80

    E. Plan wise Fund Distribution To Departments

  • 8/2/2019 Actual Project Documentation

    64/80

    F. Bill Submission Form

  • 8/2/2019 Actual Project Documentation

    65/80

    G. Fund Proposal Form

  • 8/2/2019 Actual Project Documentation

    66/80

    Output Screen :

    Validations And Security

    The application provides high level of security that includes:

  • 8/2/2019 Actual Project Documentation

    67/80

    Entry of data in the database with required integrity constraints.

    Checks incorporated to prevent unauthorized access.

    Testing

    No program or system design is perfect. Communication between the user and

    the designer is not always complete or clear and time is usually short. The resultis errors and more errors. Thus the time comes to put all the pieces into one

    system and test it to determine whether it meets the users requirements.

    Testing is vital to the success of the system. System testing makes a logical

    assumption that if all the parts of the system are correct, the goal will be

    successfully achieved. Inadequate testing or non-testing leads to errors that may

    not appear until months later. This creates two problems: (i) the time lag

    between the cause and the appearance of the problem and (ii) the effect of

    system errors on files and records within the system. A small system error can

    conceivably explode into a much larger. Effective testing in the early process

    translates directly into long-term cost savings from a reduced number of errors.

    Another reason for system testing is its utility as user-oriented vehicle before

    implementation. The best program is worthless if it does not meet user needs.

  • 8/2/2019 Actual Project Documentation

    68/80

    The first test of a system is to see whether it produces the correct outputs. No

    other test can be more crucial. The steps followed while conducting these tests

    are:

    Online Response Online systems must have a response time that will

    not cause a hardship to the user.

    Volume In this test, we create as many records as would normally be

    produced to verify that the hardware and software will function correctly

    Stress testing The purpose of stress testing is to prove that the

    candidate system doe not malfunction under peak loads. The system is

    subjected to a high volume of data over a short time period.

    Recovery and Security A forced system failure is induced to test a

    backup recovery procedure for file integrity. Inaccurate data are entered to see

    how the system responds in terms of error detection and protection.

    Usability documentation and procedure The usability test verifies the

    user-friendly nature of the system. This relates to normal operating and error-

    handling procedures.

    The first step in system testing is to prepare plan that will test all aspects of the

    system in a way that promotes its credibility among potential users. The test

    plan entails the following activities:

  • 8/2/2019 Actual Project Documentation

    69/80

    Prepare test plan

    Specify conditions for user acceptance testing Prepare test data for program testing

    Prepare test data for transaction path testing

    Plan user training

    Compile /assemble programs

    Prepare job performance aids

    Prepare operational documents

    The purpose of system testing is to identify and correct errors in the candidate

    system. In system testing, performance and acceptance standards are developed.

    Substandard performance or service interruptions that result in system failure

    are checked during the test. The following criteria are used for system testing:

    Turnaround time is the elapsed time between

    the receipt of the input and the availability of the output.

    Backup relates to procedures to be used when

    the system is down. The software for the candidate system must be tested for

    compatibility with a backup computer.

    File protection pertains to storing files in a

    separate area for protection against fire, flood ,or natural disaster.

  • 8/2/2019 Actual Project Documentation

    70/80

    The human factor applies to the personnel of

    the candidate system. During system testing, lightening, air conditioning, noise,

    and other environmental factors are evaluated with peoples desks.

    After a test plan has been developed, system testing begins by testing program

    modules separately, followed by testing modules as a unit. A program module

    may function perfectly in isolation but fail when interfaced with other modules.

    The approach is to test each entity with successively larger ones, up to the

    system test level.

    Program Testing;

    A program represents the logical elements of a system. For a program to run

    satisfactorily, it must compile and test data correctly and tie in properly with

    other programs. Achieving an error-free program is the responsibility of te

    programmer. Program testing checks for two types of errors: syntax and logic.

    A syntax error is a program statement that violates one or more rules of the

    language in which it is written. An improperly defined field dimension or

    omitted key words are common syntax errors. These errors are shown through

    error messages generated by the computer. A logic error on the other hand,

    deals with incorrect data fields, out-of range items, and invalid combinations.

  • 8/2/2019 Actual Project Documentation

    71/80

    When a program is tested, the actual output is compared with the expected

    output. When there is a discrepancy, the sequence of instructions must be traced

    to determine the problem. Breaking the program down into self-contained

    portions, each of which can be checked at certain key points, facilitates the

    process

    String Testing:

    Programs are invariably related to one another and interact in a total system.

    Each program is tested to see whether it conforms to related programs in the

    system. Each portion of the system is tested against the entire module with both

    test and live data before the entire system is ready to be tested.

    System Testing:

    System testing is designed to uncover weaknesses that were not found in earlier

    tests. This includes forced system failure and validation of the total system as it

    will be implemented by its users in the operational environment. The total

  • 8/2/2019 Actual Project Documentation

    72/80

    system is also tested for recovery and fallback after various major failures to

    ensure that no data are lost during the emergency.

    User Acceptance Testing :

    An acceptance test has the objectives of selling the user on the validity and

    reliability of the system. It verifies that the systems procedures operate to

    system specifications and that the integrity of vital data is maintained.

    Performance of an acceptance test is actually the users show. User motivation

    and knowledge are critical for the successful performance of the system.

    Unit Testing:

    It focuses on individual software units or groups of related units. It checks if

    units does not satisfy the functional specification and intended design structure.

    A unit can be compiled, assembled, linked, loaded put under a test case. Unit

    depends upon code complexity including the software language, tools,

    technology used. The Unit test is normally white-box oriented and the steps can

    be conducted in parallel for multiple modules. Every unit is tested to ensure that

    information properly flow into and out of the program under test.

  • 8/2/2019 Actual Project Documentation

    73/80

    White Box And Black Box Testing

    All units are white box tests.

    Black box = Product validation = Is the product working right?

    It deals with business to be verified by subject matter experts or domain

    experts. All engineered products can be tested in one of the two ways:

    By knowing the internal working s of the product, tests can be conducted

    to ensure that internal operations are performed according to specifications and

    all detailed functions are adequately exercised. This is called as White-Box

    Testing.

    Alternatively, by knowing the specified overall functions that the product

    has been designed to perform, the tests can be conducted to check that each

    function is fully operational and whether are there errors in each function? This

    is known as Black-Box Testing.

    White Box Testing

    It is a testing category based on knowledge of internal structure and logic of

    software. Several sources of errors should be followed:

  • 8/2/2019 Actual Project Documentation

    74/80

    Syntax-errors, which are very common. When source code is

    written, many typing errors will occur. Many will be uncovered by syntax

    checking mechanism, but others will go undetected until testing begins.

    Program Control Structure. The tester should be knowledgeable in

    programming also. Code checking is an important aspect in this method.

    Most Specific Conditions and loops with Logical. Test cases are

    derived to ensure that all statements or logical conditions in the program should

    get executed at least once during testing. Also there should be Special Case

    processing which tends to fall into the cracks.

    The data along with the coding standards should be tested. Test

    cases should be prepared based on this. Test the data along with the coding

    standards followed.

    Both the inputs and its outputs are verified. The input data as well as outputs

    expected are required to be planned as part of Test Planning.

    Other White Box Testing:

    Exception testing

    It is often crucial for reliable operations, which should be tested for:

    o File errors (empty, missing, overflow)

    o I/O errors (device not ready, parity)

  • 8/2/2019 Actual Project Documentation

    75/80

    o Arithmetic Operations (overflow)

    o Resource Allocation (memory)

    o Task Communication, Creation

    Suspicion Testing

    It is used when

    o Programmer is less experienced

    o Module having high failure rate

    o Failed inspection Late change order

    o Designer/Programmer feels uneasy

    o Later/Bigger the change, more dangerous

    Black Box Testing Methods

    Black box testing considers the program as a black box. The tests are done to

    validate its functionality-what the system is supposed to do, without regard to

    the internal workings of a program. This approach is based on external

  • 8/2/2019 Actual Project Documentation

    76/80

    specifications and fundamental aspects without knowledge of How the system

    is constructed. It is conducted at the software interface .

    Black box testing techniques focus on the information domain of the software

    deriving test cases by partitioning the input and output domain of a program in

    a manner that provides through test coverage.

    Black Box testing attempts to find errors in the following categories:

    Incorrect or missing functions

    Interface errors

    Errors in data structures or external data base access

    Performance errors and

    Initialization and termination errors

    The tester should know what to test in the program. This means that the tester

    should know the input conditions and their desired outputs. The tester prepares

    the data of various types and gets the results.

    Because black box testing purposely disregards control structure, attention is

    focused on the information domain. Tests are designed to answer the question

    such as follows:

    How is functional validity tested?

  • 8/2/2019 Actual Project Documentation

    77/80

    What classes of input will make good test cases?

    Is the system particularly sensitive to certain input values?

    How are the boundaries of a data class isolated?

    What data rates and data volume can the system tolerate?

    What effect will specify combinations of data have on

    system operation?

    What is the effect of integrating multiple systems/modules?

    Comparison Testing:

    There are some situations in which the reliability of software is absolutely

    critical. In such applications redundant hardware and software are often used to

    minimize the possibility of error. Develop independent versions of an

    application using the same specification. Each version can be tested with the

    same test data to ensure that all provide identical output. Then all the versions

    are executed in parallel with real time comparison of results to ensure

    consistency. However, only a single version will be used in the delivered

  • 8/2/2019 Actual Project Documentation

    78/80

    computer-based system. This forms the Comparison testing or Back-to-back

    testing.

    Comparison testing is not foolproof. If the specification from which all versions

    have been developed is in error, all versions will likely reflect the error.

    Validation Testing:

    Validation succeeds when software functions in a manner that can be

    reasonably expected by the customer. Reasonable expectations are required to

    be defined which is user visible or realizable? After each validation test case

    has been conducted, one of the two possible conditions exists:

    i. The function or performance characteristics conform to specification

    and are accepted or

    ii. A deviation from specification is uncovered and a deficiency list is

    created.

    Alpha, Beta And Pre-Beta Testing

  • 8/2/2019 Actual Project Documentation

    79/80

    It is impossible for a software developer to anticipate how the customer will

    really use the system. There may be instances when the instructions for use of

    software may be misinterpreted

    Implementation:

    Future Enhancement And Limitation

    Incorporating Data Warehousing features to enable themanagement in efficient decision-making.

    Integration of the application with SAP.

  • 8/2/2019 Actual Project Documentation

    80/80

    Integration of mobile technology.

    Conclusion

    A s more and more tasks and expenditure authority are decentralized, it will be

    necessary to ensure that financial management systems and accountability at

    local level are strong. This is a very important subject that would affect the

    viability of the local governments. State Government will constitute a small

    working group to review the adequacy of the financial management and

    accountability at local level and make suitable recommendations.

    Bibliography:

    Coding: