Beruflich Dokumente
Kultur Dokumente
1 Introduction
1.1 Introduction to project
The main objective of the Project Management Metrics Calculator for Schedule and Effort Deviation to generate the reports to project manager by using centralized data to bring out the successful completion of specific project. Project Manager can generate the Reports and Metrics for a particular phase and task. System Details Project Manager wants to see several reports such as number of open tasks, closed tasks, pending tasks, all tasks that assign to a developer, all open tasks for a specific developer, all closed tasks for a specific developer. Task life cycle
Open State
In Progress state
Completed state
Closed state
OnHold state
ReOpen state
Fig 1.1 Life cycle of task Reports at Task Level Numbers of Tasks are processed in Open State.
Project Management Metrics Calculator
Numbers of Tasks are processed in InProgress State. Numbers of Tasks are processed in Completed State. Numbers of Tasks are processed in Closed State. Numbers of Tasks are processed in On Hold State. Numbers of Tasks are processed in Reopen state. Based on the reports the Project Manager wants to calculate the Metrics. There are two types of Metrics, they are: Effort deviation Schedule deviation 1. Effort Deviation Effort spent by the developer doesnt satisfy the expected time, then effort deviations are occur. They are as follows: Positive Deviation The actual time is exceeded by the developer.
Negative Deviation The actual time is preceded by the developer. Effort Deviation Tasks Days D1 D2 D3 D4 Total 8 8 8 6 30
Negative Deviation
T1 (32hrs)
T2 (32hrs) 8 8 8 10 34
Positive Deviation
T3 (32hrs) 8 8 8 8 32
Zero Deviation
Effort deviation can be calculated at three levels Project level Phase level Task level 2. Schedule deviation Schedule deviation occurs when the project deviates from actual period of time There are two types of schedule deviations Positive Deviation Negative Deviation Positive Deviation When the project exceeds actual period of time.
Negative Deviation When the project precedes actual period of time. Schedule deviation can be calculated at three levels Phase level Task level
Most importantly, NeoApp combines the right strategy with the right products and the right people, ensuring technical superiority, high quality deliverables and timely implementations. NeoApp supports different delivery and billing models to fit your requirements. By having NeoApp involved with your software development projects, you benefit with reduced costs and faster development cycles. To reduce the development costs NeoApp strictly adhere on reusable component model with plug and play architecture. Offshore outsourcing model became easily adoptable and has increased benefits beyond cost reductions. The offshore outsourcing with NeoApp includes full spectrum services and multi fold benefits. NeoApp, with its experience in executing offshore projects ranging from large enterprise solutions to small plug-in applications, helps customers achieve the offshore outsourcing goals. NeoApp establishes suitable project execution methodologies for each project and accomplishes offshore execution on time and on budget. NeoApp pays high importance to quality of deliverables and has mandatory quality doors in place for each project ensuring success of the overall project. NeoApp works with you from conceptualization to completion and has the required expertise to pick up the project at any stage in its life cycle. y y y y Business concept and system study Requirement Study Design Architecture and develop specifications Design the framework of the solution
y y y y y y
Develop the solution QA the solution against requirements Continuous support for the solution Develop prototypes for proof of concept Engineer the solution Release as per plan The team and project approach of NeoApp has resulted in above expected
deliveries of projects. NeoApp works with you in refining the project at every stage and with its vast and experienced talent pool, NeoApp brings value with innovation to the project. NeoApp offers complete solutions to application maintenance requirements helping organizations to cut costs and optimize resource utilization. NeoApp performs the following tasks on a variety of technology platforms beginning with Legacy to Client Server to Browser based internet application. y y y Application Development Application Maintenance Application Support
NeoApp with its experience in wide range technologies and ability to learn quickly help you ensuring availability of your systems to your customers. NeoApp performs systems monitoring and undertakes evolutionary development of these applications as required and deemed fit.
2 System Requirements
System Requirement Specifications 2.1 Hardware Requirements
Processor RAM Hard disk : Pentium IV 500 MHz : 512 MB RAM : 500 MB or above
3 Literature survey
3.1 Existing System The user in this system maintains the separate Excel Sheets (Project Manager) for maintain the data. So that the Project Manager has to calculate the metrics and reports manually for a particular Phases or task or project by using the Excel sheets data. 3.2 Proposed System The Proposed System is providing the interface to generate the reports and metrics for project manager by using centralized data of the Project Monitoring management process results. Project Manager will access the centralized data through PMMC system. PMMS System acts as an interface for the project manager to generate reports.
4 System Analysis
System Analysis is first stage according to System Development Life Cycle model. This System Analysis is a process that starts with the analyst. Analysis is a detailed study of the various operations performed by a system and their relationships within and outside the system. One aspect of analysis is defining the boundaries of the system and
determining whether or not a candidate should consider other related systems. During analysis, data is collected from the available files, decision points, and transactions handled by the present system. Logical system models and tools are used in analysis. Training, experience, and common sense are required for collection of the information needed to do the analysis Logical system models and tools are used in analysis. Training, experience, and common sense are required for collection of the information needed to do the analysis. This System Analysis is a process that starts with the analyst. Analysis is a detailed study of the various operations performed by a system and their relationships within and outside the system.
1. Representation format and content should be relevant to the problem 2. Information contained within the specification should be nested 3. Diagrams and other notational forms should be restricted in number and consistent in use. 4. Representations should be revisable. The software requirements specification is produced at the culmination of the analysis task. The function and performance allocated to the software as a part of system engineering are refined by establishing a complete information description, a detailed functional and behavioral description, and indication of performance requirements and design constraints, appropriate validation criteria and other data pertinent to requirements. An outline of the Software Requirements Specification A simplified outline can be given for the framework of the specifications. This is according to the IEEE Standards.
10
PMMC_R_001: System should provide a provision to login for the project manager PMMC_R_002: System should provide a provision to generate report on how many tasks are in Open state to the Project Manager. PMMC_R_003: System should provide a provision to generate report on how many tasks are in OnHold state to the Project Manager. PMMC_R_004: System should provide a provision to generate report on how many tasks are in Closed state to the Project Manager. PMMC_R_005: System should generate a report of Schedule deviation for a project to the Project Manager. PMMC_R_006: System should generate a report of Schedule deviation for each phase to the Project Manager. PMMC_R_007: System should generate a report of Schedule deviation for a particular task to the Project Manager. PMMC_R_008: System should generate a report of Effort deviation for a project to the Project Manager. PMMC_R_009: System should generate a report of Effort deviation for each phase to the Project Manager. PMMC_R_010: System should generate a report of Effort deviation for a particular task to the Project Manager.
11
based information system for job searching. Since the data is voluminous and involves a lot of overhead. Therefore, it is the best activity for computerization. The proposed system is feasible in following aspects. 4.3.1 Technical Feasibility The technical feasibility is measured with the current Equipment, existing software technologies and available personnel are sufficient for the proposed system. The proposed system is technically feasible since the equipment; software technology and available personal in the organization are well suitable for the proposed system. 4.3.2 Economic Feasibility Economic feasibility is measured that the proposed System having sufficient benefits in the economic point of view. Since the necessary hardware and software are available in the organization, there is no need to procure and install new hardware and software. Thus, initial investment on hardware and software is nothing. There is no need of extra personal for the proposed system. Hence, the proposed system is economically feasible. 4.3.3 Operational Feasibility The operational feasibility is measured by the usage of the system after implementation and resistance from the users. Hence, it is encouraging to undertake a detailed system analysis.
12
5 System Design
System Design
The most creative and challenging phase of the life cycle is system design. The term design describes a final system and the process by which it is developed. It refers to the technical specifications that will be applied in implementations of the candidate system. The design may be defined as the process of applying various techniques and principles for the purpose of defining a device, a process or a system with sufficient details to permit its physical realization.
The designers goal is how the output is to be produced and in what format. Samples of the output and input are also presented. Second input data and database files have to be designed to meet the requirements of the proposed output. The processing phases are handled through the program Construction and Testing. Finally, details related to justification of the system and an estimate of the impact of the candidate system on the user and the organization are documented and evaluated by management as a step toward implementation.
The importance of software design can be stated in a single word Quality. Design provides us with representations of software that can be assessed for quality. Design is the only way where we can accurately translate a customers requirements into a complete software product or system. Without design we risk building an unstable system that might fail if small changes are made. It may as well be difficult to test, or could be one
13
whos quality cant be tested. So it is an essential phase in the development of a software product.
Minimizing the number of input by collecting only required Data and grouping similar or related data. Maintain consistently between information display and input. Providing help facilities those are context sensitive. The format of the same data in different screens must be same. Consistent terminologys are to be used throughout the system
14
columns, are printed n compressor mode, which can be printed on laser printers and others in uncompressed mode so as to facilitate its usage online printers.
As desirable as dynamic, networked programs are, they also present serious problems in the areas of security and portability. Java achieves this security or protection by confining a Java program to the Java execution environment and not allowing it to access to other parts of the computer. Many types of the computers and operating systems are in use throughout the world and many are connected to the Internet. For programs to be dynamically downloaded to all the various types of platforms connected to the Internet, some means of generating portable executable code is needed.
Java was designed to be easy for the professional programmers to learn and use efficiently. The object model of Java is simple and easy to extend, while simple types, such as integers are kept as high-performance non-objects. The multiplatformed environment of the web places extraordinarily demands on a program, because the program must execute
15
reliably in a variety of systems. Thus, the ability to create robust programs was given a high priority in the design of Java. At the same time, Java frees us from having to worry about many of the most common cause of programming errors. Because Java is strictly typed language, it checks our code at the compile time and also at run-time.
Java was designed to meet the real world requirements of creating interactive, networked programs. Java supports multithreaded programming, which allows us to write programs that do many things simultaneously. A central issue for the Java designers was that of code longevity and portability. Their goal was write once; run anywhere, any time, forever .
Java enables the creation of the cross-platform programs by compiling into intermediate representation called Javabytecode. This code can be interpreted on any system that provides a java virtual machine. Java is designed for the distributed environment of the Internet, because it handles TCP/IP protocols. In fact, accessing a resource using a URL is not much different from accessing a file. The original version of Java (OAK) included features for intra-address-space messaging. Java programs carry with them substantial amounts of the run-time type information that is used to verify and resolve accesses to objects at run-time. This makes it possible to dynamically link code in a safe and expedient manner.
16
Mike Sheridan at SUN Microsystems Incorporation in the year 1991.It took 18 months to develop the 1st working version. This language was initially called OAK, but was renamed JAVA in 1995, many more contributed to the design and evolution of the language. JAVA overview Java is a powerful but lean object-oriented programming language. It has generated a lot of excitement because it makes it possible to program for Internet by creating Applets. Programs that can be embedded in web page. The context of an applet can be an animation with sound, an interactive game or a ticker tape. With constantly updated stock prices. Applets can be just little decorations to liven up web page, or they can be serious applications like Word processor or Spreadsheet. There are many buzzwords associated with Java, but because of its spectacular growth in popularity, a new buzzword has appeared ubiquitous. Indeed, all indications are that it will soon be everywhere. Java builds on the strength of C++. It has taken the best features of C++ and discarded the more problematic and error prone parts. To this lean core, it has added garbage collection (automatic memory management), multithreading (the capacity for one program to do more than one thing at a time), security capabilities. This result is that Java is simple, elegant, and powerful and easy-to-use.
17
Java is actually a platform consisting of 3 components 1. Java Programming Language. 2. Java Library of Classes and Interfaces. 3. Java Virtual Machine The following sections will say more about these components. JAVA is portable One of the biggest advantages Java offers is that it is portable. An application written in Java will run on all the major platforms. Any computer with a Java-based browser can run the applications or Applets written in the Java-Programming-Language. A programmer no longer has to write one program to run on a Macintosh, another program to run on a Windows-machine still another to run on a UNIX-machine and so on. In other words, with Java developers write their programs only once.
The Virtual Machine is what gives Java is cross platform capabilities. Rather being compiled into machine language, which is different for each OSs and computer architecture, Java code is compiled into Byte codes. With other languages, the program code is compiled into a language that the computer can understand. The problem is that other computers with different machine instruction set cannot understand that language. Java code on the other hand is compiled into Byte-Code rather than a machine language. These byte codes go to the JVM, which executes them directly or translates them into the language that is understood by the machine running it.
18
JAVA is object oriented The Java programming language is OBJECT-ORIENTED, which makes program design focus on what you are dealing with, rather than on how your are going to do something. This makes it more useful for programming in sophisticated projects, because one can break the things into understandable components. A big benefit is that these components can then be reused.
Object-Oriented Languages use the paradigm of classes. In simplest term, a class includes both the data and the functions to operate on data. You can create an instance of a class, also called an object, which will have all the data members and functionality of its class. Because of this, you can think of a class as being like template, with each object being a specific instance of a particular type of class.
The class paradigm allows one to encapsulate data so that specific data values are those using the data cannot see the function implementation. Encapsulation makes it possible to make the changes in code without breaking other programs that use that code. If for example, the implementation of a function is changed, the change is invisible to any programmer who invokes that function, and does not affect his/her program, except hopefully to improve it. Java includes inheritance, or the ability to derive new classes from existing classes. The derived class, is also called as Sub-Class, inherits all the data in the functions of the existing class.
19
5.3.3 JAVA development environment To code, edit, debug and test the java programs, one needs to have a java development environment. At the minimum this will consists of a java compiler interpreter and applet viewer where applets can be tested. Suns java development kit (JDK) latest version is 2.2 can be freely downloaded from the Internet. Java compiler is available on DOS, Win95, WINNT, Solaris and MAC etc. Introduction to JavaScript Implementation of the system is completely done in Java language, because of the features of Java. The features of like servlets, applets, ease of network programming and the popularity of Java too. To cover client side needs, HTML and JavaScript are also used. JDBC (Java Data Base Connection) It is a java data base connectivity having data base as a back-end of java as front end. Database is a collectivity of related data. A data base management system (DBMS) controls the storage or retrieval of data in the database. The main use of this JDBC is the database connectivity.
Using drivers we can get connection to the back-end: 1. Which drive we are going to connect back-end. 2. Create a data source name (dsn). 3. Create a statement for connection. The package we use here is import java. Sql. *
20
Interfaces of jdbc include driver, connection, and statement; prepare statement, callable statement, Result Set, Result Set Meta data. Classes of JDBC are driver manages, driver property information, date, and time, and timestamp, type. The driver defined by the classJdbc odbc driver in package sun.jdbc.odbc. Class sun.jdbc.odbc.jdbc odbc driver represents the jdbc to odbc bridge driver. Introduction to JDBC JDBC (Java Database connectivity) is a front-end tool for connecting to a server to ODBC in that respect, however JDBC can connect only java client and it uses ODBC for the connectivity. JDBC is essentially a low-level API since any data manipulation, storage and retrieval has to be done by the program itself. Some tools, which provide a higherlevel abstraction, are expected shortly.
The next question that needs to be answered is why we need JDBC, once we have ODBC on hand. We can use the same ODBC to connect the entire database and ODBC is a proven technology. Problem for doing this is ODBC gives a c language API, which uses pointers extensively. Since java does not have any pointes and is object-oriented sun Microsystems, inventor of java developed to suit its needs. Requirements to use JDBC To use JDBC you need a basic knowledge of databases and SQL.A part from this you need the jdk1.1 (Java Development Kit1.1 available javasofts website) or a version of Java since jdk1.1 and above come bundled with JDBC software.
21
After that you need to have a back-end database engine for which a JDBC driver is available. When JDBC drivers are not available JDBC-ODBC bridge drivers are used to access the database through ODBC. Back-end is not needed when JDBC driver is capable of storing and retrieving the data itself, or if JDBC-ODBC Bridge and the ODBC driver can be used to store and retrieve Database Models JDBC and accessing the database through applets and JDBC API via an intermediate server resulted server resulted in a new type of database model which is different from the client-server model. Based on number of intermediate server through the request should go it is named as single tire, two tire and multi tire architecture Single Tier In a single tier the server and client are the same in the sense that a client program that needs information (client) and the source of this type of architecture is also possible in java, in case flat files are used to store the data. However this is useful only in case of small applications. The advantage with this is the simplicity and portability of the application developed Server and client
Database
22
Two Tier(client-server) In two tier architecture the database resides in one machine and client in different machine they are connected through the network. In this type of architecture a database management takes control of the database and provides access to clients in a network. This software bundle is also called as the server. Software in different machines, requesting for information are called as the clients. Three Tier and N-Tier In the three-tier architecture, any number servers can access the database that resides on server. Which in turn serve clients in a network. For example, you want to access the database using java applets, the applet running in some other machine, can send request only to the server from which it is down loaded. For this reason we will need to have a intermediate server which will accept the requests from applets and them to the actual database server. This intermediate server acts as a two-way communication channel also. This is the information or data from the database is passed on to the applet that is requesting it. This can be extended to make n tiers of servers, each server carrying to specific type of request from clients, however in practice only 3 tiers architecture is popular.
JDBC Driver Types The JDBC drivers that we are aware of at this time fit into one of four categories:
23
1. JDBC-ODBC Bridge Plus Odbc Driver The java soft bridge product provides JDBC access via ODBC drivers. Note that ODBC binary code end in many cases database client code must be loaded on each client machine that uses this driver. As a result, this kind of driver is most appropriate on a corporate network where client installations are not major problem, or for application server code written in java in a 3-tier architecture. 2. Native API Partly-Java Driver This kind of driver converts JDBC calls into calls on the client API for oracle Sybase, Informix, DB2, or other DBMS. Note that, like the bridge driver, this style of driver requires that some binary code be loaded on each client machine. 3. JDBC-NET All-Java Driver This driver translates JDBC calls into a DBMS independent net protocol, which is then translated, to a DBMS protocol by a server. This net server middle-ware is able to connect its all java clients to many different databases. The Specific protocol used depends on the vendor. In general, this most flexible JDBC alternative. It is likely that all vendors of this solution will provide products suitable for intranet use. In order for these products to also support Internet access, they must handle the additional requirements for security, access through firewalls, etc that the web imposes. Several vendors are adding JDBC drivers to their existing database middleware products. 4. Native Protocol All-Java Driver This kind of driver converts JDBC calls into the network protocol used by DBMS directory. This allows a direct call from the client machine to the DBMS server that is
24
practical solution for intranet access. Since many of these protocols are proprietary, the database vendors themselves will be the primary source. Several database vendors have these in progress. Eventually, we expect that driver categories 3 and 4 will be the preferred way to access databases from JDBC. Driver categories one and two are interim solutions where direct all java drivers are not yet available. Category 4 is in some sense the ideal; however, there are many cases where category 3 may be preferable:
25
j Relationships j Diagrams
Things are the abstractions that are first-class citizens in a model; Relationships tie these things together; Diagrams group the interesting collection of things. Things in UML: There are four kind of things in the UML 1. Structural things 2. Behavioral things. 3. Grouping things 4. An notational things These things are the basic object oriented building blocks of the UML.They are used to write well-formed models. Structural things Structural things are the nouns of the UML models. These are mostly static parts of the model, representing elements that are either conceptual or physical. In all, there are seven kinds of Structural things.
26
27
28
29
Fig 5.4 Sequence Diagram for View Effort Deviation for Project
30
31
Fig 5.6 Sequence Diagram for view Schedule Deviation for Phase
32
Fig 5.7 Sequence Diagram for view Schedule Deviation for Project
33
Fig 5.8 Sequence Diagram for view Schedule Deviation for Task
34
Fig 5.9 Sequence Diagram for View Effort Deviation for Phase
35
Fig 5.10 Sequence Diagram for View Effort Deviation for Task
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
6 Coding
Coding
The program design language is also called as structured English or pseudopodia. PDL is a generic reference for a design language PDL looks like a modern language. The difference between PDL and real programming language lies in the narrative text embedded directly within PDL statements. PDL syntax should include constructs for subprogram definition, interface description date declaration techniques for structuring, condition constructs, repletion constructs and I/O constructs. PDL can be extended to include keywords for multitasking and/or concurrent processing interrupt handling, interposes synchronization the application design for which PDL is to be used should dictate the final form for the design language. The characteristics required by a design language are 1. A fixed system of keywords that provide for all structured constructs date declaration and modularity characteristics. 2. A free syntax of natural language that describes processing features. 3. Date declaration facilities that should include both simple and complex data structures. 4. Subprogram definition and calling techniques that support various nodes of interface description.
51
Processing data POSTed over HTTPS using an HTML form, including purchase order or credit card data. A servlet like this could be part of an order-entry and processing system, working with product and inventory databases, and perhaps an on-line payment system.
2.
Allowing collaboration between people. A servlet can handle multiple requests concurrently; they can synchronize requests to support systems such as on-line conferencing.
The central abstraction in the Servlet API is the Servlet interface. All servlets implement this interface, either directly or, more commonly, by extending a class that implements it such as HttpServlet. The Servlet interface provides for methods that manage the servlet and its communications with clients. Servlet writers provide some or all of these methods when developing a servlet.
52
By default, servlets written by specializing the HttpServlet class can have multiple threads concurrently running its service method. If, for whatever reason, you would like to have only a single thread running a service method at a time, then in addition to extending the HttpServlet, your servlet should also implement the SingleThreadModel interface. This does not involve writing any extra methods, merely declaring that the servlet implements the interface. For example, public class SurveyServlet extends HttpServlet implements SingleThreadModel { /* typical servlet code, with no threading concerns * in the service method. No extra code for the * SingleThreadModel interface. */ ... } Interacting with Clients
Servlet writers who are developing HTTP servlets that specialize the HttpServlet class should override the method or methods designed to handle the HTTP interactions that their servlet will handle. The candidate methods include,
y y
doGet, for handling GET, conditional GET and HEAD requests doPost, for handling POST requests
53
y y
doPut, for handling PUT requests doDelete, for handling DELETE requests
PMMS Manager import java.util.*; public class PMMSManager { ProjectManagementHandler pmhObj = null; LoginManagementHandler lmObj=null; ProjectManagementPhaseHandler pmpObj=null; TaskManagementHandler tmhObj=null; TaskProgressHandler tphObj=null; TaskAssignmentManagementHandler tamhObj=null; TeamAssignmentManagementHandler tamhObj1=null; ProjectMetricsCalculator pmcObj=null; String status=null; /************** login ****************/ public boolean authenticate(String userID, String password)throws Exception { lmObj=new LoginManagementHandler(); boolean status=lmObj.authenticate(userID,password); return status ; }
54
/************ view Projects ****************/ public String[ ] viewProjectList()throws Exception { pmhObj=new ProjectManagementHandler(); String[ ] status=pmhObj.viewProjectList(); return status ; /************ view phase list ***************/ public String[ ] viewPhaseList()throws Exception { pmpObj=new ProjectManagementPhaseHandler(); String[ ] status=pmpObj.viewPhaseList(); return status ; } /********* view open state Task List***********/ public String[ ] viewOpenStateTaskList(String phaseID)throws Exception { tmhObj=new TaskManagementHandler(); String[ ] status=tmhObj.viewOpenStateTaskList(phaseID); return status ; } /********** view open state Task List ************/ public String[ ] viewOnholdStateTaskList(String phaseID)throws Exception
55
{ tmhObj=new TaskManagementHandler(); String[ ] status=tmhObj.viewOnholdStateTaskList(phaseID); return status ; } /******** view open state Task List *************/ public String[ ] viewClosedStateTaskList(String phaseID)throws Exceptio { tmhObj=new TaskManagementHandler(); String[ ] status=tmhObj.viewClosedStateTaskList(phaseID); return status ; } /*********** view users ******************/ public String[ ] viewDeveloperList(String projectID)throws Exception { lmObj=new LoginManagementHandler(); String[ ] status=lmObj.viewDeveloperList(projectID); return status ; } /*********** view Tasks List **************/ public String[ ] viewTaskList()throws Exception {
56
tmhObj=new TaskManagementHandler(); String[ ] status=tmhObj.viewTaskList(); return status ; } /********** view project phase List ************/ public String[ ] viewPhaseList1(String projectID)throws Exception { pmpObj=new ProjectManagementPhaseHandler(); String[ ] phaseList= pmpObj.viewPhaseList1(projectID); return phaseList; } /************* view Task Effort List **************/ public String[ ] viewTaskEffortList()throws Exception { tphObj=new TaskProgressHandler(); String[ ] status=tphObj.viewTaskEffortList(); return status ; } /*********** view Task Effort Deviation ************/ public EffortDeviation viewTaskEffortDeviation(String taskID)throws Exception { pmcObj=new ProjectMetricsCalculator ();
57
EffortDeviation edObj=pmcObj.viewTaskEffortDeviation(taskID); return edObj; } /********** view Phase Effort Deviation *************/ public EffortDeviation viewPhaseEffortDeviation(String phaseID)throws Exception { pmcObj=new ProjectMetricsCalculator (); EffortDeviation edObj=pmcObj.viewPhaseEffortDeviation(phaseID); return edObj; } /********** view Project Effort Deviation *************/ public EffortDeviation viewProjectEffortDeviation(String projectID)throws Exception { pmcObj=new ProjectMetricsCalculator (); EffortDeviation edObj=pmcObj.viewProjectEffortDeviation(projectID); return edObj; } }
58
7 Testing
7. Testing
Testing is the major quality measure employed during the software engineering development. Its basic function is to detect error in the software. Testing is necessary for the proper functioning of the system. Testing has to be done at four levels
59
7.1.4 System Testing System testing is actually a series of different tests whose primary purpose is to fully exercise the computer-based system. Although each test has a different purpose, all works should verify that all system elements have been properly integrated and perform allocated functions. The various tests include recovery testing, stress testing, and perform testing.
additional test cases that much be designed to achieve reasonable testing. Test cases that tell us something about the presence or absence of classes of errors, rather than an error associated only with the specific test at hand.
60
8 Screen Shots
61
62
63
64
65
66
67
68
69
70
71
72
9 Conclusion
This system is implemented fulfilling all the client requirements. The interfaces designed for the system is very user friendly and attractive. The entire project has been developed and deployed as per the requirements stated by the user, it is found to be bug free as per the testing standards that are implemented. Any specification-untraced errors will be concentrated in the coming versions, which are planned to be developed in near future. The system at present does not take care off the money payment methods, as the consolidated constructs need SSL standards and are critically to be initiated in the first face; the application of the credit card transactions is applied as a developmental phase in the coming days. The system needs more elaborative technicality for its inception and evolution.
73
10 Bibliography
Books Referred
Elias M. Awad, Systems Analysis and Design, Second Edition Roger S. Pressman, Software Engineering, Sixth Edition Ian Somerville, Principles of Software Engineering, Fourth Edition Herbert Schildt, Java Complete Reference, Fifth Edition