Executive Summary of Co-Op Administration
Executive Summary of Co-Op Administration
Executive Summary of Co-Op Administration
CO-OP ADMINISTRATION:
This project is aimed at developing an online application for the Training and Placement
Dept. of the college. The system is an online application that can be accessed throughout the
organization and outside as well with proper login provided. This system can be used as an
application for the TPO of the college to manage the student information with regards to
placement. Students logging should be able to upload their information in the form of a CV.
Visitors/Company representatives logging in may also access/search any information put up
by Students. The proposed system is to make an online web portal for Information
Technology Department, so that everyone can get information about department, students can
easily communicate with teachers from anywhere. Teachers can easily communicate with the
students, and can keep records of every student easily and efficiently. The proposed system
could be accessed from any corner of the world on net.
1. They can view, edit, and update their profile from anywhere.
3. They can view faculty profile and even post queries to the faculties.
Administrator: The administrator has the central control over the whole portal.
2. He will create the student and faculty profiles which they can later on edit.
1
3. He can respond to the queries of the faculties.
4. He can post notices which will be accessible to the both the faculties and the students.
5. He will handle the number of students and incase any student or faculty leaves he will edit the record
accordingly.
2
2. PROFILE OF PROBLEM ASSIGNED
Co-Op Administration:
The proposed system is to make an online web portal for Information Technology
Department, So that everyone can get information about department, students can easily
communicate with teachers from anywhere. Teachers can easily communicate with the
students, and can keep records of every student easily and efficiently. The proposed system
could be accessed from any corner of the world.
Scope :-
This project has a large scope as it has the following features which help in making it easy to
use, understand and modify it:
This software package can be readily used by non-programming personal avoiding human
handled chance of error. This project is used by two types of users
i. Students.
ii. Placement Head.
3. OBJECTIVE OF PROJECT
3
Our project provides the facility of maintaining the details of the students and gets the requested list of
candidates for the companies who would like to recruit the students based on given query.
1. To reduce paperwork.
2. Reduced operational time.
3. Increased accuracy and reliability.
4. Increased operational efficiency.
5. Data security.
This software package can be readily used by non-programming personal avoiding human
handled chance of error. This project is used by two types of users
i. Students.
ii. Placement Head
Students can create their accounts and see the job posts by placement head and also apply for
particular job.
Placement Head can maintain daily updates in details and print reports according to need.
Administrator is must be an authorized user.
4.SYSTEM REQUIREMENTS
4
4.1 PRODUCT DEFINITION:- Co-Op Administration is to make an online web
portal for Information Technology Department, so that everyone can get information about
department, students can easily communicate with teachers from anywhere. Teachers can
easily communicate with the students, and can keep records of every student easily and
efficiently. The proposed system could be accessed from any corner of the world on net.
H/W REQUIRED :-
S/W REQUIRED:-
Visual Studio 2010: Microsoft Visual Studio is a powerful IDE that ensures
quality code throughout the entire application lifecycle, from design to deployment.
Whether you’re developing applications for SharePoint, the web, Windows, Windows
Phone, and beyond, Visual Studio is your ultimate all-in-one solution. Microsoft
Visual Studio is an integrated development environment (IDE) from Microsoft. It is
used to develop console and graphical user interface applications along with Windows
Forms applications, web sites, web applications, and web services in both native code
together with managed code for all platforms supported by Microsoft Windows,
Windows Mobile, Windows CE, .NET Framework, .NET Compact Framework and
Microsoft Silverlight.
Visual Studio includes a code editor supporting IntelliSense as well as code refactoring. The
integrated debugger works both as a source-level debugger and a machine-level debugger.
Other built-in tools include a forms designer for building GUI applications, web designer,
class designer, and database schema designer. It accepts plug-ins that enhance the
functionality at almost every level—including adding support for source-control systems (like
Subversion and Visual SourceSafe) and adding new toolsets like editors and visual designers
5
for domain-specific languages or toolsets for other aspects of the software development
lifecycle (like the Team Foundation Server client: Team Explorer).
Microsoft provides "Express" editions of its Visual Studio 2010 components Visual Basic,
Visual C#, Visual C++, and Visual Web Developer at no cost. Visual Studio 2012, 2010, 2008
and 2005 Professional Editions, along with language-specific versions (Visual Basic, C++,
C#, J#) of Visual Studio Express 2010 are available for free to students as downloads via
Microsoft's DreamSpark program. Visual Studio does not support any programming
language, solution or tool intrinsically, instead allows the plugging of functionality coded as a
VSPackage. When installed, the functionality is available as a Service. The IDE provides
three services: SVsSolution, which provides the ability to enumerate projects and solutions;
SVsUIShell, which provides windowing and UI functionality (including tabs, toolbars and
tool windows); and SVsShell, which deals with registration of VSPackages. In addition, the
IDE is also responsible for coordinating and enabling communication between services. All
editors, designers, project types and other tools are implemented as VSPackages. Visual
Studio uses COM to access the VSPackages. The Visual Studio SDK also includes the
Managed Package Framework (MPF), which is a set of managed wrappers around the COM-
interfaces that allow the Packages to be written in any CLI compliant language. However,
MPF does not provide all the functionality exposed by the Visual Studio COM interfaces.The
services can then be consumed for creation of other packages, which add functionality to the
Visual Studio IDE.
6
[10]
If the interface is implemented, the functionality will be available for the language.
Language services are to be implemented on a per-language basis. The implementations can
reuse code from the parser or the compiler for the language. Language services can be
implemented either in native code or managed code. For native code, either the native COM
interfaces or the Babel Framework (part of Visual Studio SDK) can be used. For managed
code, the MPF includes wrappers for writing managed language services.
Visual Studio does not include any source control support built in but it defines two
alternative ways for source control systems to integrate with the IDE. A Source Control
VSPackage can provide its own customised user interface. In contrast, a source control plugin
using the MSSCCI (Microsoft Source Code Control Interface) provides a set of functions that
are used to implement various source control functionality, with a standard Visual Studio user
interface. MSSCCI was first used to integrate Visual SourceSafe with Visual Studio 6.0 but
was later opened up via the Visual Studio SDK. Visual Studio .NET 2002 used MSSCCI 1.1,
and Visual Studio .NET 2003 used MSSCCI 1.2. Visual Studio 2005, 2008 and 2010 use
MSSCCI Version 1.3, which adds support for rename and delete propagation as well as
asynchronous opening.
Visual Studio supports running multiple instances of the environment (each with its own set
of VSPackages). The instances use different registry hives (see MSDN's definition of the
term "registry hive" in the sense used here) to store their configuration state and are
differentiated by their AppId (Application ID). The instances are launched by an AppId-
specific .exe that selects the AppId, sets the root hive and launches the IDE. VSPackages
registered for one AppId are integrated with other VSPackages for that AppId. The various
product editions of Visual Studio are created using the different AppIds. The Visual Studio
Express edition products are installed with their own AppIds, but the Standard, Professional
and Team Suite products share the same AppId. Consequently, one can install the Express
editions side-by-side with other editions, unlike the other editions which update the same
installation. The professional edition includes a superset of the VSPackages in the standard
edition and the team suite includes a superset of the VSPackages in both other editions. The
AppId system is leveraged by the Visual Studio Shell in Visual Studio 2008.
FEATURES:
Code editor:
7
Visual Studio, like any other IDE, includes a code editor that supports syntax highlighting
and code completion using IntelliSense for not only variables, functions and methods but also
language constructs like loops and queries. IntelliSense is supported for the included
languages, as well as for XML and for Cascading Style Sheets and JavaScript when
developing web sites and web applications. Autocomplete suggestions are popped up in a
modeless list box, overlaid on top of the code editor. In Visual Studio 2008 onwards, it can be
made temporarily semi-transparent to see the code obstructed by it.The code editor is used for
all supported languages.
The Visual Studio code editor also supports setting bookmarks in code for quick navigation.
Other navigational aids include collapsing code blocks and incremental search, in addition to
normal text search and regex search. The code editor also includes a multi-item clipboard and
a task list.The code editor supports code snippets, which are saved templates for repetitive
code and can be inserted into code and customized for the project being worked on. A
management tool for code snippets is built in as well. These tools are surfaced as floating
windows which can be set to automatically hide when unused or docked to the side of the
screen. The Visual Studio code editor also supports code refactoring including parameter
reordering, variable and method renaming, interface extraction and encapsulation of class
members inside properties, among others.
Visual Studio features background compilation (also called incremental compilation).As code
is being written, Visual Studio compiles it in the background in order to provide feedback
about syntax and compilation errors, which are flagged with a red wavy underline. Warnings
are marked with a green underline. Background compilation does not generate executable
code, since it requires a different compiler than the one used to generate executable
code.Background compilation was initially introduced with Microsoft Visual Basic but has
now been expanded for all included languages.
Debugger:
Visual Studio includes a debugger that works both as a source-level debugger and as a
machine-level debugger. It works with both managed code as well as native code and can be
used for debugging applications written in any language supported by Visual Studio. In
addition, it can also attach to running processes and monitor and debug those processes. If
source code for the running process is available, it displays the code as it is being run. If
source code is not available, it can show the disassembly. The Visual Studio debugger can
also create memory dumps as well as load them later for debugging. Multi-threaded programs
8
are also supported. The debugger can be configured to be launched when an application
running outside the Visual Studio environment crashes.
The debugger allows setting breakpoints (which allow execution to be stopped temporarily at
a certain position) and watches (which monitor the values of variables as the execution
progresses).Breakpoints can be conditional, meaning they get triggered when the condition is
met. Code can be stepped over, i.e., run one line (of source code) at a time. It can either step
into functions to debug inside it, or step over it, i.e., the execution of the function body isn't
available for manual inspection.The debugger supports Edit and Continue, i.e., it allows code
to be edited as it is being debugged (32 bit only; not supported in 64 bit).When debugging, if
the mouse pointer hovers over any variable, its current value is displayed in a tooltip ("data
tooltips"), where it can also be modified if desired. During coding, the Visual Studio
debugger lets certain functions be invoked manually from the Immediate tool window. The
parameters to the method are supplied at the Immediate window.
Designer:
Visual Studio includes a host of visual designers to aid in the development of applications.
These tools include:
The Windows Forms designer is used to build GUI applications using Windows Forms.
Layout can be controlled by housing the controls inside other containers or locking them to
the side of the form. Controls that display data (like textbox, list box, grid view, etc.) can be
bound to data sources like databases or queries. Data-bound controls can be created by
dragging items from the Data Sources window onto a design surface.The UI is linked with
code using an event-driven programming model. The designer generates either C# or
VB.NET code for the application.
WPF Designer:
The WPF designer, codenamed Cider, was introduced with Visual Studio 2008. Like the
Windows Forms designer it supports the drag and drop metaphor. It is used to author user
interfaces targeting Windows Presentation Foundation. It supports all WPF functionality
including data binding and automatic layout management. It generates XAML code for the
UI. The generated XAML file is compatible with Microsoft Expression Design, the designer-
oriented product. The XAML code is linked with code using a code-behind model.
Web designer/development:
9
Visual Studio also includes a web-site editor and designer that allows web pages to be
authored by dragging and dropping widgets. It is used for developing ASP.NET applications
and supports HTML, CSS and JavaScript. It uses a code-behind model to link with ASP.NET
code. From Visual Studio 2008 onwards, the layout engine used by the web designer is shared
with Microsoft Expression Web. There is also ASP.NET MVC support for MVC technology
as a separate download and ASP.NET Dynamic Data project available from Microsoft
Class designer:
The Class Designer is used to author and edit the classes (including its members and their
access) using UML modeling. The Class Designer can generate C# and VB.NET code
outlines for the classes and methods. It can also generate class diagrams from hand-written
classes.
Data designer:
The data designer can be used to graphically edit database schemas, including typed tables,
primary and foreign keys and constraints. It can also be used to design queries from the
graphical view.
Mapping designer:
From Visual Studio 2008 onwards, the mapping designer is used by LINQ to SQL to design
the mapping between database schemas and the classes that encapsulate the data. The new
solution from ORM approach, ADO.NET Entity Framework, replaces and improves the old
technology.
SQL Server 2005 (formerly codenamed "Yukon") was released in October 2005. It included
native support for managing XML data, in addition to relational data. For this purpose, it
10
defined an xml data type that could be used either as a data type in database columns or as
literals in queries. XML columns can be associated with XSD schemas; XML data being
stored is verified against the schema. XML is converted to an internal binary data type before
being stored in the database. Specialized indexing methods were made available for XML
data. XML data is queried using XQuery; SQL Server 2005 added some extensions to the T-
SQL language to allow embedding XQuery queries in T-SQL. In addition, it also defines a
new extension to XQuery, called XML DML, that allows query-based modifications to XML
data. SQL Server 2005 also allows a database server to be exposed over web services using
Tabular Data Stream (TDS) packets encapsulated within SOAP (protocol) requests. When the
data is accessed over web services, results are returned as XML.
Common Language Runtime (CLR) integration was introduced with this version, enabling
one to write SQL code as Managed Code by the CLR. For relational data, T-SQL has been
augmented with error handling features (try/catch) and support for recursive queries with
CTEs (Common Table Expressions). SQL Server 2005 has also been enhanced with new
indexing algorithms, syntax and better error recovery systems. Data pages are checksummed
for better error resiliency, and optimistic concurrency support has been added for better
performance. Permissions and access control have been made more granular and the query
processor handles concurrent execution of queries in a more efficient way. Partitions on
tables and indexes are supported natively, so scaling out a database onto a cluster is easier.
SQL CLR was introduced with SQL Server 2005 to let it integrate with the .NET Framework.
SQL Server 2005 introduced "MARS" (Multiple Active Results Sets), a method of allowing
usage of database connections for multiple purposes.
SQL Server 2005 introduced DMVs (Dynamic Management Views), which are specialized
views and functions that return server state information that can be used to monitor the health
of a server instance, diagnose problems, and tune performance.Service Pack 1 (SP1) of SQL
Server 2005 introduced Database Mirroring,a high availability option that provides
redundancy and failover capabilities at the database level. Failover can be performed
manually or can be configured for automatic failover. Automatic failover requires a witness
partner and an operating mode of synchronous (also known as high-safety or full safety).
SQL Server 2008 (formerly codenamed "Katmai") was released on August 6, 2008 and aims
to make data management self-tuning, self organizing, and self maintaining with the
development of SQL Server Always On technologies, to provide near-zero downtime. SQL
11
Server 2008 also includes support for structured and semi-structured data, including digital
media formats for pictures, audio, video and other multimedia data. In current versions, such
multimedia data can be stored as BLOBs (binary large objects), but they are generic
bitstreams. Intrinsic awareness of multimedia data will allow specialized functions to be
performed on them. According to Paul Flessner, senior Vice President, Server Applications,
Microsoft Corp., SQL Server 2008 can be a data storage backend for different varieties of
data: XML, email, time/calendar, file, document, spatial, etc as well as perform search,
query, analysis, sharing, and synchronization across all data types.[
Other new data types include specialized date and time types and a Spatial data type for
location-dependent data.Better support for unstructured and semi-structured data is provided
using the new FILESTREAM data type, which can be used to reference any file stored on the
file system. Structured data and metadata about the file is stored in SQL Server database,
whereas the unstructured component is stored in the file system. Such files can be accessed
both via Win32 file handling APIs as well as via SQL Server using T-SQL; doing the latter
accesses the file data as a BLOB. Backing up and restoring the database backs up or restores
the referenced files as well. SQL Server 2008 also natively supports hierarchical data, and
includes T-SQL constructs to directly deal with them, without using recursive queries.
The Full-text search functionality has been integrated with the database engine. According to
a Microsoft technical article, this simplifies management and improves performance.
Spatial data will be stored in two types. A "Flat Earth" (GEOMETRY or planar) data type
represents geospatial data which has been projected from its native, spherical, coordinate
system into a plane. A "Round Earth" data type (GEOGRAPHY) uses an ellipsoidal model in
which the Earth is defined as a single continuous entity which does not suffer from the
singularities such as the international dateline, poles, or map projection zone "edges".
Approximately 70 methods are available to represent spatial operations for the Open
Geospatial Consortium Simple Features for SQL, Version 1.1.
SQL Server includes better compression features, which also helps in improving scalability. It
enhanced the indexing algorithms and introduced the notion of filtered indexes. It also
includes Resource Governor that allows reserving resources for certain users or workflows. It
also includes capabilities for transparent encryption of data (TDE) as well as compression of
backups. SQL Server 2008 supports the ADO.NET Entity Framework and the reporting tools,
replication, and data definition will be built around the Entity Data Model. SQL Server
Reporting Services will gain charting capabilities from the integration of the data
visualization products from Dundas Data Visualization, Inc., which was acquired by
12
Microsoft.On the management side, SQL Server 2008 includes the Declarative Management
Framework which allows configuring policies and constraints, on the entire database or
certain tables, declaratively.The version of SQL Server Management Studio included with
SQL Server 2008 supports IntelliSense for SQL queries against a SQL Server 2008 Database
Engine.SQL Server 2008 also makes the databases available via Windows PowerShell
providers and management functionality available as Cmdlets, so that the server and all the
running instances can be managed from Windows PowerShell.
SQL Server 2008 R2 includes a number of new services, including PowerPivot for Excel and
SharePoint, Master Data Services, StreamInsight, Report Builder 3.0, Reporting Services
Add-in for SharePoint, a Data-tier function in Visual Studio that enables packaging of tiered
databases as part of an application, and a SQL Server Utility named UC (Utility Control
Point), part of AMSM (Application and Multi-Server Management) that is used to manage
multiple SQL Servers.
The first SQL Server 2008 R2 service pack (10.50.2500, Service Pack 1) was released on
July 11, 2011.The second SQL Server 2008 R2 service pack (10.50.4000, Service Pack 2)
was released on July 26, 2012.
At the 2011 Professional Association for SQL Server (PASS) summit on October 11,
Microsoft announced that the next major version of SQL Server (codenamed "Denali"),
would be SQL Server 2012. It was released to manufacturing on March 6, 2012.
It was announced to be last version to natively support OLE DB and instead to prefer ODBC
for native connectivity.
13
SQL Server 2012's new features and enhancements include AlwaysOn SQL Server Failover
Cluster Instances and Availability Groups which provides a set of options to improve
database availability, Contained Databases which simplify the moving of databases between
instances, new and modified Dynamic Management Views and Functions, programmability
enhancements including new Spatial features, Metadata discovery, Sequence objects and the
THROW statement, performance enhancements such as ColumnStore Indexes as well as
improvements to OnLine and Partition level operations and security enhancements including
Provisioning During Setup, new permissions, improved role management and default schema
assignment for groups.
Editions:
Microsoft makes SQL Server available in multiple editions, with different feature sets and
targeting different users. These editions are:
Mainstream editions:
Datacenter:
SQL Server 2008 R2 Datacenter is the full-featured edition of SQL Server and is designed for
datacenters that need the high levels of application support and scalability. It supports 256
logical processors and virtually unlimited memory. Comes with StreamInsight Premium
edition.The Datacenter edition has been retired in SQL Server 2012, all its features are
available in SQL Server 2012 Enterprise Edition.
Enterprise:
SQL Server Enterprise Edition includes both the core database engine and add-on services,
with a range of tools for creating and managing a SQL Server cluster. It can manage
databases as large as 524 petabytes and address 2 terabytes of memory and supports 8
physical processors. SQL 2012 Edition supports 160 Physical Processors. Standard
SQL Server Standard edition includes the core database engine, along with the stand-alone
services. It differs from Enterprise edition in that it supports fewer active instances (number
of nodes in a cluster) and does not include some high-availability functions such as hot-add
memory (allowing memory to be added while the server is still running), and parallel indexes.
Web
14
Business Intelligence:
Introduced in SQL Server 2012 and focusing on Self Service and Corporate Business
Intelligence. It includes the Standard Edition capabilities and Business Intelligence tools:
PowerPivot, Power View, the BI Semantic Model, Master Data Services, Data Quality
Services and xVelocity in-memory analytics.
Workgroup:
SQL Server Workgroup Edition includes the core database functionality but does not include
the additional services. Note that this edition has been retired in SQL Server 2012.
Express:
SQL Server Express Edition is a scaled down, free edition of SQL Server, which includes the
core database engine. While there are no limitations on the number of databases or users
supported, it is limited to using one processor, 1 GB memory and 4 GB database files (10 GB
database files from SQL Server Express 2008 R2[). It is intended as a replacement for MSDE.
Two additional editions provide a superset of features not in the original Express Edition. The
first is SQL Server Express with Tools, which includes SQL Server Management Studio
Basic. SQL Server Express with Advanced Services adds full-text search capability and
reporting services.
.Net Framework 2.0 :- As a C# programmer, you may choose among numerous tools
to build .NET applications. The point of this chapter is to provide a tour of various
.NET development options, including, of course, Visual Studio 2008. The chapter
opens, however, with an examination of working with the C# command-line compiler,
csc.exe, and the simplest of all text editors, the Notepad application that ships with the
Microsoft Windows OS. Once you become comfortable compiling assemblies “IDE-
free,” you will then examine various lightweight editors (such as TextPad and
Notepad++) that allow you to author C# source code files and interact with the
compiler in a slightly more sophisticated manner. While you could work through this
entire text using nothing other than csc.exe and a basic text editor, I’d bet you are also
interested in working with feature-rich integrated development environments (IDEs).
To this end, you will be introduced to a free, open source .NET IDE named Sharp
Develop. This IDE rivals the functionality of many commercial .NET development
environments. After briefly examining the Visual C# 2008 Express IDE (which is also
free), you will be given a guided tour of the key features of Visual Studio 2008. This
chapter wraps up with a quick tour of a number of complementary .NET development
tools (again, many of which are open source) and describes where to obtain them.
15
ASP.NET: ASP.NET is a Web application framework developed and marketed by
Microsoft to allow programmers to build dynamic Web sites, Web applications and
Web services. It was first released in January 2002 with version 1.0 of the .NET
Framework, and is the successor to Microsoft's Active Server Pages (ASP)
technology. ASP.NET is built on the Common Language Runtime (CLR), allowing
programmers to write ASP.NET code using any supported .NET language. The
ASP.NET SOAP extension framework allows ASP.NET components to process SOAP
messages.
Student Module:
1. Create An profile(Registration):
Create a form where the user can create an enter the details of academics and extra curricular
2. Edit Profile:
Admin Module:
1. Add Company:
Admin can add company to the list of companies using add company module. Add company module
have options of branch package and venue etc.
2. Add News:
Admin can add news for students. Admin can make any type of news an update
3. Profile Management:
16
In profile management section admin can manage the profiles of students he can accept and reject
the students and also can genearatte report on the basis of student placed.
4. Report Generation:
In report generation section admin can generate report on the basis of branch, package, date of companies
visit to the college. And admin can also generate the reports of students placed in that year.
17
5.FEASIBILITY ANALYSIS
RECOGNITION OF NEED:
For the purpose of training and placement of the student in colleges, TPO’s have to
Collect the information and CV’s of students and manages them manually and arranges
them according to various streams. If any modification is required that is to be also done
manually. So, to reduce the job required to manage CV’s and the information of various
recruiters, a new system is proposed which is processed through computers.
In Various colleges, training and placement officers have to manage the CV’s and
TPO’s have to collect the information of various companies who want to recruit
students and notify students time to time about them.
TPO’s have to arrange CV’s of students according to various streams
and notify them according to company requirements.
If any modifications or updation are required in CV of any student, it has to searched and to be done
it manually.
The Job of TPO is a unique task that involves taking into considerations many features for
the same. Existing system has some bottlenecks looked upon by TPO’s and students of
colleges.
Size of collection of CV’s may be very large. To handle such a large collection
of CV’s is a great overhead.
It is very over heading task to arrange CV’s according to various streams, match them
with the companies requirement.
Students can’t modify their CV themselves and if there is any updation or
modification in CV, they have to inform it to TPO and get it updated.
It is a time consuming activity of managing, updating and informing specific
student for specific company requirements
It takes a lot of space for storage of CV’s and other information regarding
companies
18
PROPOSED SOLUTIONS:
6.It has user friendly interface having quick authenticated access to documents.
6.PROJECT PLAN
19
6.1 TEAM STRUCTURE:
Two Team Mates Usman Ghani and Mohammad Idrees has done the project
under the guidance of Mr. Nitin Verma.
The .NET Framework is a rather radical and brute-force approach to making our lives easier.
The solution proposed by .NET is “Change everything” (sorry, you can’t blame the
messenger for the message). As you will see during the remainder of this book, the .NET
Framework is a completely new model for building systems on the Windows family of
operating systems, as well as on numerous non-Microsoft operating systems such as Mac OS
X and various Unix/Linux distributions. To set the stage, here is a quick rundown of some
core features provided courtesy of .NET:
• Comprehensive interoperability with existing code: This is (of course) a good thing.
Existing COM binaries can commingle (i.e., interop) with newer .NET binaries and vice
versa. Also, Platform Invocation Services (P Invoke) allows you to call C-based libraries
(including the underlying API of the operating system) from .NET code.
• Complete and total language integration: .NET supports cross-language inheritance, cross
language
20
• A common runtime engine shared by all .NET-aware languages: One aspect of this engine is
a well-defined set of types that each .NET-aware language “understands.”
• A comprehensive base class library: This library provides shelter from the complexities of
raw API calls and offers a consistent object model used by all .NET-aware languages.
• No more COM plumbing: IClassFactory, IUnknown, IDispatch, IDL code, and the evil
variant compliant data types (BSTR, SAFEARRAY, and so forth) have no place in a .NET
binary.
• A truly simplified deployment model: Under .NET, there is no need to register a binary unit
into the system registry. Furthermore, .NET allows multiple versions of the same *.dll to
exist in harmony on a single machine. As you can most likely gather from the previous bullet
points, the .NET platform has nothing to do with COM (beyond the fact that both frameworks
originated from Microsoft). In fact, the only way .NET and COM types can interact with each
other is using the interoperability layer.
DEVELOPMENT:
Visual Studio 2010: Microsoft Visual Studio is a powerful IDE that ensures
quality code throughout the entire application lifecycle, from design to deployment.
Whether you’re developing applications for SharePoint, the web, Windows, Windows
Phone, and beyond, Visual Studio is your ultimate all-in-one solution. Microsoft
Visual Studio is an integrated development environment (IDE) from Microsoft. It is
used to develop console and graphical user interface applications along with Windows
Forms applications, web sites, web applications, and web services in both native code
together with managed code for all platforms supported by Microsoft Windows,
Windows Mobile, Windows CE, .NET Framework, .NET Compact Framework and
Microsoft Silverlight.
Visual Studio includes a code editor supporting IntelliSense as well as code refactoring. The
integrated debugger works both as a source-level debugger and a machine-level debugger.
Other built-in tools include a forms designer for building GUI applications, web designer,
class designer, and database schema designer. It accepts plug-ins that enhance the
functionality at almost every level—including adding support for source-control systems (like
Subversion and Visual SourceSafe) and adding new toolsets like editors and visual designers
for domain-specific languages or toolsets for other aspects of the software development
lifecycle (like the Team Foundation Server client: Team Explorer).
21
Visual Studio supports different programming languages by means of language services,
which allow the code editor and debugger to support (to varying degrees) nearly any
programming language, provided a language-specific service exists. Built-in languages
include C/C++ (via Visual C++), VB.NET (via Visual Basic .NET), C# (via Visual C#), and
F# (as of Visual Studio 2010). Support for other languages such as M, Python, and Ruby
among others is available via language services installed separately. It also supports
XML/XSLT, HTML/XHTML, JavaScript and CSS. Individual language-specific versions of
Visual Studio also exist which provide more limited language services to the user: Microsoft
Visual Basic, Visual J#, Visual C#, and Visual C++.
Microsoft provides "Express" editions of its Visual Studio 2010 components Visual Basic,
Visual C#, Visual C++, and Visual Web Developer at no cost. Visual Studio 2012, 2010, 2008
and 2005 Professional Editions, along with language-specific versions (Visual Basic, C++,
C#, J#) of Visual Studio Express 2010 are available for free to students as downloads via
Microsoft's DreamSpark program. Visual Studio does not support any programming
language, solution or tool intrinsically, instead allows the plugging of functionality coded as a
VSPackage. When installed, the functionality is available as a Service. The IDE provides
three services: SVsSolution, which provides the ability to enumerate projects and solutions;
SVsUIShell, which provides windowing and UI functionality (including tabs, toolbars and
tool windows); and SVsShell, which deals with registration of VSPackages. In addition, the
IDE is also responsible for coordinating and enabling communication between services. All
editors, designers, project types and other tools are implemented as VSPackages. Visual
Studio uses COM to access the VSPackages. The Visual Studio SDK also includes the
Managed Package Framework (MPF), which is a set of managed wrappers around the COM-
interfaces that allow the Packages to be written in any CLI compliant language. However,
MPF does not provide all the functionality exposed by the Visual Studio COM interfaces.The
services can then be consumed for creation of other packages, which add functionality to the
Visual Studio IDE.
Visual Studio does not include any source control support built in but it defines two
alternative ways for source control systems to integrate with the IDE. A Source Control
VSPackage can provide its own customised user interface. In contrast, a source control plugin
using the MSSCCI (Microsoft Source Code Control Interface) provides a set of functions that
are used to implement various source control functionality, with a standard Visual Studio user
interface. MSSCCI was first used to integrate Visual SourceSafe with Visual Studio 6.0 but
was later opened up via the Visual Studio SDK. Visual Studio .NET 2002 used MSSCCI 1.1,
and Visual Studio .NET 2003 used MSSCCI 1.2. Visual Studio 2005, 2008 and 2010 use
MSSCCI Version 1.3, which adds support for rename and delete propagation as well as
asynchronous opening.
Visual Studio supports running multiple instances of the environment (each with its own set
of VSPackages). The instances use different registry hives (see MSDN's definition of the
term "registry hive" in the sense used here) to store their configuration state and are
differentiated by their AppId (Application ID). The instances are launched by an AppId-
specific .exe that selects the AppId, sets the root hive and launches the IDE. VSPackages
registered for one AppId are integrated with other VSPackages for that AppId. The various
product editions of Visual Studio are created using the different AppIds. The Visual Studio
Express edition products are installed with their own AppIds, but the Standard, Professional
and Team Suite products share the same AppId. Consequently, one can install the Express
editions side-by-side with other editions, unlike the other editions which update the same
installation. The professional edition includes a superset of the VSPackages in the standard
edition and the team suite includes a superset of the VSPackages in both other editions. The
AppId system is leveraged by the Visual Studio Shell in Visual Studio 2008.
FEATURES:
Code editor:
Visual Studio, like any other IDE, includes a code editor that supports syntax highlighting
and code completion using IntelliSense for not only variables, functions and methods but also
23
language constructs like loops and queries. IntelliSense is supported for the included
languages, as well as for XML and for Cascading Style Sheets and JavaScript when
developing web sites and web applications. Autocomplete suggestions are popped up in a
modeless list box, overlaid on top of the code editor. In Visual Studio 2008 onwards, it can be
made temporarily semi-transparent to see the code obstructed by it.The code editor is used for
all supported languages.
The Visual Studio code editor also supports setting bookmarks in code for quick navigation.
Other navigational aids include collapsing code blocks and incremental search, in addition to
normal text search and regex search. The code editor also includes a multi-item clipboard and
a task list.The code editor supports code snippets, which are saved templates for repetitive
code and can be inserted into code and customized for the project being worked on. A
management tool for code snippets is built in as well. These tools are surfaced as floating
windows which can be set to automatically hide when unused or docked to the side of the
screen. The Visual Studio code editor also supports code refactoring including parameter
reordering, variable and method renaming, interface extraction and encapsulation of class
members inside properties, among others.
Visual Studio features background compilation (also called incremental compilation).As code
is being written, Visual Studio compiles it in the background in order to provide feedback
about syntax and compilation errors, which are flagged with a red wavy underline. Warnings
are marked with a green underline. Background compilation does not generate executable
code, since it requires a different compiler than the one used to generate executable
code.Background compilation was initially introduced with Microsoft Visual Basic but has
now been expanded for all included languages.
Debugger:
Visual Studio includes a debugger that works both as a source-level debugger and as a
machine-level debugger. It works with both managed code as well as native code and can be
used for debugging applications written in any language supported by Visual Studio. In
addition, it can also attach to running processes and monitor and debug those processes. If
source code for the running process is available, it displays the code as it is being run. If
source code is not available, it can show the disassembly. The Visual Studio debugger can
also create memory dumps as well as load them later for debugging. Multi-threaded programs
are also supported. The debugger can be configured to be launched when an application
running outside the Visual Studio environment crashes.
24
The debugger allows setting breakpoints (which allow execution to be stopped temporarily at
a certain position) and watches (which monitor the values of variables as the execution
progresses).Breakpoints can be conditional, meaning they get triggered when the condition is
met. Code can be stepped over, i.e., run one line (of source code) at a time. It can either step
into functions to debug inside it, or step over it, i.e., the execution of the function body isn't
available for manual inspection.The debugger supports Edit and Continue, i.e., it allows code
to be edited as it is being debugged (32 bit only; not supported in 64 bit).When debugging, if
the mouse pointer hovers over any variable, its current value is displayed in a tooltip ("data
tooltips"), where it can also be modified if desired. During coding, the Visual Studio
debugger lets certain functions be invoked manually from the Immediate tool window. The
parameters to the method are supplied at the Immediate window.
Designer:
Visual Studio includes a host of visual designers to aid in the development of applications.
These tools include:
The Windows Forms designer is used to build GUI applications using Windows Forms.
Layout can be controlled by housing the controls inside other containers or locking them to
the side of the form. Controls that display data (like textbox, list box, grid view, etc.) can be
bound to data sources like databases or queries. Data-bound controls can be created by
dragging items from the Data Sources window onto a design surface.The UI is linked with
code using an event-driven programming model. The designer generates either C# or
VB.NET code for the application.
WPF Designer:
The WPF designer, codenamed Cider, was introduced with Visual Studio 2008. Like the
Windows Forms designer it supports the drag and drop metaphor. It is used to author user
interfaces targeting Windows Presentation Foundation. It supports all WPF functionality
including data binding and automatic layout management. It generates XAML code for the
UI. The generated XAML file is compatible with Microsoft Expression Design, the designer-
oriented product. The XAML code is linked with code using a code-behind model.
Web designer/development:
Visual Studio also includes a web-site editor and designer that allows web pages to be
authored by dragging and dropping widgets. It is used for developing ASP.NET applications
25
and supports HTML, CSS and JavaScript. It uses a code-behind model to link with ASP.NET
code. From Visual Studio 2008 onwards, the layout engine used by the web designer is shared
with Microsoft Expression Web. There is also ASP.NET MVC support for MVC technology
as a separate download and ASP.NET Dynamic Data project available from Microsoft
Class designer:
The Class Designer is used to author and edit the classes (including its members and their
access) using UML modeling. The Class Designer can generate C# and VB.NET code
outlines for the classes and methods. It can also generate class diagrams from hand-written
classes.
Data designer:
The data designer can be used to graphically edit database schemas, including typed tables,
primary and foreign keys and constraints. It can also be used to design queries from the
graphical view.
Mapping designer:
From Visual Studio 2008 onwards, the mapping designer is used by LINQ to SQL to design
the mapping between database schemas and the classes that encapsulate the data. The new
solution from ORM approach, ADO.NET Entity Framework, replaces and improves the old
technology.
SQL Server 2005 (formerly codenamed "Yukon") was released in October 2005. It included
native support for managing XML data, in addition to relational data. For this purpose, it
defined an xml data type that could be used either as a data type in database columns or as
literals in queries. XML columns can be associated with XSD schemas; XML data being
26
stored is verified against the schema. XML is converted to an internal binary data type before
being stored in the database. Specialized indexing methods were made available for XML
data. XML data is queried using XQuery; SQL Server 2005 added some extensions to the T-
SQL language to allow embedding XQuery queries in T-SQL. In addition, it also defines a
new extension to XQuery, called XML DML, that allows query-based modifications to XML
data. SQL Server 2005 also allows a database server to be exposed over web services using
Tabular Data Stream (TDS) packets encapsulated within SOAP (protocol) requests. When the
data is accessed over web services, results are returned as XML.
Common Language Runtime (CLR) integration was introduced with this version, enabling
one to write SQL code as Managed Code by the CLR. For relational data, T-SQL has been
augmented with error handling features (try/catch) and support for recursive queries with
CTEs (Common Table Expressions). SQL Server 2005 has also been enhanced with new
indexing algorithms, syntax and better error recovery systems. Data pages are checksummed
for better error resiliency, and optimistic concurrency support has been added for better
performance. Permissions and access control have been made more granular and the query
processor handles concurrent execution of queries in a more efficient way. Partitions on
tables and indexes are supported natively, so scaling out a database onto a cluster is easier.
SQL CLR was introduced with SQL Server 2005 to let it integrate with the .NET Framework.
SQL Server 2005 introduced "MARS" (Multiple Active Results Sets), a method of allowing
usage of database connections for multiple purposes.
SQL Server 2005 introduced DMVs (Dynamic Management Views), which are specialized
views and functions that return server state information that can be used to monitor the health
of a server instance, diagnose problems, and tune performance.Service Pack 1 (SP1) of SQL
Server 2005 introduced Database Mirroring,a high availability option that provides
redundancy and failover capabilities at the database level. Failover can be performed
manually or can be configured for automatic failover. Automatic failover requires a witness
partner and an operating mode of synchronous (also known as high-safety or full safety).
SQL Server 2008 (formerly codenamed "Katmai") was released on August 6, 2008 and aims
to make data management self-tuning, self organizing, and self maintaining with the
development of SQL Server Always On technologies, to provide near-zero downtime. SQL
Server 2008 also includes support for structured and semi-structured data, including digital
media formats for pictures, audio, video and other multimedia data. In current versions, such
27
multimedia data can be stored as BLOBs (binary large objects), but they are generic
bitstreams. Intrinsic awareness of multimedia data will allow specialized functions to be
performed on them. According to Paul Flessner, senior Vice President, Server Applications,
Microsoft Corp., SQL Server 2008 can be a data storage backend for different varieties of
data: XML, email, time/calendar, file, document, spatial, etc as well as perform search,
query, analysis, sharing, and synchronization across all data types.[
Other new data types include specialized date and time types and a Spatial data type for
location-dependent data.Better support for unstructured and semi-structured data is provided
using the new FILESTREAM data type, which can be used to reference any file stored on the
file system. Structured data and metadata about the file is stored in SQL Server database,
whereas the unstructured component is stored in the file system. Such files can be accessed
both via Win32 file handling APIs as well as via SQL Server using T-SQL; doing the latter
accesses the file data as a BLOB. Backing up and restoring the database backs up or restores
the referenced files as well. SQL Server 2008 also natively supports hierarchical data, and
includes T-SQL constructs to directly deal with them, without using recursive queries.
The Full-text search functionality has been integrated with the database engine. According to
a Microsoft technical article, this simplifies management and improves performance.
Spatial data will be stored in two types. A "Flat Earth" (GEOMETRY or planar) data type
represents geospatial data which has been projected from its native, spherical, coordinate
system into a plane. A "Round Earth" data type (GEOGRAPHY) uses an ellipsoidal model in
which the Earth is defined as a single continuous entity which does not suffer from the
singularities such as the international dateline, poles, or map projection zone "edges".
Approximately 70 methods are available to represent spatial operations for the Open
Geospatial Consortium Simple Features for SQL, Version 1.1.
SQL Server includes better compression features, which also helps in improving scalability. It
enhanced the indexing algorithms and introduced the notion of filtered indexes. It also
includes Resource Governor that allows reserving resources for certain users or workflows. It
also includes capabilities for transparent encryption of data (TDE) as well as compression of
backups. SQL Server 2008 supports the ADO.NET Entity Framework and the reporting tools,
replication, and data definition will be built around the Entity Data Model. SQL Server
Reporting Services will gain charting capabilities from the integration of the data
visualization products from Dundas Data Visualization, Inc., which was acquired by
Microsoft.On the management side, SQL Server 2008 includes the Declarative Management
Framework which allows configuring policies and constraints, on the entire database or
28
certain tables, declaratively.The version of SQL Server Management Studio included with
SQL Server 2008 supports IntelliSense for SQL queries against a SQL Server 2008 Database
Engine.SQL Server 2008 also makes the databases available via Windows PowerShell
providers and management functionality available as Cmdlets, so that the server and all the
running instances can be managed from Windows PowerShell.
SQL Server 2008 R2 includes a number of new services, including PowerPivot for Excel and
SharePoint, Master Data Services, StreamInsight, Report Builder 3.0, Reporting Services
Add-in for SharePoint, a Data-tier function in Visual Studio that enables packaging of tiered
databases as part of an application, and a SQL Server Utility named UC (Utility Control
Point), part of AMSM (Application and Multi-Server Management) that is used to manage
multiple SQL Servers.
The first SQL Server 2008 R2 service pack (10.50.2500, Service Pack 1) was released on
July 11, 2011.The second SQL Server 2008 R2 service pack (10.50.4000, Service Pack 2)
was released on July 26, 2012.
At the 2011 Professional Association for SQL Server (PASS) summit on October 11,
Microsoft announced that the next major version of SQL Server (codenamed "Denali"),
would be SQL Server 2012. It was released to manufacturing on March 6, 2012.
It was announced to be last version to natively support OLE DB and instead to prefer ODBC
for native connectivity.
SQL Server 2012's new features and enhancements include AlwaysOn SQL Server Failover
Cluster Instances and Availability Groups which provides a set of options to improve
29
database availability, Contained Databases which simplify the moving of databases between
instances, new and modified Dynamic Management Views and Functions, programmability
enhancements including new Spatial features, Metadata discovery, Sequence objects and the
THROW statement, performance enhancements such as ColumnStore Indexes as well as
improvements to OnLine and Partition level operations and security enhancements including
Provisioning During Setup, new permissions, improved role management and default schema
assignment for groups.
Editions:
Microsoft makes SQL Server available in multiple editions, with different feature sets and
targeting different users. These editions are:
Mainstream editions:
Datacenter:
SQL Server 2008 R2 Datacenter is the full-featured edition of SQL Server and is designed for
datacenters that need the high levels of application support and scalability. It supports 256
logical processors and virtually unlimited memory. Comes with StreamInsight Premium
edition.The Datacenter edition has been retired in SQL Server 2012, all its features are
available in SQL Server 2012 Enterprise Edition.
Enterprise:
SQL Server Enterprise Edition includes both the core database engine and add-on services,
with a range of tools for creating and managing a SQL Server cluster. It can manage
databases as large as 524 petabytes and address 2 terabytes of memory and supports 8
physical processors. SQL 2012 Edition supports 160 Physical Processors. Standard
SQL Server Standard edition includes the core database engine, along with the stand-alone
services. It differs from Enterprise edition in that it supports fewer active instances (number
of nodes in a cluster) and does not include some high-availability functions such as hot-add
memory (allowing memory to be added while the server is still running), and parallel indexes.
Web
Business Intelligence:
30
Introduced in SQL Server 2012 and focusing on Self Service and Corporate Business
Intelligence. It includes the Standard Edition capabilities and Business Intelligence tools:
PowerPivot, Power View, the BI Semantic Model, Master Data Services, Data Quality
Services and xVelocity in-memory analytics.
Workgroup:
SQL Server Workgroup Edition includes the core database functionality but does not include
the additional services. Note that this edition has been retired in SQL Server 2012.
Express:
SQL Server Express Edition is a scaled down, free edition of SQL Server, which includes the
core database engine. While there are no limitations on the number of databases or users
supported, it is limited to using one processor, 1 GB memory and 4 GB database files (10 GB
database files from SQL Server Express 2008 R2[). It is intended as a replacement for MSDE.
Two additional editions provide a superset of features not in the original Express Edition. The
first is SQL Server Express with Tools, which includes SQL Server Management Studio
Basic. SQL Server Express with Advanced Services adds full-text search capability and
reporting services.
31
7.1 DEVELOPING ENVIRONMENT:
Visual Studio 2010: Microsoft Visual Studio is a powerful IDE that ensures
quality code throughout the entire application lifecycle, from design to deployment.
Whether you’re developing applications for SharePoint, the web, Windows, Windows
Phone, and beyond, Visual Studio is your ultimate all-in-one solution. Microsoft
Visual Studio is an integrated development environment (IDE) from Microsoft. It is
used to develop console and graphical user interface applications along with Windows
Forms applications, web sites, web applications, and web services in both native code
together with managed code for all platforms supported by Microsoft Windows,
Windows Mobile, Windows CE, .NET Framework, .NET Compact Framework and
Microsoft Silverlight.
Visual Studio includes a code editor supporting IntelliSense as well as code refactoring. The
integrated debugger works both as a source-level debugger and a machine-level debugger.
Other built-in tools include a forms designer for building GUI applications, web designer,
class designer, and database schema designer. It accepts plug-ins that enhance the
functionality at almost every level—including adding support for source-control systems (like
Subversion and Visual SourceSafe) and adding new toolsets like editors and visual designers
for domain-specific languages or toolsets for other aspects of the software development
lifecycle (like the Team Foundation Server client: Team Explorer).
Microsoft provides "Express" editions of its Visual Studio 2010 components Visual Basic,
Visual C#, Visual C++, and Visual Web Developer at no cost. Visual Studio 2012, 2010, 2008
and 2005 Professional Editions, along with language-specific versions (Visual Basic, C++,
C#, J#) of Visual Studio Express 2010 are available for free to students as downloads via
Microsoft's DreamSpark program. Visual Studio does not support any programming
language, solution or tool intrinsically, instead allows the plugging of functionality coded as a
32
VSPackage. When installed, the functionality is available as a Service. The IDE provides
three services: SVsSolution, which provides the ability to enumerate projects and solutions;
SVsUIShell, which provides windowing and UI functionality (including tabs, toolbars and
tool windows); and SVsShell, which deals with registration of VSPackages. In addition, the
IDE is also responsible for coordinating and enabling communication between services. All
editors, designers, project types and other tools are implemented as VSPackages. Visual
Studio uses COM to access the VSPackages. The Visual Studio SDK also includes the
Managed Package Framework (MPF), which is a set of managed wrappers around the COM-
interfaces that allow the Packages to be written in any CLI compliant language. However,
MPF does not provide all the functionality exposed by the Visual Studio COM interfaces.The
services can then be consumed for creation of other packages, which add functionality to the
Visual Studio IDE.
Visual Studio does not include any source control support built in but it defines two
alternative ways for source control systems to integrate with the IDE. A Source Control
VSPackage can provide its own customised user interface. In contrast, a source control plugin
using the MSSCCI (Microsoft Source Code Control Interface) provides a set of functions that
are used to implement various source control functionality, with a standard Visual Studio user
interface. MSSCCI was first used to integrate Visual SourceSafe with Visual Studio 6.0 but
was later opened up via the Visual Studio SDK. Visual Studio .NET 2002 used MSSCCI 1.1,
and Visual Studio .NET 2003 used MSSCCI 1.2. Visual Studio 2005, 2008 and 2010 use
MSSCCI Version 1.3, which adds support for rename and delete propagation as well as
asynchronous opening.
33
Visual Studio supports running multiple instances of the environment (each with its own set
of VSPackages). The instances use different registry hives (see MSDN's definition of the
term "registry hive" in the sense used here) to store their configuration state and are
differentiated by their AppId (Application ID). The instances are launched by an AppId-
specific .exe that selects the AppId, sets the root hive and launches the IDE. VSPackages
registered for one AppId are integrated with other VSPackages for that AppId. The various
product editions of Visual Studio are created using the different AppIds. The Visual Studio
Express edition products are installed with their own AppIds, but the Standard, Professional
and Team Suite products share the same AppId. Consequently, one can install the Express
editions side-by-side with other editions, unlike the other editions which update the same
installation. The professional edition includes a superset of the VSPackages in the standard
edition and the team suite includes a superset of the VSPackages in both other editions. The
AppId system is leveraged by the Visual Studio Shell in Visual Studio 2008.
FEATURES:
Code editor:
Visual Studio, like any other IDE, includes a code editor that supports syntax highlighting
and code completion using IntelliSense for not only variables, functions and methods but also
language constructs like loops and queries. IntelliSense is supported for the included
languages, as well as for XML and for Cascading Style Sheets and JavaScript when
developing web sites and web applications. Autocomplete suggestions are popped up in a
modeless list box, overlaid on top of the code editor. In Visual Studio 2008 onwards, it can be
made temporarily semi-transparent to see the code obstructed by it.The code editor is used for
all supported languages.
The Visual Studio code editor also supports setting bookmarks in code for quick navigation.
Other navigational aids include collapsing code blocks and incremental search, in addition to
normal text search and regex search. The code editor also includes a multi-item clipboard and
a task list.The code editor supports code snippets, which are saved templates for repetitive
code and can be inserted into code and customized for the project being worked on. A
management tool for code snippets is built in as well. These tools are surfaced as floating
windows which can be set to automatically hide when unused or docked to the side of the
screen. The Visual Studio code editor also supports code refactoring including parameter
34
reordering, variable and method renaming, interface extraction and encapsulation of class
members inside properties, among others.
Visual Studio features background compilation (also called incremental compilation).As code
is being written, Visual Studio compiles it in the background in order to provide feedback
about syntax and compilation errors, which are flagged with a red wavy underline. Warnings
are marked with a green underline. Background compilation does not generate executable
code, since it requires a different compiler than the one used to generate executable
code.Background compilation was initially introduced with Microsoft Visual Basic but has
now been expanded for all included languages.
Debugger:
Visual Studio includes a debugger that works both as a source-level debugger and as a
machine-level debugger. It works with both managed code as well as native code and can be
used for debugging applications written in any language supported by Visual Studio. In
addition, it can also attach to running processes and monitor and debug those processes. If
source code for the running process is available, it displays the code as it is being run. If
source code is not available, it can show the disassembly. The Visual Studio debugger can
also create memory dumps as well as load them later for debugging. Multi-threaded programs
are also supported. The debugger can be configured to be launched when an application
running outside the Visual Studio environment crashes.
The debugger allows setting breakpoints (which allow execution to be stopped temporarily at
a certain position) and watches (which monitor the values of variables as the execution
progresses).Breakpoints can be conditional, meaning they get triggered when the condition is
met. Code can be stepped over, i.e., run one line (of source code) at a time. It can either step
into functions to debug inside it, or step over it, i.e., the execution of the function body isn't
available for manual inspection.The debugger supports Edit and Continue, i.e., it allows code
to be edited as it is being debugged (32 bit only; not supported in 64 bit).When debugging, if
the mouse pointer hovers over any variable, its current value is displayed in a tooltip ("data
tooltips"), where it can also be modified if desired. During coding, the Visual Studio
debugger lets certain functions be invoked manually from the Immediate tool window. The
parameters to the method are supplied at the Immediate window.
Designer:
Visual Studio includes a host of visual designers to aid in the development of applications.
These tools include:
35
Windows Forms Designer:
The Windows Forms designer is used to build GUI applications using Windows Forms.
Layout can be controlled by housing the controls inside other containers or locking them to
the side of the form. Controls that display data (like textbox, list box, grid view, etc.) can be
bound to data sources like databases or queries. Data-bound controls can be created by
dragging items from the Data Sources window onto a design surface.The UI is linked with
code using an event-driven programming model. The designer generates either C# or
VB.NET code for the application.
WPF Designer:
The WPF designer, codenamed Cider, was introduced with Visual Studio 2008. Like the
Windows Forms designer it supports the drag and drop metaphor. It is used to author user
interfaces targeting Windows Presentation Foundation. It supports all WPF functionality
including data binding and automatic layout management. It generates XAML code for the
UI. The generated XAML file is compatible with Microsoft Expression Design, the designer-
oriented product. The XAML code is linked with code using a code-behind model.
Web designer/development:
Visual Studio also includes a web-site editor and designer that allows web pages to be
authored by dragging and dropping widgets. It is used for developing ASP.NET applications
and supports HTML, CSS and JavaScript. It uses a code-behind model to link with ASP.NET
code. From Visual Studio 2008 onwards, the layout engine used by the web designer is shared
with Microsoft Expression Web. There is also ASP.NET MVC support for MVC technology
as a separate download and ASP.NET Dynamic Data project available from Microsoft
Class designer:
The Class Designer is used to author and edit the classes (including its members and their
access) using UML modeling. The Class Designer can generate C# and VB.NET code
outlines for the classes and methods. It can also generate class diagrams from hand-written
classes.
Data designer:
The data designer can be used to graphically edit database schemas, including typed tables,
primary and foreign keys and constraints. It can also be used to design queries from the
graphical view.
36
Mapping designer:
From Visual Studio 2008 onwards, the mapping designer is used by LINQ to SQL to design
the mapping between database schemas and the classes that encapsulate the data. The new
solution from ORM approach, ADO.NET Entity Framework, replaces and improves the old
technology.
SQL Server 2005 (formerly codenamed "Yukon") was released in October 2005. It included
native support for managing XML data, in addition to relational data. For this purpose, it
defined an xml data type that could be used either as a data type in database columns or as
literals in queries. XML columns can be associated with XSD schemas; XML data being
stored is verified against the schema. XML is converted to an internal binary data type before
being stored in the database. Specialized indexing methods were made available for XML
data. XML data is queried using XQuery; SQL Server 2005 added some extensions to the T-
SQL language to allow embedding XQuery queries in T-SQL. In addition, it also defines a
new extension to XQuery, called XML DML, that allows query-based modifications to XML
data. SQL Server 2005 also allows a database server to be exposed over web services using
Tabular Data Stream (TDS) packets encapsulated within SOAP (protocol) requests. When the
data is accessed over web services, results are returned as XML.
Common Language Runtime (CLR) integration was introduced with this version, enabling
one to write SQL code as Managed Code by the CLR. For relational data, T-SQL has been
augmented with error handling features (try/catch) and support for recursive queries with
CTEs (Common Table Expressions). SQL Server 2005 has also been enhanced with new
indexing algorithms, syntax and better error recovery systems. Data pages are checksummed
for better error resiliency, and optimistic concurrency support has been added for better
performance. Permissions and access control have been made more granular and the query
37
processor handles concurrent execution of queries in a more efficient way. Partitions on
tables and indexes are supported natively, so scaling out a database onto a cluster is easier.
SQL CLR was introduced with SQL Server 2005 to let it integrate with the .NET Framework.
SQL Server 2005 introduced "MARS" (Multiple Active Results Sets), a method of allowing
usage of database connections for multiple purposes.
SQL Server 2005 introduced DMVs (Dynamic Management Views), which are specialized
views and functions that return server state information that can be used to monitor the health
of a server instance, diagnose problems, and tune performance.Service Pack 1 (SP1) of SQL
Server 2005 introduced Database Mirroring,a high availability option that provides
redundancy and failover capabilities at the database level. Failover can be performed
manually or can be configured for automatic failover. Automatic failover requires a witness
partner and an operating mode of synchronous (also known as high-safety or full safety).
SQL Server 2008 (formerly codenamed "Katmai") was released on August 6, 2008 and aims
to make data management self-tuning, self organizing, and self maintaining with the
development of SQL Server Always On technologies, to provide near-zero downtime. SQL
Server 2008 also includes support for structured and semi-structured data, including digital
media formats for pictures, audio, video and other multimedia data. In current versions, such
multimedia data can be stored as BLOBs (binary large objects), but they are generic
bitstreams. Intrinsic awareness of multimedia data will allow specialized functions to be
performed on them. According to Paul Flessner, senior Vice President, Server Applications,
Microsoft Corp., SQL Server 2008 can be a data storage backend for different varieties of
data: XML, email, time/calendar, file, document, spatial, etc as well as perform search,
query, analysis, sharing, and synchronization across all data types.[
Other new data types include specialized date and time types and a Spatial data type for
location-dependent data.Better support for unstructured and semi-structured data is provided
using the new FILESTREAM data type, which can be used to reference any file stored on the
file system. Structured data and metadata about the file is stored in SQL Server database,
whereas the unstructured component is stored in the file system. Such files can be accessed
both via Win32 file handling APIs as well as via SQL Server using T-SQL; doing the latter
accesses the file data as a BLOB. Backing up and restoring the database backs up or restores
the referenced files as well. SQL Server 2008 also natively supports hierarchical data, and
includes T-SQL constructs to directly deal with them, without using recursive queries.
38
The Full-text search functionality has been integrated with the database engine. According to
a Microsoft technical article, this simplifies management and improves performance.
Spatial data will be stored in two types. A "Flat Earth" (GEOMETRY or planar) data type
represents geospatial data which has been projected from its native, spherical, coordinate
system into a plane. A "Round Earth" data type (GEOGRAPHY) uses an ellipsoidal model in
which the Earth is defined as a single continuous entity which does not suffer from the
singularities such as the international dateline, poles, or map projection zone "edges".
Approximately 70 methods are available to represent spatial operations for the Open
Geospatial Consortium Simple Features for SQL, Version 1.1.
SQL Server includes better compression features, which also helps in improving scalability. It
enhanced the indexing algorithms and introduced the notion of filtered indexes. It also
includes Resource Governor that allows reserving resources for certain users or workflows. It
also includes capabilities for transparent encryption of data (TDE) as well as compression of
backups. SQL Server 2008 supports the ADO.NET Entity Framework and the reporting tools,
replication, and data definition will be built around the Entity Data Model. SQL Server
Reporting Services will gain charting capabilities from the integration of the data
visualization products from Dundas Data Visualization, Inc., which was acquired by
Microsoft.On the management side, SQL Server 2008 includes the Declarative Management
Framework which allows configuring policies and constraints, on the entire database or
certain tables, declaratively.The version of SQL Server Management Studio included with
SQL Server 2008 supports IntelliSense for SQL queries against a SQL Server 2008 Database
Engine.SQL Server 2008 also makes the databases available via Windows PowerShell
providers and management functionality available as Cmdlets, so that the server and all the
running instances can be managed from Windows PowerShell.
39
Server 2008 instances and services including relational databases, Reporting Services,
Analysis Services & Integration Services.
SQL Server 2008 R2 includes a number of new services, including PowerPivot for Excel and
SharePoint, Master Data Services, StreamInsight, Report Builder 3.0, Reporting Services
Add-in for SharePoint, a Data-tier function in Visual Studio that enables packaging of tiered
databases as part of an application, and a SQL Server Utility named UC (Utility Control
Point), part of AMSM (Application and Multi-Server Management) that is used to manage
multiple SQL Servers.
The first SQL Server 2008 R2 service pack (10.50.2500, Service Pack 1) was released on
July 11, 2011.The second SQL Server 2008 R2 service pack (10.50.4000, Service Pack 2)
was released on July 26, 2012.
At the 2011 Professional Association for SQL Server (PASS) summit on October 11,
Microsoft announced that the next major version of SQL Server (codenamed "Denali"),
would be SQL Server 2012. It was released to manufacturing on March 6, 2012.
It was announced to be last version to natively support OLE DB and instead to prefer ODBC
for native connectivity.
SQL Server 2012's new features and enhancements include AlwaysOn SQL Server Failover
Cluster Instances and Availability Groups which provides a set of options to improve
database availability, Contained Databases which simplify the moving of databases between
instances, new and modified Dynamic Management Views and Functions, programmability
enhancements including new Spatial features, Metadata discovery, Sequence objects and the
THROW statement, performance enhancements such as ColumnStore Indexes as well as
improvements to OnLine and Partition level operations and security enhancements including
Provisioning During Setup, new permissions, improved role management and default schema
assignment for groups.
Editions:
Microsoft makes SQL Server available in multiple editions, with different feature sets and
targeting different users. These editions are:
Mainstream editions:
Datacenter:
40
SQL Server 2008 R2 Datacenter is the full-featured edition of SQL Server and is designed for
datacenters that need the high levels of application support and scalability. It supports 256
logical processors and virtually unlimited memory. Comes with StreamInsight Premium
edition.The Datacenter edition has been retired in SQL Server 2012, all its features are
available in SQL Server 2012 Enterprise Edition.
Enterprise:
SQL Server Enterprise Edition includes both the core database engine and add-on services,
with a range of tools for creating and managing a SQL Server cluster. It can manage
databases as large as 524 petabytes and address 2 terabytes of memory and supports 8
physical processors. SQL 2012 Edition supports 160 Physical Processors. Standard
SQL Server Standard edition includes the core database engine, along with the stand-alone
services. It differs from Enterprise edition in that it supports fewer active instances (number
of nodes in a cluster) and does not include some high-availability functions such as hot-add
memory (allowing memory to be added while the server is still running), and parallel indexes.
Web
Business Intelligence:
Introduced in SQL Server 2012 and focusing on Self Service and Corporate Business
Intelligence. It includes the Standard Edition capabilities and Business Intelligence tools:
PowerPivot, Power View, the BI Semantic Model, Master Data Services, Data Quality
Services and xVelocity in-memory analytics.
Workgroup:
SQL Server Workgroup Edition includes the core database functionality but does not include
the additional services. Note that this edition has been retired in SQL Server 2012.
Express:
SQL Server Express Edition is a scaled down, free edition of SQL Server, which includes the
core database engine. While there are no limitations on the number of databases or users
supported, it is limited to using one processor, 1 GB memory and 4 GB database files (10 GB
database files from SQL Server Express 2008 R2[). It is intended as a replacement for MSDE.
Two additional editions provide a superset of features not in the original Express Edition. The
41
first is SQL Server Express with Tools, which includes SQL Server Management Studio
Basic. SQL Server Express with Advanced Services adds full-text search capability and
reporting services.
FEATURE HIGHLIGHTS:
1. C# is a simple, modern, object oriented language derived from C++ and Java.
2. It aims to combine the high productivity of Visual Basic and the raw power of C++.
3. It is a part of Microsoft Visual Studio7.0.
4. Visual studio supports Vb, VC++, C++, Vbscript, Jscript. All of these languages provide
access to the Microsoft .NET platform.
5. .NET includes a Common Execution engine and a rich class library.
6. Microsoft's JVM equiv. is Common language run time (CLR).
7. CLR accommodates more than one languages such as C#, VB.NET, Jscript, ASP.NET, C+
+.
8. Source code --->Intermediate Language code (IL) ---> (JIT Compiler) Native code.
9.The classes and data types are common to all of the .NET languages.
10. We may develop Console application, Windows application, and Web application using
C#.
11. In C# Microsoft has taken care of C++ problems such as Memory management, pointers
etc.
12.It supports garbage collection, automatic memory management and a lot.
MAIN FEATURES OF C# :
SIMPLE :
MODERN :
42
1.C# has been based according to the current trend and is very powerful and simple for
building interoperable, scalable, robust applications.
2. C# includes built in support to turn any component into a web service that can be invoked
over the Internet from any application running on any platform.
OBJECT ORIENTED :
int i=1;
TYPE SAFE :
INTEROPERABILITY :
1. C# includes native support for the COM and windows based applications.
2. Allowing restricted use of native pointers.
3. Users no longer have to explicitly implement the unknown and other COM interfaces,
those features are built in.
4. C# allows the users to use pointers as unsafe code blocks to manipulate your old code.
5. Components from VB NET and other managed code languages and directly be used in C#.
1. .NET has introduced assemblies, which are self-describing by means of their manifest.
43
Manifest establishes the assembly identity, version, culture and digital signature etc.
Assemblies need not to be register anywhere.
2. To scale our application we delete the old files and updating them with new ones. No
registering of dynamic linking library.
3. Updating software components is an error prone task. Revisions made to the code can
effect the existing program C# support versioning in the language. Native support for
interfaces and method overriding enable complex frame works to be developed and evolved
over time.
As a C# programmer, you may choose among numerous tools to build .NET applications. The
point of this chapter is to provide a tour of various .NET development options, including, of
course,Visual Studio 2008. The chapter opens, however, with an examination of working with
the C# command-line compiler, csc.exe, and the simplest of all text editors, the Notepad
application that ships with the Microsoft Windows OS. Once you become comfortable
compiling assemblies “IDE-free,” you will then examine various lightweight editors (such as
TextPad and Notepad++) that allow you to author C# source code files and interact with the
compiler in a slightly more sophisticated manner. While you could work through this entire
text using nothing other than csc.exe and a basic text editor, I’d bet you are also interested in
working with feature-rich integrated development environments (IDEs). To this end, you will
be introduced to a free, open source .NET IDE named Sharp Develop. This IDE rivals the
functionality of many commercial .NET development environments. After briefly examining
the Visual C# 2008 Express IDE (which is also free), you will be given guided tour of the key
features of Visual Studio 2008. This chapter wraps up with a quick tour of a number of
complementary .NET development tools (again, many of which are open source) and
44
45
46
7.3 DATA DICTIONARY:
In database management systems, a file that defines the basic organization of a database. A
data dictionary contains a list of all files in the database, the number of records in each file,
and the names and types of each field. Most database management systems keep the data
dictionary hidden from users to prevent them from accidentally destroying its contents.
Data dictionaries do not contain any actual data from the database, only bookkeeping
information for managing it. Without a data dictionary, however, a database management
system cannot access data from the database.
data
What are storage will I have to replace it in six
dictionary
Area of networks? Weeks?
47
8. DESIGN
48
8.2 STRUCTURE DIAGRAM:
49
9. TEST PLAN
TEST CASE
Check the previleges that the admin have not stop the registration process.
Users can create their accounts and then update the details whenever he wants
but it will work only when the TPO verifies it.
Students can apply for companies coming to the college. And at any time they can
see their eligibility in company.
Admin can generate the reports of students on the basis of placement of them
in the year and also on the basis of package. Admin can also generate report on the
basis of company that how many companies come in that year and how many students
are placed in that company.
50
10. IMPLEMENTATION
Front End :- C#
As a C# programmer, you may choose among numerous tools to build .NET applications. The
point of this chapter is to provide a tour of various .NET development options, including, of
course, Visual Studio 2008. The chapter opens, however, with an examination of working
with the C# command-line compiler, csc.exe, and the simplest of all text editors, the Notepad
application that ships with the Microsoft Windows OS. Once you become comfortable
compiling assemblies “IDE-free,” you will then examine various lightweight editors (such as
Text Pad and Notepad++) that allow you to author C# source code files and interact with the
compiler in a slightly more sophisticated manner. While you could work through this entire
text using nothing other than csc.exe and a basic text editor, I’d bet you are also interested in
working with feature-rich integrated development environments (IDEs). To this end, you will
be introduced to a free, open source .NET IDE named Sharp Develop. This IDE rivals the
functionality of many commercial .NET development environments. After briefly examining
the Visual C# 2008 Express IDE (which is also free), you will be given guided tour of the key
features of Visual Studio 2008. This chapter wraps up with a quick tour of a number of
complementary .NET development tools (again, many of which are open source) and
Features:
1. C# is a simple, modern, object oriented language derived from C++ and Java.
2. It aims to combine the high productivity of Visual Basic and the raw power of C++.
3. It is a part of Microsoft Visual Studio7.0.
4. Visual studio supports Vb, VC++, C++, Vbscript, Jscript. All of these languages provide
access to the Microsoft .NET platform.
5. .NET includes a Common Execution engine and a rich class library.
6. Microsoft's JVM equiv. is Common language run time (CLR).
7. CLR accommodates more than one languages such as C#, VB.NET, Jscript, ASP.NET, C+
+.
51
8. Source code --->Intermediate Language code (IL) ---> (JIT Compiler) Native code.
9.The classes and data types are common to all of the .NET languages.
10. We may develop Console application, Windows application, and Web application using
C#.
11. In C# Microsoft has taken care of C++ problems such as Memory management, pointers
etc.
12.It supports garbage collection, automatic memory management and a lot.
MAIN FEATURES OF C# :
SIMPLE :
1. Pointers are missing in C#.
2. Unsafe operations such as direct memory manipulation are not allowed.
3. In C# there is no usage of "::" or "->" operators.
4. Since it`s on .NET, it inherits the features of automatic memory management and garbage
collection.
5. Varying ranges of the primitive types like Integer, Floats etc.
6. Integer values of 0 and 1 are no longer accepted as Boolean values. Boolean values are
pure true or false values in C# so no more errors of "="operator and "=="operator. "==" is
used for comparison operation and "=" is used for assignment operation.
MODERN:
1.C# has been based according to the current trend and is very powerful and simple for
building interoperable, scalable, robust applications.
2. C# includes built in support to turn any component into a web service that can be invoked
over the Internet from any application running on any platform.
OBJECT ORIENTED:
1. C# supports Data Encapsulation, inheritance, polymorphism, interfaces.
2. (int, float, double) are not objects in java but C# has introduces structures(structs) which
enable the primitive types to become objects
int i=1;
52
TYPE SAFE :
INTEROPERABILITY :
1. C# includes native support for the COM and windows based applications.
2. Allowing restricted use of native pointers.
3. Users no longer have to explicitly implement the unknown and other COM interfaces,
those features are built in.
4. C# allows the users to use pointers as unsafe code blocks to manipulate your old code.
5. Components from VB NET and other managed code languages and directly be used in C#.
1. .NET has introduced assemblies, which are self-describing by means of their manifest.
Manifest establishes the assembly identity, version, culture and digital signature etc.
Assemblies need not to be register anywhere.
2. To scale our application we delete the old files and updating them with new ones. No
registering of dynamic linking library.
3. Updating software components is an error prone task. Revisions made to the code can
effect the existing program C# support versioning in the language. Native support for
interfaces and method overriding enable complex frame works to be developed and evolved
over time.
53
11. SOFTWARE WORKING DOCUMENTATION
6. Create account.
Admin Module:
1. Admin can add upcoming companies list by clicking add company link.
3. He can view, alter, reject, accept the students by clicking see users list.
Students Module:
2. Students can see the companies list in the see companies link.
54
12. SCREENSHOTS
55
13. PROJECT LEGACY
Face recognition systems used today work very well under constrained conditions, although
all systems work much better with frontal mug-shot images and constant lighting. All
current face recognition algorithms fail under the vastly varying conditions under which
humans need to and are able to identify other people. Next generation person recognition
systems will need to recognize people in real-time and in much less constrained situations.
We believe that identification systems that are robust in natural environments, in the presence
of noise and illumination changes, cannot rely on a single modality, so that fusion with other
modalities is essential . Technology used in smart environments has to be unobtrusive and
allow users to act freely. Wearable systems in particular require their sensing technology to be
small, low powered and easily integrable with the user's clothing. Considering all the
requirements, identification systems that use face recognition and speaker identification seem
to us to have the most potential for wide-spread application.
Cameras and microphones today are very small, light-weight and have been successfully
integrated with wearable systems. Audio and video based recognition systems have the
critical advantage that they use the modalities humans use for recognition. Finally,
researchers are beginning to demonstrate that unobtrusive audio-and-video based person
identification systems can achieve high recognition rates without requiring the user to be in
highly controlled environments
56
57
14. BIBLIOGRAPHY
http://en.wikipedia.org/wiki/C_Sharp_language.
http://stackoverflow.com/
www.asp.net
msdn.microsoft.com
code.grasphub.com
58