4 Software Description
-
Upload
visa-rajaguru -
Category
Documents
-
view
217 -
download
0
Transcript of 4 Software Description
8/13/2019 4 Software Description
http://slidepdf.com/reader/full/4-software-description 1/12
Chapter 4 Software Description
SOFTWARE DESCRIPTION
4.1 Front End:
.NET FRAMEWORK:
The Microsoft .Net Framework is a platform that provides tools and technologies
need to build Networked pplications as well as Distributed !eb Services and !eb
pplications. The .Net Framework provides the necessar" compile time and run#time
foundation to build and run an" language that conforms to the Common $anguage
Specification %C$S&.The main two components of .Net Framework are Common
$anguage 'untime %C$'& and .Net Framework Class $ibrar" %FC$&.
The Common $anguage 'untime %C$'& is the runtime environment of the .Net
Framework that e(ecutes and manages all running code like a )irtual Machine. The .Net
Framework Class $ibrar" %FC$& is a huge collection of language#independent and t"pe#
safe reusable classes. The .Net Framework Class $ibraries %FC$& are arranged into a
logical grouping according to their functionalit" and usabilit" is called Namespaces.
Common Language Runtme:
The Common $anguage 'untime %C$'& is an *(ecution *nvironment . +t works
as a la"er between ,perating S"stems and the applications written in .Net languages that
conforms to the Common $anguage Specification %C$S&. The main function of Common
$anguage 'untime %C$'& is to convert the Managed Code into native code and then
e(ecute the -rogram. The Managed Code compiled onl" when it needed that is it
converts the appropriate instructions when each function is called. The Common
$anguage 'untime %C$'&/s 0ust +n Time %0+T& compilation converts +ntermediate
$anguage %MS+$& to native code on demand at application run time.
During the e(ecution of the program the Common $anguage 'untime %C$'&
manages memor" Thread e(ecution 1arbage Collection %1C& *(ception 2andling
3T, F+NNC+N1 4
8/13/2019 4 Software Description
http://slidepdf.com/reader/full/4-software-description 2/12
Chapter 4 Software Description
Common T"pe S"stem %CTS& code safet" verifications and other s"stem services. The
C$' %Common $anguage 'untime& defines the Common T"pe S"stem %CTS& which is a
standard t"pe s"stem used b" all .Net languages. That means all .N*T programming
languages uses the same representation for common Data T"pes so Common $anguage
'untime %C$'& is a language#independent runtime environment. The Common $anguage
'untime %C$'& environment is also referred to as a managed environment because
during the e(ecution of a program it also controls the interaction with the ,perating
S"stem.
Common T!"e S!#tem:
The Common T"pe S"stem %CTS& is a standard for defining and using data t"pes
in the .N*T framework. CTS define a collection of data t"pes which are used and
managed b" the run time to facilitate cross#language integration.
CTS provide the t"pes in the .N*T Framework with which .N*T applications
components and controls are built in different programming languages so information is
shared easil". +n contrast to low#level languages like C and C55 where classes6structs
have to be used for defining t"pes often used %like date or time& CTS provides a rich
hierarch" of such t"pes without the need for an" inclusion of header files or libraries inthe code.
Frame$or% C&a## L'rar!
The .Net Framework class librar" %FC$& provides the core functionalit" of .Net
Framework architecture. The .Net Framework Class $ibrar" %FC$& includes a huge
collection of reusable classes interfaces and value t"pes that e(pedite and optimi7e the
development process and provide access to s"stem functionalit".
The .Net Framework class librar" %FC$& organi7ed in a hierarchical tree structure and it is
divided into Namespaces. Namespaces is a logical grouping of t"pes for the purpose of
identification. Framework class librar" %FC$& provides the consistent base t"pes that are
used across all .N*T enabled languages. The Classes are accessed b" namespaces which
3T, F+NNC+N1 8
8/13/2019 4 Software Description
http://slidepdf.com/reader/full/4-software-description 3/12
Chapter 4 Software Description
reside within ssemblies. The S"stem Namespace is the root for t"pes in the .N*T
Framework. The .Net Framework class librar" %FC$& classes are managed classes that
provide access to S"stem Services. The .Net Framework class librar" %FC$& classes are
ob9ect oriented and eas" to use in program developments. Moreover third#part"
components can integrate with the classes in the .N*T Framework.
C( .NET LAN)*A)E:
h"brid of C and C55 it is a Microsoft programming language developed to
compete with Sun:s 0ava language. C; is an ob9ect#oriented programming language used
with <M$#based !eb services on the.N*T platform and designed for improving
productivit" in the development of !eb applications. C; boasts t"pe#safet" garbage
collection simplified t"pe declarations versioning and scalabilit" support and other
features that make developing solutions faster and easier especiall" for C,M5 and !eb
services. Microsoft critics have pointed to the similarities between C; and 0ava.
C; is designed to be a platform#independent language in the tradition of 0ava
%although it is implemented primaril" on !indows&. +t:s s"nta( is similar to C and C55
s"nta( and C; is designed to be an ob9ect#oriented language. There are for the most part
minor variations in s"nta( between C55 and C;. Main has no return t"pe there are nosemicolons after class names there are some %to C55 programmers& strange decisions
regarding capitali7ation # such as the capitali7ation of Main. ,ther a few differences the
s"nta( is often the same. This decision is reasonable in light of the fact that C s"nta( has
been used with several other languages # notabl" 0ava.
Similar to 0ava C; does not support multiple inheritances= instead it provides
0ava:s solution> interfaces. +nterfaces implemented b" a class specif" certain functions
that the class is guaranteed to implement. +nterfaces avoid the mess" dangers of multiple
inheritances while maintaining the abilit" to let several classes implement the same set of
methods.
3T, F+NNC+N1 ?
8/13/2019 4 Software Description
http://slidepdf.com/reader/full/4-software-description 4/12
Chapter 4 Software Description
nother helpful feature of C; is garbage collection. Therefore it is unnecessar" to
include a destructor for each class unless a class handles unmanaged resources= if so it:s
necessar" to release control those resources from within the class. C; also provides direct
access to memor" through C55 st"le pointers but these pointers are not garbage collected
until specificall" released b" the programmer.
C; as part of the .N*T framework is compiled to Microsoft +ntermediate
$anguage %MS+$& which is a language similar to 0ava:s b"tecode. MS+$ allows C; to be
platform independent and runs using 9ust in time compiling. Therefore programs running
under .N*T gain speed with repeated use. Furthermore because the other languages that
make up the .N*T platform compile to MS+$ it is possible for classes to be inherited
across languages. The MS+$ allows C; to be platform independent.
4.+ ,a-% End:
SL SER/ER:
3T, F+NNC+N1 @
8/13/2019 4 Software Description
http://slidepdf.com/reader/full/4-software-description 5/12
Chapter 4 Software Description
Microsoft SA$ Server is a relational database management s"stem developed
b" Microsoft. s a database it is a software product whose primar" function is to store
and retrieve data as reBuested b" other software applications be it those on the same
computer or those running on another computer across a network. There are at least a
do7en different editions of Microsoft SA$ Server aimed at different audiences and for
different workloads. +ts primar" Buer" languages are T#SA$ and NS+ SA$.
SA$ Server 8 *(press replaces the Microsoft Data *ngine %MSD*& as the free
version of SA$ Server for application development and lightweight use. +t remains free
and retains the limitations of MSD* with respect to client connections and performance.
+t/s a great tool for developing and testing applications and e(tremel" small
implementations.
T"pes of uthentication in SA$ Server are>
Windows Authentication: The identit" of the client on the Domain of the ,S 6 Network is
used b" SA$ Server to allow or den" access to the resources in the database
SQL Server Authentication: The permissions to the client are granted based on the
identit" which was created and stored in SA$ Server database.
S0& Serer Com"onent#
. -rotocol $a"er
-rotocol la"er implements the e(ternal interface to SA$ Server. TDS is an
application la"er protocol that is used to transfer data between a database server and
a client.
. Data Storage
The main unit of data storage is a database which is a collection of data. The
data in the SA$ Server database is stored in primar" data files with an e(tension .mdf
3T, F+NNC+N1 E
8/13/2019 4 Software Description
http://slidepdf.com/reader/full/4-software-description 6/12
Chapter 4 Software Description
and Secondar" data files with an e(tension .ndf e(tension are used to store optional
metadata. $og files in SA$ Server are recogni7ed with the .ldf e(tension.
. Guffer Management
SA$ Server buffers pages in 'M to minimi7e disc +nput6,utput. ,n the
basis of available memor" SA$ Server decides how man" pages will be cached in
memor". The buffer cache is managed b" the Guffer Manager.
4. $ogging and Transaction
SA$ Server uses transaction to make sure that an" operation either totall"
completes or is undone if fails but never leaves the database in an intermediate state.n" changes made to a page will update the in#memor" cache of the page and
simultaneousl" all the operations performed will be written to a log along with the
transaction +D. *ach log entr" is recogni7ed b" an increasing $og SeBuence Number
%$SN& which makes sure that no event overwrites another event. SA$ Server makes
sure that the log will be written onto the disc before the actual page is written back.
8. Concurrenc" and locking
when multiple users update the same data or attempt to read data that is in the
process of being changed b" another user. +n SA$ Server we have two modes of
3T, F+NNC+N1 H
8/13/2019 4 Software Description
http://slidepdf.com/reader/full/4-software-description 7/12
Chapter 4 Software Description
concurrenc" control # pessimistic concurrenc" and optimistic concurrenc". +n
pessimistic concurrenc" control SA$ Server controls concurrent access b" using
locks %shared or e(clusive&.
+n ,ptimistic concurrenc" control a new version of a row is created whenever the
row is updated. Goth the versions of the row are stored and maintained into a s"stem
defined database Tempdb.
?. Data 'etrieval
Data retrieval from SA$ Server is done using T#SA$. SA$ Server also allows
us to write stored procedures to Buer" the data.
@. SA$ C$' %Common $anguage 'untime&
SA$ Server 8 also has a new component named SA$ C$' via which it
integrates with .N*T Framework. !hen we write code for SA$ C$' data stored in
SA$ Server databases can be accessed b" using the D,.N*T -+s like an" other
application that accesses SA$ Server data.
4.2 Feature#:
C( FEAT*RES:
. Simple>
3T, F+NNC+N1
8/13/2019 4 Software Description
http://slidepdf.com/reader/full/4-software-description 8/12
Chapter 4 Software Description
+t simplifies C55 b" eliminating irk some operator such as #I > > and pointers.
. Consistent>
+t support an unified t"pe s"stem which eliminates the problem of var"ing ranges
of integer t"pes. ll t"pes are treated as ob9ect and developers can e(tend the t"pe s"stem
simpl" and easil".
. Modern>
+t supports utomatic garbage collection modern approach to debugging rich
intrinsic model for error handling decimal data t"pe for financial application and robust
securit" model.
4. ,b9ect#,riented>
+t support all the three tenets of ob9ect#oriented s"stem namel" *ncapsulation
+nheritance and -ol"morphism.
*ncapsulation
!rapping up data member and method together into a single unit %i.e. Class& is
called *ncapsulation. *ncapsulation prevents clients from seeing it/s inside view where
the behaviour of the abstraction is implemented. *ncapsulation is a techniBue used to protect the information in an ob9ect from the other ob9ect. 2ide the data for securit" such
as making the variables as private and e(pose the propert" to access the private data
which would be public.
+nheritance
+t is the idea that one class called a subclass can be based on another class called
a base class. +nheritance provides a mechanism for creating hierarchies of ob9ects.
+nheritance is the abilit" to appl" another class:s interface and code to user own class.
3T, F+NNC+N1
8/13/2019 4 Software Description
http://slidepdf.com/reader/full/4-software-description 9/12
Chapter 4 Software Description
Normal base classes ma" be instantiated themselves or inherited. Derived classes can
inherit base class members marked with protected or greater access. The derived class is
speciali7ed to provide more functionalit" in addition to what its base class provides.
-ol"morphism>
-ol"morphism means one ob9ect behaving as multiple forms.
8. T"pe#Safe>
C; is more t"pe safe than C55. The onl" implicit conversions b" default are
those which are considered safe such as widening of integers. This is enforced at
compile#time during 0+T and in some cases at runtime. There are no implicit
conversions between booleans and integers nor between enumeration members and
integers. n" user#defined conversion must be e(plicitl" marked as e(plicit or implicit
unlike C55 cop" constructors and conversion operators which are both implicit b"
default.
?. )ersion able>
Making new versions of software modules work with the e(isting applications is
known as versioning with the help of new and override ke"words !ith this support a
programmer can guarantee that his new class librar" will maintain binar" compatibilit"with the e(isting client application.
@. Compatible>
C; enforces the .N*T common language specification and therefore allows
interoperation with other .N*T language.
E. Fle(ible>
C; memor" address pointers can onl" be used within blocks specificall" marked
as unsafe and programs with unsafe code need appropriate permissions to run. Most
ob9ect access is done through safe ob9ect references which alwa"s either point to a JliveJ
ob9ect or have the well#defined null value= it is impossible to obtain a reference to a
3T, F+NNC+N1
8/13/2019 4 Software Description
http://slidepdf.com/reader/full/4-software-description 10/12
Chapter 4 Software Description
JdeadJ ob9ect or to a random block of memor". n unsafe pointer can point to an
instance of a value#t"pe arra" string or a block of memor" allocated on a stack. Code
that is not marked as unsafe can still store and manipulate pointers through the S"stem.
H. +nter#,perabilit">
C; provides support for using C,M ob9ects no matter what language
was used to author them. C; also supports special features that enable a program to call
out an" native -+.
SL SER/ER FEAT*RES:
. Database mirroring
Database mirroring is a new high#availabilit" feature in SA$ Server 8. +t:s
similar to server clustering in that failover is achieved b" the use of a stand#b" server= the
difference is that the failover is at the database level rather than the server level. The
primar" database continuousl" sends transaction logs to the backup database on a
separate SA$ Server instance. third SA$ Server instance is then used as a witness
database to monitor the interaction between the primar" and the mirror databases.
. Database snapshots
database snapshot is essentiall" an instant read#onl" cop" of a database and it
is a great candidate for an" t"pe of reporting solution for compan". +n addition to being a
great reporting tool user can revert control from primar" database to user snapshot
database in the event of an error. The onl" data loss would be from the point of creation
of the database snapshot to the event of failure.
. C$' integration
!ith SA$ Server 8 user now has the abilit" to create custom .N*T ob9ects
with the database engine. For e(ample stored procedures triggers and functions can
now be created using familiar .N*T languages such as )G and C;. *(posing this
3T, F+NNC+N1
8/13/2019 4 Software Description
http://slidepdf.com/reader/full/4-software-description 11/12
Chapter 4 Software Description
functionalit" gives "ou tools that "ou never had access to before such as regular
e(pressions.
4. Service Groker
This feature gives the abilit" to create as"nchronous message#based applications
in the database entirel" through TSA$. The database engine guarantees message deliver"
message order consistenc" and handles message grouping. +n addition Service Groker
gives the abilit" to send messages between different SA$ Server instances. Server Groker
is also used in several other features in SA$ Server 8.
8. DD$ triggers
DD$ triggers are defined at the server or database level and fire when DD$
statements occur. This gives the abilit" to audit when new tables stored procedures or
logins are created.
?. 'anking functions
SA$ Server 8 provides with the abilit" to rank result sets returned from the
database engine. This allows customi7ing the manner in which result sets are returnedsuch as creating customi7ed paging functions for !eb site data.
@. 'ow versioning#based isolation levels
This new database engine feature improves database read concurrenc" b" reducing
the amount of locks being used in user database. There are two versions of this feature
%both of which must be enabled at the database level&>
3T, F+NNC+N1 4
8/13/2019 4 Software Description
http://slidepdf.com/reader/full/4-software-description 12/12
Chapter 4 Software Description
• 'ead Committed +solation 3sing 'ow )ersioning is used at the individual
statement level and guarantees that the data is consistent for the duration of the
statement.
• Snapshot +solation is used at the transaction level and guarantees that the data is
consistent for the duration of the transaction.
E. <M$ integration
SA$ Server 8 introduces the new <M$ data#t"pe. 3ser can store full <M$
documents in this new data#t"pe and user can place validations on the well#formed
documents in the database. dditional enhancements include the abilit" to Buer" the
<M$ documents and create inde(es on the <M$ data#t"pe.
H. T'K...CTC2
3ser can use the new T'K...CTC2 constructs in SA$ Server 8 to catch and
handle deadlocks when the" occur in the database. This long#awaited feature simplifies
error handling in the database.
. Database Mail
Database Mail the eventual successor to SA$ Mail is a greatl" enhanced e#mail
solution available in the database engine. !ith Database Mail there is no longer a
dependenc" on Microsoft ,utlook or M-+ e#mail clients. Database Mail uses standard
SMT- to send e#mail messages.
3T, F+NNC+N1 8