Sie sind auf Seite 1von 57

Introduction

The project entitled as Student Project Allocation and Management system is a web based application developed on the windows platform in order to maintain and manage list of all the students and their project details. This application stores all the information of the students regarding their names, id numbers, aggregates and project details. It divides the students into groups based on their aggregates. The Administrator is provided with a username and password to maintain and modify details in the database. She/He provides the user id and password to the team leaders in order to login into their accounts and enter their team details and option will be provided for team leaders to select their project guides and other members of that group .User can view the details about the project groups and their guides.

1.1 EXISTING SYSTEM


The earlier system is not computerized. All the project details are handled manually. To make this laborious job simple this application was developed.

1.1.2 DISADVANTAGES OF EXISTING SYSTEM


It takes so much time for project coordinator to collect students details and approving the details provided by them.All the students are unaware of the projects done by other students. Thereby there will be lack of awareness among the students regarding the current projects that are going on in their college.

1.2 PROPOSED SYSTEM


The proposed system is fully computerized, which removed all the drawbacks of existing system. This system can be used as an application for the college to manage the student project details efficiently. In this application all the team leaders can directly login into their accounts with an user id and password and enter the project details which are stored in database and managed by the administrator.

1.2.1 ADVANTAGES OF PROPOSED SYSTEM


In this application, the project details of the students are entered through system and there by the manual work done by the project coordinator is reduced. This project contains all the details of the students that can be viewed by all the users (read only), but can be modified only by the administrator. Therefore all the students can be aware of the projects that are going on in their college.
1

Student Project Allocation Management

1.3 Scope
Students Project allocation and management is a web-based application which uses .NET technology to run. It divides the students into groups based on their aggregates and assigns passwords to the team leaders to enter their project details

Student Project Allocation Management

2. REQUIREMENTS ANALYSIS
2.1 HARDWARE AND SOFTWARE REUIREMENTS
2.1 HARDWARE REQUIREMENTS
Processor RAM Hard Disk : Intel : 1GB : 30GB

2.2 SOFTWARE REQUIREMENTS


Technology used Language used Database used : ASP.NET : C#.NET : Oracle 10g

2.1.3 WORKING PLATFORM


Operating System : Window XP

Student Project Allocation Management

2.3 SOFTWARE REQUIREMENTS SPECIFICATION


2.3.1 VISION
For the administrator who maintains the project details the Student project allocation and Management is a web based application that allows the administrator to maintain the team details efficiently instead of manually handling the work. For the team leader who would like to enter their project details and view the entered details the Student project allocation and Management is a web based application that provides an interface to enter the details which are stored in database.

2.3.2 SCOPE
This application allows the team leaders to enter their team details, guide details and project name which are stored in database. The administrator generates user id and passwords to the team leaders in order to login into their accounts and enter their team details. Any modification that is done to database is through administrator.

2.3.3 GLOSSARY

Web Browser

It is an interface through which all the students project details can be accessed.

Administrator Team leader

One who is responsible of maintaining, necessary modifications to the database. One who enter the team details such as team members, guide details and project name.

User

One who can use the system view the entered project details.

Student Project Allocation Management

2.3.4 SYSTEM FUNCTIONS

S.NO.
1 A

System Function
S1 S1.10

Description
Group division
The administrator login into system with user id and password

S1.20

Enters the student details such as name, id and aggregate.

S1.30

The system sorts the students into different groups based on their aggregates.

2
A B

S2
S2.10 S2.10

Team selection
The team leaders login into their accounts. Enters their team details such as team members, guide details and project name.`

3
A

S3
S3.10

Modifications
Team leaders can also modify the detail which is done through administrator.

Student Project Allocation Management

2.3.5 DETAILED SOFTWARE REQUIREMENTS 2.3.5.1 ACTORS Actors


Administrator

Description
Administrator maintains and manages the database. The team leader enrolls the team details.

Team leader

User

The user views the entered project details.

System

The system divides the students into different groups based on their aggregates.

Use case model

Actor Name Actor Id Description

Administrator A-01 Handles all admin related tasks throughout the application.

Main activities

Generates user id,password for team leaders and also does modifications if necessary

Frequency of use Work Environment Number of users

Medium Browser 1

Student Project Allocation Management Actor Name Actor Id Description Main activities Team leader A-02 The person who uses the application. Team leaders must login with respective user id and password and enter their entire team details. Frequency of use Work Environment Number of users High Browser Any number

Actor Name Actor Id Description Main activities

User A-03 The person who uses the application. The users can view the entire project details of the students.

Frequency of use Work Environment Number of users

High Browser Any number

2.3.5.2 LIST OF USECASES


Insert student details Group division Enroll project details Update database View details

Student Project Allocation Management

3.SYSTEM DESIGN
3.1 DATA DICTIONARY
The Volume of data in most Information system applications is substantially more than a single user can easily keep track of data dictionaries are an integral component of structural analysis, since data flow diagrams by themselves do not fully describe the subject of investigation. The data dictionary provides additional information about the system.

STUDENT TABLE:

Field
ID NAME AGGREGATE BRANCH YEAR PASSWORD TEAMCODE

Type
Varchar2 Char Number Char Number Varchar2 Varchar2

Size
15 20 3 5 5 10 10

GIUDE TABLE:

Field
GUIDE DESIGNATION BRANCH

Type
Char Char Char

Size
20 20 20

TEAM CODE TABLE:

Field
TEAMCODE ID

Type
Varchar Varchar

Size
20 20

Student Project Allocation Management

PROJECT DETAILS TABLE:

Field
TEAMCODE PNAME GNAME

Type
Varchar2 Varchar2 Char

Size
10 50 25

Student Project Allocation Management

3.UML DIAGRAMS
The Unified Modelling Language allows the software engineer to express an analysis model using the modelling notation that is governed by a set of syntactic semantic and pragmatic rules. A UML system is represented using five different views that describe the system from distinctly different perspective. Each view is defined by a set of diagram, which is as follows. User Model View i. This view represents the system from the users perspective. ii. The analysis representation describes a usage scenario from the end-use perspective.

Structural model view In this model the data and functionality are arrived from inside the system

Behavioural Model View It represents the dynamic of behavioural as parts of the system, depicting the interactions of collection between various structural elements described in the user model and structural model view.

Implementation Model View In this the structural and behavioural as parts of the system are represented as they are to be built. Environmental Model View In this the structural and behavioural aspects of the environment in which the system is to be implemented are represented.
10

Student Project Allocation Management

3.1 USE CASE DIAGRAM


Use case diagrams are created to visualize the relationships between actors and use cases. A use case is a pattern of behavior the system exhibits. Each use case is a sequence of related transactions performed by an actor and the system. A flow of events documents is created for each use cases, written from an actor point of view. Details what the system must provide to the actor when the use cases are executed. Typical Contents: How the use case starts and ends. Normal flow of events. Alternate flow of events. Exceptional flow of events.

Use Case
Use cases are used during requirements elicitation and analysis to represent the functionality of the system.

Actors
Actors are the users of a system. When one system is the actor of another system, label the actor system with the actor stereotype.

11

Student Project Allocation Management

Insert student details

Administrator

Update database User

View details

Team leader Enroll project details

System

Group division

3.1.2 CLASS DIAGRAM:


Class diagrams are important not only for visualizing, specifying and documenting structural models, but also for constructing executable systems through forward reverse engineering. Class diagrams commonly contain the following things: Classes Interfaces Collaborations Dependency, generalization and association relationships.

12

Student Project Allocation Management

Administrator id password insert student details() view details() update database() generate password() 1 1..*

Team leader username password team enrollment() guide selection() view team details()

1..*

1..* User view details() 1..* 1 Database username password insert details() delete details() update() 1 1 1 1 System group division()

3.1.3 SEQUENCE & COLLABORATION DIAGRAMS 3.1.3.1 SEQUENCE DIAGRAM


A type of interaction diagrams, a sequence diagram shows the actors of the object participating in an interaction and the events they generate arranged in a time sequence. The vertical dimension in a sequence diagram represents time, with time proceeding down the page. The horizontal dimension represents different actors or objects. A sequence diagram traces the execution of an interaction in time.

Activation
Activation boxes represent the time an object needs to complete a task.

13

Student Project Allocation Management

Messages
Messages are arrows that represent communication between objects. Use half-arrowed lines to represent asynchronous messages. Asynchronous messages are sent from an object that will not wait for a response from the receiver before continuing its tasks.

Lifelines
Lifelines are vertical dashed lines that indicate the object's presence over time.

Sequence diagram for administrator:

a:Administrator

t:Teamleader

u:User

s:System

d:Database

login

verifies valid user or not

corresponding page is displayed

valid user

insert students details

update database

14

Student Project Allocation Management

Sequence diagram for team leader:


a:Administrator t:Teamleader u:User s:System d:Database

login

verifies valid user or not valid user

enter team details enter guide details enter project details

stores in database

store in database stores in database

Sequence diagram for user:

a:Administrator

t:Teamleader

u:User

s:System

d:Database

view details

15

Student Project Allocation Management

3.1.4 COLLABORATION DIAGRAM


A collaboration diagram is an interaction diagram that shows the sequence of messages that implement an operation or a transaction. Collaboration diagram shows objects, their links and their messages. They can also contain simple class instances and class utility instances. Each collaboration diagram provides a view of the interactions or structural relationships that occur between objects and object-like entities in the current model.

Collaboration diagram for administrator


1: login a:Administrator s:System 4: corresponding page is displayed

5: insert students details 6: update database 2: verifies 3: valid user valid user or not

t:Teamleader

u:User

d:Database

16

Student Project Allocation Management

Collaboration diagram for team leader:


1: login 4: enter team details 6: enter guide details 8: enter project details a:Administrator t:Teamleader s:System

3: valid user

2: verifies valid user or not 5: stores in database 7: store in database 9: stores in database

d:Database u:User

Collaboration diagram for user:

a:Administrator

t:Teamleader

u:User

d:Database

1: view details

s:System

17

Student Project Allocation Management

SELECTED SOFTWARE: .NET (NETWORK ENABLE TECHNOLOGY)


.NET technology was introduced by Microsoft, to catch the market from the SUN's Java. Few years back, Microsoft had only VC++ and VB to compete with Java, but Java was catching the market very fast. With the world depending more and more the Internet/Web and java related tools becoming the best choice for the web applications, Microsoft seemed to be losing the battle. Thousands of programmers moved to java from VC++ and VB. This was alarming for Microsoft and many of the Microsoft fans kept on asking "is Microsoft sleeping? And Microsoft had the answer. One fine morning, they announced: "We are not sleeping. We have the answer for you. And that answer was .NET. But Microsoft has a wonderful history of starting late but catching up quickly. This is true in case of .NET too. Microsoft put their best men at work for a secret project called Next Generation Windows Services (NGWS)., under the direct supervision of Mr. Bill Gates. The outcome of the project is what we now know as .NET. Even though .NET has borrowed most of it's ideas from Sun's J2EE, it has really outperformed their competitors.

Microsoft's VC++ was a powerful tool. But it was too complex. It has too many data types, and developers had to learn many libraries including Windows SDK, MFC, ATL, COM etc. There were many data type compatibility issues while exchanging data between different layers. Visual Basic was too easy, and many serious programmers hated it just for that reason. Even though Visual basic was very easy to use, it was not very flexible to develop serious applications. SUN's Java became a very good choice for these reasons. It had the flexibility and power of C++ and at the same time easy enough to catch the attention of VB programmers.

Microsoft recognized these factors and they introduced the .NET considering all these factors. All unwanted complexities are eliminated and a pure object oriented programming model was introduced. This makes programmer's life very easy.

18

Student Project Allocation Management .NET framework comes with a single class library. And thats all programmers need to learn!! Whether they write the code in C# or VB.NET or J#, it doesn't matter, you just use the .NET class library. There is no classes specific to any language. There is nothing more you can do in a language, which you can't do in any other .NET language. You can write code in C# or VB.NET with the same number of lines of code, same performance and same efficiency, because everyone uses same .NET class library.

What is .NET?
It is a platform neutral framework. Is a layer between the operating system and the programming language. It supports many programming languages, including VB.NET, C# etc. .NET provides a common set of class libraries, which can be accessed from any .NET based programming language. There will not be separate set of classes and libraries for each language. If you know any one .NET language, you can write code in any .NET language!! In future versions of Windows, .NET will be freely distributed as part of operating system and users will never have to install .NET separately.

What is Not?
.NET is not an operating system.
.NET is not a programming language.

".NET is a framework"
It is not a programming language, but it supports several programming languages. By default .NET comes with few programming languages including C# (C Sharp), VB.NET, J# and managed C++. .NET is a common platform for all the supported languages. It gives a common class library, which can be called from any of the supported languages. So, developers need not learn many libraries when they switch to a different language. Only the syntax is different for each language.When you write code in any language and compile, it will be converted to an 'Intermediate Language' (Microsoft Intermediate Language 19

Student Project Allocation Management MSIL). So, your compiled executable contains the IL and not really executable machine language. When the .NET application runs, the .NET framework in the target computer take care of the execution. (To run a .NET application, the target computer should have .NET framework installed.) The .NET framework converts the calls to .NET class libraries to the corresponding APIs of the Operating system.

What is Visual Studio.NET?


Many people always get confused with Visual Studio .NET (VS.NET) and .NET technology. VS.NET is just an editor, provided by Microsoft to help developers write .NET programs easily. VS.NET editor automatically generates lot of code, allows developers to drag and drop controls to a form, provide short cuts to compile and build the application etc. VS.NET is not a required thing to do .NET programming. You can simply use a notepad or any other simple editor to write your .NET code!!! And you can compile your .NET programs from the command prompt. .NET supported languages Currently .NET supports the following languages: C# VB.NET C++ J#

Is it platform independent?
Many people ask this question "Java is platform independent, what about .NET ?". The answer is "Yes" and "No" ! The code you write is platform independent, because whatever you write is getting compiled into MSIL. There is no native code, which depends on your operating system or CPU. But when you execute the MSIL, the .NET framework in the target system will convert the MSIL into native platform code. So, if you run your .NET exe in a Windows machine, the .NET framework for Windows will convert it into Windows native code and execute. If you run your .NET application in Unix or Linux, the .NET framework for Unix/Linux will convert your code into Unix/Linux native code
20

Student Project Allocation Management and execute. So, your code is purely platform independent and runs anywhere! But wait, we said it wrong... there is no .NET framework for Unix or Linuxavailable now. Microsoft has written the .NET framework only for Windows. If you or some one else write a .NET framework for other platforms in future, your code will run there too. So, let us wait until someone write .NET framework for Linux before you run your .NET code in Linux.

Is it worth learning .NET?


Are you sure you have a very good job now and your job is safe for next 10 years? Then, probably you don't need to waste your time to learn this new technology.

If you are not sure about the future of your job, better spend sometime and make sure you have fuel to run for next few years!

How long it will take to learn .NET?


It all depends on how fast you can learn. If you are familiar with Visual Basic or C++, you can come to speed in .NET within 1-2 months. If you are a new to programming, we estimate 6 months will be a reasonable period to become comfortable with .NET world.

Future of .NET
Microsoft is moving all its technologies to be .NET based or .NET related. The next version of SQL Server even supports writing stored procedures in .NET languages. .NET runtime will be part of all Operating Systems by default.

21

Student Project Allocation Management

C#
C# is Microsoft's new programming language for the .NET platform. It combines some of the best features of modern programming languages such as Java, C++ or Visual Basic. C# is an object-oriented language with single inheritance but multiple interfaces per class. It supports component-based programming by properties (smart fields), events and delegates (enhanced function pointers). C# is fully interoperable with other .NET languages such as VB.NET, Eiffel.NET or Oberon.NET. Declaring Variables
The following sample shows different ways you can declare a variable:

int a; int salary, incomeTax, sum; int count = 10; string name; string fullName= "Little John"; Loop Statements

While
int i = 0; while ( i < 5 ) { Console.WriteLine ( i ); ++i; } The above loop repeats 5 times and prints the value of i. The output of above code would be like this : 0 1 2 3 4

22

Student Project Allocation Management

For
for ( int i = 0; i < 5; i++ ) { Console.WriteLine ( i ); }
The above loop repeats 5 times just like the while loop and prints the value of i. The output of above code would be like this :

0 1 2 3 4

do ... while int i = 0; do { Console.WriteLine ( i ); i++; } while ( i < 5 );


The above loop is pretty much same as the while loop. The only difference is, the condition is checked only after executing the code inside the loop.

foreach string [] names = new string[]{ "Little John", "Pete", "Jim", "Bill" }; foreach ( string name in names ) { Console.WriteLine ( name ); }
foreach loop can be used to iterate through a collection like array, ArrayList etc. The above code displays the following output:

Little john Pete Jim Bill

23

Student Project Allocation Management

In C# data types are classified into two :


Value type Reference type

Asp .net :
ASP.NET is the name of the Microsoft technology used for web site development. ASP.NET is NOT a programming language like C# or VB.NET ASP.NET development requires a programming language like C# or VB.NET to write code. ASP stands for Active Server Pages. There are several other technologies exist for web development (Eg: PHP). ASP.NET is the technology from Microsoft and it he widely used one. ASP.NET technology comes with a rich set of components and controls that make the web development very easy. Visual Studio .NET is the editor from Microsoft which helps you develop ASP.NET web sites faster and easily. IIS is the web server from Microsoft which supports ASP.NET. To develop ASP.NET web sites, you must have IIS installed in your computer.

HTML
HTML is a very simple language used to develop web pages. It may not take more than a couple of days to to become a reasonable good HTML programmer.

Programming language - C#, VB.NET or your favourite language


24

Student Project Allocation Management You can develop a simple, static web site using plain HTML. You don't need to know C# or VB.NET to develop a web site. But, to display dynamic content in the ASP.NET website, you must use a programming language like C# or VB.NET. For example, if you want to display data from database, you will need to write C# or VB.NET code in the web page to access the database and retrieve database. So, you must learn at least one programming language like C# or VB.NET to become a good ASP.NET developer.

Client side scripting language


In addition to HTML and C#/VB.NET, you may need to learn one more programming language like JavaScript or Vb script for client side scripting. JavaScript is the most popular and widely used client side scripting language

Internet Information Services IIS


IIS is the engine that drives the ASP.NET web sites. But just like a car driver needs to know much about the engine of the car, you need not be an IIS expert to develop web sites. Just like your car starts when you turn the key, the IIS is started when you start windows.

Definitions for browser


Browser is an application, which helps us to view the Web sites and the web content. Web sites are located in some remote systems, which needs a special kind of program or an application to access them, such an application is called browser. A browser is an application which you can use to retrieve web pages from web sites and view. When you type a URL in the browser, the browser will convert it into a web request which web server can understand. Browser will send the request to web server using the HTTP protocol. When a web server returns a web page as a Response, the browser will understand the response and display the body of the response to the user in browser.
25

Student Project Allocation Management In simple terms a browser can be defined as A software application used to locate and display Web pages You can create your own simple browser application using C++, C#, VB.NET or any other language you like. All you need to know is, how to compose a request which web server can understand, how to parse and display the response from web server and communicate with web server using HTTP protocol. Even though the basic job of browser is just send requests to web server and receive response from the server, modern browser provide several other enhanced features including Back/Forward buttons, save viewed files to disk so that they can be viewed later, cache images so that the same images need not be downloaded again and again etc. Internet Explorer, Netspace, Mozilla are some of the popular web browsers currently available in the market. Netscape was the most popular web browser till 4-5 years back, but currently more than 90% of the internet users use "Internet Explorer" to browse the websites.

ADO.NET
ADO.NET is the data access model that comes with the .NET Framework. ADO.NET provides the classes required to communicate with any database source (including Oracle, Sybase, Microsoft Access, Xml, and even text files).

DataAccess Providers in .NET


ADO.NET comes with few providers, including: OleDb SqlClient Microsoft made the SQL Server. So they gave a separate provider, specifically made for SQL Server. We can use the OleDb provider for all other database sources including MS Access, Oracle, Sybase etc. There is a separate provider available for Oracle.

26

Student Project Allocation Management A DATA PROVIDER is a set of classes that can be used to access, retrieve and manipulate data from the databases. Both OleDb and SqlClient has its own set of classes, but they have the same concepts. We would like to classify the classes into two broad categories (this is not a microsoft classification, anyway!) Classes for communicate with database Classes for holding/manipulating data

The job of first category of classes is to communicate with database and send or retrieve data from the database. The second category of the classes will be used as a carrier of data.

Classes for communicating with database


The Connection, Command, DataReader, and DataAdapter objects are the core elements of the ADO.NET provider model.

Object

Description

SqlClient Objects

OleDb Objects

Connection

Establishes a connection to a specific data SqlConnection source. Executes a command against a data source. SqlCommand

OleDbConnection

Command

OleDbCommand OleDbDataReader

DataReader Reads a forward-only, read-only stream of SqlDataReader data from a data source. DataAdapter Populates a DataSet and resolves updates with the data source.

SqlDataAdapter OleDbDataAdapter

Each provider may have classes equivalent to above objects. The name of the classes vary slightly to represent the provider type appropriately.
27

Student Project Allocation Management

Depending on the type of database you work on, you will have to choose either OleDb or SqlClient (or, some other provider) objects. Since all our samples use MS Access database, we will be using OleDb objects in all the samples. If you like to use SqlServer, you just need to replace the OleDb objects with the equivalent SqlClient objects.

Classes for holding data


The following are the main classes used to hold data in Ado.NET: DataSet DataTable DataRow A DataSet is an in-memory representation of the database. DataSet contains DataTables (and more...) DataTable represents a database table DataTable contains DataRows (and more...) A DataRow represents a record in a database table. DataRow is a collection of all fields in a record.

We can use the DataAdapter or DataReader to populate data in DataSet. Once we populate data from database, we can loop through all Tables in the DataSet and through each record in each Table. On the first look, this may look bit confusing, but once you understand the concept and get familiar with the Ado.NET classes, you will appreciate the power and flexibility of Ado.NET.

DataSet and DataTable are the key components in ADO.NET programming. In simple words, DataSet represents an in memory representation of the database. We can load an entire database into a DataSet and manipulate the data in memory. If you aremore familiar with DataSet, you can

28

Student Project Allocation Management Add, Edit and Update data in the dataset and then just call a single method 'AcceptChanges()' whichwill save all the changes back to the database. A DataSet contains one or more DataTables A DataTable contains DataRows. What is DataSet ? A DataSet is an in memory representation of data loaded from any data source. Even though the most common data sourceis database, we can use DataSet to load data from other data sources including XML files etc. In this article, we will talk about the role of DataSet in manipulating data from database. In .NET, a DataSet is a class provided by the .NET Framework. The DataSet class exposes several proeprties and methods that can be used to retrieve, manipulate and save data from various data sources. Just like any other classes in object oriented programming, we have to create an instance of DataSet class to work with data. Typically, we may create a new instance of a DataSet and use other classes provided by .NET Framework to populate the DataSet. See the following example:

string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\Samples\\Employee.mdb"; OleDbConnection myConnection = new OleDbConnection( connectionString ); string query = "select * from EMPLOYEE_TABLE"; OleDbDataAdapter myAdapter = new OleDbDataAdapter( query, myConnection ); DataSet employeeData = new DataSet(); myAdapter.Fill ( employeeData );
Here we are creating a OleDbConnection object and we are just passing the object to the OleDbDataAdapterobject. Also, we pass the 'select ...' query to theOleDbDataAdapter. Next, we call the '.Fill()' method of the OleDbDataAdapter. This step will populate the dataset ( called 'employeeData' ) with the data retrieved for the sql statement 'select * from EMPLOYEE'. As you already know, a DataSet can contain a collection of tables. But in the above case, our sql statement will retrieve data from only one table. So, our DataSetwill have only one table.

29

Student Project Allocation Management Commonly used properties and methods of DataSet

Property : Tables The Tables propertly allows us to retrieve the tables contained in the DataSet. This property returns a DataTableCollection object. The following sample code demonstrates iterating through the collection of tables in a data set and print the name of all the tables. DataSet employeeData = new DataSet(); myAdapter.Fill( employeeData ); // Repeat for each table in the DataSet collection. foreach ( DataTable table in employeeData.Tables ) { MessageBox.Show ( table.TableName );

30

Student Project Allocation Management

DATABASE
Oracle
Oracle Application Server 10g HTTP Server (OHS) provides a web server and also the necessary infrastructure to create dynamic applications.

The Oracle Product Family


Oracle Corporation is generally thought of as a database companyand for good reason. Oracle has been a leader in the development of reliable, scalable, and recoverable database technologies for more than 25 years. With the release of Oracle 10g, Oracle has further enhanced its reputation as an industry leader by producing a feature-rich, yet easy-to-manage database that can handle data from the busiest transactional systems to the largest data warehouses. However, Oracle Corporation also produces many other products that support a variety of datarelated business activities. Currently, Oracles product family consists of the following products and services: Oracle Database 10g Oracle Application Server 10g Oracle Developer Suite Oracle Applications 11i Oracle Collaboration Suite Oracle Services

Oracle 10g
Oracle 10g was released as version 10.1.0.2 in spring 2004. This release of Oracles flagship database product introduces many new features, but the three primary thrusts are ease of
31

Student Project Allocation Management management, enhanced scalability, and improved performance management.The ease of management features include the automatic management of disk storage allocated to the database, proactive monitoring and self-tuning of the databases memory structures, preconfigured database alerts, and enhanced, web-based tools for monitoring and managing the entire Oracle architecture.Scalability and performance improvements are largely based on Oracles grid computing model. Grid computing is intended to allow businesses to move away from the idea of many individual servers, each of which is dedicated to a small number of applications. When configured in this manner, applications often either do not fully utilize the servers available hardware resources such as memory, CPU, and disk or fall short of these resources during peak usage. By comparison, databases running under Oracles grid computing model can be spread across as few or as many servers as needed so as to make the most efficient use of each of the available hardware resources at all times. At the same time, Oracle 10gs automated performance monitoring and tuning mechanisms dynamically adjust the databases allocation of these resources to improve performance. There are five editions of Oracle 10g: Enterprise Standard Standard Edition One Personal Lite

Edition Description Enterprise Edition Includes all available Oracle 10g features either bundled or as extracost options.
32

Student Project Allocation Management Standard Edition Includes full clustering features and all Oracle 10g ease-of-management features for servers running as many as four processors.

Standard Edition One Includes all Oracle 10g ease-of-management features for servers running as many as two processors. Personal Includes all available Oracle 10g features either bundled or as extra-cost options, but for an individual user database. Lite Includes all Oracle 10g features needed to build and deploy mobile database applications.

Oracle Application Server 10g


Oracles Application Server 10g is used to deploy web-based applications that, like the database, must be highly reliable and scalable to thousands of users. Like the database, Oracle Application Server 10g is also available in a number of versions, but all versions include full Java functionality and Oracles HTTP server, with additional components such as portals, forms and reports servers, single sign-on capabilities, and wireless connectivity also available.

33

Student Project Allocation Management

4.1 Sample code:


using using using using using using using using using using using System; System.Data; System.Configuration; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls; System.Data.OleDb;

public partial class student : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { Label3.Visible = false; Label4.Visible = false; Label5.Visible = false; txtuname.Visible = false; txtpwd.Visible = false; ImageButton6.Visible = false; OleDbConnection con = new OleDbConnection("user id=system;password=javi;provider=msdaora.1"); OleDbDataAdapter da = new OleDbDataAdapter("select id,name,aggregate,branch,year from stdb where branch='" +TextBox2.Text+ "'and year='"+TextBox1.Text+"' order by aggregate desc",con); DataSet ds = new DataSet(); da.Fill(ds, "stdb"); GridView2.DataSource = ds.Tables["stdb"]; GridView2.DataBind(); Label7.Text = DateTime.Now.ToString(); } protected void Button1_Click(object sender, EventArgs e) { Label3.Visible = false; Label4.Visible = false; Label5.Visible = false; txtuname.Visible = false; txtpwd.Visible = false; ImageButton6.Visible = false; GridView1.Visible = true; GridView2.Visible = false; OleDbConnection con = new OleDbConnection("user id=student;password=neelu;provider=msdaora.1");

34

Student Project Allocation Management


OleDbDataAdapter da = new OleDbDataAdapter("select * from stdb where branch='" +TextBox2.Text+ "'and year='" + TextBox1.Text + "'", con); DataSet ds = new DataSet( ); da.Fill(ds, "stdb"); GridView1.DataSource = ds.Tables["stdb"]; GridView1.DataBind(); } protected void Button2_Click(object sender, EventArgs e) { Label3.Visible = false; Label4.Visible = false; Label5.Visible = false; txtuname.Visible = false; txtpwd.Visible = false; ImageButton6.Visible = false; GridView1.Visible = false; GridView2.Visible = true; OleDbConnection con = new OleDbConnection("user id=student;password=neelu;provider=msdaora.1"); OleDbDataAdapter da = new OleDbDataAdapter("select * from stdb where branch='" +TextBox2.Text+ "' order by aggregate desc", con); DataSet ds = new DataSet(); da.Fill(ds, "stdb"); GridView2.DataSource = ds.Tables["stdb"]; GridView2.DataBind(); } protected void Button3_Click(object sender, EventArgs e) { GridView1.Visible = true; GridView2.Visible = false; OleDbConnection con = new OleDbConnection("user id=system;password=javi;provider=msdaora.1"); OleDbDataAdapter da = new OleDbDataAdapter("select * from guide where branch='" +TextBox2.Text+ "'", con); DataSet ds = new DataSet(); da.Fill(ds, "guide"); GridView1.DataSource = ds.Tables["guide"]; GridView1.DataBind(); } protected void GridView2_SelectedIndexChanged(object sender, EventArgs e) { Label3.Visible = false; Label4.Visible = false; Label5.Visible = false; txtuname.Visible = false; txtpwd.Visible = false; ImageButton6.Visible = false; OleDbConnection con = new OleDbConnection("user id=student;password=neelu;provider=msdaora.1"); OleDbDataAdapter da = new OleDbDataAdapter("select * from stdb where branch='" +TextBox2.Text+ "'", con); DataSet ds = new DataSet(); da.Fill(ds, "stdb");

35

Student Project Allocation Management


GridView2.DataSource = ds.Tables["stdb"]; GridView2.DataBind(); } protected void Button4_Click(object sender, EventArgs e) { Response.Redirect("studentlogin.aspx?uid=" + txtuname.Text); } protected void Button5_Click(object sender, EventArgs e) { Server.Transfer("default.aspx"); } protected void ImageButton1_Click(object sender, ImageClickEventArgs e) { ImageButton8.Visible = false; ImageButton9.Visible = false; Label13.Visible = false; Label13.Visible = false; Label11.Visible = false; Label10.Visible = false; Label9.Visible = false; Label8.Visible = true; Label3.Visible = false; Label4.Visible = false; Label5.Visible = false; txtuname.Visible = false; txtpwd.Visible = false; ImageButton6.Visible = false; GridView1.Visible = true; GridView2.Visible = false; OleDbConnection con = new OleDbConnection("user id=system;password=javi;provider=msdaora.1"); OleDbDataAdapter da = new OleDbDataAdapter("select id,name,aggregate,branch,year from stdb where branch='"+TextBox2.Text+"'and year='" + TextBox1.Text + "'", con); DataSet ds = new DataSet(); da.Fill(ds, "stdb"); GridView1.DataSource = ds.Tables["stdb"]; GridView1.DataBind(); } protected void ImageButton5_Click(object sender, ImageClickEventArgs e) { ImageButton8.Visible = false; ImageButton9.Visible = false; Label13.Visible = false; Label13.Visible = true; Label11.Visible = false; Label8.Visible = false; Label10.Visible = false; Label9.Visible = false; Label3.Visible = false; Label4.Visible = false;

36

Student Project Allocation Management


Label5.Visible = false; txtuname.Visible = false; txtpwd.Visible = false; ImageButton6.Visible = false; GridView1.Visible = false; GridView2.Visible = true; OleDbConnection con = new OleDbConnection("user id=system;password=javi;provider=msdaora.1"); OleDbDataAdapter da = new OleDbDataAdapter("select id,name,aggregate,branch,year from stdb where branch='"+TextBox2.Text+"' order by aggregate desc", con); DataSet ds = new DataSet(); da.Fill(ds,"stdb"); GridView2.DataSource = ds.Tables["stdb"]; GridView2.DataBind(); } protected void ImageButton4_Click(object sender, ImageClickEventArgs e) { ImageButton8.Visible = false; ImageButton9.Visible = false; Label13.Visible = false; Label13.Visible = false; Label11.Visible = true; Label10.Visible = false; Label9.Visible = false; Label8.Visible = false; Label3.Visible = false; Label4.Visible = false; Label5.Visible = false; txtuname.Visible = false; txtpwd.Visible = false; ImageButton6.Visible= false; GridView1.Visible = true; GridView2.Visible = false; OleDbConnection con = new OleDbConnection("user id=system;password=javi;provider=msdaora.1"); OleDbDataAdapter da = new OleDbDataAdapter("select * from guide where branch='" +TextBox2.Text+ "'", con); DataSet ds = new DataSet(); da.Fill(ds, "guide"); GridView1.DataSource = ds.Tables["guide"]; GridView1.DataBind(); } protected void ImageButton7_Click(object sender, ImageClickEventArgs e) { Server.Transfer("default.aspx"); } protected void ImageButton3_Click(object sender, ImageClickEventArgs e) { ImageButton8.Visible = false; ImageButton9.Visible = false; Label13.Visible = false; Label8.Visible = false; Label13.Visible = false; Label10.Visible = false;

37

Student Project Allocation Management


Label9.Visible = false; Label3.Visible = true; Label4.Visible = true; Label5.Visible = true; txtuname.Visible = true; txtpwd.Visible = true; ImageButton6.Visible=true; GridView1.Visible = false; GridView2.Visible = false; } protected void ImageButton6_Click(object sender, ImageClickEventArgs e) { try { OleDbConnection con = new OleDbConnection("user id=system;password=javi;provider=msdaora.1"); OleDbCommand cmd = new OleDbCommand("select * from stdb where password='" + txtpwd.Text + "' and id='" + txtuname.Text + "'", con); OleDbDataAdapter da = new OleDbDataAdapter(); da.SelectCommand = cmd; DataTable dt = new DataTable(); da.Fill(dt); if (dt.Rows.Count == 0) { Label9.Visible = true; } else if (dt.Rows[0]["password"].ToString() != txtpwd.Text) { Label10.Visible = true; } else { string tcod = dt.Rows[0]["TEAMCODE"].ToString(); Response.Redirect("studentlogin.aspx?uid=" + txtuname.Text + "&TCOD=" + tcod); //Session["Tid"] = dt.Rows[0]["TEAMCODE"].ToString(); } } catch (Exception ex) { Label9.Visible = true; }

} protected void ImageButton2_Click(object sender, ImageClickEventArgs e) {

38

Student Project Allocation Management


GridView1.Visible = false; GridView2.Visible = false; ImageButton9.Visible = true; Label2.Visible = true; Label13.Visible = false; Label11.Visible = false; Label8.Visible = false; Label10.Visible = false; Label9.Visible = false; ImageButton8.Visible = true; } protected void ImageButton8_Click(object sender, ImageClickEventArgs e) { GridView1.Visible = true; OleDbConnection con = new OleDbConnection("user id=system;password=javi;provider=msdaora.1"); OleDbDataAdapter da = new OleDbDataAdapter("select s.id,t.teamcode from stdb s,tmcd t where s.id=t.id and branch='"+TextBox2.Text+"' and year='"+TextBox1.Text+"'", con); DataSet ds = new DataSet(); da.Fill(ds, "tmcd"); GridView1.DataSource = ds.Tables["tmcd"]; GridView1.DataBind(); } protected void ImageButton9_Click(object sender, ImageClickEventArgs e) { GridView1.Visible = true; OleDbConnection con = new OleDbConnection("user id=system;password=javi;provider=msdaora.1"); OleDbDataAdapter da = new OleDbDataAdapter("select s.teamcode,t.gname,t.pname from stdb s,prjdetails t where s.teamcode=t.teamcode and branch='" + TextBox2.Text + "' and year='" + TextBox1.Text + "'", con); DataSet ds = new DataSet(); da.Fill(ds, "prjdetails"); GridView1.DataSource = ds.Tables["prjdetails"]; GridView1.DataBind(); } }

select s.id,t.teamcode from stdb s,tmcd t where s.id=t.id and branch='"+TextBox2.Text+"' and year='"+TextBox1.Text+"'"
39

Student Project Allocation Management GridView1.Visible = true; OleDbConnection con = new OleDbConnection("user id=system;password=javi;provider=msdaora.1"); OleDbDataAdapter da = new OleDbDataAdapter("select s.id,t.teamcode from stdb s,tmcd t where s.id=t.id and branch='"+TextBox2.Text+"' and year='"+TextBox1.Text+"'", con); DataSet ds = new DataSet(); da.Fill(ds, "tmcd"); GridView1.DataSource = ds.Tables["tmcd"]; GridView1.DataBind();

TextBox6.Text = Request.QueryString["uid"].ToString(); TextBox7.Text = Request.QueryString["TCOD"].ToString();

protected void Button2_Click1(object sender, EventArgs e) {

40

Student Project Allocation Management for (int i = 0; i < GridView1.Rows.Count; i++) { TextBox tc = (TextBox)GridView1.Rows[i].Cells[0].FindControl("txtTcode"); TextBox pw = (TextBox)GridView1.Rows[i].Cells[1].FindControl("txtpass");

string id = GridView1.Rows[i].Cells[2].Text; try { OleDbConnection con = new OleDbConnection("user id=system;password=javi;provider=msdaora.1"); OleDbCommand cmd = new OleDbCommand("update stdb set password='" + pw.Text + "' ,teamcode='"+tc.Text+"' where id='" + id + "'", con); con.Open(); if (cmd.ExecuteNonQuery() > 0) { Label1.Visible = true; } } catch (Exception ex)
41

Student Project Allocation Management { // Label2.Text = ex.Message; Label1.Visible = true; Label1.Text = ex.Message; } }

42

Student Project Allocation Management

5. TEST CASES
Testing:
Software testing is an investigation conducted to provide stakeholders with information about the quality of the product or service under test oftware testing can also provide an objective, independent view of the software to allow the business to appreciate and understand the risks of software implementation. Test techniques include, but are not limited to, the process of executing a program or application with the intent of finding software bugs (errors or other defects). Software testing can be stated as the process of validating and verifying that a software program/application/product: 1. meets the requirements that guided its design and development; 2. works as expected; and 3. can be implemented with the same characteristics. Software testing, depending on the testing method employed, can be implemented at any time in the development process. However, most of the test effort occurs after the requirements have been defined and the coding process has been completed. As such, the methodology of the test is governed by the software development methodology adopted.

Testing methods:
The box approach
Software testing methods are traditionally divided into white- and black-box testing. These two approaches are used to describe the point of view that a test engineer takes when designing test cases.

White box testing:


White-box testing (also known as clear box testing, glass box testing, transparent box testing, and structural testing) is a method of testing software that tests internal structures or workings of an application, as opposed to its functionality (i.e. black-box testing). In white-box testing an internal perspective of the system, as well as programming skills, are required and used to design test cases. The tester chooses inputs to exercise paths through the code and determine the appropriate outputs.

43

Student Project Allocation Management White-box test design techniques include:


   

Control flow testing Data flow testing Branch testing Path testing

Black box testing:


Black-box testing is a method of software testing that tests the functionality of an application as opposed to its internal structures or workings ( white-box testing). Specific knowledge of the application's code/internal structure and programming knowledge in general is not required. Test cases are built around specifications and requirements, i.e., what the application is supposed to do. It uses external descriptions of the software, including specifications, requirements, and designs to derive test cases. These tests can be functional or non-functional, though usually functional. The test designer selects valid and invalid inputs and determines the correct output. There is no knowledge of the test object's internal structure. This method of test can be applied to all levels of software testing: unit, integration, system and acceptance. It typically comprises most if not all testing at higher levels, but can also dominate unit testing as well.
Typical black-box test design techniques include:     

Decision table testing All-pairs testing State transition tables Equivalence partitioning Boundary value analysis

44

Student Project Allocation Management

TEST CASE FOR ADMINISTRATOR:


Test case ID Input Description

SPAM_01

login id blank, password login id and password blank fields are mandatory id and blank Password mandatory login id is mandatory is

SPAM_02

valid

password SPAM_03 password and blank id

SPAM_04

id

with

spaces

and spaces are not allowed

password SPAM_05 invalid password id, invalid Invalid ID and

SPAM_06

valid id, password

Valid ID and valid password are given

45

Student Project Allocation Management

TEST CASES FOR STUDENT LOGIN:


Test case ID Input Description

SPAM_01

login id blank, password login id and password blank fields are mandatory id and blank Password mandatory login id is mandatory is

SPAM_02

valid

password SPAM_03 password and blank id

SPAM_04

id

with

spaces

and spaces are not allowed

password SPAM_05 invalid password SPAM_06 Studentlogin id<10or>10,valid password SPAM_07 Studentlogin id<10or>10,invalid password SPAM_08 Student id in capital The entered details case,valid password SPAM_08 valid id, password are wrong Valid ID and valid password are given The entered details are wrong id, invalid Invalid Password The entered details are wrong ID and

46

Student Project Allocation Management

Report for administrator:


Test case ID Input Description Expected result

SPAM_01

login id blank, password login id and password Fail blank fields are mandatory id and blank Password mandatory login id is mandatory Fail is Fail

SPAM_02

valid

password SPAM_03 password and blank id

SPAM_04

id

with

spaces

and spaces are not allowed Fail

password SPAM_05 invalid password id, invalid Invalid ID and Fail

SPAM_06

valid id, password

Valid ID and valid Pass password are given

47

Student Project Allocation Management

Report for student login:


Test case ID Input Description Expected result

SPAM_01

login id blank, password login id and password Fail blank fields are mandatory id and blank Password mandatory login id is mandatory Fail is Fail

SPAM_02

valid

password SPAM_03 password and blank id

SPAM_04

id

with

spaces

and spaces are not allowed Fail

password SPAM_05 invalid password SPAM_06 Studentlogin id<10or>10,valid password SPAM_07 Studentlogin id<10or>10,invalid password SPAM_08 Student id in capital The entered details Fail case,valid password SPAM_08 valid id, password are wrong Valid ID and valid Pass password are given The entered details Fail are wrong id, invalid Invalid Password The entered details Fail are wrong ID and Fail

48

Student Project Allocation Management

Screen shots
6.1 Home page:

49

Student Project Allocation Management

6.2 Administrator login:

50

Student Project Allocation Management

6.3 Student login:

51

Student Project Allocation Management

6.4 Students list:

52

Student Project Allocation Management

6.5 Guides list:

53

Student Project Allocation Management

6.6 Student groups:

54

Student Project Allocation Management

6.7 Modification to database:

55

Student Project Allocation Management

7. FUTURE SCOPE AND CONCLUSION


For the team leaders who would like to enter their project details the student project allocation and management is a web based application that maintains and manages list of all the students and their project details. The project coordinator i.e., administrator enters student details such as students names,ids,aggregates etc. He also provides the user id and password to the team leaders in order to login into their accounts and enter their team details and option will be provided for team leaders to select their project guides and other members of that group. Any modification that is to be done to database is through administrator. All the other students can view the project details.

CONCLUSION
The student project allocation and management mainly automates the manual work done by the project coordinator. All the project details are handled manually. To make this laborious job simple the application has been developed. It takes so much time for project coordinator to collect students details and approving the details provided by them. All the students are unaware of the projects done by other students. Thereby there will be lack of awareness among the students regarding the current projects that are going on in their college

56

Student Project Allocation Management

8.BIBLIOGRAPHY
8.1 Books Referred S.no
1

Books
ASP.NET 4 in C# 2010 ASP.NET 4 in C# and VB

Author
Mathew MacDonald
Imar Spaanjaars

Publisher
Addison

Year
2010 2009

Apress

8.2 Websites Visited 1.http://writers.net 2.http://w3schools.net

57