You are on page 1of 63

08NN1A0512

CRIME LOGGER

Introduction:
Crime Logger is an interactive Web application developed in 3-tier architecture with Ajax features. The Criminal Justice System envisages information sharing within the organization and across the States in the country in the area of Crime & Criminals for effective working of Police. For integration at National level, Seven Integrated Police Forms standardized by National Crime Records Bureau. Those forms have been taken as the basis for Criminal Justice System Crime Module development. These integrated forms cover most of the information needed by Criminal Justice System. Effective coordination among different departments / entities in criminal justice system i.e. Forensic Science Laboratories and Prosecution Department is being ensured by interfacing for access and transfer of information between departments thus making it easier to collect inputs needed for proper and quicker investigation of a case.

In this project the police can view all the record of the criminal and he also enters the details of all criminals. There are 3 roles in this project constable, Sub-Inspector and Circle-Inspector depending on their authentication modes they can view, modify the content. In this we maintain all the details of criminal and his criminal activates.

08NN1A0512

CRIME LOGGER

1.1 Literature Survey:


Problem Statement Earlier the registration of FIR was not done 100% accurately for various reasons. Certain mandatory information needed was also not collected either the complainant furnished was vague information and also the most of the important information may be lost which would have helped later in speeding up the investigation process. Problem Description: In Crime logger, a complaint is registered, it is electronically transferred to the higher authorities. Consequently, the scopes for delinquencies such as non-acceptance of a complaint, loss of track of case etc are totally eliminated. The transparency in the system helps in enhancing public interface and confidence. It is assisting in expediting the progress of investigating process culminating in dispensing timely justice and ultimately bringing the criminal activity under control.

08NN1A0512

CRIME LOGGER

2. Software Requirement Specification


Software Requirements Specification is the starting point of Software development activity. It is the most difficulty activity and the most error Prone.SRS plays an important role in the designing a project. SRS meets the needs for project designing and developing. The entire information which is needed for the project is specified in this SRS.

2.1 System Requirements Software Requirements:


y y y y y Language: Microsoft C#.Net language Environment: Microsoft Visual Studio 2008 IDE Operating System: Windows 2000/NT/XP Run-time environment: Microsoft framework 3.5 Technologies: JavaScript, ASP.NET 3.5

Hardware Requirements:
y y y RAM: 1 GB or higher Processor: Pentium IV or higher Hard Disk: 40 GB or higher

08NN1A0512

CRIME LOGGER

2.2 Purpose:
The purpose of our project is to build an automated system where inspectors can record or save the users information in online. Features of the Project The features or advantages of our application are as follows       Interact through single interface Flexibility Maintenance Ease of use Importing and exporting table data Alter the table structure

08NN1A0512

CRIME LOGGER

2.3 Scope:
This project is mainly designed to reduce the errors those are occurred frequently in the manual system. People who are working in police department can enter crime details in online which is very much flexible for them to enter.

2.3.1 Existing System:


. In the present manual system i.e. in the existing system there are many disadvantages while entering, saving and updating records, they are as follows DISADVANTAGES:   In the manual system the registration of FIR was not done 100% accurately. Some important information may lose while entering, which is very helpful for the investigation of a particular case.

2.3.2 Proposed System:


To avoid disadvantages in the existing system we have developed our automated system, the following are advantages:  Advantages:  Once the complaint is given by the public, the details will be electronically transferred to the higher authorities. so because of this there are two benefits

y y

Non-acceptance of complaint Lack of track of case is totally eliminated.

 The transparency in the system helps in enhancing public interface and confidence.  So, because of this criminal activity will be under control.

08NN1A0512

CRIME LOGGER

2.3.3 Modules:
This project consists of one module 1. Admin 2. User

1. Admin:
Here the admin will give the centralized password for the users i.e. the department people. So, by giving this password the Constable, Sub inspector (or) Circle inspector can access the crime records.

2. User:
Here the user means either the Constable, Sub inspector or Circleinspector.The Circle inspector can view, enter and update the records, where as Sub inspector can only view and enter the records and Constable can only enter the details into the record. All of them can access the records by giving a centralized password and based on their position they can perform operations on the criminal records.

08NN1A0512

CRIME LOGGER

2.4 Technical Overview: Language Implementation:


Microsoft.NET Framework: The .NET Framework is a new computing platform that simplifies application development in the highly distributed environment of the Internet. The .NET Framework is designed to fulfill the following objectives: y To provide a consistent object-oriented programming environment whether object code is stored and executed locally, executed locally but Internet-distributed, or executed remotely. y To provide a code-execution environment that minimizes software deployment and versioning conflicts.

To provide a code-execution environment that guarantees safe execution of code, including code created by an unknown or semi-trusted third party.

To provide a code-execution environment that eliminates the performance problems of scripted or interpreted environments.

To make the developer experience consistent across widely varying types of applications, such as Windows-based applications and Web-based applications.
7

08NN1A0512

CRIME LOGGER

To build all communication on industry standards to ensure that code based on the .NET Framework can integrate with any other code The .NET Framework has two main components: the common language runtime and the

.NET Framework class library. The common language runtime is the foundation of the .NET Framework. You can think of the runtime as an agent that manages code at execution time, providing core services such as memory management, thread management, and remoting, while also enforcing strict type safety and other forms of code accuracy that ensure security and robustness. In fact, the concept of code management is a fundamental principle of the runtime. Code that targets the runtime is known as managed code, while code that does not target the runtime is known as unmanaged code. The class library, the other main component of the .NET Framework, is a comprehensive, object-oriented collection of reusable types that you can use to develop applications ranging from traditional command-line or graphical user interface (GUI) applications to applications based on the latest innovations provided by ASP.NET, such as Web Forms and XML Web services. The .NET Framework can be hosted by unmanaged components that load the common language runtime into their processes and initiate the execution of managed code, thereby creating a software environment that can exploit both managed and unmanaged features. The .NET Framework not only provides several runtime hosts, but also supports the development of third-party runtime hosts. y For example, ASP.NET hosts the runtime to provide a scalable, server-side environment for managed code. ASP.NET works directly with the runtime to enable Web Forms applications and XML Web services, both of which are discussed later in this topic. y Internet Explorer is an example of an unmanaged application that hosts the runtime (in the form of a MIME type extension). Using Internet Explorer to host the runtime enables you to embed managed components or Windows Forms controls in HTML documents. Hosting the runtime in this way makes managed mobile code (similar to Microsoft ActiveX controls) possible, but with significant improvements that only managed code can offer, such as semi-trusted execution and secure isolated file storage.

08NN1A0512

CRIME LOGGER

The following illustration shows the relationship of the common language runtime and the class library to your applications and to the overall system. The illustration also shows how managed code operates within a larger architecture. Features of the Common Language Runtime

The common language runtime manages memory, thread execution, code execution, code safety verification, compilation, and other system services. These features are intrinsic to the managed code that runs on the common language runtime.

With regards to security, managed components are awarded varying degrees of trust, depending on a number of factors that include their origin (such as the Internet, enterprise network, or local computer). This means that a managed component might or might not be able to perform file-access operations, registry-access operations, or other sensitive functions, even if it is being used in the same active application.

The runtime enforces code access security. For example, users can trust that an executable embedded in a Web page can play an animation on screen or sing a song, but cannot access their personal data, file system, or network. The security features of the runtime thus enable legitimate Internet-deployed software to be exceptionally featuring rich.

The runtime also enforces code robustness by implementing a strict type- and codeverification infrastructure called the common type system (CTS). The CTS ensures that all managed code is self-describing. The various Microsoft and third-party language compilers generate managed code that conforms to the CTS. This means that managed code can consume other managed types and instances, while strictly enforcing type fidelity and type safety.

In addition, the managed environment of the runtime eliminates many common software issues. For example, the runtime automatically handles object layout and manages references to objects, releasing them when they are no longer being used. This automatic memory management resolves the two most common application errors, memory leaks and invalid memory references.

08NN1A0512

CRIME LOGGER

The runtime also accelerates developer productivity. For example, programmers can write applications in their development language of choice, yet take full advantage of the runtime, the class library, and components written in other languages by other developers. Any compiler vendor who chooses to target the runtime can do so. Language compilers that target the .NET Framework make the features of the .NET Framework available to existing code written in that language, greatly easing the migration process for existing applications.

While the runtime is designed for the software of the future, it also supports software of today and yesterday. Interoperability between managed and unmanaged code enables developers to continue to use necessary COM components and DLLs.

The runtime is designed to enhance performance. Although the common language runtime provides many standard runtime services, managed code is never interpreted. A feature called just-in-time (JIT) compiling enables all managed code to run in the native machine language of the system on which it is executing. Meanwhile, the memory manager removes the possibilities of fragmented memory and increases memory localityof-reference to further increase performance.

Finally, the runtime can be hosted by high-performance, server-side applications, such as Microsoft SQL Server and Internet Information Services (IIS). This infrastructure enables you to use managed code to write your business logic, while still enjoying the superior performance of the industry's best enterprise servers that support runtime hosting.

.NET Framework Class Library y The .NET Framework class library is a collection of reusable types that tightly integrate with the common language runtime. The class library is object-oriented, providing types from which your own managed code can derive functionality. This not only makes the .NET Framework types easy to use, but also reduces the time associated with learning new features of the .NET Framework. In addition, third-party components can integrate seamlessly with classes in the .NET Framework.

10

08NN1A0512

CRIME LOGGER

For example, the .NET Framework collection classes implement a set of interfaces that you can use to develop your own collection classes. Your collection classes will blend seamlessly with the classes in the .NET Framework.

As you would expect from an object-oriented class library, the .NET Framework types enable you to accomplish a range of common programming tasks, including tasks such as string management, data collection, database connectivity, and file access. In addition to these common tasks, the class library includes types that support a variety of specialized development scenarios. For example, you can use the .NET Framework to develop the following types of applications and services:

y y y y y
y

Console applications. Scripted or hosted applications. Windows GUI applications (Windows Forms). ASP.NET applications. XML Web services. Windows services. For example, the Windows Forms classes are a comprehensive set of reusable types that

vastly simplify Windows GUI development. If you write an ASP.NET Web Form application, you can use the Web Forms classes. Client Application Development Client applications are the closest to a traditional style of application in Windows-based programming. These are the types of applications that display windows or forms on the desktop, enabling a user to perform a task. Client applications include applications such as word processors and spreadsheets, as well as custom business applications such as data-entry tools, reporting tools, and so on. Client applications usually employ windows, menus, buttons, and other GUI elements, and they likely access local resources such as the file system and peripherals such as printers. Another kind of client application is the traditional ActiveX control (now replaced by the managed Windows Forms control) deployed over the Internet as a Web page. This application is
11

08NN1A0512

CRIME LOGGER

much like other client applications: it is executed natively, has access to local resources, and includes graphical elements. In the past, developers created such applications using C/C++ in conjunction with the Microsoft Foundation Classes (MFC) or with a rapid application development (RAD) environment such as Microsoft Visual Basic. The .NET Framework incorporates aspects of these existing products into a single, consistent development environment that drastically simplifies the development of client applications. The Windows Forms classes contained in the .NET Framework are designed to be used for GUI development. You can easily create command windows, buttons, menus, toolbars, and other screen elements with the flexibility necessary to accommodate shifting business needs. For example, the .NET Framework provides simple properties to adjust visual attributes associated with forms. In some cases the underlying operating system does not support changing these attributes directly, and in these cases the .NET Framework automatically recreates the forms. This is one of many ways in which the .NET Framework integrates the developer interface, making coding simpler and more consistent. Unlike ActiveX controls, Windows Forms controls have semi-trusted access to a user's computer. This means that binary or natively executing code can access some of the resources on the user's system (such as GUI elements and limited file access) without being able to access or compromise other resources. Because of code access security, many applications that once needed to be installed on a user's system can now be safely deployed through the Web. Your applications can implement the features of a local application while being deployed like a Web page. Server Application Development Server-side applications in the managed world are implemented through runtime hosts. Unmanaged applications host the common language runtime, which allows your custom managed code to control the behavior of the server. This model provides you with all the features of the common language runtime and class library while gaining the performance and scalability of the host server.
12

08NN1A0512

CRIME LOGGER

The following illustration shows a basic network schema with managed code running in different server environments. Servers such as IIS and SQL Server can perform standard operations while your application logic executes through the managed code Server-side managed code ASP.NET is the hosting environment that enables developers to use the .NET Framework to target Web-based applications. However, ASP.NET is more than just a runtime host; it is a complete architecture for developing Web sites and Internet-distributed objects using managed code. Both Web Forms and XML Web services use IIS and ASP.NET as the publishing mechanism for applications, and both have a collection of supporting classes in the .NET Framework. XML Web services, an important evolution in Web-based technology, are distributed, server-side application components similar to common Web sites. However, unlike Web-based applications, XML Web services components have no UI and are not targeted for browsers such as Internet Explorer and Netscape Navigator. Instead, XML Web services consist of reusable software components designed to be consumed by other applications, such as traditional client applications, Web-based applications, or even other XML Web services. As a result, XML Web services technology is rapidly moving application development and deployment into the highly distributed environment of the Internet. If you have used earlier versions of ASP technology, you will immediately notice the improvements that ASP.NET and Web Forms offers. For example, you can develop Web Forms pages in any language that supports the .NET Framework. In addition, your code no longer needs to share the same file with your HTTP text (although it can continue to do so if you prefer). Web Forms pages execute in native machine language because, like any other managed application, they take full advantage of the runtime. In contrast, unmanaged ASP pages are always scripted and interpreted. ASP.NET pages are faster, more functional, and easier to develop than unmanaged ASP pages because they interact with the runtime like any managed application.

13

08NN1A0512

CRIME LOGGER

The .NET Framework also provides a collection of classes and tools to aid in development and consumption of XML Web services applications. XML Web services are built on standards such as SOAP (a remote procedure-call protocol), XML (an extensible data format), and WSDL (the Web Services Description Language). The .NET Framework is built on these standards to promote interoperability with non-Microsoft solutions. For example, the Web Services Description Language tool included with the .NET Framework SDK can query an XML Web service published on the Web, parse its WSDL description, and produce C# or Visual Basic source code that your application can use to become a client of the XML Web service. The source code can create classes derived from classes in the class library that handle all the underlying communication using SOAP and XML parsing. Although you can use the class library to consume XML Web services directly, the Web Services Description Language tool and the other tools contained in the SDK facilitate your development efforts with the .NET Framework. If you develop and publish your own XML Web service, the .NET Framework provides a set of classes that conform to all the underlying communication standards, such as SOAP, WSDL, and XML. Using those classes enables you to focus on the logic of your service, without concerning yourself with the communications infrastructure required by distributed software development. Finally, like Web Forms pages in the managed environment, your XML Web service will run with the speed of native machine language using the scalable communication of IIS. Active Server Pages.NET ASP.NET is a programming framework built on the common language runtime that can be used on a server to build powerful Web applications. ASP.NET offers several important advantages over previous Web development models: y Enhanced Performance: ASP.NET is compiled common language runtime code running on the server. Unlike its interpreted predecessors, ASP.NET can take advantage of early binding, just-in-time compilation, native optimization, and caching services right
14

08NN1A0512

CRIME LOGGER

out of the box. This amounts to dramatically better performance before you ever write a line of code. y World-Class Tool Support: The ASP.NET framework is complemented by a rich toolbox and designer in the Visual Studio integrated development environment. WYSIWYG editing, drag-and-drop server controls, and automatic deployment are just a few of the features this powerful tool provides. y Power and Flexibility: Because ASP.NET is based on the common language runtime, the power and flexibility of that entire platform is available to Web application developers. The .NET Framework class library, Messaging, and Data Access solutions are all seamlessly accessible from the Web. ASP.NET is also language-independent, so you can choose the language that best applies to your application or partition your application across many languages. Further, common language runtime interoperability guarantees that your existing investment in COM-based development is preserved when migrating to ASP.NET. y Simplicity: ASP.NET makes it easy to perform common tasks, from simple form submission and client authentication to deployment and site configuration. For example, the ASP.NET page framework allows you to build user interfaces that cleanly separate application logic from presentation code and to handle events in a simple, Visual Basic like forms processing model. Additionally, the common language runtime simplifies development, with managed code services such as automatic reference counting and garbage collection. y Manageability: ASP.NET employs a text-based, hierarchical configuration system, which simplifies applying settings to your server environment and Web applications. Because configuration information is stored as plain text, new settings may be applied without the aid of local administration tools. This "zero local administration" philosophy extends to deploying ASP.NET Framework applications as well. An ASP.NET Framework application is deployed to a server simply by copying the necessary files to the server. No server restart is required, even to deploy or replace running compiled code. y Scalability and Availability: ASP.NET has been designed with scalability in mind, with features specifically tailored to improve performance in clustered and multiprocessor
15

08NN1A0512

CRIME LOGGER

environments. Further, processes are closely monitored and managed by the ASP.NET runtime, so that if one misbehaves (leaks, deadlocks), a new process can be created in its place, which helps keep your application constantly available to handle requests. y Customizability and Extensibility: ASP.NET delivers a well-factored architecture that allows developers to "plug-in" their code at the appropriate level. In fact, it is possible to extend or replace any subcomponent of the ASP.NET runtime with your own customwritten component. Implementing custom authentication or state services has never been easier. y Security: With built in Windows authentication and per-application configuration, you can be assured that your applications are secure. Language Support The Microsoft .NET Platform currently offers built-in support for three languages: C#, Visual Basic, and JScript. What is ASP.NET Web Forms? The ASP.NET Web Forms page framework is a scalable common language runtime programming model that can be used on the server to dynamically generate Web pages. Intended as a logical evolution of ASP (ASP.NET provides syntax compatibility with existing pages), the ASP.NET Web Forms framework has been specifically designed to address a number of key deficiencies in the previous model. In particular, it provides: y The ability to create and use reusable UI controls that can encapsulate common functionality and thus reduce the amount of code that a page developer has to write. y The ability for developers to cleanly structure their page logic in an orderly fashion (not "spaghetti code"). y The ability for development tools to provide strong WYSIWYG design support for pages (existing ASP code is opaque to tools). ASP.NET Web Forms pages are text files with an .aspx file name extension. They can be deployed throughout an IIS virtual root directory tree. When a browser client requests .aspx
16

08NN1A0512

CRIME LOGGER

resources, the ASP.NET runtime parses and compiles the target file into a .NET Framework class. This class can then be used to dynamically process incoming requests. (Note that the .aspx file is compiled only the first time it is accessed; the compiled type instance is then reused across multiple requests). An ASP.NET page can be created simply by taking an existing HTML file and changing its file name extension to .aspx (no modification of code is required). For example, the following sample demonstrates a simple HTML page that collects a user's name and category preference and then performs a form post back to the originating page when a button is clicked: ASP.NET provides syntax compatibility with existing ASP pages. This includes support for <% %> code render blocks that can be intermixed with HTML content within an .aspx file. These code blocks execute in a top-down manner at page render time. Code-Behind Web Forms ASP.NET supports two methods of authoring dynamic pages. The first is the method shown in the preceding samples, where the page code is physically declared within the originating .aspx file. An alternative approach--known as the code-behind method--enables the page code to be more cleanly separated from the HTML content into an entirely separate file. Introduction to ASP.NET Server Controls In addition to (or instead of) using <% %> code blocks to program dynamic content, ASP.NET page developers can use ASP.NET server controls to program Web pages. Server controls are declared within an .aspx file using custom tags or intrinsic HTML tags that contains a run at="server" attributes value. Intrinsic HTML tags are handled by one of the controls in the System.Web.UI.HtmlControls namespace. Any tag that doesn't explicitly map to one of the controls is assigned the type of System.Web.UI.HtmlControls.HtmlGenericControl. Server controls automatically maintain any client-entered values between round trips to the server. This control state is not stored on the server (it is instead stored within an

17

08NN1A0512

CRIME LOGGER

<input type="hidden"> form field that is round-tripped between requests). Note also that no client-side script is required. In addition to supporting standard HTML input controls, ASP.NET enables developers to utilize richer custom controls on their pages. For example, the following sample demonstrates how the <asp: adrotator> control can be used to dynamically display rotating ads on a page. 1. ASP.NET Web Forms provide an easy and powerful way to build dynamic Web UI. 2. ASP.NET Web Forms pages can target any browser client (there are no script library or cookie requirements). 3. ASP.NET Web Forms pages provide syntax compatibility with existing ASP pages. 4. ASP.NET server controls provide an easy way to encapsulate common functionality. 5. ASP.NET ships with 45 built-in server controls. Developers can also use controls built by third parties. 6. ASP.NET server controls can automatically project both up level and down-level HTML. 7. ASP.NET templates provide an easy way to customize the look and feel of list server controls. 8. ASP.NET validation controls provide an easy way to do declarative client or server data validation.

18

08NN1A0512

CRIME LOGGER

ACTIVE X DATA OBJECTS.NET ADO.NET ARCHITECHTURE

DATA PROVIDER
CONNECTION DATA ADAPT ER

DATASET
DataTable1 Data Row/Data DATA RELATION

COMMAND

DATA READER DataTable2

MSSQL

ORACLE

ACEESS XML OUTPUT

DATAVIE W

ADO.NET is an extension of the ADO data access model which consists of only the connected architecture. The Microsoft organization has realized the data related operations and have studied and analyzed different data related technologies among which they found ADO to be interesting , later on they extended the features of the ADO and defined own data related technology by refining the ADO and hence given the name as ADO.Net. The Microsoft

organization, grouped some set of namespaces which can operates on data, and put together into technology called ADO.NET. The ADO.Net technology enhances the features of the ADO, which consist of only connected architecture where as in ADO.NET they have introduces a disconnected architecture.
19

08NN1A0512

CRIME LOGGER

The connected architecture important feature is the data provider, which consists of the four important objects namely connection, command, data reader and data adapter. The connection object provides the connection to the data store nothing but to the back end database servers. The connection class consists of default constructors and parameterized constructors. The constructor takes arguments, which provides the connection to the back end servers. The arguments that the connection class constructors takes are Data Source, Database and security. The first parameter Data Source represents the server name to which our application needs to be connected. Thats means from the available servers we need to select the particular data base server which can be done through the data source parameter. The second parameter indicates the database to which we are going to connect, thats means in that particular database server, to which data base we want to connect can be done through the data base parameter. The third parameter security indicates, the security provided for the database server. If the server is running under windows authentication mode, than will use integrated security to be true thats means no need to specify the user name and password explicitly why because the system will takes the prebuilt username and password which has been set for the system. On the other hand if the backs end server is running under sql authentication mode that will specify the username and password which has be set during the installation of the server, using the security parameter we can connect to the backend database server. Also sqlconnection class consists of the methods such as open and close. The open method is used to open the connection to the database server. Whereas the close method is used to disconnect the connection from the server. Once the connection is opened while in the application use, the connection should be closed when the application terminates. The object of the data provider is the command object, using which one can write the queries in order to manipulate data in the database. Once the connection is opened, the sqlcommand class makes use of the connection and will operate on the database. The sqlcommand class will do manipulation using the queries or the stored procedures. Which has to

20

08NN1A0512

CRIME LOGGER

be decided by the programmers whether they want to use the queries or the stored procedures using the method command type? If we want to use queries than we need to select the text query or else we need to select stored procedure option from the command type method. Command object consists of three methods namely execute non query, execute reader and execute scalar. The execute non query will returns the integer values as an output which indicates how many records have been updated, or modified etc. the second method execute reader returns the complete records been affected by the operations , whereas execute scalar returns the first row first column value remaining will be neglected. The third object in the connected architecture is the data reader, which reads the data in a forward only mode, thats means, its retrieves the data from the data base server and forwards it to the application. The object is the data adapter which acts like an interface or bridge between the connected architecture and disconnected architecture. In the disconnected architecture the important feature is the dataset. Its a collection of data tables and data rows and the data tables will be linked using the data relations. When the dataset need to be filled, its request to the data adapter which in turn fills the dataset by making use of fill method. Of data adapter. Features of ADO.NET are as follows: 1. ADO.NET is the next evolution of ADO for the .Net Framework. 2. ADO.NET was created with n-Tier, statelessness and XML in the forefront. Two new objects, the Datasets and Data Adapter, are provided for these scenarios. 3. ADO.NET can be used to get data from a stream, or to store data in a cache for updates. 4. There is a lot more information about ADO.NET in the documentation. 5. Remember, you can execute a command directly against the database in order to do inserts, updates, and deletes. You don't need to first put data into a Dataset in order to insert, update, or delete it.

21

08NN1A0512

CRIME LOGGER

6. Also, you can use a Dataset to bind to the data, move through the data, and navigate data relationships. About Microsoft SQL Server: Microsoft SQL Server is a Structured Query Language (SQL) based, client/server relational database. Each of these terms describes a fundamental part of the architecture of SQL Server. Database: A database is similar to a data file in that it is a storage place for data. Like a data file, a database does not present information directly to a user; the user runs an application that accesses data from the database and presents it to the user in an understandable format. A database typically has two components: the files holding the physical database and the database management system (DBMS) software that applications use to access data. The DBMS is responsible for enforcing the database structure, including: y y Maintaining the relationships between data in the database. Ensuring that data is stored correctly and that the rules defining data relationships are not violated. y Recovering all data to a point of known consistency in case of system failures.

Client/Server In a client/server system, the server is a relatively large computer in a central location that manages a resource used by many people. When individuals need to use the resource, they connect over the network from their computers, or clients, to the server.

22

08NN1A0512

CRIME LOGGER

Examples of servers are: In client/server database architecture, the database files and DBMS software reside on a server. A communications component is provided so applications can run on separate clients and communicate to the database server over a network. The SQL Server communication component also allows communication between an application running on the server and SQL Server. Server applications are usually capable of working with several clients at the same time. SQL Server can work with thousands of client applications simultaneously. The server has features to prevent the logical problems that occur if a user tries to read or modify data currently being used by others. While SQL Server is designed to work as a server in a client/server network, it is also capable of working as a stand-alone database directly on the client. The scalability and ease-ofuse features of SQL Server allow it to work efficiently on a client without consuming too many resources. Structured Query Language (SQL) To work with data in a database, you must use a set of commands and statements (language) defined by the DBMS software. There are several different languages that can be used with relational databases; the most common is SQL. Both the American National Standards Institute (ANSI) and the International Standards Organization (ISO) have defined standards for SQL. Most modern DBMS products support the Entry Level of SQL-92, the latest SQL standard (published in 1992). SQL Server Features Microsoft SQL Server supports a set of features that result in the following benefits: Ease of installation, deployment, and use SQL Server includes a set of administrative and development tools that improve your ability to install, deploy, manage, and use SQL Server across several sites.
23

08NN1A0512

CRIME LOGGER

Scalability The same database engine can be used across platforms ranging from laptop computers running Microsoft Windows 95/98 to large, multiprocessor servers running Microsoft Windows NT, Enterprise Edition. Data warehousing SQL Server includes tools for extracting and analyzing summary data for online analytical processing (OLAP). SQL Server also includes tools for visually designing databases and analyzing data using English-based questions. System integration with other server software SQL Server integrates with e-mail, the Internet, and Windows. Databases A database in Microsoft SQL Server consists of a collection of tables that contain data, and other objects, such as views, indexes, stored procedures, and triggers, defined to support activities performed with the data. The data stored in a database is usually related to a particular subject or process, such as inventory information for a manufacturing warehouse SQL Server can support many databases, and each database can store either interrelated data or data unrelated to that in the other databases. For example, a server can have one database that stores personnel data and another that stores product-related data. Alternatively, one database can store current customer order data, and another; related database can store historical customer orders that are used for yearly reporting. Before you create a database, it is important to understand the parts of a database and how to design these parts to ensure that the database performs well after it is implemented.

24

08NN1A0512

CRIME LOGGER

Entity Integrity Constraint: Entity Integrity Constraints are of two types: y y Unique Constraints Primary Key Constraints The unique constraints designate a column or a group of columns as a unique key. The constraint allows only unique values to be stored in the column Sql Server rejects duplication of records when the unique key constraint is used. The primary key constraint is similar to the unique key constraint. The primary key constraint just like the former avoids duplication of values. Its needs it best felt when a relation has to be set between tables, because in addition to prevent in duplication it also does not allow null values. Referential Integrity Constraint: The Referential Integrity Constraint enforces relationship between tables. It designates a column or a combination of columns as a foreign key. The foreign key establishes a relationship with a specified primary or unique key in another table, called the referenced key. In this relationship, the table containing the foreign key is called a child table and the table containing the referenced key is called the parent table.

25

08NN1A0512

CRIME LOGGER

3. Design
3.1 Introduction to UML:
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 a very important part of developing objects 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. Goals of UML The primary goals in the design of the UML were: y Provide users with a ready-to-use, expressive visual modeling language so they develop and exchange meaningful models. y y y y y Provide extensibility and specialization mechanisms to extend the core concepts. Be independent of particular programming languages and development processes. Provide a formal basis for understanding the modeling language. Encourage the growth of the OO tools market. Support higher-level development concepts such as collaborations, frameworks, patterns and components. y Integrate best practices. can

Why we use UML? As the strategic value of software increases for many companies, the industry looks for techniques to automate the production of software and to improve quality and reduce cost and time-to-market. These techniques include component technology, visual programming, patterns and frameworks. Businesses also seek techniques to manage the complexity of systems as they increase in scope and scale. In particular, they recognize the need to solve recurring architectural
26

08NN1A0512

CRIME LOGGER

Problems, such as physical distribution, concurrency, replication, security, load balancing and fault tolerance. Additionally, the development for the World Wide Web, while making some things simpler, has exacerbated these architectural problems. The Unified Modeling Language (UML) was designed to respond to these needs.

3.2 UML Diagrams


UML is made up of nine diagrams that can be used to model a system at different points of time in the software life cycle of a system. But we have used only 4 UML diagrams namely. 1. Use case diagram 2. Sequence diagram 3. Activity diagram 4. Class diagram

27

08NN1A0512

CRIME LOGGER

3.2.1Use case diagram:


The use case diagram is used to identify the primary elements and processes that form the system. The primary elements are termed as "actors" and the processes are called "use cases."

<include>

<include>

Act & sections

Login
<extend>

Create new record

<include> <include> occurence

of offence

<include> <extend>

crime details

CI

Selection option

<include>

View records
<extend> <include>

court disposal

result of appeal

<include>

General details

Update records Full details


<include>

Log out Act & sections


<include>

occurence of offence
<include>

court disposal

result of appeal

crime details

Fig: 3.2.1.1
28

08NN1A0512

CRIME LOGGER

3.2.2 Sequence diagram:


A sequence diagram represents the interaction between different objects in the system. The important aspect of a sequence diagram is that it is time-ordered. This means that the exact sequence of the interactions between the objects is represented step by step. Different objects in the sequence diagram interact with each other by passing "messages".

User 1: login

web server

database

2: verify 3: response 4: accepted 5: select option 6: create new record 7: enter firno and complaint details 8: saves complaint details

9: response for saving details 10: view records

11: enter firno 12: general & full details can be viewed 13: update records 14: enter firno 15: enter the new details 16: enter details to be updated 17: updated response 18: log out

Fig: 3.2.2.1

29

08NN1A0512

CRIME LOGGER

3.2.3Activity diagram:
The process flows in the system are captured in the activity diagram. Similar to a state diagram, an activity diagram also consists of activities, actions, transitions, initial and final states, and guard conditions.

Centralized password

Login for CI,SI,Constable

Invalid

Login validation valid Selection option

Valid

Create new record

View record

Update record

Enter complaint details

Access option

Enter fir no to update

General details

Full details

Different details can be updated

Logout

Fig: 3.2.3.1

30

08NN1A0512

CRIME LOGGER

3.2.4 Class diagram:


The class diagram is used to refine the use case diagram and define a detailed design of the system. The class diagram classifies the actors defined in the use case diagram into a set of interrelated classes. The relationship or association between the classes can be either an "is-a" or "has-a" relationship. Each class in the class diagram may be capable of providing certain functionalities. These functionalities provided by the class are termed "methods" of the class. Apart from this, each class may have certain "attributes" that uniquely identify the class.

User class
user name password validate()

Database
database type server name selecting database()

Connection
sql authentication() window authentication()

Switching
connect() disconnect()

Database access
execute query() export results() save query()

Fig: 3.2.4.1

31

08NN1A0512

CRIME LOGGER

3.2.5 Data flow diagram


Level 0:

Acts & Section Db

Browse

FIR no

Create
Circle inspector

New Registration Entry

Update

Updated Act & section Db

Fig: 3.2.5.1 DFD for create and updating act &section DB

32

08NN1A0512

CRIME LOGGER

Level 1:

Acts & Sections dB

FIR No

Offence Date & Time

Browse Occurrence of offence FIR No

Circle inspector Create / Update

Acts & sections Updated dB

Fig: 3.2.5.2 DFD for create and updating act &section DB

33

08NN1A0512

CRIME LOGGER

3.3. SOFTWARE DESIGN


Design Overview The design phase begins with the requirements specification for the software to be developed. Design is the first step to moving from the problem domain towards the solution domain. Design is essentially the bridge between requirement specification and the final solution for satisfying the requirements. It is the most critical factor affecting the quality of the software. The design process for software system has two levels. 1. System Design or Top level design 2. Detailed Design or Logical Design 1. System Design: In the system design the focus on the deciding which modules are needed for the system, the specification of these modules and how these modules should be interconnected. 2. Detailed Design: In detailed design the interconnection of the modules or how the specifications of the modules can be satisfied is decided. Some properties for a software system design are y y y y y Verifiability Completeness Consistency Traceability Simplicity / Understandability

34

08NN1A0512

CRIME LOGGER

Application Architecture: User Interface BAL DAL

Database

The application which we are developing is using One-Tier or single Tier application. Within the same tier we are going to include the business functionalities as well the data access functionalities. The frontend which we are going to develop is using the ASP.NET web application. We will develop all the front end web forms or User interface forms using ASP.NET web application of .NET environment. Once after developing the user interfaces we need to write the code behind in order to specify the business logic as well the data access logic. This coding will be done using the C# language in our application, where will write all the necessary business logic code and data access code in order to access the backend database server. The backend end database server which we are going to use in our application is the MS SQL server 2005, where in all the operations will be done in Data access logic of our applications. In our application will use necessary functionalities such as insert during registration, update during updating the records, select during retrieval from the database as per the requirement of our application. Once database has been created in the database with all the necessary tables, will use necessary objects of the ADO.NET such as connection object, command object, Data Reader object, Data Adapter object and Dataset object as per the situation or the requirement of our application. In the above application diagram , in the User Interface block will include all the necessary front end screens and in the BAL block will include all the necessary business logic required for any business functionalities whereas in the DAL block will include all the necessary data access functionalities , such as establishing the connection to the data base server, than after connecting successfully will use the data manipulation commands such as insert , delete, update ,select operations depending upon the needs of the application. But in order to use the ADO.NET
35

08NN1A0512

CRIME LOGGER

Objects in our application we need to include the respective namespace provided by the ADO.NET. Thats in order to connect to the MS SQL server2005; we need to include the System. Sqlclient namespace in our application. The namespace sqlclient is to connect to the MS SQL server database. If we want to connect to oracle database server we need to include oracle client namespace, if we want to connect to ACCESS database server we need to include odbc namespace in our application. System Design During the system design, the target system is organized into subsystems based on analysis. Object Oriented Design (OOD) leads to decomposition and uses different notations to express different models of logical (class and object structure) and physical (module are process architecture) in addition to static and dynamic models of system under design. The aim of OOD is to design classes identified during analysis phase and user interaction. Additional classes and objects are identified and defined in OOD to support implementation of requirement. This system is modeled using object oriented methodology and unified modeling language (UML). Object oriented methodology has proved to be a successful method in dealing with complexity of system analysis, design and implementation. This paradigm is completely different from traditional procedure oriented paradigm. Total system can be perceived, defined and represented as a collection of co-operating objects rather than procedures.

36

08NN1A0512

CRIME LOGGER

4. Implementation
4.1 Sample code:
Home page (for user): if ((txtname.Text).ToUpper() == "POLICE") { FormsAuthentication.RedirectFromLoginPage(txtname.Text, false); Response.Redirect("~/Forms/newloginpage.aspx"); } else { lblwrongpassword.Visible = true; } Login page(for three users): SqlConnection con = new SqlConnection("server=VIJJU;Integrated Security=true;database=crimelogger"); In page load Session["position"] = ddlpos.SelectedItem.Text; When you click on submit button System.Threading.Thread.Sleep(2000); con.Open(); SqlDataReader rd; string cmdl = "select * from new_login where userid='" + txtuid.Text.Trim() + "' and password='" + txtpass.Text.Trim() + "'and user_position='" + ddlpos.SelectedItem.Text.Trim() + "'";
37

08NN1A0512

CRIME LOGGER

SqlCommand cmd = new SqlCommand(cmdl, con); rd = cmd.ExecuteReader(); if (rd.Read()) { Response.Redirect("~/Forms/new_user_option.aspx"); } else { lblerror.Visible = true; lblerror.Text = "Please Check the User Credentials";

} When you click on exit button Response.Redirect("~/Forms/loginmain.aspx");

Page for accesing records: if (!IsPostBack) { Position.Value = Session["position"].ToString(); Lblposition.Text = Lblposition.Text + Session["position"].ToString();

if (Position.Value == "CONISTABLE") { btnnewrecord.Enabled = true;


38

08NN1A0512

CRIME LOGGER

btnupdate.Enabled = false; btnviewrecords.Enabled = false; } else if (Position.Value == "SUBINSPECTER") { btnnewrecord.Enabled = true; btnviewrecords.Enabled = true; btnupdate.Enabled = false; } else if (Position.Value == "CIRCLEINSPECTER") { btnnewrecord.Enabled = true; btnviewrecords.Enabled = true; btnupdate.Enabled = true;

39

08NN1A0512

CRIME LOGGER

4.2 Screen Shots: Output:

Fig: 4.2.1 Home Page

40

08NN1A0512

CRIME LOGGER

Output:

Fig: 4.2.2 User login page

41

08NN1A0512

CRIME LOGGER

Output:

Fig: 4.2.3 User option page

42

08NN1A0512

CRIME LOGGER

Output:

Fig: 4.2.4 Fir no page

43

08NN1A0512

CRIME LOGGER

Output:

Fig: 4.2.5 Act & sections page

44

08NN1A0512

CRIME LOGGER

Output:

Fig: 4.2.6 Crime details page

45

08NN1A0512

CRIME LOGGER

Output:

Fig: 4.2.7 Arrest (or) surrender page

46

08NN1A0512

CRIME LOGGER

Output:

Fig: 4.2.8 Reports page

47

08NN1A0512

CRIME LOGGER

Output:

Fig: 4.2.9 Access option page

48

08NN1A0512

CRIME LOGGER

Output:

Fig: 4.2.10 General details page

49

08NN1A0512

CRIME LOGGER

Output:

Fig: 4.2.11 Full details page

50

08NN1A0512

CRIME LOGGER

Output:

Fig: 4.2.12 Update page

51

08NN1A0512

CRIME LOGGER

Output:

Fig: 4.2.13 updating details page

52

08NN1A0512

CRIME LOGGER

Output:

Fig: 4.2.14 updating occurrence of offence page

53

08NN1A0512

CRIME LOGGER

Output:

Fig: 4.2.15 updating accused/suspected details

54

08NN1A0512

CRIME LOGGER

Output:

Fig: 4.2.16 update property/seized page

55

08NN1A0512

CRIME LOGGER

Output:

Fig: 4.2.17 update result of appeal page

56

08NN1A0512

CRIME LOGGER

5. Testing:
Software testing is a critical element of software quality assurance and represents the ultimate review of specification, design and coding. Testing is the process of executing a program with the intent of finding an error. The design of tests for software and other engineered products can be as challenging as the initial design of the product itself. There of basically two types of testing approaches. One is Black-Box testing the specified function that a product has been designed to perform, tests can be conducted that demonstrate each function is fully operated. The other is White-Box testing knowing the internal workings of the product ,tests can be conducted to ensure that the internal operation of the product performs according to specifications and all internal components have been adequately exercised. Testing Strategies: Testing is a set of activities that can be planned in advanced and conducted systematically. A strategy for software testing must accommodation low-level tests that are necessary to verify that a small source code segment has been correctly implemented as well as high-level tests that validate major system functions against customer requirements. Software testing is one element of verification and validation. Verification refers to the set of activities that ensure that software correctly implements as specific function. Validation refers to a different set of activities that ensure that the software that has been built is traceable to customer requirements. Unit Testing: Unit testing tests the minimal software component, or module. Each unit (basic component) of the software is tested to verify that the detailed design for the unit has been correctly implemented. In an object-oriented environment, this is usually at the class level, and the minimal unit tests include the constructors and destructors.
57

08NN1A0512

CRIME LOGGER

Integration Testing: Integration testing exposes defects in the interfaces and interaction between integrated components (modules). Progressively larger groups of tested software components

corresponding to elements of the architectural design are integrated and tested until the software works as a system. Validation Testing: The terms verification and validations are used interchangeably we will describe both these methods. Verification is the process of determining whether or not the products of given phase of software development fulfill the specifications established in the previous phase. These activities include proving and reviews. Validation is the process of evaluating the software at the end of software development process; we find how well the software satisfies the requirement specifications.

58

08NN1A0512

CRIME LOGGER

5.1.1 Test Case: 1


Input: Name Field input is 123 Output: Enter only characters.

Fig: 5.1.1 Test Case of Registration Page

5.1.2 Test Case: 2


Input: All the fields of Insert Fee Details page are empty Output: please enter roll number, tuition fee, bus fee, admission fee and library fee.

59

08NN1A0512

CRIME LOGGER

Fig: 5.1.2 Test Case of Insert Fee Details Page

6. Conclusion:

60

08NN1A0512

CRIME LOGGER

Student Fee Management System streamlines data collection, storage & retrieval and the management of records to improve both operational (Fee, student personal details) and management tasks (planning, evaluation and decision-making). Student Fee Management System focuses on storing & processing student data and produce outputs supporting the operational activities. These outputs include management information (about the Fee of a student) and student personal information. Student Fee Management System directly integrates with the universities/college finance department by effectively managing invoicing, receipting, sponsor management and other billing features.

7. Future Enhancements:

61

08NN1A0512

CRIME LOGGER

The additional feature which we can add in this tool is messaging services like SMS & E-mail (which means tool can able to send messages to parents regarding students fee details). And also usage of credit and debit cards that means the parent can sit in home and can pay the fee of student without any waste of time.

8. Bibliography:
62

08NN1A0512

CRIME LOGGER

The following books were referred during the analysis and execution phase of the project 1. SOFTWARE ENGINEERING By Roger.S.Pressman 2. Professional ASP.NET By Wrox 3. MSDN 2002 By Microsoft 4. Jeff Poise (2002). Programming Microsoft .NET. Microsoft Press. 5 Asp.net general information and tutorials: http://www.asp.net.

63

You might also like