Академический Документы
Профессиональный Документы
Культура Документы
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.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
2. REQUIREMENTS ANALYSIS
2.1 HARDWARE AND SOFTWARE REUIREMENTS
2.1 HARDWARE REQUIREMENTS
Processor RAM Hard Disk : Intel : 1GB : 30GB
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.
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.
S.NO.
1 A
System Function
S1 S1.10
Description
Group division
The administrator login into system with user id and password
S1.20
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.
Description
Administrator maintains and manages the database. The team leader enrolls the team details.
Team leader
User
System
The system divides the students into different groups based on their aggregates.
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
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
User A-03 The person who uses the application. The users can view the entire project details of the students.
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
Field
TEAMCODE ID
Type
Varchar Varchar
Size
20 20
Field
TEAMCODE PNAME GNAME
Type
Varchar2 Varchar2 Char
Size
10 50 25
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
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
Administrator
View details
System
Group division
12
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()
Activation
Activation boxes represent the time an object needs to complete a task.
13
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.
a:Administrator
t:Teamleader
u:User
s:System
d:Database
login
valid user
update database
14
login
stores in database
a:Administrator
t:Teamleader
u:User
s:System
d:Database
view details
15
5: insert students details 6: update database 2: verifies 3: valid user valid user or not
t:Teamleader
u:User
d:Database
16
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
a:Administrator
t:Teamleader
u:User
d:Database
1: view details
s:System
17
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.
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.
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!
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
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
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
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:
23
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.
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.
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).
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.
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
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.
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
DATABASE
Oracle
Oracle Application Server 10g HTTP Server (OHS) provides a web server and also the necessary infrastructure to create dynamic applications.
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.
33
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
35
36
37
38
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();
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
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.
43
Control flow testing Data flow testing Branch testing Path testing
Decision table testing All-pairs testing State transition tables Equivalence partitioning Boundary value analysis
44
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
SPAM_04
id
with
spaces
SPAM_06
45
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
SPAM_04
id
with
spaces
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
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
SPAM_04
id
with
spaces
SPAM_06
47
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
SPAM_04
id
with
spaces
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
Screen shots
6.1 Home page:
49
50
51
52
53
54
55
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
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
57