End Report

  • Uploaded by: Neal Martinez
  • 0
  • 0
  • July 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View End Report as PDF for free.

More details

  • Words: 8,817
  • Pages: 57
1 A REPORT

ON

AUTOMATIC ALERT GENERATION ON NON-OPERATION OF AN ISSUE IN OVSD FOR 48 HOURS

BY

RUTWIK, BHYROUBHOTLA KRISHNA SAI 2006A7PS057G AT

HP GLOBALSOFT, CHENNAI

A PRACTICE SCHOOL - II STATION OF

BIRLA INSTITUTE OF TECHNOLOGY & SCIENCE, PILANI December 2009

2

A REPORT ON AUTOMATED ALERT GENERATION ON NON OPERATION OF AN ISSUE IN OVSD FOR 48 HOURS BY BHROUBHTOLA KRISHNA SAI RUTWIK 2006A7PS057G B.E (Hons). COMPUTER SCIENCE AND ENGINEERING Prepared in partial fulfillment of the Practice School – II Course No. BITS C412/ BITS C413/ BITS G639 AT HP GLOBALSOFT., CHENNAI A PRACTICE SCHOOL-II STATION OF

BIRLA INSTITUTE OF TECHNOLOGY & SCIENCE, PILANI December, 2009

3 BIRLA INSTITUTE OF TECHNOLOGY AND SCIENCE PILANI (RAJASTHAN) Practice School Division Station: HP globalsoft, BSAS

Center: Chennai

Duration: From: 13th July To: 18th December Date of Submission: 4th December 2009 Title of the Project: Automated alert generation on non-operation of ticket for 48 hours in OVSD ID No. Name of the Student Discipline: Bhyroubhotla Krishna Sai Rutwik 2005A7PS057G, B.E. (Hons.) Computer science and engineering Name of Expert Designation: Mr. Natarajan, Saravanakumar Name of the PS Faculty: Mr. V. R. Rajan Key Words: SMTP server configuration, Open View Service Desk (HP Proprietary) (OVSD), Date conversion and checking. Keystroke and mouse click macro. Project Area: JAVA and automation (API automation) Abstract: This project aims at sending a mail to the manager if a ticket \ issue has not been worked upon in the past 48 hours either since its acceptance or after the status change. The acceptance is done once the ticket is arrived in the ovsd from the customer and by the shift support team by ticking off the deadline box, the status is automatically changed to “in pending”. Otherwise after this change the ticket has to be operated upon by the person who it has been assigned to. If there is no log entry or any sort of status change or work on the ticket for 48 hours in a row, the tool has to automatically generate a mail to the manger saying “The ticket no so and so has not been worked upon for the past 2 days.” This is the function of the alert generating tool that I am working on. The receiver and the sender and the server are all preconfigured. Also the method I am working is based on keyboard and mouse click macro that is provided by autohotkey tool and it is used for reading the last log entry which is also the last time the ticket has been operated upon. When this macro is run recurring ly. The code fetches the date from the last log and compares with the current system date and finds the difference and is run for all tickets whose status is not “resolved” and for every 10 minutes and once this is found, a mail will be triggered to the receiver.

Signature of the Student Date:

Signature of the Expert Date:

Signature of PS Faculty Date:

4 BIRLA INSTITUTE OF TECHNOLOGY AND SCIENCE PILANI (RAJASTHAN) Practice School Division Response Option Sheet Station: HP Global soft. GDAS

Centre: Chennai

ID No. & Name: 2006A7PS057G, Bhyroubhotla Krishna Sai Rutwik Title of the Project: 1) Automated alert generation on non-operation of issue for 48 hours in OVSD. Code no. 1 2 3

4

5

Signature of Student

Response options A new course can be designed out of this project This project can help modification of some of the existing courses The project can be used in some of the CDC\DCOC\emerging areas as a project etc. This project can be used in preparatory courses like analysis and application oriented courses (AAOC) \ Computer science (CS) \technical art (TA) and core courses. This project cannot come under any of the above mentioned options as it relates to the professional work of the host organization

Course no. and name No No Yes ( OOP is a possible course) No

Yes

Signature of Faculty

5

ACKNOWLEDGEMENTS I express my deep gratitude to Vajjiravelu Nemasayee and Ganesh Natarajan, Head and manager for giving me this golden opportunity to undertake this project. I would like to thank Ms. Radha, PS-2 coordinator and HR, for having me allotted to this wonderful place of Clorox- HP and her continuous support to us during all the six months and ensuring of no problems happening what so ever. I would also like to thank Mr. Saravanakumar Natarajan and Subash Pandian who were my project mentors during this period and who taught me how to approach the object of data warehousing in a real world. I’m grateful to them for their help in my previous project, without whom the project would not have been possible.

It would be a grave mistake if I would not mention my gratefulness to Mr. VR Rajan, my PS Instructor, who in spite of having tough times carried out his responsibilities towards us with ease and perfection. He also guided us towards critical decisions to be taken in life through his stimulating group discussions. My heartfelt thanks to him on my and my co students’ behalf.

6

TABLE OF CONTENTS S.No Topic

Page

1 1.01 1.02 1.1 1.2 1.3 1.3.1 1.4 1.4.1

INTRODUCTION Organization profile Objective Project details of auto mail alert Recurring code Calendar Code Project details of EES Methodology Technologies that are in Tool usage

2 4 7 8 11 13 15 17 18

2 2.1 2.1.1 2.1.2 2.1.3

SOFTWARE About the software Visual studio.net and common feat. ASP architecture Oracle 9i

19 19 19 20 21

3

PROBLEM Description and designation

22

4 4.1 4.2 4.3 4.3.1 4.3.2 4.3.3

SYSTEM ANALYSIS Existing system Proposed system Feasibility study Economic feasibility Technical feasibility Operational feasibility

23 23 23 24 25 25 25

5 5.1 5.2 5.3 5.4

SYSTEM DESIGN Dataflow diagrams UML diagrams Database design Module description

26 26 31 40 41

6 6.1 6.2 6.3 6.4 6.5 6.6

TESTING Software testing Unit testing Integration testing Validation testing Stress testing Alpha and beta testing

44 44 45 45 46 46 46

7 7.1

SYSTEM IMPLEMENTATION Implementation methods

47 47

7 7.2 7.3 7.4

Implementation plan Education and Training System maintenance

47 47 48

8

CONCLUSION

49

9

REFERENCES

50

8

CHAPTER 1 1. INTRODUCTION The primary project is titled “Automated alert generation on non-operation of ticket for 48 hours in OVSD” This project aims at sending a mail to the manager if a ticket \ issue has not been worked upon in the past 48 hours either since its acceptance or after the status change. The acceptance is done once the ticket is arrived in the ovsd from the customer and by the shift support team by ticking off the deadline box, the status is automatically changed to “in pending”. Otherwise after this change the ticket has to be operated upon by the person who it has been assigned to. If there is no log entry or any sort of status change or work on the ticket for 48 hours in a row, the tool has to automatically generate a mail to the manger saying “The ticket no so and so has not been worked upon for the past 2 days.” This is the function of the alert generating tool that I am working on. The receiver and the sender and the server are all preconfigured. Also the method I am working is based on keyboard and mouse click macro that is provided by autohotkey tool and it is used for reading the last log entry which is also the last time the ticket has been operated upon. When this macro is run recurring ly. The code fetches the date from the last log and compares with the current system date and finds the difference and is run for all tickets whose status is not “resolved” and for every 10 minutes and once this is found, a mail will be triggered to the receiver.

The “EFFORT ESTIMATION STIMULATOR“is a tool that handles in calculating the effort involved in the project. Estimation for software project carries inherent risk because of uncertainty in project complexity, project size, and structure (of requirements and problem to be solved).Problem Based estimation is done. Based on the software scope, decompose the software into problem functions that can be estimated individually. This tool estimates the effort involved in developing a software in various stages including analysis, design, coding testing and implementation. It also analyses the work flow changes involved while processing a change request. The developers can calculate the efforts involved in the project or in CR and it is send to the project manager

9 for review. Once the manager approves the estimate the developer is allowed to carry on with the project. Else the project is disapproved. The purpose of this tool is to provide a practical orientation to software complexity analysis. Software complexity analysis can provide meaningful information to the analyst. The tool handles  overall effort estimation  Insight into the software structure  Identification of critical software components  Assessments of relative risk areas within a software system  Identification of testing deficiencies  Recommendations for program improvement  identification of risk factors

10

1.01. ORGANIZATION PROFILE Hewlett-Packard (HP) Globalsoft is a globally focused Software Development and IT services company. Global Soft has its own charter for growth and functioning and enjoys the unique advantage of having HP, as a major investor, customer and supporter. HP Global Soft is headquartered in Bangalore, India, and has a fully trained complement of software professionals with diverse technical skill sets. HP Global Soft’s exclusive focus is on: •

Software enabled by stringent quality standards.



Exceptional resource capabilities.



Consistent record of delivering solutions to clients, on time.

HP Global Soft has: •

A comprehensive portfolio of software & IT services with a focus on e-Business solutions.



Skills in methodologies for life cycle services such as Migration, Technical and Application Services.

HP Global Soft has years of experience in: •

Platforms such as Hewlett- Packard UNIX, Solaris, Open VMS and Windows NT.



Hewlett-Packard Global Soft has also built strong skills in Linux, NSK and offers Non-Stop Unix.



Communications, messaging system software, web applications, and E-infrastructure For 70 years, HP has helped people, businesses, and communities around the

world apply technology in meaningful ways by harnessing new thinking and ideas to deliver reliable products and services. We base our solutions on intuitive technology that hides complexity inside, where it belongs, so our customers’ lives are enriched and their

11 IT experiences are simpler, smarter, and more manageable. This allows them to spend less time worrying about technology and more time focusing on what really matters.

Serving Enterprises At HP, we continually explore how technology and services can create new and better ways for people to live, work, and play. Every day, we partner with our largest customers to transform their current IT environments into business assets. We recognize that CIOs are now business managers who specialize in technology. We work hard to help them create more manageable IT environments that cost less to operate and deliver more value to the business. That can mean consolidating their IT infrastructures, speeding access to information, enabling faster communication between branch offices and headquarters, or helping them deal with obsolete IT equipment. HP solutions leverage our broad portfolio—from servers and storage to software and services, imaging and printing, and personal computing technology—to help companies drive growth, lower business risk, and cut costs.

Serving Small and Midsize Businesses HP is changing the way smaller companies do business, too. We help businesses connect with their customers and increase revenue with proven solutions for mobility, security, business protection, and point of sale. And with a broad range of printing and imaging products and services, HP helps these companies stand out and decrease their overall printing costs by printing their low-volume marketing collateral in-house. With HP’s new online and in-store offerings from Logo works by HP, small businesses have access to a network of professional designers and retail partners to help build their brand identity.

Serving Consumers

12 Consumers around the world want to easily access information, entertainment, and digital services and share them with others. HP applies technology to make these experiences simpler and more rewarding as well. That means making it easier for people to print, store, and share their digital photographs. With HP technology, consumers can express themselves with long-lasting, high-quality photos, posters, and imaginative memory books created either in their home using a wide range of Photo smart printers, online through Snap fish by HP, or at their local retail store. We’re also making it simpler and easier for consumers to lead a high-definition lifestyle. That’s why we’ve developed products such as HP Media Smart Connect and the HP Media Smart Server. HP Media Smart Connect is an advanced digital media receiver that turns any HDTV into a nextgeneration connected TV, allowing consumers to enjoy their favorite photos, music, movies, and videos—wired or wirelessly—from multiple PCs around the home to the “big screen” in the heart of the home. Plus our HP Media Smart Server allows consumers to connect multiple computers around the home and back up, access, and share their files from one, centralized location.

13

1.02. OBJECTIVE

The objective of the first project titled “AUTOMATED MAIL GENERATION IN CASE OF NON OPERATION OF OVSD FOR 48 HOURS” is that to remove any delay in case of solving tickets from the customer and respond immediately in case of any delay because as soon as a limit is crossed the mail is sent to the manager and he makes sure the work goes ahead without anymore pending. The immediate response will be a thing that will be looked upon by both the corporation and customer. The

objective

of

the

tool

entitled

“SOFTWARE

EFFORT

ESTIMATION

STIMULATOR” facilitates the developer to estimate the effort involved in a software project development. The other earlier project of whose details I am excluding here was titled” Studying and implementing the tools used at various levels of EDW process”.

Objective: We are given a set of flat files from the customers which contain daily data reports on Store facts, Customer facts, Consumption reports, etc. These have to be loaded into the Oracle Databases \Data warehouses using the ETL tool and applying a logic suiting the needs of the customer. Then the reports are generated from the databases and sent to the management for evaluation.

The former helps in alerting the manager in any pending issues towards the customer that might reflect badly upon the manager and also on the organisation and might levy any penalties on the corp. while the latter aids the developer in analyzing the effort involved in change request management. The tool predicts the feasibility and complexity of the software project.

14 The motive behind these applications is to reduce the manual labor and time involved in performing various management and technical related activities. The objective is to develop applications which will be used by the EDW employees of hp for effort estimation without having to spend lot of time for it. 1.1 PROJECT DETAILS OF AUTO MAIL ALERT.

The main project was based on OVSD a tool made for reception of complaints from customers of all categories directly to the service levels. The complaint received has to be resolved within 2 to 3 days and else a mail has to be generated to the management. This project has been entitled “AUTOMATED MAIL GENERATION IN CASE OF NON OPERATION OF OVSD FOR 48 HOURS”. The codes are all configured in java and run in the IDE and can be tested with parametric values from a sample notepad provided the ODB is there for the OVSD in the server. The mail configured is that of the manager and sender is a block id configured from my personal mail. The codes have been included and briefed over as the tool is finally not configured. The codes include 1) The date taker and checker 2) The ticket no and log entry resolver 3) The recurring code for every 5 minutes to check upon ticket status The macro of the keyboard has been explained over and how to obtain is mentioned. The codes that follow are sequentially as mentioned. int startIndex = info.indexOf("Date received"); int endIndex = info.indexOf("Service"); String required = info.subString(startIndex, endIndex); String str[] = required.split(":");

15 String Date = str[1];

This code fetches the date from the log whenever the log is copied to a text file. The macro for this is pretty easy and can be made from autohotkey tool. The proper sequence for this macro will be to open ovsd open a notepad, file the log and copy the log field paste the last log and extract the date and time from it.

* To change this template, choose Tools | Templates * and open the template in the editor. */ package javaapplication1; import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; import java.util.TimeZone; /** * * @author rutwiK */ public class Main { /** * @param args the command line arguments */ public static void main(String[] args) {

16 Date d = new Date(); int currMonth = d.getMonth() + 1; int currDate = d.getDate(); int currHour = d.getHours(); int currMin = d.getMinutes(); int currYear = d.getYear(); String data = new String("Tuesday 11-01-2009 EST 13:45"); String list[] = data.split(" "); // getting only the time say 13:45 String time = list[list.length - 1]; // splitting th time into hrs mins String[] timeSplit = time.split(":"); int hour = new Integer(timeSplit[0]); int min = new Integer(timeSplit[1]); // splitting the date to month day year String date = list[1]; String dateSplit[] = date.split("-"); int month = new Integer(dateSplit[0]); int dateOfMonth = new Integer(dateSplit[1]); int year = new Integer(dateSplit[2]); String diff = (new Integer(currMonth - month).toString()) + "month

"

+

Integer(currHour "Minutes";

}

((new -

Integer(currDate

hour))*60

+

new

-

dateOfMonth)*24

Integer(currMin

-

+

min)

new )

+

17 }

1.2 CODE 2 This is the code for running the recurring code and rechecking by entering the ticket id as the parameter. The following code is for generating the mail and configuring the SMTP receiver for the manager and I can use my own email id as the dummy address for the mail generation. /* * To change this template, choose Tools | Templates * and open the template in the editor. */ package javaapplication1; import javax.mail.*; import javax.mail.internet.*; import java.util.*; * @author saI RutwiK */ public class Main { /** * @param args the command line arguments */ public static void main(String[] args) { boolean debug = false; Properties props = new Properties();

18 props.put("mail.smtp.host", "[email protected]"); props.put("mail.smtp.auth", "true"); Session session = Session.getDefaultInstance(props, auth); session.setDebug(debug); Message msg = new MimeMessage(session); InternetAddress from = new InternetAddress("[email protected]"); msg.setFrom(from);

InternetAddress

to

=

new

InternetAddress("[email protected]"); msg.setRecipients(Message.RecipientType.TO, to); msg.addHeader("MyHeaderName", "fill in header u want"); msg.setSubject("watever subject u want"); msg.setContent(" like trouble ticket blah blah", "text/plain"); Transport.send(msg); } } private class SMTPAuthenticator extends javax.mail.Authenticator { public PasswordAuthentication getPasswordAuthentication() { String username = new String("[email protected]"); String password = new String("ur password");

19 return new PasswordAuthentication(username, password); }}}

1.3 Code 3 This mail is generated once the code for the difference between the latest log time stamp and the current system time is run checking all the tickets’ timestamp and finally confirming if the difference between any tickets last log entry and current system time is greater than 48 hours. Then the mail is automated to the manager with the content “The ticket with this particular Id has not been operated upon or acted upon for the past 48 hours. The final code for checking the time difference is followed up. This again has to be performed from a macro after copying the latest date in the notepad. Calendar obj = Calendar.getInstance(); /* * To change this template, choose Tools | Templates * and open the template in the editor. */ package javaapplication1; import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; import java.util.TimeZone; /** * * @author RutwIk */ public class Main {

20 /** * @param args the command line arguments */

public static void main(String[] args) { Date d = new Date(); int currMonth = d.getMonth() + 1; int currDate = d.getDate(); int currHour = d.getHours(); int currMin = d.getMinutes(); int currYear = d.getYear(); String data = new String("Tuesday 11-01-2009 EST 13:45"); String list[] = data.split(" "); // getting only the time say 13:45 String time = list[list.length - 1]; // splitting th time into hrs mins String[] timeSplit = time.split(":"); int hour = new Integer(timeSplit[0]); int min = new Integer(timeSplit[1]); // splitting the date to month day year String date = list[1]; String dateSplit[] = date.split("-"); int month = new Integer(dateSplit[0]); int dateOfMonth = new Integer(dateSplit[1]);

21 int year = new Integer(dateSplit[2]); String diff = (new Integer(currMonth - month).toString()) + "month

"

+

Integer(currHour

((new -

Integer(currDate

hour))*60

+

new

-

dateOfMonth)*24

Integer(currMin

-

+

min)

new )

+

"Minutes"; }.

This code finishes the final requirement and compares the date which comes in the Eastern Standard Time and with each checking converts it into the Indian standard time and checks the difference. The project entitled “EFFORT ESTIMATION STIMULATOR “is a tool that handles in calculating the effort involved in the project. Estimation for software project carries inherent risk because of uncertainty in project complexity, project size, and structure (of requirements and problem to be solved).Problem Based estimation is done. Based on the software scope, decompose the software into problem functions that can be estimated individually. This tool estimates the effort involved in developing software in various stages including analysis, design, coding testing and implementation. It also analyses the work flow changes involved while processing a change request. The developers can calculate the efforts involved in the project or in CR and it is send to the project manager for review. Once the manager approves the estimate the developer is allowed to carry on with the project. Else the project is disapproved. The tool can handle CR in the following technologies like Informatica, Hyperion, Sql Server, UNIX, and Oracle. The main modules of the “EFFORT ESTIMATION STIMULATOR” are 1. Admin 2. Software Effort Estimation 3. CR Effort Estimation 4. MIS(Management Information System)

22

The block diagram of the “EFFORT ESTIMATION STIMULATOR” is given below

Block Diagram

Overall Estimate

CR Estimate User

User Interface

Data Store MIS

System Management

Fig 1.1 Block diagram

23

1.4. METHODOLOGY To calculate the effort Involved Function Points Method is used for fast and accurate effort estimation. Since Function Points measures systems from a functional perspective they are independent of technology. Regardless of language, development method, or hardware platform used, the number of function points for a system will remain constant. The only variable is the amount of effort needed to deliver a given set of function points; therefore, Function Point Analysis can be used to determine whether a tool, an environment, a language is more productive compared with others within an organization or among organizations. This is a critical point and one of the greatest values of Function Point Analysis.  External Inputs (EI): Control or business information coming from out of system boundary–Ex) user input / sensor data  External Outputs (EO): Derived data from calculation or applying algorithms, sent to outside–Ex) graphics, reports  External Inquiry (EQ): A process that retrieves data from ILF or EIF, including no calculation  Internal Logical Files (ILF): Data that reside within application boundary–Ex) database, masterfile.  External Interface Files (EIF): Data that reside outside the application and is maintained by other applications, used for reference purposes only. Example help message, reference data etc.

24

The below diagram describes the overview of the estimation process

Fig 1.2 Overview of Estimation Process 1.4.1

TECHNOLOGIES THAT CAN BE HANDLED USING THE TOOL

The tool can handle CR in the following technologies.  Unix  Oracle  SQL  Informatica

25  Hyperion

2.1. ABOUT THE SOFTWARE 2.1.1Visual Studio.Net & Its Common Features Microsoft Visual Studio.Net is an Integrated Development Environment (IDE) which is a successor of Visual Studio 6. It eases the development process of .Net Applications by a great deal for VC#.Net, VB.Net, VC++.Net, JScript.Net, J#.Net, ASP.Net, etc. The revolutionary approach in this new Visual Studio.Net is that for all the Visual Studio.Net Compliant Languages there is the same IDE, debugger, project and solution explorer, class view, properties tab, tool box, standard menu and toolbars. The key features of visual studio.Net include: 1. Keyword and syntax highlighting 2. Intelligence (auto complete), which helps by automatically completing the syntax as you type a dot (.) with objects, enumerations, namespaces and when you use the new keyword. 3. Project and solution management with solution explorer that helps to manage applications consisting of multiple files, which is what usually happens. 4. Help building user interface with simple drag and drop over form window. 5. Properties tab that allow you to set different properties on a number of windows and web controls. 6. Standard debugger that allows you to debug your program by putting break points for observing run-time behavior of program. 7. Hot compiler that checks the syntax of your code as you type it and reports any errors present. 8. Dynamic Help on a number of topics using the Microsoft Development Network (MSDN) library. 9. Compilation and building applications. 10. Execution of your application with/without the debugger. 11. Deploying your .Net application over the Internet or on CDs.

26 A Project is a combination of executable and library files that make an application or module. A project's information is usually placed in a file with the extention '.vbproj' where 'vb' represents Visual Basic. Similarly, C#.Net projects are stored as '.csproj' files. There are several different kinds of projects such as Console Applications, Windows Applications,

ASP.Net

Web

Applications,

Class

Libraries

and

more.

A solution on the other hand is a placeholder for different logically related projects that make some application. For example, a solution may consist of an ASP.Net Web Application project and a Windows Form project. The information for a solution is stored in '.sln' files and can be managed using Visual Studio.Net's Solution Explorer. Solutions are similar to VB 6'

2.1.2. ASP.NET ARCHITECTURE ASP.NET is broken down into 3 layers: the ASP.NET Application, as the base layer, with ASP.NET Pages and ASP.NET Web Services sitting on top of the application. The application represents the entire solution, with ASP.NET Pages representing the user interface, and Web Services exposing selected functionality of the application.

Fig 2.4.1 ASP.NET Architecture Web Forms is an ASP.NET technology used on the server to dynamically generate web pages. These pages utilize server-based programmable user interfaces called Web Forms controls that encapsulate common functionality.

27

2.1.3 ORACLE 9i Top Ten New Features in Oracle 9i Oracle9i is the latest major version of the Oracle database. This release covers a broad range of functionality, expanding the reach and depth of the features in Oracle8i. We have updated our Oracle Essentials book to cover the new features in Oracle9i. The following list is, in our judgment, the ten most significant new facets of the Oracle9i database--plus one more feature as a lagniappe. 1. Real Application Clusters If you have paid attention to any of the hype surrounding the launch of Oracle9i, you have no doubt heard about Real Application Clusters. In a nutshell, Real Application Clusters are a way to have an Oracle9i database spread across multiple machines in a cluster of servers, with each server extending both the scalability and the availability of the entire cluster. Real Application Clusters use a technology called cache fusion to make the existence of a cluster transparent to an application. You can run any type of application, from an OLTP (online transaction processing) application to a data warehouse, on a Real Application Clusters database, without modifying your code. 1. Dynamic Memory Pools 2. Data Guard 3. Flashback Query 4. XMLType 5. FastStart Recovery 6. Two-Pass Recovery . 7. Zero Data Loss 8. Buffer Cache Advisory 9. External Tables

28 10. MultiTable inserting

CHAPTER 3 3. PROBLEM DESCRIPTION AND DEFINITION The purpose of effort estimation is to calculate the effort in time required to develop a software project. CR-estimation involves in analyzing the different changes that can come in various technologies and estimating the total effort. Existing system which is used for this purpose is an excel sheet which is manually maintained. It is a single user system and hence data can’t be shared The excel sheet is edited each time to add new technologies and to calculate total effort. Each CR is given a particular weightage based on the experience and expertise method. Each application and technology is given a particular weightage and complexity. The estimated CRs and other project details are stored in files.A strong database is not maintained. It is a tedious task to retrieve a particular CR estimate or project estimation. The report generation facility is not available in the existing system. Another drawback with the existing system is that the developer has to send email regarding the effort estimate by opening outlook and send email separately. This has to be done for all the agents, their Team Leads and their managers. This involves lot of manual labor and time.

29

CHAPTER 4 4. SYSTEM ANALYSIS 4.1. EXISTING SYSTEM The purpose of effort estimation is to calculate the effort in time required to develop a software project. CR-estimation involves in analyzing the different changes that can come in various technologies and estimating the total effort. Existing system which is used for this purpose is an excel sheet which is manually maintained. It is a single user system and hence data can’t be shared The excel sheet is edited each time to add new technologies and to calculate total effort. Each CR is given a particular weightage based on the experience and expertise method. Each application and technology is given a particular weightage and complexity. The estimated CRs and other project details are stored in files. A strong database is not maintained. It is a tedious task to retrieve a particular CR estimate or project estimation. The report generation facility is not available in the existing system. Another drawback with the existing system is that the developer has to send email regarding the effort estimate by opening outlook and send email separately. This has to be done for all the agents, their Team Leads and their managers. This involves lot of manual labor and time.

4.2. PROPOSED SYSTEM The EES (Effort Estimation Stimulator) is aimed at automating the effort estimation process of the EDW department of hp. The existing system which is an excel sheet is replaced by the new system. The new system will have all the facilities to calculate the overall effort and cr-estimation. The user can simply enter the parameters values and the effort will be calculated automatically.

30 The new system is a multi user system .The developers of the team can analyze the work flow changes and calculate effort involved. Risk involved in the project also can be evaluated. After evaluation the CR estimate is send for approval. The new system allows the user for report generation. Reports are generated for the project or the CR estimate based on the date evaluated or the mentor by just a click of button. The new system also eliminates the problem of email sending by allowing the user to send the email directly from the application. After effort estimation done by developer mail can be send by just selecting the record which contains the person’s name to which the email has to be send and clicking on send email button. This eliminates the overhead of opening the outlook and composing a mail each and every time the mail has to be sent.

4.3. FEASIBILITY STUDY TECHNICAL FEASIBILITY FEASIBILITY STUDY

A feasibility study is carried out to select the best system that meets the performance requirements. All projects are feasible given unlimited resources and infinite time. Unfortunately, the development of a computer - based system is more likely plagued by a scarcity of resources and difficult delivery states. So, the feasibility study is necessary for every Computer-based system. This project aims to satisfy the requirements of the organization by making the tool to run on different languages and on different operating systems. It also creates detailed report in different usable formats.

31

4.3.1 ECONOMIC FEASIBILITY Economic analysis is the most frequently used method for evaluating the effectiveness of a system. More commonly known as cost/benefit analysis, the procedure is to determine the benefits as savings that are expected from a system and compare them with costs. It is the development cost weighed against the ultimate income or benefit from the development system or product. Economic feasibility depends on the cost required for the total project. Cost benefit analysis is done for the system to be developed and it is economically feasible.

4.3.2 TECHNICAL FEASIBILITY It is the study of functions, performance that may affect the ability to achieve an acceptable system. The software and hardware requirements i.e. the technology for implementing this project in our system is currently available common and rapidly implemented anywhere. Hence the technology is easy to implement and is affordable.

4.3.3 OPERATIONAL FEASIBILITY

The measure of operational feasibility on “Visual Floor Layout System” includes the two criteria, •

Is the problem worth solving, or will the solution to the problem work?



How do the end-users feel about the problem?

The system is user-friendly and provides information for user for their feasibility. So, even fresh users can operate the system without much guidance. Hence, we conclude that the system is operationally feasible too.

32

CHAPTER 5 5. SYSTEM DESIGN 5.1 DATA FLOW DIAGRAMS A data flow diagram is a graphical technique that depicts information flow and transforms that are applied as data move from input to output. The DFD is used to represent increasing information flow and functional details. A level 0 DFD also called a fundamental system model represents the entire software elements as a single bible with input and output indicated by incoming and outgoing arrows respectively. Additional process and information flow parts are represented in the next level, i.e. level 1 DFD. Each of the processes represented at level 1 are sub functions of overall system depicted in the context model. Any processes, which are complex in level 1, will be further represented into sub functions in the next level, i.e. in level 2.

33

Fig 5.1. Dataflow Diagram Level 0

34

Fig 5.2. Dataflow Diagram Level 0

35

Fig 5.3. Overall project Estimation

36

Fig 5.4. Admin process

37

5.2 UML DIAGRAMS The Unified Modeling Language (UML) is a standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems, as well as for business modeling and other non-software systems. The UML represents a collection of best engineering practices that have proven successful in the modeling of large and complex systems. The UML is very important parts of developing object oriented software and the software development process. The UML uses mostly graphical notations to express the design of software projects. Using the UML helps project teams communicate, explore potential designs, and validate the architectural design of the software. The important point to note here is that UML is a 'language' for specifying and not a method or procedure. The UML is used to define a software system; to detail the artifacts in the system, to document and construct - it is the language that the blueprint is written in. The UML may be used in a variety of ways to support a software development methodology Types of UML Diagrams Use Case Diagram displays the relationship among actors and use cases. Interaction Diagrams •

Sequence Diagram displays the time sequence of the objects participating in the interaction.

This consists of the vertical dimension (time) and horizontal

dimension (different objects). Activity Diagram displays a special state diagram where most of the states are action states and most of the transitions are triggered by completion of the actions in the source states. This diagram focuses on flows driven by internal processing.

38 UML DIAGRAMS

O ve ra l l s y s t e m m a n a g e m e n t USER ACCO UNT A D M IN C R E ffo rt E s t im a t io n C R D A TA B A S E O v e ro l l e ffo rt E s t im a t i o n

D E V E LO P E R D y n a m i c re p o r t G e n e ra t i o n

O V E R A LL D A TA B A S E

E m a i l n o t ific a t i o n

M IS D A T A B A S E

Fig 5.5 Overall Use case Diagram

39 ADMIN MODULE

Change c om plex ity CR DA TA B A S E M odify C R values M anaging M as ter Data

A pplic ation c om plex ity

M odify overoll data F P value

A DM IN

O V E RA LL DATA B A S E A c c ept us er Reques t M anaging Us er A c c ounts M ail us ernam e and pas s word

US E R A CC O UNT Update/delete us er

Review Tes t Data

A lter data

A pprove/dis approve es tim ation

G enerate report M IS Reply for feed bac k

Updating helpdes k

Fig 5.6 Use Case Diagram Admin Module

M IS DA TA B A S E

40 CRESTIMATION

Get CR request

CR in ORACLE

CR IN informatica

DEVELOPER

Analyse CR request CR in hyperion

CR in SQL CR effort Estimation

CR in unix

Send to admin for approval

41

Get CR request

CR in ORACLE

CR IN informatica

DEVELOPER

Analyse CR request CR in hyperion

CR in SQL CR effort Estimation

CR in unix

Send to admin for approval

Generate Reports

Fig 5.7 Use case diagram CR-Estimation

42

Admin

Developer

Overall Softwar e Estimation

CR Effort Estimation

MIS

Login

Create new user

Send User name and password login

Enter Project details Calculate Effort View the effort

Send for approval Approval or alterations

Proceed with estimated Generate report Update database View Report

Fig 5.8. Sequence Diagram for overall estimation

43

Admin

Developer

Overoll software Estimation'

CR effort estimation

Login Login Enter Cr request

CR Effort estimation

View report Send to admin for approval Alterations/approval

Send Approval

Fig 5.9. Sequence Diagram for CR estimation

MIS

44

Admin

Developer

OverollProject Estimation

CR effort Estimation

MIS

Generate Report of particular project

Update database

View report

Send feed back about the project

Update values

View Feedbacks

Reply for feedbacks

Update help desk set updated values

Fig 5.10 Sequence Diagram for Report Generation

45

Enter the CR Id Description

Enter the technology and corresponding Change Levels

Store Data in Database

Display Data In Grid View

Edit The New Factor

Enter the New Factor and Edit the Database

Proceed with Stored Value

Calculate the CR Effort and Stored in Database

Chek whether if cr

Send mail to TL and PM

<80

Send mail to TL for approval

Fig 5.11 Activity diagram For Overall Process

46

Login

Admin Developer

Accept New User Request

Update Master Data

Approve The CR and Project Estimate

Login Authendication Through Mail

Overall Project Estimation

CR Effort Estimation

Send Mail Approval

Fig 5.12 Activity diagram For Admin Process

Report Generation

47

5.3. DATABASE DESIGN Login Field Name

Constrain

Id

Primary Key

Name UserName

Null Null

Password

Null

EmailId

Null

Designation

Null

Title

Null

ContactNum

Null

DOC

Null

Flag

Null Table 5.1. Login Table

Application Field Name Application ID Application Name Application Code Application Factor

Constrain Primary Key Null Null Null Table 5.2. Application Table

Technology Field Name Technology ID Technology Name Technology Code Technology Factor

Constrain Primary Key Null Null Null Table 5.3. Technology Table

Master Field Name Mas ID Tech_Code

Constrain Null Primary Key

48 Mas_Lvl1_Ch Mas_Lvl2_Ch Mas_Factr Mas_Lvl1_Cod Mas_Lvl2_COD Factor Complexity

Null Null Null Null Null Null Null Table 5.4. Master Table

5.4. MODULE DESCRIPTION Admin Module The admin module allows overall authorization for the admin over the tool. The admin module manages the change requirement specifications of the tool.Admin has the privilege of modifying the application complexity definition and change complexity definition. The admin grants login privileges. Effort estimation done by the developer is reviewed by the admin and approved. The system control is done by the admin.Admin creates user account and the username and password are generated by admin and they are automatically mailed to the user.Admin controls user accounts and deletes the account once the CR request is changed.

Software Effort Estimation In software effort estimation the effort for the overall development of the project is calculated. The overall effort is estimated and the feasibility of the project is calculated. Function point analysis method is used for estimation. This estimation is done during the beginning of the project. Software Effort Estimation is based on the following constraints.  Impact Analysis  Coding  Code/peer review  Testing

49  Test Review  Deployment and release  Documentation The effort required for estimation is evaluated and the project is categorized into simple, average or complex. Risks involved in the projects are also analysed.The estimated value is send to the admin for approval. After approval of admin the project is forwarded.

CR-Effort Estimation A change request (CR) is a document containing a call for an adjustment of a system; it is of great importance in the change management process. A change request is declarative, i.e. it states what needs to be accomplished, but leaves out how the change should be carried out. The important elements of CR includes  ID, the customer (ID)  The deadline (if applicable)  An indication whether the change is required or optional  The change type  A change abstract, which is a piece of narrative. There can be many sources for the change request .System Enhancement is the major reason for CR. Change requests can be of many type including  Hardware changes  Computing Systems software  Environmental 

Network Systems

 Operating Procedures  Workstations and Public Clusters

50 In CR effort estimation, the effort is estimated based on the change request given by the user. The tool analyses the change request and various areas that are reflected due to that particular change. Work flow pattern is analyzed and the various risks are identified. Change complexity values and the application values are analyzed and the effort is classified as simple, average or complex.

MIS (Management Information System) This module includes  Dynamic report Generation  Historical Database  Feed Back forms  Help desk Dynamic report generation handles the generation of report for any project that has been estimated. Historical database provides the details regarding all the projects that have been estimates so far. Any developer can view the database and go for the expertise method.

CHAPTER 6 6. TESTING

51

6.1. SOFTWARE TESTING OVERVIEW Software testing is any activity aimed at evaluating an attribute or capability of a program or system and determining that it meets its required results. Although crucial to software quality and widely deployed by programmers and testers, software testing still remains an art, due to limited understanding of the principles of software. The difficulty in software testing stems from the complexity of software: we cannot completely test a program with moderate complexity. Testing is more than just debugging. The purpose of testing can be quality assurance, verification and validation, or reliability estimation. Testing can be used as a generic metric as well. Correctness testing and reliability testing are two major areas of testing. Software testing is a trade-off between budget, time and quality.

SCOPE A primary purpose for testing is to detect software failures so that defects may be uncovered and corrected. This is a non-trivial pursuit. Testing cannot establish that a product functions properly under all conditions but can only establish that it does not function properly under specific conditions. The scope of software testing often includes examination of code as well as execution of that code in various environments and conditions as well as examining the aspects of 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 testing may be used to correct the process by which software is developed.

6.2. UNIT TESTING

52 The primary goal of unit testing is to take the smallest piece of testable software in the application, isolate it from the remainder of the code, and determine whether it behaves exactly as you expect. Each unit is tested separately before integrating them into modules to test the interfaces between modules. Unit testing has proven its value in that a large percentage of defects are identified during its use. The most common approach to unit testing requires drivers and stubs to be written. The driver simulates a calling unit and the stub simulates a called unit. The investment of developer time in this activity sometimes results in demoting unit testing to a lower level of priority and that is almost always a mistake. Even though the drivers and stubs cost time and money, unit testing provides some undeniable advantages. It allows for automation of the testing process, reduces difficulties of discovering errors contained in more complex pieces of the application, and test coverage is often enhanced because attention is given to each unit.

6.3 INTEGRATION TESTING Integration testing is a logical extension of unit testing. In its simplest form, two units that have already been tested are combined into a component and the interface between them is tested. A component, in this sense, refers to an integrated aggregate of more than one unit. In a realistic scenario, many units are combined into components, which are in turn aggregated into even larger parts of the program. The idea is to test combinations of pieces and eventually expand the process to test your modules with those of other groups. Eventually all the modules making up a process are tested together. Integration testing identifies problems that occur when units are combined. By using a test plan that requires you to test each unit and ensure the viability of each before combining units, you know that any errors discovered when combining units are likely related to the interface between units. This method reduces the number of possibilities to a far simpler level of analysis.

6.4 VALIDATION TESTING Test case no

Description

Expected result

53 1

Exercise all logical decisions on their All the logical decisions

2

true and false sides must be valid Execute all loops at their boundaries and All the loops must be finite

3

within their operational bounds. Exercise internal data structures to All the data structures must ensure their validity. be valid Table 6.1 Validation Testing

6.5 STRESS TESTING In software testing, stress test refers to tests that put a greater emphasis on robustness, availability, and error handling under a heavy load, rather than on what would be considered correct behavior under normal circumstances. In particular, the goals of such tests may be to ensure the software doesn't crash in conditions of insufficient computational resources (such as memory or disk space), unusually high concurrency, or denial of service attacks.

5.6 ALPHA AND BETA TESTING Alpha Testing:-It is conducted at the Developer sight by end users. If the testers and real customers combined test the software in development site then it is called Alpha testing. Beta Testing:-It is conducted at the end users site. If the testers and model customers combined test the software in customer site, then it is called Beta testing. In a Service based company: Alpha testing is the testing conducted by customers at Developer's site. Beta Testing is the process of giving the product to customers and let them do the testing at their environment.

CHAPTER 7 7. SYSTEM IMPLEMENTATION

54

7.1 IMPLEMENTATION METHODS There are several methods for implementation. The most secured method is to run the old and new system in parallel. Another method used is direct cut over from the old system to the new system. The change may be within a day or within a week. However there is no remedy in case of a problem. This strategy requires careful planning

7.2 IMPLEMENTATION PLAN Implementation is the stage where the theoretical design is turned into a working system and is giving confidence on the new system for the users that it will work efficiently and effectively. It involves careful planning, investigation of the current system and its constraints on implementation, design of methods to achieve the change over, an evaluation, of change over methods. Implementation is the final and important phase. This is the most critical stage in achieving a successful new system and in giving the users confidence that the new system will work and be effective. The system can be implemented only after thorough testing is done and if it’s found to working according to the specification.

7.3 EDUCATION AND TRAINING After the system is implemented successfully, training of the user is one of the most important subtasks of the developer. For this purpose user manuals are prepared and handled over to the user to operate the developed system. Both the hardware and software securities are made to run the developed systems successfully in future. In order to put new application system into user, the following activities were taking care of: •

Preparation of user and system documentation.



Conducting user training with demo and hands on.

55 The users are trained to use the newly developed functions. User manuals describing the procedures for using the functions listed on menu and circulated to all the users. It is confirmed that the system is up to users need and expectations

7.4 SYSTEM MAINTENANCE Maintenance is an important aspect after the implementation of the system. The developer also has the responsibility of the maintaining the system implemented. Moreover the long-term maintenance has the capability of detecting the errors of the system, due to long term usage, when implemented at the user environment.

CHAPTER 8

56

8. CONCLUSION The OVSD automating mail generator can be used with ease hence by and passing the ticket id as the parameter, we can get the status of a ticket if it has been worked upon or not and if in the last 48 hours any progress has been made. This is in turn used to tune the fine servicing of the customer and timely delivery of technical solutions to them. Effort Estimation Stimulator s an effective web application that facilitates the overall estimation and CR-estimation that can be shared over the intranet. Mail notification is provided. The EES was implemented successfully and tested for requirements. The EES can be accessed by the developers having access to the tool in intranet. SCOPE FOR FUTURE ENHANCEMENT The alert mail can also be used from the outlook mailbox and the scope of this project is beyond the mail generation. It can also be used to automate the whole of OVSD which initially was undertaken but the time constraint proved to be big. This project will be undertaken once when a team is not preoccupied and can be easily completed within a fortnight depending on the provisio. The system achieved its primary goal to atomize effort estimation using the function point analysis method and cr estimation that includes 5 technologies like UNIX, informatica,hyperion, SQL server, oracle • This application is easier to maintain and understand. • The application is highly flexible. Thus the system is developed successfully and its purpose is achieved Incorporating technologies like Informatica, Hyperion with the effort estimation tool, the tool can be enhanced to handle other effort estimation technologies. Thereby working for the first two months on this project, I’ve learnt a great deal on the softwares aforementioned (UNIX, oracle, Informatica and Brio) and since I could not get the UNIX platform my project ran over the windows platform

9. REFERENCES

57

Books Referred 1.

Matthew MacDonald, “Beginning ASP.NET 3.5: From Novice to Professional”,

Apress (2006) 2.

E G Jane, “ Quick reference to Java” Wiley publications (2000)

3.

Charles Crawford, Jr. Caison, “ASP.NET Programmer's Reference”, Tata McGraw-

Hill (2002) 4.

Eric GunnerSen , “A Programmer’s Introduction to C# ”, Apress (2000)

5.

Jeff Ferguson, Brian Patterson, Jason Beres, “C# Bible”, (2003)

6.

Jeremy McPeak, Paul Wilton, “Beginning JavaScript” , (2005) 6. Microsoft Visual C# .NET Step by Step -Version 2003 – John Sharp

Websites Referred 1. www.w3schools.com 2. www.planetsourcecode.com 3. www.velocityreviews.com 4. www.programmingtutorials.com 5. www.carwale.com 6. www.google.com 7. www.clorox.com 8. www.wikipedia\en.com 9. www.sunjava.com

Related Documents

End Report
July 2020 5
End Report Sasanka
July 2020 0
Aftf Year End Report
November 2019 17
End-year Fy09 Report
June 2020 6
End-year 2008 Report
June 2020 11
End Of Shift Report
May 2020 5

More Documents from "romeo rivera"

End Report Sasanka
July 2020 0
End Report
July 2020 5
Stp 21-24-smct
November 2019 14
Neals Oakley Resume
April 2020 9
Neals Sales Resume
April 2020 6
Neals Ssa Resume
April 2020 6