Beruflich Dokumente
Kultur Dokumente
Haldia Institute of Technology Submitted in partial fulfillment of the requirement for the award of degree in
Master of Computer Application (2009-2012) Kuntal Deb(09103010050) Subhamoy Patra(09103010020) Subhasis Nag(09103010021)
Page 1
has been carried out by Kuntal Deb, 09/MCA/25; Subhasis Nag,09/MCA/29; Subhamoy Patra,09/MCA/33. Under my guidance with the kind co-operation and help from NIC during the academic year 2011-2012. The work has been satisfactorily completed by them and I recommend the work as being worthy of acceptance for partial fulfillment of the requirement for the degree of Master of Computer Applications at the Haldia Institute of Technology, Haldia.
_________________________
Mr. Bimal Deb Nath NIC, Vidyut Bhaban ,Kolkata Date: ________________
Page 2
ACKNOWLEDGEMENT
We acknowledge our sincere gratitude to the officials of National Informatics Centre, Kolkata who have helped a lot to improve our knowledge in the worked project. We are extremely thankful to our guide Mr. Bimal Deb Nath for his valuable guidance, helping attitude even in his very busy schedule and utmost desire to help students for research projects. It has inspired us to come a long way in this direction. We are thankful to the management of National Informatics Centre, Kolkata for giving us an opportunity to work and learn. We are thankful to everybody who has helped us a lot in pursuing this project work in NIC as without their support we couldnt have went into the realities. On the way through, I am thankful to our Head of Department Mr. Sk Shahnawaz, for her ever inspiring voices showing the steps to success. I am also thankful to Mr. Apratim Mitra and Mr. Sk. Arif Ahmed for always encouraging me. Without their inspiration my work would have lacked enthusiasm. I am also grateful to all employees of concerned department related to the project who felt me worthy enough for such an interesting issue to work on.
Page 3
1. Introduction-------------------------------------------------------6
1.1 The concept of CCMS--------------------------------------------------------------6 1.2 Objectives-----------------------------------------------------------------------------6
4. Feasibility Study-------------------------------------------------24
4.1 Technical Feasibility-------------------------------------------------------------------24 4.2 Economic Feasibility-------------------------------------------------------------------24 4.3 Operational Feasibility-----------------------------------------------------------------25
Page 4
6. Coding------------------------------------------------------------46
6.1 Connection with database------------------------------------------------------------46 6.2 Code for Login page------------------------------------------------------------------47 6.3 Code for Report-----------------------------------------------------------------------48
7. Testing-----------------------------------------------------------49
7.1 Black box testing----------------------------------------------------------------------49 7.2 White box testing----------------------------------------------------------------------49 7.3 Integration and system testing-------------------------------------------------------49 7.3.1 Acceptance testing---------------------------------------------------------------49 7.3.2 Alpha testing--------------------------------------------------------------------- 49 7.3.3 Beta testing----------------------------------------------------------------------- 49
Page 5
INTRODUCTION
1.1 The concept of CCMS
The Court Cases Monitoring System provides a user-friendly, menu-driven interface to enter data regarding Court Cases as undergoing in different offices including details of court case (original and appeal cases) , Petitioner & Respondent details of the court case, Hearing details. The software provides the facility for Query Retrieval & MIS Report Generation as and when required , so that the Senior Officers may take proper decision at proper time. The System Study of the Application Software has been done and The Software has been developed .
1.2 Objectives
Court Case monitoring system will provide an efficient platform to all the department Under west Bengal govt to maintain there juridical information Consolidated important data (from all departments) will be available in the system. So, current status, lawyer allotment and their fees structure, and other case reports will be available to the Government Departments through the system. All the Departments can assign lawyer by checking their profile biodata. Case updates can be done efficiently instead of manually by keeping information about the case hearing date next probable date for hearing, current status, judgement.
Page 6
Page 7
Page 8
Administrator:
Maintenance of the whole system. Maintaining the new users. Verification of new users and allow access to them. Can add or delete the user. Have the access to all the tables
User:
Can add delete update records to the table that is allowed to him. View Reports containing the transactions for the case.
Page 9
1. Model: The model object knows about all the data that need to be displayed. It is model who is
aware about all the operations that can be applied to transform that object. It only represents the data of an application. The model represents enterprise data and the business rules that govern access to and updates of this data. Model is not aware about the presentation data and how that data will be displayed to the browser.
Page 10
2. View: The view represents the presentation of the application. The view object refers to the
model. It uses the query methods of the model to obtain the contents and renders it. The view is not dependent on the application logic. It remains same if there is any modification in the business logic. In other words, we can say that it is the responsibility of the view's to maintain the consistency in its presentation when the model changes.
3. Controller: Whenever the user sends a request for something then it always go through the
controller. The controller is responsible for intercepting the requests from view and passes it to the model for the appropriate action. After the action has been taken on the data, the controller is responsible for directing the appropriate view to the user. In GUIs, the views and the controllers often work very closely together.
Page 11
1. The client makes a request for a html/JSP (say form.html) page. 2. The Container retrieves the form.html page. 3. The Container returns the page to the browser, where the user answers the questions on form. 4. The browser sends the request data to the container.
Page 12
1. The Container finds the correct servlet based on the URL, and passes the request to the servlet 2. The servlet calls the proper model class (simple java class) for help. 3. The model class returns an answer, which the servlet adds to the request object. 4. The servlet forwards the request to the JSP. 5. The JSP gets the answer from the request object. 6. The JSP generates a page for the Container. 7. The container returns the page to the user.
Page 13
: : : : :
SOFTWARE
Front-end
Programming Languages Web Server Designing Tool : JSP, HTML, Servlet : Apache Tomcat 6.0.14 : Macromedia Dreamweaver MX, Photoshop.
Back-end
Database Used
: PostgreSQL 8.4
Reporting Tools
Tool Used
: iReport 3.6.0
Deployment Platform
Hardware
Processor RAM HDD : Quad Processor : 1GB : 160 GB
Software Front-end
Web Server
Back-end
Database used
User Environment
Browser Best View : : Internet Explorer 5 and higher 1024*768
Page 14
JSP stands for Java Server Pages (JSP) is a technology that helps software Developer create dynamically generated web pages based on HTML, XML, or other document types. and is developed by Sun Microsystem in 1999. JSP allows Java code and certain pre-defined actions to be interleaved with static web markup content, with the resulting page being compiled and executed on the server to deliver a document. JSP pages use several delimiters for scripting functions. The most basic is <% ... %>, which encloses a JSP scriptlet. A scriptlet is a fragment of Java code that is run when the user requests the page. Other common delimiters include <%= ... %> for expressions, where the value of the expression is placed into the page delivered to the user, and directives, denoted with <%@ ... %>. CASCADING STYLE SHEETS (CSS) is a style sheet language used to describe the presentation of a document written in a markup language. Its most common application is to style web pages written in HTML and XHTML, but the language can be applied to any kind of XML document. CSS is used to help readers of web pages to define colors, fonts, layout, and other aspects of document presentation. It is designed primarily to enable the separation of document content (written in HTML or a similar markup language) from document presentation (written in CSS). This separation can improve content accessibility, provide more flexibility and control in the specification of presentational characteristics, and reduce complexity and repetition in the structural content. CSS can allow the same markup page to be presented in different styles.
JAVASCRIPT is a scripting language most often used for client-side web development. It is a dynamic, weakly typed, prototype-based language with first-class functions. JavaScript was influenced by many languages and was designed to have a similar look to Java, but be easier for nonprogrammers to work with. The language is best known for its use in websites (as client-side JavaScript), but is also used to enable scripting access to objects embedded in other applications.
Page 15
Performance Consistency These features improve PostgreSQL's ability to deliver consistent response times regardless of server load:
HOT: Heap Only Tuple (HOT) dramatically reduces the database maintenance issues associated with frequently updated data, reducing the need to vacuum and giving substantial throughput improvements for some applications. Asynchronous Commit: Allows the ability for COMMIT to return control without waiting for a physical disk write. This gives better response time at the expense of potentially losing a set amount of transactions in the event of system failure. Spread Checkpoints: Checkpoint auto tuning: delays and spreads out checkpoints, reducing the impact of checkpoints on response times. Just-in-time background writing strategy: Auto-tuning for the Background Writer estimates how many buffers it should try to clean based on statistics about recent activity. Speed Improvements: Many new features significantly improve the speed of specific operations, including: Improved Recovery Times : The amount of I/O from the Write Ahead Log at recovery time has been halved through efficiency improvements. Circular Buffer in Tuplestore: Dramatically speeds up small merge joins by avoiding the need to spill to disk. Faster LIKE/ILIKE comparisons: Improves speed of partial matches, especially with multibyte encodings. Top-N Sorting: Dramatically faster searches for results with LIMIT. Lazy XID Assignment: Allows PostgreSQL to avoid assigning transaction IDs for some read-only queries, resulting in noticeably faster throughput on read-mostly or read-only databases. Stored Procedures: Two new features expand the utility of PL/pgSQL, PostgreSQL's most popular stored procedure language:
Page 16
Table Function Support: PL/pgSQL, our most popular procedural language, now supports a simplified syntax for row-returning functions. Scrollable Cursors in PL/pgSQL: PL/pgSQL now also supports scrollable cursors, allowing PL/pgSQL procedures to perform complex row manipulations.
Page 17
Graphical user interface (GUI) for performing action Grouping of source code and configuration files into the concept of a project Tight integration with the compiler Coupling with a source code repository Ability to performance tune, analyze, and load test code Integration with reusable test frameworks Capability to utilize third-party plugins and tools Ability to debug code by executing one line at a time Quick access to and ease of generating project documentation
Some of the more tangible business benefits of using an IDE include the following:
educes the cycle time of development Increases the quality and reliability of your code Standardizes your software development processes Provides a common platform for programming staff to reduce training time Out-of-the-box JSP and Tomcat support: Eclipse comes bundled with Apache Tomcat Eclipse HTTP Monitor: The HTTP Monitor can be activated during the debugging or execution of a web application. It allows you to monitor the request, HTTP headers, cookies, session, servlet context, and client/server parameters. You no longer need to write server-side code to read these variables, output them to a log, and view the log file. Inside Eclipse, we can debug your code, step line by line through it, and watch the attributes you need.
Page 18
Page 19
iReport is an open source program that can create complex reports which can use every kind of Java application through the JasperReports library. Basically iReport is Visual Designer for JasperReports. It is written in 100% pure Java and is distributed with source code according to the GNU General Public License. JasperStudio is the professional edition of iReport; it is essentially the same application, but is commercially supported by JasperSoft Corporation and released as part of the JasperSoft Business Intelligence Suite, a comprehensive set of tools for integrated reporting, analysis, and data integration. Through an intuitive and rich graphic interface, iReport lets us rapidly create any kind of report very easily. iReport enables engineers to access all the functions of JasperReports as well as helping skilled users to save a lot of time during the development of very elaborate reports.
Features of iReport The following list describes some of the most important features of iReport : 100% support of JasperReports XML tags WYSIWYG editor for the creation of reports. It has complete tools for drawing rectangles, lines, ellipses, text fields, labels, charts, subreports, and bar codes Built-in editor with syntax highlighting for writing expressions Support for Unicode and non-Latin languages (Russian, Chinese, Japanese, Korean, etc.)
Page 20
Page 21
Page 22
Software Interfaces
The developed website is a multiuser; multitasking interface designed using ASP .NET, VB as a Language, Java Script on the server side. Adaptability, availability, correctness, flexibility, interoperability, maintainability, portability, reliability, reusability, robustness, testability and usability.
Portability
The website must have a simply, user-friendly interface so that browsers can save time and confusion. The user interface must support a simple query interface that the operator can use to look up generic information on a relevant topic of interest.
Reliability
The reliability of the website is important for the users. The retrieval of the data must be in accordance with the request for the same and any failure in the retrieval must be correctly reported. Should not break down easily when used incorrectly, the site will guarantee this by checking for errors at every stage of user input.
Testability
The requirements of this SRS will be verified through the exercising of test cases as described by the requirement in the following. Each requirement of this SRS will be tested by thoroughly running the system with all forms of input. We will also endeavor to have people intentionally misuse the product to test all possibilities. System should be closely monitored during and after user testing to ensure that any fault is quickly fixed.
Page 23
FEASIBILITY STUDY
The main aim of feasibility study activity is to determine whether it would be financially and technically feasible to develop the product. The feasibility study of a new system is done in order to ascertain the extent of improvement that the proposed system can bring over the existing system. If the proposed system is totally new, then its purpose is to see if its implementation is possible within the given constraints and how effective it is regarding its ability to meet users needs.
4.1Technical Feasibility
This is concerned with specifying equipments and software that will successfully satisfy the user requirement. The proposed system is technically feasible because:
The application is built and developed in JSP (Front end), which is known to create faster web-applications. For that reason, the system is capable to produce output within a very short time. For the above reason response time is satisfactory, even the number of user is large. JSP is such language in which many critical applications can be developed within a short time period and with fewer overheads. So, all the requirements for the proposed system are fulfilled within short time and satisfactorily. Its able to process a certain volume of transaction at a faster speed.
Equipment acquisition cost for the proposed system is minimal. Equipment operational and maintenance cost is comparatively less than other alternatives. Personnel training cost is minimal.
Page 24
Page 25
What is a System?
System is derived from the Greek word SYSTEMA, which means a collection of elements or components that are organized for a common purpose. The word sometimes describes the organization or plan itself (and is similar in meaning to method, as in "I have my own little system") and sometimes describes the parts in the system (as in "computer system").
Characteristics of a system:1. 2. 3. 4. 5. Organization:- Arrangement of components to achieve an objective Interaction:- Each component function with other components of a system Interdependence:- Each component of a system depends on other component of system Integration:- How various components of a system are tied together Central Objective:- What is required out of a system as a whole taking in consideration the total view of the organization and not individual views
System Analysis
System analysis is a process by which we attribute the process, or goals, determine how well those purpose are being achieved and specify requirement of various tools and techniques, which are to be used within the system performance has to be achieved
5.2
System Design
Designing is the most important part of software development. It requires a care planning & logical thinking on the part of the system designer. Designing the software means to plan how the various parts of this software are going to meet the software goals. It should be done utmost care because if the phase contains any error then it is going affect the performance of the system as a result it may take more processing time, more of coding & extra load. The design of E-Interaction Database System produces the details that state how that system will meet the requirement identified during system analysis. System specialization often refers to this state as logical design, in contrast to the process of developing software program, which is, refer to as physical design. System analyst begins the design process by identifying the reports and output of the system will produce. Designers are responsible for providing programmers with complete and clearly outline software specification. System Design attempts to do the following activities:- Improve productivity of analyst and programmers Improve documentation and subsequent maintenance and enhancement Cut down drastically on cost over runs and delays
Page 26
Master Tables
Case Status
Transaction Case Detail Case Proceeds Hearing Details Appearance Fee Conference Fee Appoint Lawyer
Query & Reports Court wise Case Detail Receipt wise Case No Wise
Administrative
Court Details Current Position Department District Judge Master Kind of Receipt Lawyer Details Location Petitioner Details Post Related Office Subject Details
Case Proceeds
Submission Date Wise Case No. Wise Hearing details First Hearing Date Wise Case No. Wise Appearance fee Lawyer Name Wise Case No. Wise Conference fee Lawyer Name Wise Lawyer Name Wise Appoint Lawyer Department Wise
Page 27
Datatype
varchar integer
Size
5 20
Constraint
NOT NULL
Default
Page 28
Size 10 50
Default
Size 10 50
Default
disputes_related_name varchar
Page 29
9.Table name : kind_of_receipts Attribute kind_receipt_code kind_receipt_desc Datatype varchar varchar Size 10 50 Constraint NOT NULL Default
Default
Default
Page 31
Size 10 100 50 10
Default
Attribute resid
Datatype varchar
Size 10
Default
Size 10 50
Default
subject_matter_details varchar
Size 10 50
Default
Attribute
post_flag dept_description
Datatype
varchar varchar
Size
10 50
Constraint
NOT NULL
Default
Page 33
Default
lawyer_district_code varchar lawyer_mobile lawyer_skill_code lawyer_year_of_exp category "char lawyertype govt_retainers varchar varchar varchar char char varchar
100
Attribute
jurisdiction original_case_no
Datatype
varchar varchar
Size
10 10
Constraint
Default
actual_case_no actual_case_year
varchar integer
10
Page 34
primary_respondent varchar state_lawyer_code related_office_cd office_code post location disputerelated original_case_year date_of_petittion recipt_date varchar varchar varchar varchar varchar varchar varchar varchar varchar
Attribute
lawyertype lawyer_code memo_no
Datatype
char varchar varchar
Size
Constraint
Default
5 10
appearance_fee double
Page 35
Datatype
Varchar varchar varchar
Size
10 10 10 20
10 10 20 20 50 10 20 10 5 20 20 20
Constraint
Default
appoint_lawyer_no varchar
actual_case_no actual_case_year cause_title subject_matter case_type kind_of_receipts court_name memono_petittion app_lawyer_code app_by app_by_desig app_by_dept varchar varchar varchar varchar varchar varchar varchar varchar varchar varchar varchar varchar
NOT NULL
NOT NULL
NOT NULL
Page 36
Attribute
actual_case_no actual_case_year action_pursuant_order interim_order remarks current_position judgement file_no memono_petittion submission_to_sa_date interim_order_date aff_resp_date first_hearing_date last_hearing_date next_hearing_date as_on_date
Datatype
varchar integer varchar varchar varchar varchar varchar varchar varchar varchar varchar varchar varchar varchar varchar varchar
Size
10
Constraint
NOT NULL NOT NULL
Default
50 20 50 5 50 10 10 10 10 10 10 10 10 10
Page 37
Datatype
varchar integer varchar varchar varchar varchar varchar varchar
Size
10
Constraint
NOT NULL NOT NULL
Default
10 20 10 10 50 50 50 10 10 10 10 50 10 10 NOT NULL
action_taken_by_dept varchar submission_to_sa_date varchar serial_no petitioner_lawyer petitioner_name actionseekbysender hearing_date next_hearing_date integer varchar varchar varchar varchar varchar
Page 38
Size 20 20 50 5 5
Default
NOT NULL
Page 39
User info
Add/Delete/Modify user profile
Logout
USER:
Admin info
Master
User info
Transaction
Report
Page 40
Page 41
5.3 Snapshot:
Page 42
Page 43
Page 44
Page 45
CODING
6.1 Connection With Database:
package ccmsclass; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Connection; public class DatabaseConnect { Connection con; public DatabaseConnect() { try { Class.forName("org.postgresql.Driver"); } catch (ClassNotFoundException e) { } try { con=(Connection) DriverManager.getConnection("jdbc:postgresql://localhost:5432/ccms","postgres","postgres"); } catch (SQLException e) {System.out.println(e.getMessage()); } } public Connection getConnection(){ System.out.println("Connection is:"+con); return con; } }
Page 46
public class LogIn extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException { PrintWriter out = response.getWriter(); String loginname = null; String loginpassw=null; ResultSet rs=null; String button=request.getParameter("button"); if(button.equals("Log in")){ String user_login_name=request.getParameter("name"); String user_login_password=request.getParameter("pass"); try{ Connection con =(Connection) new DatabaseConnect().getConnection(); PreparedStatement ps=con.prepareStatement("select login_name,login_password from user_create where login_name='"+user_login_name+"' and login_password='"+user_login_password+"'"); rs=ps.executeQuery(); while(rs.next()){ loginname=rs.getString(1); loginpassw=rs.getString(2); } if(loginname!=null && loginname.equals(user_login_name)&& loginpassw!=null && loginpassw.equals(user_login_password)){ HttpSession session=request.getSession(); session.setAttribute("name", user_login_name); response.sendRedirect("home.jsp"); } else{ response.sendRedirect("Log_in.jsp?msg=notlogged"); } } catch(Exception e){out.println(e);} } } }
Page 47
package ccmsservlet; import import import import import import import import import import import import import java.io.IOException; java.io.InputStream; java.io.PrintWriter; java.io.StringWriter; java.sql.Connection; java.util.HashMap; javax.servlet.ServletException; javax.servlet.ServletOutputStream; javax.servlet.http.HttpServlet; javax.servlet.http.HttpServletRequest; javax.servlet.http.HttpServletResponse; net.sf.jasperreports.engine.JasperRunManager; ccmsclass.DatabaseConnect;
public class KindReceiptChoice extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { try { Connection con; response.setContentType("application/pdf"); ServletOutputStream servletOutputStream = response.getOutputStream(); InputStream reportStream = getServletConfig().getServletContext(). getResourceAsStream("/report/kindreceipt/kindreceipt.jasper"); HashMap<String,java.lang.String> params =new HashMap<String,java.lang.String>(); try{ con = (Connection) new DatabaseConnect().getConnection(); JasperRunManager.runReportToPdfStream(reportStream,servletOutputStream, params, con); response.sendRedirect("kind_of_receipt.jsp"); } catch (Exception e){ StringWriter stringWriter = new StringWriter(); PrintWriter printWriter = new PrintWriter(stringWriter); e.printStackTrace(printWriter); response.setContentType("text/plain"); response.getOutputStream().print(stringWriter.toString()); } } } catch(Exception e){System.out.println(e);} } }
Page 48
TESTING
Testing is a process to execute a program with intention in finding errors. Testing is program consisting of subjecting a program to a set of test inputs and observing the program to a set of test inputs and observing program behaves as expected.
Page 49
MAINTENANCE
Maintenance is the enigma of the system development. Maintenance can be classified as corrective, adaptive and perfective.
Correcting errors that were not discovered during the product development phase. This is called Corrective Maintenance. Improving the implementation of the system, and enhancing the functionalities of the system according to the customers requirements. This is called Perfective maintenance. Porting the software to work in a new environment. For example, porting may be required to get the software to work on a new computer platform or with a new operating system. This is called Adaptive Maintenance.
Maintenance reduction plan consist of three phases: 1. Maintenance management audit. 2. Software system Audit. 3. Software Modification.
The system that has been developed is easily managed. Codes can be changed as per needs.
Page 50
Result Discussion
If the made system will fulfill all the requirements of the user then also there always exists scope for further improvement. This chapter will discuss the result of the system design, the benefits derived and scope for development.
Page 51
CONCLUSION
We have tried to develop a system which is user friendly and industry oriented. We have made sure that the system works according to the need of intended user. We will be honored if our system provides beneficial to the users. We have tried our best to present our system in limited time. We hope to bring further improved feature in our system in near future and as when requirement arises. We extends our deepest gratitude to all those who have extended their cooperation in fulfillment of the project.
Page 52
Bibliography
1. 2. 3. 4. 5. Christian MacAuley and Paul Jobson[2002], JavaScript, TMH Publications. Elmasri, Navathe[2005], Fundamentals of Database Management Systems Ivan Bayross[2006], SQL, PL/SQL The programming language of Oracle, BPB Publications Rajib Mall[2006], Fundamentals of Software Engineering, PHI Publications Head First Servlets and JSP By Bert Bates, Kathy Sierra, Bryan Basham
Page 53