software management for distributed architecture

Upload: rachana-haridas

Post on 14-Apr-2018

224 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/30/2019 Software management for distributed architecture

    1/76

    1

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    ACKNOWLEDGEMENT

    The satisfaction and happiness that accompanies the successful completion of any taskwould be incomplete without the Expression of gratitude and appreciation to the people who

    made it Possible.

    We sincerely express our gratitude to our beloved principal K. L. E. Society's Dr.

    M.S.Sheshgiri College of Engineering and Technology, Dr. S. C. Pilli,for his constant source ofencouragement and inspiration throughout our study period.

    We express our deep gratitude and sincere thanks to Prof V. T. Desai, Head Of the M. C. A

    Department, K. L. E. Society's Dr. M.S.Sheshgiri College of Engineering and Technology, for

    his inspiration during the metamorphosis of our project.

    Sincere thanks to our guide Prof. Mrs. C. B. Charantimath for the constant guidance,

    support, suggestions and encouragement without which we could not have completed our

    project.

    Lastly, we want to thank all the staff of M. C. A Department for their invaluable co-

    operation extended to us during the tenure of the project.

  • 7/30/2019 Software management for distributed architecture

    2/76

    2

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    INDEX

    TITLE PAGE NO.

    1. Abstract1.1 Problem statement1.2 Procedure1.3 Results

    2. Introduction3. Literature Survey

    3.1 Introduction3.1.1 Background3.1.2 Purpose and scope of this document3.1.3 Reference documents

    3.2 Existing System3.2.1 Overview3.2.2 Need for the project3.2.3 Objectives of the project

    4. Hardware requirements5. Software requirements Specification

    5.1Functional Requirements5.2Non-functional Requirements5.3Assumptions

    6. System Definition6.1System Design(data Flow diagram)6.2Software Paradigm Applied

    7. Detailed Design(Algorithm)8. Implementation9. Testing and Results10.Conclusion11.Future Enhancements12.Bibliography

  • 7/30/2019 Software management for distributed architecture

    3/76

    3

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    1. ABSTRACT

    1.1 Problem statement

    With the advance in time and technology, software based companies are facing heavy

    workload so with the help of software management system, the workload can be distributed

    among various clients and hence it can be decreased.

    The Software Management System can be used by users who are well trained in the

    environment. The user must have some knowledge of computer network in order to use the

    system.

    1.2 Procedures

    First the administrator has to load the software based projects onto the server andalso administrator should give date of submission.

    On client machine the created projects are listed. Projects can be chosen of his/herinterest, and then client can download, and register for the project.

    And in administrator machine, list of clients with registered projects are available. Then after completing the job, client will upload the project.

    1.3 Results

    In the administrator machine, the list of created projects, assigned projects,uploaded projects by clients are available.

    And in the client machine, the list of projects, uploaded projects by a particularclient are available.

    When client uploads the project, the project file is tested and compiled (only javacompiler is used, here only java projects are compiled).

    After compiling, client is notified, whether the project is accepted or rejected.

  • 7/30/2019 Software management for distributed architecture

    4/76

    4

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    2. INTRODUCTION

    Software Management is an empirical investigation conducted to provide stakeholders

    with information about the quality of the product or service under test. Software Management

    also provides an objective, independent view of the software to allow the business to appreciate

    and understand the risks at implementation of the software. Test techniques include, but are not

    limited to, the process of executing a program or application with the intent of finding software

    bugs.

    The scope of software Management often includes examination of code as well as

    execution of that code in various environments and conditions as well as examining the aspectsof code: does it do what it is supposed to do and do what it needs to do. In the current culture of

    software development, a testing organization may be separate from the development team. There

    are various roles for testing team members. Information derived from software Management may

    be used to correct the process by which software is developed.

    We being the software developers are going to maintain the server machine, where all

    the files which are sent by the administrator get downloaded automatically on the local

    machines. The developers can request any number of projects as per their capability, from the

    local server machines (1 or more files at a time). Depending upon the requirements the

    developers will work on the project, and upload it to the servers where the automatic testing of

    the software takes place. The software which passes testing process satisfactorily is uploaded

    back to the servers of first world nations, else rejected and dumped back for redevelopment.

  • 7/30/2019 Software management for distributed architecture

    5/76

    5

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    3. LITERATURE SURVEY

    3.1 Introduction

    3.1.1 Overview

    3.1.2 Purpose and scope of this document

    Purpose of the document:

    The purpose of this project is to upload the files to the clients machine for

    providing software based jobs for various clients and hence clients will work on

    the files as per the procedures and upload the files back onto the server. We are

    elaborating this project for uploading and downloading of any software based

    jobs which will help lot of software industries in coming years.

    Scope of the document:

    The Software Management System can be used by users who are well

    trained in the environment. The user must have some knowledge of computer

    network in order to use the system.

    3.1.3 Reference documents

  • 7/30/2019 Software management for distributed architecture

    6/76

    6

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    3.2 Existing System

    3.2.1 Overview

    The existing system is network based and can be used by trained employees of the

    company.

    Working:

    Jobs likesoftware development are outsourced from first world nations to the third worldnations.

    These jobs are kept ready for developers at server side. The software developer sitting at the client machine requests for the job. After processing the job it is then sent to the Analyst and Code tester for testing. After testing is done the job is sent for report generation and then sent back to server At server machine the completed jobs along with their reports are arranged and sent back

    to the respective companies.

    All the above process is carried out manually.

    Drawbacks of Existing System:

    Time consumption Lack of flexibility The current system does take into account the ISO Standards. Hardware requirements and their maintenance are expensive. As the testing is done manually errors are likely to happen. The system is not secured.

    Proposed System:

    The objective of the proposed system is to provide time efficient, user friendly, reliable,

    error free, maintenance free system.

    The system covers following modules:

  • 7/30/2019 Software management for distributed architecture

    7/76

    7

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    1. Server Module2. Client Module

    These modules are integrated and linked together to achieve the principle objectives.

    Server Module:

    Employee Registration Download Jobs Upload Jobs Remove Records Automatic Testing Backup

    Client Module:

    Requests and Registers jobs Upload Jobs

    Advantages:

    Better product quality. As the testing and quality analysis is automated lots of time is reduced. Flexible workload, flexible work hours and flexible location will be available to the

    employees.

    Cost-reduction.

    3.2.2 Need for the project

    As in every organization the testing of software is done manually there rises a need, where

    we can do this procedure automatically.

    To reduce workload on the system. To reduce number of errors To provide flexible work hours for the users

  • 7/30/2019 Software management for distributed architecture

    8/76

    8

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Preliminary Investigation:

    Preliminary Investigation was carried out in the initial stages of the project. The basic

    process of preliminary investigation was carried out under the following stages:

    Understanding the present scenario Understanding the needs. Developing a concept for the system.

    3.2.3 Objectives of the project

    Objective of the System:

    The objective of this project is to upload the files to the clients machine for providing

    jobs for various clients and hence clients will work on the files as per the procedures and upload

    the files back onto the server. We are elaborating this project for uploading and downloading of

    any software based jobs which will help lot of software industries in coming years.

    The objective can be summarized as below:

    Flexible workload: Developers can choose the amount of work they want, that is

    consistent with their training, experience, availability and work available.

    Flexible Hours: Developers can set their own work hours.

  • 7/30/2019 Software management for distributed architecture

    9/76

    9

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    4. HARDWARE AND SOFTWARE REQUIREMENTS

    Our system is intended to work on all Pentium machines, which run Microsoft Windows

    Operating System. The versions of the same like Windows XP and above which all support Java

    Runtime Environment.

    Hardware Requirements

    Pentium Machine RAM of 128 Mb and above Hard Disk with capacity of 20 GB and above. LAN Card.

    Software Requirements

    Windows XP Professional or above IIS (Internet Information Server) J2EE (Java 2 Enterprise Edition) Microsoft Access Jakarta Apache Tomcat Server Macromedia Dreamweaver

  • 7/30/2019 Software management for distributed architecture

    10/76

    10

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    5. SOFTWARE REQUIREMENTS SPECIFICATION

    5.1 Functional Requirements

    We should load the projects onto the server We should be able to test the uploaded projects We should maintain a database to store the details of employees, projects and uploaded

    projects

    We should get appropriate results for tested files5.2 Non-Functional Requirements

    Quick response time Minimized error rate

    5.1 Assumptions

  • 7/30/2019 Software management for distributed architecture

    11/76

    11

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    6. SYSTEM DEFINITION

    6.1 System Design

    CONTEXT LEVEL DATA FLOW DIAGRAM OF EXISTING SYSTEM:

    SYSTEM

    ADMINISTRATOR

    DEVELOPER

    CODE TESTER

    NETWORK

    ADMINISTRATOR

    SERVER

    Employee Details

    Job Details

    Reques

    Rejected Job

    Developed Job

    Job Details

    Test Report

    Completed Job and

    Documentation

  • 7/30/2019 Software management for distributed architecture

    12/76

    12

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    TOP LEVEL DATA FLOW DIAGRAM OF EXISTING SYSTEM:

  • 7/30/2019 Software management for distributed architecture

    13/76

    13

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    CONTEXT LEVEL DATA FLOW DIAGRAM OF PROPOSED SYSTEM:

  • 7/30/2019 Software management for distributed architecture

    14/76

    14

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    TOP LEVEL DATA FLOW DIAGRAM OF PROPOSED SYSTEM:

  • 7/30/2019 Software management for distributed architecture

    15/76

    15

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    DETAILED LEVEL DATA FLOW DIAGRAM OF PROPOSED SYSTEM:

    Unit

    Testing

    5.1

    Module

    Testin

    5.2

    Subsystem

    Testin

    5.3

    System

    Testing

    5.4

    TEST BENCH

    Processed Job

    Test Results

    Test Details

    Rejected

    Job

    Test Results

    Test Results

    Test

    Details

    Test Details

    Test Details

  • 7/30/2019 Software management for distributed architecture

    16/76

    16

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Use-Case Diagram

    Registration

    Request for job

    Process the job

    Generate

    Report

    CLIENT ADMINISTRATOR

    Upload Jobs

    Approval

    ProcessLogin

    Invalid User

  • 7/30/2019 Software management for distributed architecture

    17/76

    17

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Activity Diagram

    FAILURE REPORT

    START

    CREATE PROJECT

    UPLOAD PROJECT

    TESTING PROCESS

    PROJECT REMINDER PROCESS PROJECT

    REQUEST FOR PROJECT

    CREATE USER

    ENTER PASSWORD

    APPROVAL REPORT

    YES

    NO

  • 7/30/2019 Software management for distributed architecture

    18/76

    18

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    6.2 Software paradigm Applied

    There are times when the requirements of a problem are reasonably well understood

    when work flows from communication through deployment in a reasonably linear fashion. This

    situation is sometimes encountered when well-defined adoptions or enhancements to an existing

    system must be made.

    The Waterfall model, sometimes called the classic life cycle, suggests a systematic,

    sequential approach to software development that begins with deciding what is to be done (What

    is the problem). Once the requirements have been determined, we next must decide how to

    accomplish them. This followed by a step in which we do it, whatever it has required us to do.We then must test the result to see if we have satisfied the users requirements. Finally, we use

    what we have done.

    The different phases in waterfall model are

    1. Requirements analysis & definition

    2. System & software design

    3. Implementation & unit testing

    4. Integration & system testing

    5. Operation & maintenance

  • 7/30/2019 Software management for distributed architecture

    19/76

    19

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Waterfall Model

    Communication:

    Project initiation

    RequirementsPlanning:

    Estimating

    SchedulingModelling:

    Analysis

    DesignConstruction:

    Code Deployment:

    Delivery

    Support

  • 7/30/2019 Software management for distributed architecture

    20/76

    20

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    7. DETAILED DESIGN

    Entity-Relationship (ER) Diagram:

    WORKS_FOR MANAGESMgrstdate

    HANDLES

    SYS_ADMIN

    Administrator Administration

    WORKS ON

    Lname

    Mname

    Fname

    E-mail

    Etype

    Essn

    Dname

    Dno

    Name

    Addres

    Address1 Address2

    TOU

    DOU

    TOD

    DOD

    Platform

    Pname

    Pcode

    N

    1

    N

    N

    N

    M

    N

    1

    1

    1

    EMPLOYEE

    DEPARTMENT

    PROJECT

  • 7/30/2019 Software management for distributed architecture

    21/76

    21

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Data Dictionary:

    TABLE NAME: Employee Table

    PURPOSE: To maintain employee details

    PRIMARY KEY: Essn

    FOREIGN: uname,pass

    Field Name Description Type Length Null

    Essn Primary Key Varchar 15 Not Null

    Fname Not Null Varchar 15 Not Null

    Mname Varchar 15

    Lname Not Null Varchar 9 Not Null

    Address1 Varchar 25

    Address2 Varchar 25

    City Varchar 15

    State Varchar 15

    Zipcode Int Int

    Mobile Int Int

    uname Foreign Key Varchar 15 Not Null

    pass Foreign Key Varchar 15 Not Null

    Etype Varchar 10

  • 7/30/2019 Software management for distributed architecture

    22/76

    22

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    TABLE NAME: Project Table

    PURPOSE: To upload projects for clients

    PRIMARY KEY: Pcode

    Field Name Description Data Type Length Null

    Pcode Primary Key Varchar 10 Not Null

    Pname Not Null Varchar 20 Not Null

    Platform Not Null Varchar 15

    Description Text

    DOS Not Null Date Not Null

    ProjectSRS Time

    Category Text

  • 7/30/2019 Software management for distributed architecture

    23/76

    23

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    TABLE NAME: System Table

    PURPOSE: To manage employees user name, password and type

    PRIMARY KEY: uname

    FOREIGN KEY: essn

    Field Name Description Data Type Length Null

    essn Foreign Key Text Not Null

    uname Primary Key Text Not Null

    pass Not Null Text Not Null

    emp_type Not Null Text Not Null

  • 7/30/2019 Software management for distributed architecture

    24/76

    24

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    TABLE NAME: Testbench Table:

    PURPOSE: To maintain tested and completed job files

    Field Name Description Data Type Length Null

    testid Not Null Number Not Null

    Categoryid Not Null Number Not Null

    test_file Not Null Text Not Null

    parameters Not Null Text Not Null

    result Not Null Text Not Null

    TABLE NAME: Upload Table

    PURPOSE: To maintain uploaded files

    FOREIGN KEY: Essn, Pcode

    Field Name Description Data Type Length Null

    Essn Foreign Key Text Not Null

    Pcode Foreign Key Text Not Null

    Pname Text

    DOU Date

    TOU Time

  • 7/30/2019 Software management for distributed architecture

    25/76

    25

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    TABLE NAME: Category Table

    PURPOSE: To maintain categories of project

    Field Name Description Data Type Length Null

    categoryid Not Null Number Not Null

    categoryname Not Null Text Not Null

    TABLE NAME: Download Table

    PURPOSE: To maintain downloaded files

    PRIMARY KEY: Pcode

    Field Name Description Data Type Length Null

    Pcode Primary Key Varchar 10 Not Null

    Pname Not Null Varchar 20 Not Null

    Platform Not Null Varchar 15 Not Null

    Description Text

    DOD Date

    DOS Not Null Date Not Null

    Category Text

  • 7/30/2019 Software management for distributed architecture

    26/76

    26

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    7. IMPLEMENTATION

    Employee Registration:

    Software Management in Distributed Architectue

    .box{margin-bottom:20px;clear:both;}

    .box h2{margin-bottom:10px;}

  • 7/30/2019 Software management for distributed architecture

    27/76

    27

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    function validate(frm)

    {

    if(frm.essn.value=="")

    {

    alert('Enter Employee SSN');

    return false;

    }

    if(frm.fname.value=="")

    {

    alert('Enter Name');

    return false;

    }

    if(frm.address1.value=="")

    {

    alert('Enter Address1');

    return false;

    }

    if(frm.city.value=="")

    {

    alert('Enter City');

    return false;

    }

    if(frm.state.value=="")

    {

  • 7/30/2019 Software management for distributed architecture

    28/76

    28

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    alert('Enter State');

    return false;

    }

    if(frm.mobile.value=="")

    {

    alert('Enter Mobile No');

    return false;

    }

    if(isNaN(frm.mobile.value) == true)

    {

    alert("Enter only number for Mobile Number");

    frm.mobile.focus();

    return false;

    }

    if(frm.email.value=="")

    {

    alert('Enter Email');

    return false;

    }

    if(frm.gender.value==-1)

    {

    alert('Select Gender');

    return false;

    }

    if(frm.etype.value==-1)

    {

  • 7/30/2019 Software management for distributed architecture

    29/76

    29

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    alert('Select User Type');

    return false;

    }

    if(frm.uname.value=="")

    {

    alert('Enter Username');

    return false;

    }

    if(frm.pass.value=="")

    {

    alert('Enter Password');

    return false;

    }

    }

  • 7/30/2019 Software management for distributed architecture

    30/76

    30

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    email=request.getParameter("email");

    gender=request.getParameter("gender");

    etype=request.getParameter("etype");

    uid=request.getParameter("uname");

    pass=request.getParameter("pass");

    try

    {

    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

    java.sql.Connection

    con=DriverManager.getConnection("jdbc:odbc:swtest");

    java.sql.Statement st=con.createStatement();

    java.sql.ResultSet rs=st.executeQuery("Select * from employee where

    essn='"+eid+"' and uname='"+uid+"'");

    while(rs.next())

    {

    flag=true;

    break;

    }

    if(flag)

    {

    out.println("alert('Username or

    Employee SSN already exists')");

    }

    else

    {

    st.executeUpdate("insert into

    Employee(essn,fname,address1,city,state,mobile,email,gender,etype,uname,pass)

    values('"+eid+"','"+fname+"','"+address1+"','"+city+"','"+state+"','"+mobileno+"','"+email+"','"+g

    ender+"','"+etype+"','"+uid+"','"+pass +"')");

  • 7/30/2019 Software management for distributed architecture

    31/76

    31

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    out.println("alert('Client Registered

    Successful')");

    }

    }

    catch (Exception e)

    {

    out.println(e);

    }

    }

    %>

    Software Management In Distributed Architecture

  • 7/30/2019 Software management for distributed architecture

    32/76

    32

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Main Menu

    Home

    Register

    About Us

    Category Section

  • 7/30/2019 Software management for distributed architecture

    33/76

    33

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

  • 7/30/2019 Software management for distributed architecture

    34/76

    34

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Employee

    Registration

  • 7/30/2019 Software management for distributed architecture

    35/76

    35

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Employee Id

    :

    *

    Employee Type

    :

    Select Type

    Client

    Administrator

    Name

    :

    *

    Local Address

    :

    City

  • 7/30/2019 Software management for distributed architecture

    36/76

    36

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    :

    *

    State

    :

    *

    Mobile Number

    :

    *

    Emai Id

    :

    *

    Gender

    :

    Select Gender

  • 7/30/2019 Software management for distributed architecture

    37/76

    37

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Male

    Female

    User Id

    :

    *

    Password

    :

    *

  • 7/30/2019 Software management for distributed architecture

    38/76

    38

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Creating projects:

  • 7/30/2019 Software management for distributed architecture

    39/76

    39

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Software Management in Distributed Architectue

    function validate(frm){

    if(frm.txtProjectCode.value==""){

    alert('Enter Project Code');

    frm.txtProjectCode.focus();

    return false;

    }

    if(frm.txtProjectName.value==""){

    alert('Enter Project Name');

    frm.txtProjectName.focus();

    return false;

    }

    if(frm.txtPlatform.value==""){

    alert('Enter Platform');

  • 7/30/2019 Software management for distributed architecture

    40/76

    40

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    frm.txtPlatform.focus();

    return false;

    }

    }

  • 7/30/2019 Software management for distributed architecture

    41/76

    41

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    ProjectSRS=file.getFileName();

    try{

    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

    java.sql.Connection con=DriverManager.getConnection("jdbc:odbc:swtest");

    java.sql.Statement st=con.createStatement();

    st.executeUpdate("insert into Projects(ProjectCode,ProjectName,Platform,Category,Description,DOS,ProjectSRS)values

    ('"+ProjectCode+"','"+ProjectName+"','"+Platform+"','"+Category+"','"+Description+"','"+DOS+

    "','"+ProjectSRS+"')");

    out.println("alert('Project Added Successfully')");

    }

    catch(Exception e){

    out.println(e);

    }

    }

    else{

    out.println("No uploaded files");

    }

    }

    else out.println("
    todo="+todo);

    }

    %>

  • 7/30/2019 Software management for distributed architecture

    42/76

    42

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Software Management In Distributed Architecture

    Welcome:

    Home

    Add Users

    Edit Users

    Create Projects

    Edit Projects

    Assigned Projects

    Uploaded Projects

    Add Test Bench

    Edit Test Bench

    Add Category

    Edit Category

    Change Credentials

  • 7/30/2019 Software management for distributed architecture

    43/76

    43

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Logout

    Project Code

    :

  • 7/30/2019 Software management for distributed architecture

    44/76

    44

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Project Name

    :

    Platform

    :

    Category

    :

    Select Category

  • 7/30/2019 Software management for distributed architecture

    45/76

    45

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    catch(Exception e){

    out.println(e);

    }

    %>

    Description

    :

    Date of Upload

    :

    Day

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

  • 7/30/2019 Software management for distributed architecture

    46/76

    46

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    30

    31

    Month

    Jan

    Feb

    Mar

    Apr

  • 7/30/2019 Software management for distributed architecture

    47/76

    47

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    May

    Jun

    Jul

    Aug

    Sep

    Oct

    Nov

    Dec

    Year

    2010

    2011

    2012

    2013

    2014

    2015

    Project SRS

    :

  • 7/30/2019 Software management for distributed architecture

    48/76

    48

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

  • 7/30/2019 Software management for distributed architecture

    49/76

    49

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Download and Register projects:

    Home - Home Page | Computers - Free Website Template from Templates.com

  • 7/30/2019 Software management for distributed architecture

    50/76

    50

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Software Management In Distributed Architecture

    Welcome:

    Home

    Download Project

    View Projects

    Uploaded Project

    Upload Report

    View Profile

    Logout

  • 7/30/2019 Software management for distributed architecture

    51/76

    51

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    PROJECT DETAILS

  • 7/30/2019 Software management for distributed architecture

    52/76

    52

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Project Code

    :

    Project Name

    :

    Platform

    :

    Category

    :

    Description

    :

  • 7/30/2019 Software management for distributed architecture

    53/76

    53

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Date of Upload

    :

    Project SRS

    :

    Download

  • 7/30/2019 Software management for distributed architecture

    54/76

    54

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

  • 7/30/2019 Software management for distributed architecture

    55/76

    55

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    catch(Exception e){

    out.println(e);

    }

    }

    %>

    Upload project:

    Home - Home Page | Computers - Free Website Template from Templates.com

  • 7/30/2019 Software management for distributed architecture

    56/76

    56

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Software Management In Distributed Architecture

    Welcome:

    Home

    Download Project

    View Projects

    Upload Project

    Uploaded Projects

    View Profile

    Logout

  • 7/30/2019 Software management for distributed architecture

    57/76

    57

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Category

    Select Category

  • 7/30/2019 Software management for distributed architecture

    58/76

    58

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Project

    Select Project

  • 7/30/2019 Software management for distributed architecture

    59/76

    59

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    java.sql.Connection con=java.sql.DriverManager.getConnection("jdbc:odbc:swtest");

    java.sql.Statement st=con.createStatement();

    java.sql.ResultSet rs=st.executeQuery("Select * from downloads where

    uname='"+session.getAttribute("uname")+"'");

    while(rs.next()){

    %>

    Select File

  • 7/30/2019 Software management for distributed architecture

    60/76

    60

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

  • 7/30/2019 Software management for distributed architecture

    61/76

    61

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    pname=file.getFileName();

    }

    else {

    out.println("No uploaded files");

    }

    Calendar cal=Calendar.getInstance();

    int dd=cal.get(Calendar.DATE);

    int mm=cal.get(Calendar.MONTH)+1;

    int yy=cal.get(Calendar.YEAR);

    dup=mm+"/"+dd+"/"+yy;

    cid=mrequest.getParameter("cid");

    pno=mrequest.getParameter("pno");

    fname=pname;

    File f1=new File("C:\\tomcat\\webapps\\examples\\softwaretest1\\uploadfile\\comp.bat");

    FileWriter fr=new FileWriter(f1);

    fr.write("javac C:\\tomcat\\webapps\\examples\\softwaretest1\\uploadfile\\"+pname+"\n");

    fr.write("\n\n\n");

    fr.write("Exit");

    fr.close();

    try{

    Runtime r=Runtime.getRuntime();

    Process P;

    P=r.exec("C:\\tomcat\\webapps\\examples\\softwaretest1\\uploadfile\\comp.bat");

    try {

    String clsname = pname.substring(0,pname.length()-4);

    String dataq=clsname;

    out.println(dataq);

  • 7/30/2019 Software management for distributed architecture

    62/76

    62

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    String[] res = dataq.split("\\.");

    FileInputStream fin = new

    FileInputStream("C:\\tomcat\\webapps\\examples\\softwaretest1\\uploadfile\\test.class");

    fin.close();

    exist = true;

    out.println("Compile Test Passed
    ");

    out.println("Black box testing Passed
    "); }

    catch(IOException e){

    exist = false;

    //out.println(e);

    out.println("Compile Test Failed");

    out.println("Black box testing Failed
    "); }

    if(exist){

    String input_file="", parameter="", result="";

    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

    java.sql.Connection con = java.sql.DriverManager.getConnection("jdbc:odbc:swtest");

    java.sql.Statement stmt = con.createStatement();

    System.out.println(cid);

    java.sql.ResultSet rs = stmt.executeQuery("select * from

    testbench where categoryid='"+ cid+"'");

    while(rs.next()){

    input_file = rs.getString("testfile");

    parameter = rs.getString("parameter");

    result = rs.getString("result"); }

    String clsname1 = pname.substring(0,pname.length()-5);

    FileWriter fr1=new FileWriter(f1);

    fr1.write("java "+clsname1+" "+input_file+" "+parameter);

    fr1.close();

  • 7/30/2019 Software management for distributed architecture

    63/76

    63

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Runtime r1=Runtime.getRuntime();

    Process P1;

    P1=r1.exec("C:\\tomcat\\webapps\\examples\\softwaretest1\\uploadfile\\comp.bat");

    FileReader fread = newFileReader("C:\\tomcat\\webapps\\examples\\softwaretest1\\uploadfile\\output.txt");

    BufferedReader br = new BufferedReader(fread);

    char[] buff = new char[100096];

    int nch;

    while ((nch = br.read(buff, 0, buff.length)) != -1) {

    ftext = new String(buff, 0, nch); }

    fread.close();

    if(ftext.equals(result)){

    out.println("Operational test Passed
    ");

    exist = true; }

    else{

    exist = false;

    File f2 = new File(pname);

    f2.delete();

    out.println("Operational Test Failed
    ");

    }

    if(exist){

    String up_date="";

    rs=stmt.executeQuery("Select * from downloads where projectcode='"+ pno+"'");

    while(rs.next()){

    eno=rs.getString("uname");

    pnm=rs.getString("projectname");

    platform=rs.getString("platform");

  • 7/30/2019 Software management for distributed architecture

    64/76

    64

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    description=rs.getString("description");

    up_date = rs.getString("dos");

    }

    Calendar calendar1 = Calendar.getInstance();

    Calendar calendar2 = Calendar.getInstance();

    int umm=Integer.parseInt(up_date.substring(0,2));

    int udd=Integer.parseInt(up_date.substring(3,5));

    int uyy=Integer.parseInt(up_date.substring(6,10));

    calendar2.set(uyy, umm, udd);

    calendar1.set(yy, mm, dd);

    long milliseconds1 = calendar1.getTimeInMillis();

    long milliseconds2 = calendar2.getTimeInMillis();

    long diff = milliseconds2 - milliseconds1;

    long diffDays = diff / (24 * 60 * 60 * 1000);

    if(diffDays>=0){

    stmt.executeUpdate("insert intouploads(uname,projectcode,projectname,DOU,TOU,platform,description) values

    ('"+eno+"',"+pno+",'"+pnm+"','"+dup+"','"+tup+"','"+platform+"','"+description+"')");

    stmt.executeUpdate("delete from downloads where projectcode='"+ pno+"'");

    out.println("Regression Testing Passed
    ");

    out.println("Project Accepted
    ");

    }

    else{

    out.println("Regression Testing Failed
    ");

    out.println("You are trying to submit project after Due Date, Hence it is rejected
    ");

    }

    con.close();

    }

  • 7/30/2019 Software management for distributed architecture

    65/76

    65

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    }

    }

    catch(Exception e){

    out.println(e);

    }

    }

    else out.println("
    todo="+todo);

    }

    %>

  • 7/30/2019 Software management for distributed architecture

    66/76

    66

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    9. TESTING AND RESULTS

    Testing:

    The Primary and Larger objective of testing is to deliver quality software. Qualitysoftware is one that is devoid of error and meets with customers stated requirements.

    If errors are found, then the software must be debugged to locate these errors in the

    various parts of the program. Corrections are then made. The program/system must be tested

    once again after corrections have been implemented- this time with additional objective of

    finding out whether or not corrections in one part of the system have introduced any new errors

    elsewhere in the system.

    Once all errors are found, then another objective must be accomplished that is to check whether

    or not the system is doing what it is supposed to do. So another aspect of testing is that it must

    also ensure that the system meets with user requirements.

    Here are some of the testing techniques:

    1. Unit testing2. Module Testing3. Sub System Testing4. System Testing5. Black Box Testing6. White Box Testing

    The Testing Cases used in this project are as follows:

    1. Unit Testing:

    Individual components are tested to ensure that they operate correctly. Each

    component is tested independently without other system components.

    2. Module Testing:

  • 7/30/2019 Software management for distributed architecture

    67/76

    67

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Module is collection of independent components such as an object class, an

    abstract data type or some loser collection of procedures and functions. A module

    encapsulates related components so can be tested without other modules.

    3. Sub System Testing:

    This phase involves testing collection of modules, which have been integrated

    into subsystems. Subsystems may be independently designed and implemented. The most

    common problems, which arise in the large software systems, are subsystems interface

    mismatches. The subsystem test process should therefore concentrate on the detection of

    interface errors by rigorously exercising these interfaces.

    4. System Testing:

    The subsystems are integrated to makeup the entire system. The testing process is

    concerned with finding errors, which result from unanticipated interactions between

    subsystems and system components. It is also concerned with validating that the system is

    functional or non-functional requirements.

    5. Black Box Testing:

    This is a technique that assumes no knowledge of the internals of software program. It

    focuses the attention of a tester on providing a certain input and getting the desired output. If the

    desired output is not got then an error is reported and the system should be able to return back to

    its earliest status. While this test is being conducted the tester is not expected to determine how

    many lines of code were executed to achieve, were all loops executed etc.

    6. White Box Testing:This is done with intention of determining whether or not all parts of a program code are

    executed. Test cases are designed. Test cases are designed to execute all paths of a loop, all

    branches in a decision, which, ultimately leads to 100% execution of statements in a program.

  • 7/30/2019 Software management for distributed architecture

    68/76

    68

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Results:

    Home page:

    Employee Registration:

  • 7/30/2019 Software management for distributed architecture

    69/76

  • 7/30/2019 Software management for distributed architecture

    70/76

    70

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Creating projects:

    Viewing projects:

  • 7/30/2019 Software management for distributed architecture

    71/76

    71

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Client page:

    Download and Register projects:

  • 7/30/2019 Software management for distributed architecture

    72/76

    72

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    View registered projects:

    Upload project:

  • 7/30/2019 Software management for distributed architecture

    73/76

    73

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    Uploaded project:

  • 7/30/2019 Software management for distributed architecture

    74/76

    74

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    10. CONCLUSION

    The Software Management System can be used by users who are well trained in the

    environment. The user must have some knowledge of computer network in order to use the

    system.

    Using software management system for the above mentioned applications, it helps many

    software industries to break the work load and complete the work quickly and it also provides

    flexible work hours for clients.

  • 7/30/2019 Software management for distributed architecture

    75/76

    75

    K. L. E. COLLEGE, BELGAUM DEPT. OF MCA

    SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    11. FUTURE ENHANCEMENT

    Future Enhancements:

    1. As the software provides automatic testing for limited types of softwares, we can enhancethis software by providing automatic testing for all types of softwares.

    2. There are always chances of improving or enhancement of this project by adding morefeatures or also by modifying the existing features.

    3. The same software can be rebuilt using various web developing tools and languages forbetter efficiency and reliability.

    Limitations:

    1. As the physical distance between client and server is large, network related problemshave not been taken care.

    2. As this software does not take care of accountability of employees the organization haveto maintain it manually.

    3. The software provides automatic testing for limited types of softwares.

  • 7/30/2019 Software management for distributed architecture

    76/76

    76SOFTWARE MANAGEMENT IN DISTRIBUTED ARCHITECTURE

    12. BIBLIOGRAPHY

    S.No Title of the Book/Paper Author

    1) Internet & World Wide Web

    How To Program

    Deitel & Deitel

    Goldberg

    2) The Complete Reference J2EE Herbert Schildt

    3) Introduction To Data Base Systems Elmasri and Navathe

    4) Oracle Handbook SSI Press

    5) System Analysis And Design Elias M. Awad

    6) Software Engineering Ian Somerville